summaryrefslogtreecommitdiffstats
path: root/src/display
diff options
context:
space:
mode:
authorLiam P. White <inkscapebrony@gmail.com>2014-07-27 01:17:50 +0000
committerLiam P. White <inkscapebrony@gmail.com>2014-07-27 01:17:50 +0000
commit0ac6f5cccf5aaa8bb8d97fdf96d040646b7056c1 (patch)
treef3f00d4c95db349232b1e201fd2e45118d511f6e /src/display
parentFix for 1309050 (diff)
parentProperly fix 1309050, revert incorrect fix for 601336 (diff)
downloadinkscape-0ac6f5cccf5aaa8bb8d97fdf96d040646b7056c1.tar.gz
inkscape-0ac6f5cccf5aaa8bb8d97fdf96d040646b7056c1.zip
Merge from trunk 13472
(bzr r13341.1.102)
Diffstat (limited to 'src/display')
-rw-r--r--src/display/drawing-text.cpp23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/display/drawing-text.cpp b/src/display/drawing-text.cpp
index 05a2c3c2a..9f3b447df 100644
--- a/src/display/drawing-text.cpp
+++ b/src/display/drawing-text.cpp
@@ -150,25 +150,26 @@ unsigned DrawingGlyphs::_updateItem(Geom::IntRect const &/*area*/, UpdateContext
return STATE_ALL;
}
-DrawingItem *
-DrawingGlyphs::_pickItem(Geom::Point const &p, double delta, unsigned /*flags*/)
+DrawingItem *DrawingGlyphs::_pickItem(Geom::Point const &p, double /*delta*/, unsigned /*flags*/)
{
DrawingText *ggroup = dynamic_cast<DrawingText *>(_parent);
if (!ggroup) {
throw InvalidItemException();
}
+ DrawingItem *result = NULL;
bool invisible = (ggroup->_nrstyle.fill.type == NRStyle::PAINT_NONE) &&
(ggroup->_nrstyle.stroke.type == NRStyle::PAINT_NONE);
- if (!_font || !_bbox || (!_drawing.outline() && invisible) ) {
- return NULL;
- }
- // With text we take a simple approach: pick if the point is in a character bbox
- Geom::Rect expanded(_pick_bbox);
- // FIXME, why expand by delta? When is the next line needed?
- // expanded.expandBy(delta);
- if (expanded.contains(p)) return this;
- return NULL;
+ if (_font && _bbox && (_drawing.outline() || !invisible) ) {
+ // With text we take a simple approach: pick if the point is in a character bbox
+ Geom::Rect expanded(_pick_bbox);
+ // FIXME, why expand by delta? When is the next line needed?
+ // expanded.expandBy(delta);
+ if (expanded.contains(p)) {
+ result = this;
+ }
+ }
+ return result;
}