diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2016-04-08 13:47:33 +0000 |
|---|---|---|
| committer | jabiertxof <info@marker.es> | 2016-04-08 13:47:33 +0000 |
| commit | 1106ff9eeb561af9216563e3eb7422088fac4cf5 (patch) | |
| tree | 8dc88ec1211b985e18c86835196d45e124d8cfe4 /src/display | |
| parent | update to trunk (diff) | |
| parent | Bug #1552765 fixed Break Apart dont handle well stroke with in documents diff... (diff) | |
| download | inkscape-1106ff9eeb561af9216563e3eb7422088fac4cf5.tar.gz inkscape-1106ff9eeb561af9216563e3eb7422088fac4cf5.zip | |
update to trunk
(bzr r13645.1.125)
Diffstat (limited to 'src/display')
| -rw-r--r-- | src/display/drawing-text.cpp | 16 | ||||
| -rw-r--r-- | src/display/sp-canvas-item.h | 1 | ||||
| -rw-r--r-- | src/display/sp-canvas.cpp | 1 |
3 files changed, 11 insertions, 7 deletions
diff --git a/src/display/drawing-text.cpp b/src/display/drawing-text.cpp index a3ca7173a..f0d83abfd 100644 --- a/src/display/drawing-text.cpp +++ b/src/display/drawing-text.cpp @@ -100,14 +100,16 @@ unsigned DrawingGlyphs::_updateItem(Geom::IntRect const &/*area*/, UpdateContext above and below the max/min y positions of the letters to place the text decorations.*/ Geom::Rect b; - if(_drawable){ - Geom::OptRect tiltb = bounds_exact(*_font->PathVector(_glyph)); - Geom::Rect bigbox(Geom::Point(tiltb->left(),-_dsc*scale_bigbox*1.1),Geom::Point(tiltb->right(),_asc*scale_bigbox*1.1)); - b = bigbox * ctx.ctm; + if (_drawable) { + Geom::OptRect tiltb = bounds_exact(*_font->PathVector(_glyph)); + if (tiltb) { + Geom::Rect bigbox(Geom::Point(tiltb->left(),-_dsc*scale_bigbox*1.1),Geom::Point(tiltb->right(),_asc*scale_bigbox*1.1)); + b = bigbox * ctx.ctm; + } } - else { // Fallback, spaces mostly - Geom::Rect bigbox(Geom::Point(0.0, -_dsc*scale_bigbox*1.1),Geom::Point(_width*scale_bigbox, _asc*scale_bigbox*1.1)); - b = bigbox * ctx.ctm; + if (b.hasZeroArea()) { // Fallback, spaces mostly + Geom::Rect bigbox(Geom::Point(0.0, -_dsc*scale_bigbox*1.1),Geom::Point(_width*scale_bigbox, _asc*scale_bigbox*1.1)); + b = bigbox * ctx.ctm; } /* diff --git a/src/display/sp-canvas-item.h b/src/display/sp-canvas-item.h index 66cd03dd9..00edb4dee 100644 --- a/src/display/sp-canvas-item.h +++ b/src/display/sp-canvas-item.h @@ -62,6 +62,7 @@ struct SPCanvasItem { Geom::Rect bounds; Geom::Affine xform; + int ctrlResize; Inkscape::ControlType ctrlType; Inkscape::ControlFlags ctrlFlags; diff --git a/src/display/sp-canvas.cpp b/src/display/sp-canvas.cpp index d17271752..81ea7d142 100644 --- a/src/display/sp-canvas.cpp +++ b/src/display/sp-canvas.cpp @@ -360,6 +360,7 @@ static void sp_canvas_item_init(SPCanvasItem *item) { item->xform = Geom::Affine(Geom::identity()); + item->ctrlResize = 0; item->ctrlType = Inkscape::CTRL_TYPE_UNKNOWN; item->ctrlFlags = Inkscape::CTRL_FLAG_NORMAL; |
