summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2010-09-15 07:43:40 +0000
committerJon A. Cruz <jon@joncruz.org>2010-09-15 07:43:40 +0000
commit9ced034c5571093e4622d60e06fc680777936e77 (patch)
treef8c18aa9419cbb0f915c66ef77cb4b4a9ba16bf6 /src/widgets
parentFilters. New customizable Poster effect (experimental). (diff)
downloadinkscape-9ced034c5571093e4622d60e06fc680777936e77.tar.gz
inkscape-9ced034c5571093e4622d60e06fc680777936e77.zip
Prevent opacity slider changes from going into undo as separate items. Fixes bug #629300.
Fixed bugs: - https://launchpad.net/bugs/629300 (bzr r9762)
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/gradient-vector.cpp27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/widgets/gradient-vector.cpp b/src/widgets/gradient-vector.cpp
index 7f0256665..1c1e8173b 100644
--- a/src/widgets/gradient-vector.cpp
+++ b/src/widgets/gradient-vector.cpp
@@ -648,25 +648,22 @@ static void sp_grad_edit_select(GtkOptionMenu *mnu, GtkWidget *tbl)
static void offadjustmentChanged( GtkAdjustment *adjustment, GtkWidget *vb)
{
- if (blocked) {
- return;
- }
+ if (!blocked) {
+ blocked = TRUE;
- blocked = TRUE;
+ GtkOptionMenu *mnu = static_cast<GtkOptionMenu *>(g_object_get_data(G_OBJECT(vb), "stopmenu"));
+ if ( g_object_get_data(G_OBJECT(gtk_menu_get_active(GTK_MENU(gtk_option_menu_get_menu(mnu)))), "stop") ) {
+ SPStop *stop = SP_STOP(g_object_get_data(G_OBJECT(gtk_menu_get_active(GTK_MENU(gtk_option_menu_get_menu(mnu)))), "stop"));
- GtkOptionMenu *mnu = static_cast<GtkOptionMenu *>(g_object_get_data(G_OBJECT(vb), "stopmenu"));
- if (!g_object_get_data(G_OBJECT(gtk_menu_get_active(GTK_MENU(gtk_option_menu_get_menu(mnu)))), "stop")) {
- return;
- }
- SPStop *stop = SP_STOP(g_object_get_data(G_OBJECT(gtk_menu_get_active(GTK_MENU(gtk_option_menu_get_menu(mnu)))), "stop"));
-
- stop->offset = adjustment->value;
- sp_repr_set_css_double(SP_OBJECT_REPR(stop), "offset", stop->offset);
+ stop->offset = adjustment->value;
+ sp_repr_set_css_double(SP_OBJECT_REPR(stop), "offset", stop->offset);
- sp_document_done(SP_OBJECT_DOCUMENT(stop), SP_VERB_CONTEXT_GRADIENT,
- _("Change gradient stop offset"));
+ sp_document_maybe_done(SP_OBJECT_DOCUMENT(stop), "gradient:stop:offset", SP_VERB_CONTEXT_GRADIENT,
+ _("Change gradient stop offset"));
- blocked = FALSE;
+ blocked = FALSE;
+ }
+ }
}
guint32 sp_average_color(guint32 c1, guint32 c2, gdouble p = 0.5)