diff options
| author | bulia byak <buliabyak@gmail.com> | 2009-03-09 00:38:46 +0000 |
|---|---|---|
| committer | buliabyak <buliabyak@users.sourceforge.net> | 2009-03-09 00:38:46 +0000 |
| commit | 68309bba22f8140eb70b87b3ffaddf024d385872 (patch) | |
| tree | fb35a8c62708a2255ebd54e855c36477005e2e99 /src/ui | |
| parent | suppress warnings caused by an orphaned clone, which is legit even if useless (diff) | |
| download | inkscape-68309bba22f8140eb70b87b3ffaddf024d385872.tar.gz inkscape-68309bba22f8140eb70b87b3ffaddf024d385872.zip | |
switch opacity and blur sliders to delayed update, which makes them much more resposive and easier to handle; also, remove the old workaround for gtk crash which is no more, allowing interruptibility and thus also improving responsiveness
(bzr r7446)
Diffstat (limited to 'src/ui')
| -rw-r--r-- | src/ui/widget/filter-effect-chooser.cpp | 1 | ||||
| -rw-r--r-- | src/ui/widget/object-composite-settings.cpp | 9 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/ui/widget/filter-effect-chooser.cpp b/src/ui/widget/filter-effect-chooser.cpp index 78ddbaa87..9aaa64220 100644 --- a/src/ui/widget/filter-effect-chooser.cpp +++ b/src/ui/widget/filter-effect-chooser.cpp @@ -48,6 +48,7 @@ SimpleFilterModifier::SimpleFilterModifier(int flags) _lb_blur.set_use_underline(); _lb_blur.set_mnemonic_widget(_blur.get_scale()); _blend.signal_changed().connect(signal_blend_blur_changed()); + _blur.set_update_policy(Gtk::UPDATE_DELAYED); _blur.signal_value_changed().connect(signal_blend_blur_changed()); } diff --git a/src/ui/widget/object-composite-settings.cpp b/src/ui/widget/object-composite-settings.cpp index 3e6683c64..bfc291bc0 100644 --- a/src/ui/widget/object-composite-settings.cpp +++ b/src/ui/widget/object-composite-settings.cpp @@ -83,6 +83,7 @@ ObjectCompositeSettings::ObjectCompositeSettings(unsigned int verb_code, char co _opacity_hbox.pack_start(_opacity_hscale, true, true, 4); _opacity_hbox.pack_start(_opacity_spin_button, false, false, 0); _opacity_hscale.set_draw_value(false); + _opacity_hscale.set_update_policy(Gtk::UPDATE_DELAYED); _opacity_adjustment.signal_value_changed().connect(sigc::mem_fun(*this, &ObjectCompositeSettings::_opacityValueChanged)); show_all_children(); @@ -123,7 +124,7 @@ ObjectCompositeSettings::_blendBlurValueChanged() _blocked = true; // FIXME: fix for GTK breakage, see comment in SelectedStyle::on_opacity_changed; here it results in crash 1580903 - sp_canvas_force_full_redraw_after_interruptions(sp_desktop_canvas(desktop), 0); + //sp_canvas_force_full_redraw_after_interruptions(sp_desktop_canvas(desktop), 0); Geom::OptRect bbox = _subject->getBounds(SPItem::GEOMETRIC_BBOX); double radius; @@ -171,7 +172,7 @@ ObjectCompositeSettings::_blendBlurValueChanged() _("Change blur")); // resume interruptibility - sp_canvas_end_forced_full_redraws(sp_desktop_canvas(desktop)); + //sp_canvas_end_forced_full_redraws(sp_desktop_canvas(desktop)); _blocked = false; } @@ -195,7 +196,7 @@ ObjectCompositeSettings::_opacityValueChanged() // FIXME: fix for GTK breakage, see comment in SelectedStyle::on_opacity_changed; here it results in crash 1580903 // UPDATE: crash fixed in GTK+ 2.10.7 (bug 374378), remove this as soon as it's reasonably common // (though this only fixes the crash, not the multiple change events) - sp_canvas_force_full_redraw_after_interruptions(sp_desktop_canvas(desktop), 0); + //sp_canvas_force_full_redraw_after_interruptions(sp_desktop_canvas(desktop), 0); SPCSSAttr *css = sp_repr_css_attr_new (); @@ -211,7 +212,7 @@ ObjectCompositeSettings::_opacityValueChanged() _("Change opacity")); // resume interruptibility - sp_canvas_end_forced_full_redraws(sp_desktop_canvas(desktop)); + //sp_canvas_end_forced_full_redraws(sp_desktop_canvas(desktop)); _blocked = false; } |
