Code

Fix for bug #1589436 - font baseline now correctly snaps in selector tool
authordvlierop2 <dvlierop2@users.sourceforge.net>
Wed, 21 Mar 2007 20:46:18 +0000 (20:46 +0000)
committerdvlierop2 <dvlierop2@users.sourceforge.net>
Wed, 21 Mar 2007 20:46:18 +0000 (20:46 +0000)
src/seltrans.cpp

index 150a67c3012cddc68a1b2e7ed436f95a459d7dca..5ace790ecf8a4c46e0ec6de66b6b0de2f928dbfa 100644 (file)
@@ -255,7 +255,14 @@ void Inkscape::SelTrans::grab(NR::Point const &p, gdouble x, gdouble y, bool sho
 
     _point = p;
 
-    _snap_points = selection->getSnapPointsConvexHull();
+    _snap_points = selection->getSnapPoints();
+    if (_snap_points.size() > 100) {
+        /* Snapping a huge number of nodes will take way too long, so limit the number of snappable nodes
+        An average user would rarely ever try to snap such a large number of nodes anyway, because 
+        (s)he could hardly discern which node would be snapping */
+        _snap_points = selection->getSnapPointsConvexHull();
+        // Unfortunately, by now we will have lost the font-baseline snappoints :-(
+    }
     _box = selection->bounds();
     _bbox_points.clear();
     if (_box) {