After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 467972 - Highlight artifacts when rubber-banding Crop Tool rectangle at e.g. 67% zoom.
Highlight artifacts when rubber-banding Crop Tool rectangle at e.g. 67% zoom.
Status: RESOLVED FIXED
Product: GIMP
Classification: Other
Component: Tools
git master
Other All
: Normal normal
: 2.4
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks:
 
 
Reported: 2007-08-18 15:13 UTC by Martin Nordholts
Modified: 2007-08-24 16:58 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Martin Nordholts 2007-08-18 15:13:44 UTC
Steps to reproduce:

1) Create a 420x300 image.
2) Choose the Crop Tool and create a pending crop rectangle at (100, 100), 100x100 in size.
3) Zoom to 67%
4) Adjust the crop rectangle

Results:
There are drawing artifacts; the area invalidated due to highlightning being used does not cause the needed areas to redraw.

Expected results:
There should be no drawing artifacts due to highlightning being used.
Comment 1 Martin Nordholts 2007-08-18 15:14:09 UTC
I'll try to solve this before 2.4.
Comment 2 Michael Schumacher 2007-08-19 23:11:52 UTC
The important step is the zoom level, isn't it?
Comment 3 Martin Nordholts 2007-08-20 05:49:44 UTC
Yes, I was merely given an example on how to reproduce it, not what is required to reproduce it.

The bug is easily fixed, one just invalidate a larger area than what is currently done, for example by adding + 10, width and height at some place in the invalidate/redraw chain, but it would be nice to fix it the Right Way.
Comment 4 Michael Natterer 2007-08-24 16:58:53 UTC
Fixed in SVN:

2007-08-24  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-draw.c
	(gimp_display_shell_draw_area): don't use SCALEX()/SCALEY() on x/y
	*and* width/height of the highlight rectangle because that adds up
	the error introduced by the ceil() contained in these macros.
	Instead, scale manually and use ceil() on x/y and floor() on
	width/height. Fixes off-by-one rendering artifacts (bug #467972).