summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 951cda7)
raw | patch | inline | side by side (parent: 951cda7)
author | dvlierop2 <dvlierop2@users.sourceforge.net> | |
Wed, 21 Mar 2007 20:46:18 +0000 (20:46 +0000) | ||
committer | dvlierop2 <dvlierop2@users.sourceforge.net> | |
Wed, 21 Mar 2007 20:46:18 +0000 (20:46 +0000) |
src/seltrans.cpp | patch | blob | history |
diff --git a/src/seltrans.cpp b/src/seltrans.cpp
index 150a67c3012cddc68a1b2e7ed436f95a459d7dca..5ace790ecf8a4c46e0ec6de66b6b0de2f928dbfa 100644 (file)
--- a/src/seltrans.cpp
+++ b/src/seltrans.cpp
@@ -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) {