diff --git a/docs/CHANGES.txt b/docs/CHANGES.txt index 664d8e885..372a6560c 100644 --- a/docs/CHANGES.txt +++ b/docs/CHANGES.txt @@ -7,7 +7,7 @@ Various contributors (see below, and AUTHORS.txt) http://www.tuxpaint.org/ -2022.September.4 (0.9.29) +2022.September.5 (0.9.29) * Improvements to "Stamp" tool: ----------------------------- * WIP - Stamps may now be rotated. @@ -23,6 +23,9 @@ http://www.tuxpaint.org/ which seemed to work fine under SDL1.2, but does not under SDL2.) Closes https://sourceforge.net/p/tuxpaint/bugs/259/ + * Mended issue that prevented pop-up prompt's drop-shadows + from rendering (under SDL2). + * Opening and immediately dismissing Color Mixer could cause an unexpected color to be chosen. h/t @kentonyanamin on Twitter for reporting. diff --git a/src/tuxpaint.c b/src/tuxpaint.c index 16a82561d..b6b4fe750 100644 --- a/src/tuxpaint.c +++ b/src/tuxpaint.c @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA (See COPYING.txt) - June 14, 2002 - September 2, 2022 + June 14, 2002 - September 5, 2022 */ #include "platform.h" @@ -13947,10 +13947,7 @@ static int do_prompt_image_flash_snd(const char *const text, if (alpha_surf != NULL) { - - SDL_FillRect(alpha_surf, NULL, SDL_MapRGB(alpha_surf->format, 0, 0, 0)); - SDL_SetSurfaceAlphaMod(alpha_surf, 64); - + SDL_FillRect(alpha_surf, NULL, SDL_MapRGBA(alpha_surf->format, 0, 0, 0, 64)); for (i = 8; i > 0; i = i - 2) { @@ -22453,6 +22450,9 @@ static Uint8 magic_touched(int x, int y) * Allow the user to select a color from one of the * pixels within their picture. * + * A small dialog will appear over the color palette + * at the bottom of the screen. + * * @param boolean temp_mode - whether to only appear * while a shortcut key is being held * (if not, the mouse will be positioned at the bottom @@ -22564,8 +22564,7 @@ static int do_color_sel(int temp_mode) if (alpha_surf != NULL) { - SDL_FillRect(alpha_surf, NULL, SDL_MapRGB(alpha_surf->format, 0, 0, 0)); - SDL_SetSurfaceAlphaMod(alpha_surf, 64); + SDL_FillRect(alpha_surf, NULL, SDL_MapRGBA(alpha_surf->format, 0, 0, 0, 64)); for (i = 8; i > 0; i = i - 2) { @@ -22929,9 +22928,7 @@ static int do_color_picker(void) if (alpha_surf != NULL) { - SDL_FillRect(alpha_surf, NULL, SDL_MapRGB(alpha_surf->format, 0, 0, 0)); - SDL_SetSurfaceAlphaMod(alpha_surf, 64); - + SDL_FillRect(alpha_surf, NULL, SDL_MapRGBA(alpha_surf->format, 0, 0, 0, 64)); for (i = 8; i > 0; i = i - 2) { @@ -23655,8 +23652,7 @@ static int do_color_mix(void) if (alpha_surf != NULL) { - SDL_FillRect(alpha_surf, NULL, SDL_MapRGB(alpha_surf->format, 0, 0, 0)); - SDL_SetSurfaceAlphaMod(alpha_surf, 64); + SDL_FillRect(alpha_surf, NULL, SDL_MapRGBA(alpha_surf->format, 0, 0, 0, 64)); for (i = 8; i > 0; i = i - 2) { @@ -23668,6 +23664,7 @@ static int do_color_mix(void) SDL_BlitSurface(alpha_surf, NULL, screen, &dest); } + SDL_FreeSurface(alpha_surf); } #endif