From eac3c11251e65774a2f4f610f2799592978487d8 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Sun, 19 Jan 2014 00:38:09 -0500 Subject: Try another fix for the undo when dragging bug #168695 Fixed bugs: - https://launchpad.net/bugs/168695 (bzr r12955) --- src/document-undo.cpp | 2 +- src/ui/tools/tool-base.cpp | 14 +++++++++++--- src/ui/tools/tool-base.h | 1 + 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/document-undo.cpp b/src/document-undo.cpp index 312ccb7f8..bad4d6c81 100644 --- a/src/document-undo.cpp +++ b/src/document-undo.cpp @@ -242,7 +242,7 @@ gboolean Inkscape::DocumentUndo::undo(SPDocument *doc) g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_assert (doc->priv->sensitive); + g_return_val_if_fail (doc->priv->sensitive, FALSE); doc->priv->sensitive = FALSE; doc->priv->seeking = true; diff --git a/src/ui/tools/tool-base.cpp b/src/ui/tools/tool-base.cpp index 6c7867633..f8868ec0e 100644 --- a/src/ui/tools/tool-base.cpp +++ b/src/ui/tools/tool-base.cpp @@ -57,6 +57,7 @@ #include "shape-editor.h" #include "sp-guide.h" #include "color.h" +#include "document-undo.h" // globals for temporary switching to selector by space static bool selector_toggled = FALSE; @@ -977,9 +978,16 @@ gint sp_event_context_root_handler(ToolBase * event_context, gint sp_event_context_virtual_root_handler(ToolBase * event_context, GdkEvent * event) { gint ret = false; - if (event_context) { // If no event-context is available then do nothing, otherwise Inkscape would crash - // (see the comment in SPDesktop::set_event_context, and bug LP #622350) - //ret = (SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(event_context)))->root_handler(event_context, event); + if (event_context) { + // We want to disable undo while we drag anything + SPDocument *document = sp_desktop_document(event_context->desktop); + if (event->type == GDK_BUTTON_PRESS) { + event_context->undo_sensitive = DocumentUndo::getUndoSensitive(document); + DocumentUndo::setUndoSensitive(document, false); + } else if (event->type == GDK_BUTTON_RELEASE) { + DocumentUndo::setUndoSensitive(document, event_context->undo_sensitive); + } + ret = event_context->root_handler(event); set_event_location(event_context->desktop, event); diff --git a/src/ui/tools/tool-base.h b/src/ui/tools/tool-base.h index 7ed5875b1..068bc6402 100644 --- a/src/ui/tools/tool-base.h +++ b/src/ui/tools/tool-base.h @@ -119,6 +119,7 @@ public: gint xp, yp; ///< where drag started gint tolerance; bool within_tolerance; ///< are we still within tolerance of origin + bool undo_sensitive; /// Was undo previously sensitive before drag SPItem *item_to_select; ///< the item where mouse_press occurred, to ///< be selected if this is a click not drag -- cgit v1.2.3 From e5feb4b17ce16b17ee7ff19188072c25c736bf90 Mon Sep 17 00:00:00 2001 From: Alvin Penner Date: Sun, 19 Jan 2014 07:43:14 -0500 Subject: fix scaling crash caused by negative stroke (Bug 1270464) Fixed bugs: - https://launchpad.net/bugs/1270464 (bzr r12956) --- src/sp-item-transform.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/sp-item-transform.cpp b/src/sp-item-transform.cpp index 9dbe412d7..854fb9cd7 100644 --- a/src/sp-item-transform.cpp +++ b/src/sp-item-transform.cpp @@ -110,6 +110,9 @@ Geom::Affine get_scale_transform_for_uniform_stroke(Geom::Rect const &bbox_visua // -> The width and height of the geometric bounding box will therefore be (w0 - 2*0.5*r0) and (h0 - 2*0.5*r0) // 4) If preserve transforms is true, then stroke_x != stroke_y, since these are the apparent stroke widths, after transforming + if ((stroke_x == Geom::infinity()) || (fabs(stroke_x) < 1e-6)) stroke_x = 0; + if ((stroke_y == Geom::infinity()) || (fabs(stroke_y) < 1e-6)) stroke_y = 0; + gdouble w0 = bbox_visual.width(); // will return a value >= 0, as required further down the road gdouble h0 = bbox_visual.height(); gdouble r0 = sqrt(stroke_x*stroke_y); // r0 is redundant, used only for those cases where stroke_x = stroke_y -- cgit v1.2.3 From 5b1689d145435a515d0affcd3b6f3b3ae0e18111 Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Sun, 19 Jan 2014 16:25:49 +0100 Subject: LPE strings consistency fix. (bzr r12957) --- po/inkscape.pot | 90 ++++++++++++++++----------------- src/live_effects/lpe-angle_bisector.cpp | 2 +- src/live_effects/lpe-perp_bisector.cpp | 4 +- 3 files changed, 47 insertions(+), 49 deletions(-) diff --git a/po/inkscape.pot b/po/inkscape.pot index babc68422..2ed60009b 100644 --- a/po/inkscape.pot +++ b/po/inkscape.pot @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2014-01-17 20:14+0100\n" +"POT-Creation-Date: 2014-01-19 16:23+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -6329,8 +6329,8 @@ msgstr "" #: ../src/extension/internal/cairo-ps-out.cpp:333 #: ../src/extension/internal/cairo-ps-out.cpp:372 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-inout.cpp:3551 -#: ../src/extension/internal/wmf-inout.cpp:3236 +#: ../src/extension/internal/emf-inout.cpp:3520 +#: ../src/extension/internal/wmf-inout.cpp:3088 msgid "Convert texts to paths" msgstr "" @@ -6498,70 +6498,74 @@ msgstr "" msgid "Open presentation exchange files saved in Corel DRAW" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3535 +#: ../src/extension/internal/emf-inout.cpp:3504 msgid "EMF Input" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3540 +#: ../src/extension/internal/emf-inout.cpp:3509 msgid "Enhanced Metafiles (*.emf)" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3541 +#: ../src/extension/internal/emf-inout.cpp:3510 msgid "Enhanced Metafiles" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3549 +#: ../src/extension/internal/emf-inout.cpp:3518 msgid "EMF Output" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3552 -#: ../src/extension/internal/wmf-inout.cpp:3237 +#: ../src/extension/internal/emf-inout.cpp:3521 +#: ../src/extension/internal/wmf-inout.cpp:3089 msgid "Map Unicode to Symbol font" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3553 -#: ../src/extension/internal/wmf-inout.cpp:3238 +#: ../src/extension/internal/emf-inout.cpp:3522 +#: ../src/extension/internal/wmf-inout.cpp:3090 msgid "Map Unicode to Wingdings" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3554 -#: ../src/extension/internal/wmf-inout.cpp:3239 +#: ../src/extension/internal/emf-inout.cpp:3523 +#: ../src/extension/internal/wmf-inout.cpp:3091 msgid "Map Unicode to Zapf Dingbats" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3555 -#: ../src/extension/internal/wmf-inout.cpp:3240 +#: ../src/extension/internal/emf-inout.cpp:3524 +#: ../src/extension/internal/wmf-inout.cpp:3092 msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3556 -#: ../src/extension/internal/wmf-inout.cpp:3241 +#: ../src/extension/internal/emf-inout.cpp:3525 +#: ../src/extension/internal/wmf-inout.cpp:3093 msgid "Compensate for PPT font bug" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3557 -#: ../src/extension/internal/wmf-inout.cpp:3242 +#: ../src/extension/internal/emf-inout.cpp:3526 +#: ../src/extension/internal/wmf-inout.cpp:3094 msgid "Convert dashed/dotted lines to single lines" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3558 -#: ../src/extension/internal/wmf-inout.cpp:3243 +#: ../src/extension/internal/emf-inout.cpp:3527 +#: ../src/extension/internal/wmf-inout.cpp:3095 msgid "Convert gradients to colored polygon series" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3559 +#: ../src/extension/internal/emf-inout.cpp:3528 +msgid "Use native rectangular linear gradients" +msgstr "" + +#: ../src/extension/internal/emf-inout.cpp:3529 msgid "Map all fill patterns to standard EMF hatches" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3560 +#: ../src/extension/internal/emf-inout.cpp:3530 msgid "Ignore image rotations" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3564 +#: ../src/extension/internal/emf-inout.cpp:3534 msgid "Enhanced Metafile (*.emf)" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3565 +#: ../src/extension/internal/emf-inout.cpp:3535 msgid "Enhanced Metafile" msgstr "" @@ -7072,7 +7076,7 @@ msgstr "" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/sp-image.cpp:632 +#: ../src/filter-enums.cpp:29 ../src/sp-image.cpp:637 msgid "Image" msgstr "" @@ -8758,33 +8762,33 @@ msgstr "" msgid "Microsoft Visio 2013 drawing (*.vsdx)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3220 +#: ../src/extension/internal/wmf-inout.cpp:3072 msgid "WMF Input" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3225 +#: ../src/extension/internal/wmf-inout.cpp:3077 msgid "Windows Metafiles (*.wmf)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3226 +#: ../src/extension/internal/wmf-inout.cpp:3078 msgid "Windows Metafiles" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3234 +#: ../src/extension/internal/wmf-inout.cpp:3086 msgid "WMF Output" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3244 +#: ../src/extension/internal/wmf-inout.cpp:3096 msgid "Map all fill patterns to standard WMF hatches" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3248 +#: ../src/extension/internal/wmf-inout.cpp:3100 #: ../share/extensions/wmf_input.inx.h:2 #: ../share/extensions/wmf_output.inx.h:2 msgid "Windows Metafile (*.wmf)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3249 +#: ../src/extension/internal/wmf-inout.cpp:3101 msgid "Windows Metafile" msgstr "" @@ -10124,11 +10128,13 @@ msgid "Specifies the right end of the bisector" msgstr "" #: ../src/live_effects/lpe-angle_bisector.cpp:86 +#: ../src/live_effects/lpe-perp_bisector.cpp:159 msgid "Adjust the \"left\" end of the bisector" msgstr "" #: ../src/live_effects/lpe-angle_bisector.cpp:92 -msgid "Adjust the \"right\" of the bisector" +#: ../src/live_effects/lpe-perp_bisector.cpp:165 +msgid "Adjust the \"right\" end of the bisector" msgstr "" #: ../src/live_effects/lpe-bendpath.cpp:53 @@ -10938,14 +10944,6 @@ msgstr "" msgid "Fuse ends closer than this number. 0 means don't fuse." msgstr "" -#: ../src/live_effects/lpe-perp_bisector.cpp:159 -msgid "Adjust the bisector's \"left\" end" -msgstr "" - -#: ../src/live_effects/lpe-perp_bisector.cpp:165 -msgid "Adjust the bisector's \"right\" end" -msgstr "" - #. initialise your parameters here: #: ../src/live_effects/lpe-perspective_path.cpp:47 msgid "Scale x" @@ -13171,16 +13169,16 @@ msgstr "" msgid "at %d degrees, through (%s,%s)" msgstr "" -#: ../src/sp-image.cpp:640 +#: ../src/sp-image.cpp:645 msgid "embedded" msgstr "" -#: ../src/sp-image.cpp:648 +#: ../src/sp-image.cpp:653 #, c-format msgid "[bad reference]: %s" msgstr "" -#: ../src/sp-image.cpp:649 +#: ../src/sp-image.cpp:654 #, c-format msgid "%d × %d: %s" msgstr "" @@ -22752,7 +22750,7 @@ msgstr[1] "" msgid "Type text" msgstr "" -#: ../src/ui/tools/tool-base.cpp:697 +#: ../src/ui/tools/tool-base.cpp:698 msgid "Space+mouse move to pan canvas" msgstr "" diff --git a/src/live_effects/lpe-angle_bisector.cpp b/src/live_effects/lpe-angle_bisector.cpp index 2f57b710b..1acf9605f 100644 --- a/src/live_effects/lpe-angle_bisector.cpp +++ b/src/live_effects/lpe-angle_bisector.cpp @@ -89,7 +89,7 @@ LPEAngleBisector::addKnotHolderEntities(KnotHolder *knotholder, SPDesktop *deskt { KnotHolderEntity *e = new AB::KnotHolderEntityRightEnd(this); e->create( desktop, item, knotholder, Inkscape::CTRL_TYPE_UNKNOWN, - _("Adjust the \"right\" of the bisector") ); + _("Adjust the \"right\" end of the bisector") ); knotholder->add(e); } }; diff --git a/src/live_effects/lpe-perp_bisector.cpp b/src/live_effects/lpe-perp_bisector.cpp index c2a25a187..feed55b26 100644 --- a/src/live_effects/lpe-perp_bisector.cpp +++ b/src/live_effects/lpe-perp_bisector.cpp @@ -156,13 +156,13 @@ LPEPerpBisector::addKnotHolderEntities(KnotHolder *knotholder, SPDesktop *deskto { KnotHolderEntity *e = new PB::KnotHolderEntityLeftEnd(this); e->create( desktop, item, knotholder, Inkscape::CTRL_TYPE_UNKNOWN, - _("Adjust the bisector's \"left\" end") ); + _("Adjust the \"left\" end of the bisector") ); knotholder->add(e); } { KnotHolderEntity *e = new PB::KnotHolderEntityRightEnd(this); e->create( desktop, item, knotholder, Inkscape::CTRL_TYPE_UNKNOWN, - _("Adjust the bisector's \"right\" end") ); + _("Adjust the \"right\" end of the bisector") ); knotholder->add(e); } }; -- cgit v1.2.3 From 367d97e047f3b1e1fe544efb7f15061d1e83fbf0 Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Sun, 19 Jan 2014 16:48:47 +0100 Subject: i18n. No need to translate strings with one single space. (bzr r12958) --- po/inkscape.pot | 6 +----- src/ui/dialog/template-widget.cpp | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/po/inkscape.pot b/po/inkscape.pot index 2ed60009b..e80e0622b 100644 --- a/po/inkscape.pot +++ b/po/inkscape.pot @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2014-01-19 16:23+0100\n" +"POT-Creation-Date: 2014-01-19 16:41+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -20981,10 +20981,6 @@ msgstr "" msgid "More info" msgstr "" -#: ../src/ui/dialog/template-widget.cpp:37 -msgid " " -msgstr "" - #: ../src/ui/dialog/template-widget.cpp:38 msgid "no template selected" msgstr "" diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index d1697244e..d8e6f9b4f 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -34,7 +34,7 @@ namespace UI { TemplateWidget::TemplateWidget() : _more_info_button(_("More info")) - , _short_description_label(_(" ")) + , _short_description_label(" ") , _template_name_label(_("no template selected")) , _effect_prefs(NULL) { -- cgit v1.2.3 From 9f50a2b092e521634ceec0a9b06369d6a04708b2 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Sun, 19 Jan 2014 16:18:27 -0500 Subject: Allow undo methods to survive a non-sensitive call. (bzr r12959) --- src/document-undo.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/document-undo.cpp b/src/document-undo.cpp index bad4d6c81..4a4156a70 100644 --- a/src/document-undo.cpp +++ b/src/document-undo.cpp @@ -155,7 +155,7 @@ void Inkscape::DocumentUndo::maybeDone(SPDocument *doc, const gchar *key, const { g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_assert (doc->priv->sensitive); + g_return_if_fail(doc->priv->sensitive); if ( key && !*key ) { g_warning("Blank undo key specified."); } @@ -204,7 +204,7 @@ void Inkscape::DocumentUndo::cancel(SPDocument *doc) { g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_assert (doc->priv->sensitive); + g_return_if_fail(doc->priv->sensitive); sp_repr_rollback (doc->rdoc); @@ -287,7 +287,7 @@ gboolean Inkscape::DocumentUndo::redo(SPDocument *doc) g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_assert (doc->priv->sensitive); + g_return_val_if_fail(doc->priv->sensitive, FALSE); doc->priv->sensitive = FALSE; doc->priv->seeking = true; -- cgit v1.2.3 From cca2c219973a60fb6535836559aa42ec2b9cb630 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Sun, 19 Jan 2014 20:30:15 -0500 Subject: Revert changes from r12959 and r12955, impliment new stratedgy to fix bug #168695 Fixed bugs: - https://launchpad.net/bugs/168695 (bzr r12960) --- src/document-undo.cpp | 8 ++++---- src/selection-chemistry.cpp | 6 ++++++ src/ui/tools/tool-base.cpp | 16 ++++++---------- src/ui/tools/tool-base.h | 3 ++- 4 files changed, 18 insertions(+), 15 deletions(-) diff --git a/src/document-undo.cpp b/src/document-undo.cpp index 4a4156a70..39c8a04a0 100644 --- a/src/document-undo.cpp +++ b/src/document-undo.cpp @@ -155,7 +155,7 @@ void Inkscape::DocumentUndo::maybeDone(SPDocument *doc, const gchar *key, const { g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_return_if_fail(doc->priv->sensitive); + g_assert (doc->priv->sensitive); if ( key && !*key ) { g_warning("Blank undo key specified."); } @@ -204,7 +204,7 @@ void Inkscape::DocumentUndo::cancel(SPDocument *doc) { g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_return_if_fail(doc->priv->sensitive); + g_assert (doc->priv->sensitive); sp_repr_rollback (doc->rdoc); @@ -242,7 +242,7 @@ gboolean Inkscape::DocumentUndo::undo(SPDocument *doc) g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_return_val_if_fail (doc->priv->sensitive, FALSE); + g_assert (doc->priv->sensitive); doc->priv->sensitive = FALSE; doc->priv->seeking = true; @@ -287,7 +287,7 @@ gboolean Inkscape::DocumentUndo::redo(SPDocument *doc) g_assert (doc != NULL); g_assert (doc->priv != NULL); - g_return_val_if_fail(doc->priv->sensitive, FALSE); + g_assert (doc->priv->sensitive); doc->priv->sensitive = FALSE; doc->priv->seeking = true; diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index f9649d62f..1957b9297 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -1083,6 +1083,9 @@ void sp_selection_lower_to_bottom(Inkscape::Selection *selection, SPDesktop *des void sp_undo(SPDesktop *desktop, SPDocument *) { + // No re/undo while dragging, too dangerous. + if(desktop->getEventContext()->is_dragging) return; + if (!DocumentUndo::undo(sp_desktop_document(desktop))) { desktop->messageStack()->flash(Inkscape::WARNING_MESSAGE, _("Nothing to undo.")); } @@ -1091,6 +1094,9 @@ sp_undo(SPDesktop *desktop, SPDocument *) void sp_redo(SPDesktop *desktop, SPDocument *) { + // No re/undo while dragging, too dangerous. + if(desktop->getEventContext()->is_dragging) return; + if (!DocumentUndo::redo(sp_desktop_document(desktop))) { desktop->messageStack()->flash(Inkscape::WARNING_MESSAGE, _("Nothing to redo.")); } diff --git a/src/ui/tools/tool-base.cpp b/src/ui/tools/tool-base.cpp index f8868ec0e..3b51147e0 100644 --- a/src/ui/tools/tool-base.cpp +++ b/src/ui/tools/tool-base.cpp @@ -57,7 +57,6 @@ #include "shape-editor.h" #include "sp-guide.h" #include "color.h" -#include "document-undo.h" // globals for temporary switching to selector by space static bool selector_toggled = FALSE; @@ -99,6 +98,7 @@ ToolBase::ToolBase() { this->hot_x = 0; this->yp = 0; this->within_tolerance = false; + this->is_dragging = false; this->tolerance = 0; //this->key = 0; this->item_to_select = 0; @@ -979,18 +979,14 @@ gint sp_event_context_root_handler(ToolBase * event_context, gint sp_event_context_virtual_root_handler(ToolBase * event_context, GdkEvent * event) { gint ret = false; if (event_context) { - // We want to disable undo while we drag anything - SPDocument *document = sp_desktop_document(event_context->desktop); - if (event->type == GDK_BUTTON_PRESS) { - event_context->undo_sensitive = DocumentUndo::getUndoSensitive(document); - DocumentUndo::setUndoSensitive(document, false); - } else if (event->type == GDK_BUTTON_RELEASE) { - DocumentUndo::setUndoSensitive(document, event_context->undo_sensitive); - } + if(event->type == GDK_BUTTON_PRESS) + event_context->is_dragging = true; ret = event_context->root_handler(event); - set_event_location(event_context->desktop, event); + + if(event->type == GDK_BUTTON_RELEASE) + event_context->is_dragging = false; } return ret; } diff --git a/src/ui/tools/tool-base.h b/src/ui/tools/tool-base.h index 068bc6402..ab8bd8caa 100644 --- a/src/ui/tools/tool-base.h +++ b/src/ui/tools/tool-base.h @@ -118,8 +118,9 @@ public: gint xp, yp; ///< where drag started gint tolerance; + bool is_dragging; // Is a tool currently dragging something + bool within_tolerance; ///< are we still within tolerance of origin - bool undo_sensitive; /// Was undo previously sensitive before drag SPItem *item_to_select; ///< the item where mouse_press occurred, to ///< be selected if this is a click not drag -- cgit v1.2.3