Fill & Stroke dialog randomly stops updating colors live
Bug #168557 reported by
ScislaC
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Fix Released
|
Medium
|
Jon A. Cruz |
Bug Description
This was tested with current SVN (04/12/2007)
1) Open inkscape and draw a shape
2) In the fill & stroke, go into HSL, w/ full saturation w/ 50% lightness,
and drag the Hue slider back and forth a whole bunch...
3) It does live updating of the color for a while and then seems to
randomly stop doing a live update. Note that it will update on mouse
release though.
JonCruz confirmed this behavior as well.
-Josh
Related branches
Changed in inkscape: | |
importance: | Undecided → Medium |
status: | New → Confirmed |
tags: | added: color ui |
Changed in inkscape: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
I do not know the workings (i.e. signals etc.) of inkscape, but the fill-style. cpp:
problem manifest itself in src/dialogs/
The function style_widget_ paint_dragged( ...)
sp_fill_
does a
g_object_set_data (G_OBJECT (spw), "local", GINT_TO_POINTER (TRUE));
This is used to skip unneccessary drawing.
This "local" flag is only cleared in style_widget_ update( ...)
sp_fill_
with
g_object_set_data (G_OBJECT (spw), "local", GINT_TO_POINTER (FALSE));
At first, dragging the slider slowly everything is fine. Increasing the style_widget_ update( ) does not get called anymore until the mouse style_widget_ update( )
slider dragging speed seems to trigger the bug and
sp_fill_
button is released. The use of "local" seems to work for a while,
preventing unneccessary updates, but when sp_fill_
ceases somehow to get called, "local" is not reset and no update to the
color is made.
Removing the effect of "local" (i.e, removing the return) in style_widget_ paint_dragged( ) is not the solution (the widget shows
sp_fill_
a lag when dragged then), but the color of the object is updated all the
time.
I think that the real problem is happening somewhere before this when the
signals are generated.