Code

change uint to more portable unsigned int
[inkscape.git] / src / connector-context.cpp
index 34f5ba3ed0dde0d5702e2dda9e4163ac06890937..f3296aebfd0a3459bfcf3ff90f30d5fbdede2bfc 100644 (file)
@@ -279,6 +279,10 @@ sp_connector_context_setup(SPEventContext *ec)
     if (prefs_get_int_attribute("tools.connector", "selcue", 0) != 0) {
         ec->enableSelectionCue();
     }
+
+    // Make sure we see all enter events for canvas items,
+    // even if a mouse button is depressed.
+    dt->canvas->gen_all_enter_events = true;
 }
 
 
@@ -298,6 +302,10 @@ sp_connector_context_finish(SPEventContext *ec)
     }
     cc_clear_active_shape(cc);
     cc_clear_active_conn(cc);
+
+    // Restore the default event generating behaviour.
+    SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(ec);
+    desktop->canvas->gen_all_enter_events = false;
 }
 
 
@@ -780,7 +788,8 @@ spcc_connector_set_subsequent_point(SPConnectorContext *const cc, NR::Point cons
     Avoid::Point dst = { d[NR::X], d[NR::Y] };
 
     if (!cc->newConnRef) {
-        cc->newConnRef = new Avoid::ConnRef(0, src, dst);
+        Avoid::Router *router = SP_DT_DOCUMENT(dt)->router;
+        cc->newConnRef = new Avoid::ConnRef(router, 0, src, dst);
         cc->newConnRef->updateEndPoint(Avoid::VertID::src, src);
     }
     cc->newConnRef->updateEndPoint(Avoid::VertID::tar, dst);
@@ -1283,7 +1292,7 @@ cc_selection_changed(Inkscape::Selection *selection, gpointer data)
     
     if (cc->active_conn == item)
     {
-        // Noting to change.
+        // Nothing to change.
         return;
     }
     if (item == NULL)