FIXME: This loses "ATTRIBUTE_UNUSED" where they existed, and also
all of the files committed here need that compiler hint added to
all of the new arguments ('canvas', 'last', etc.) since they
obviously don't use them either.
When in the middle of adjusting a drawing with Zoom or Perspective,
you could change the color. However, the background would not
relfect this until you further adjusted the zoom/perspective.
Now, a color change causes the background to update immediately.
This involved updating the Tux Paint Magic API to send more
arguments to each Magic tool's "XYZ_set_color()" function,
which means a bump in the API version.
(Forthcoming, all other Magic tools will have their set_color()
functions updated.)
Text from unfinished "Label" tool input would appear after
creating a New image or Opening an existing one. Mended.
Closes https://sourceforge.net/p/tuxpaint/bugs/246/
Mostly by Pere.
If only one display is available, when running in windowed mode
and asking for Tux Paint to appear in a width and/or height larger
than the display's dimensions, Tux Paint will fall back to
the maximum(s) the display is capable of.
e.g., on my laptop with 1920x1080, running "tuxpaint --2048x2048"
will fall back to 1920x1080 (and display a warning to stdout).
However, if I have my external monitor (also 1920x1080) attached,
it will happily open a 2048x2048 window. Not perfect, but an
improvement.
Closes https://sourceforge.net/p/tuxpaint/feature-requests/113/
For example, when using a font like OpenDyslexia which has a very
large line spacing, the text gets shrunk since the overall bitmap
is too big for the space on the buttons (compared to the contents).
Cropping the whitespace will allow the text to remain larger.
WIP - The method of cropping isn't great. Text with descenders
appear higher than text without, causing terrible alignment.
So for now, the new `crop_surface()` code is not being used.
Also, replace some "#ifdef DEBUG printf(...) #endif" with
a simple "DEBUG_PRINTF(...)". And other minor tweaks.
Avoid reading outside of the bounds of the `touched[]` array,
to help prevent crashes.
h/t Miyagi Andel for reporting,
Shin-ichi TOYAMA for pinpointing the issue,
and Pere Pujal i Carabantes for providing a solution
Closes https://sourceforge.net/p/tuxpaint/bugs/269