Example: when using a slider widget bound to an xfconf property, the xfconf property is continuously updated as the slider is dragged. Since the xfconf bindings work at the gobject property level, we can't do something specific for range widgets. Options: 1. Add a delay in the xfconf bindings so property updates are queued and processed every 100ms or so, and only the most recent update actually takes effect. 2. Look into the update-policy property of all GtkRange widgets -- might be able to get it to stop changing its value property until the user releases the slider. I seem to remember trying to get this to work right a long time ago in a different situation, without success, but maybe it can work for us.
I do not think that option 1) would be a good approach, it looks like a hack and how to choose the right update interval (100ms might still be way too much for some needs). The current implementation in xfwm4 wmtweaks plugin uses gtk_range_set_update_policy (GTK_RANGE (scale), GTK_UPDATE_DISCONTINUOUS) and that works just fine (ie this is exactly what is needed in my case ^_~ )
Ok, cool. Stephan, I'll leave you to update your dialogs, yeah? Close the bug when you're done ^_^
done. (Will add the patch to the other bug later, almost implemented the wm-settings dialog too)
The only remaining issue we may want to revisit (or not?) is that of GtkSpinButtons. There doesn't seem to be a similar property for those. If you hold down the spinner button, you get a prop change for each increment until you stop. We seem to have few of those, so...