Michael,
For months I've been annoyed by a number of small breakages in Inkscape behavior. Knots and handles remained highlighted after I release mouse; rubberband rectangle stayed on if I accidentally ended it on a node; some other small weirdnesses. Nothing fatal, but rather annoying, and a sign of something broken somewhere.
Today I finally had time to do timed checkouts to find out when this thing started. What I found was your change back in August:
http://svn.sourceforge.net/viewcvs.py/inkscape/inkscape/trunk/src/display/sp...
I understand your reason for this change, but as you see, by enabling your own tool, you disrupted the work of most other tools that relied on the old behavior. So I would really appreciate if you rethink this change and implement it in some other less disruptive way. For example, you can add a flag to canvas items that would make them receive events while mouse is down, and use that for your connector tool handles, while all other canvas items would by default not receive events as before. Or you can add a flag to canvas itself to switch it to "pick while mouse down" mode only when in connector tool. Or you can come up with something entirely different. In any case, this situation needs to be fixed somehow.
-- bulia byak Inkscape. Draw Freely. http://www.inkscape.org
On Tue, 14 Feb 2006, bulia byak wrote:
For months I've been annoyed by a number of small breakages in Inkscape behavior. Knots and handles remained highlighted after I release mouse; rubberband rectangle stayed on if I accidentally ended it on a node; some other small weirdnesses. Nothing fatal, but rather annoying, and a sign of something broken somewhere.
Today I finally had time to do timed checkouts to find out when this thing started. What I found was your change back in August:
http://svn.sourceforge.net/viewcvs.py/inkscape/inkscape/trunk/src/display/sp...
I understand your reason for this change, but as you see, by enabling your own tool, you disrupted the work of most other tools that relied on the old behavior. So I would really appreciate if you rethink this change and implement it in some other less disruptive way. For example, you can add a flag to canvas items that would make them receive events while mouse is down, and use that for your connector tool handles, while all other canvas items would by default not receive events as before. Or you can add a flag to canvas itself to switch it to "pick while mouse down" mode only when in connector tool. Or you can come up with something entirely different. In any case, this situation needs to be fixed somehow.
Until now, I was completely unaware that this change had caused any problems. I guess not being a real user of Inkscape before I started hacking on it, I missed small changes like the knot highlighting and just assumed the behaviour had always been like that.
In fact, at the time, I posted a heads-up message about the change asking people to watch out for any strange behaviour: http://sourceforge.net/mailarchive/message.php?msg_id=12679067
Anyway, you're quite right that the same result can be achieved in a different way, and I'll rethink it and attempt to quickly commit an alternate method.
To aid me in doing this, would you mind explaining the rubberband rectangle problem a little further (and any other reproducable problems) since I'm not sure what you mean by this, and would like to have some reproducable cases in testing a replacement change.
Sorry for the inconvience.
Cheers, Michael
On 2/14/06, Michael Wybrow <mjwybrow@...1047...> wrote:
In fact, at the time, I posted a heads-up message about the change asking people to watch out for any strange behaviour: http://sourceforge.net/mailarchive/message.php?msg_id=12679067
Yes, I remember that. Unfortunately I don't always have time to do immediate testing of new stuff.
To aid me in doing this, would you mind explaining the rubberband rectangle problem a little further (and any other reproducable problems) since I'm not sure what you mean by this, and would like to have some reproducable cases in testing a replacement change.
Here's a simple test case. In node tool with a path selected, start dragging on an empty place, cover some nodes with the rubberband, and release mouse over a node. Correct result: rubberband rect disappears, covered nodes get selected, the last node on which you released either gets selected or not, depending on whether you covered its center. Wrong (current) result: rect stays on, nodes not selected, only the last node is selected as if clicked.
Another problem was that when you drag resize/rotate handles in Selector and release mouse away from the handle, the handle stays highlighted. For that problem I even committed a small fix some time ago (not aware of its real source):
http://svn.sourceforge.net/viewcvs.py/inkscape/inkscape/trunk/src/knot.cpp?r...
If you revert your August change that problem will be prevented at the source, and I will be able to back out my fix in knot.cpp.
-- bulia byak Inkscape. Draw Freely. http://www.inkscape.org
On Tue, 14 Feb 2006, bulia byak wrote:
If you revert your August change that problem will be prevented at the source, and I will be able to back out my fix in knot.cpp.
Done! I have reverted the change and altered the behaviour so those extra enter events are only generated for the connector context where they are needed. I've tested it and all the problems you mentioned have vanished. It's in SVN now.
Cheers, Michael
participants (2)
-
bulia byak
-
Michael Wybrow