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 350694 - Difficult to move points when using IScissors tool
Difficult to move points when using IScissors tool
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: 2006-08-10 05:35 UTC by david gowers
Modified: 2006-08-14 20:33 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description david gowers 2006-08-10 05:35:19 UTC
When using Intelligent Scissors tool, The cursor change that occurs when hovering over a point suggests that you can move it, but in fact, click+dragging it causes a new point to be added instead.
There doesn't seem to be any particular rationale behind this behaviour, I think it was accidentally broken.
Comment 1 Sven Neumann 2006-08-10 11:18:32 UTC
Seems to work for me. The point can be dragged, like the cursor indicates.
Comment 2 david gowers 2006-08-10 11:47:52 UTC
Experimenting further, it never works when the shape is closed; after the shape is closed, it always works. Maybe that is intended (in the code, I noticed that initial placement handling and adjustment handling are usually separated), but it is not readily apparent. I guess that could be addressed by providing appropriate tips in the statusbar (currently the IScissors tool just uses the selection help, which is irrelevant to it.)

Comment 3 Michael Natterer 2006-08-10 12:24:05 UTC
It does work, only not on the terminal points. I guess this is
a duplicate of bug #132352, right?
Comment 4 david gowers 2006-08-10 12:47:50 UTC
Not exactly. Part of the problem is that the cursor changes to suggest that you can move a point, but you have to be significantly closer to actually move it.
Roughly, 'touching the outer edge of the anchor circle' versus 'within 1 or 2 pixels of the exact center of the anchor'. I think it should match the behaviour of the paths tool, where you only have to be touching the anchor circle to be able to click+drag to move it. 
Comment 5 david gowers 2006-08-11 06:21:14 UTC
changing summary accordingly.
Comment 6 Sven Neumann 2006-08-14 09:01:06 UTC
I cannot reproduce this problem. The points are reliably moved as indicated by the cursor.
Comment 7 Michael Natterer 2006-08-14 14:52:00 UTC
I can reproduce it. The problem is that the tool uses two different
methods to figure (a) the cursor and (b) the operation happening on
click. It rounding differently in both cases and uses double in one
and integer in the other case.

(Zoom in to see the effect)

I have half-way fixed this locally, needs some touchup but will
be ready for 2.4 ;) Setting milestone accordingly.
Comment 8 Michael Natterer 2006-08-14 20:33:09 UTC
Should be fixed now. Please test and reopen if it still behaves strange.

2006-08-14  Michael Natterer  <mitch@gimp.org>

	Fixed rounding and double vs. integer inconsistency when dealing
	with mouse coordinates. Fixes bug #350694.

	* app/tools/gimpiscissorstool.c
	(clicked_on_vertex)
	(clicked_on_curve): added double x and y parameters and use them
	instead of the integer iscissors->x and ->y. Cleaned up the
	functions a bit.

	(gimp_iscissors_tool_button_press)
	(gimp_iscissors_tool_motion): changed accordingly, also rint() the
	passed mouse coords when assigning them to iscissors->x and ->y.

	Unrelated cleanup:

	(iscissors_free_buffers): removed, folded into reset()
	(precalculate_arrays): removed, folded into class_init()