parPos.pos()++;
}
+ // If there is an end of paragraph marker, its size should be
+ // substracted to the available width. The logic here is
+ // almost the same as in breakRow, remember keep them in sync.
+ int eop = 0;
+ if (lyxrc.paragraph_markers && ii->pos + 1 == par.size()
+ && size_type(pit + 1) < text_->paragraphs().size()) {
+ Font f(text_->layoutFont(pit));
+ // ΒΆ U+00B6 PILCROW SIGN
+ eop = theFontMetrics(f).width(char_type(0x00B6));
+ }
+
// do the metric calculation
Dimension dim;
int const w = max_width_ - leftMargin(max_width_, pit, ii->pos)
- - right_margin;
+ - right_margin - eop;
Font const & font = ii->inset->inheritFont() ?
displayFont(pit, ii->pos) : bufferfont;
MacroContext mc(&buffer, parPos);
// the width available for the row.
int const width = max_width_ - row.right_margin;
- ParagraphList const & pars = text_->paragraphs();
-
#if 0
//FIXME: As long as leftMargin() is not correctly implemented for
// MARGIN_RIGHT_ADDRESS_BOX, we should also not do this here.
row.finalizeLast();
row.endpos(i);
- // End of paragraph marker
+ // End of paragraph marker. The logic here is almost the
+ // same as in redoParagraph, remember keep them in sync.
+ ParagraphList const & pars = text_->paragraphs();
if (lyxrc.paragraph_markers && !need_new_row
&& i == end && size_type(pit + 1) < pars.size()) {
// add a virtual element for the end-of-paragraph
- Remove duplicate entries from the Symbols dialog (bug 10644).
-- Always shows the float type in the float inset label (bug 10618).
+- Always show the float type in the float inset label (bug 10618).
- Show correct color name for green in the status bar (bug 10656).
- fixes to cursor positionning on mouse click for right-to-left text
(bug 10569).
+- Fix metricsof full-width insets when paragraph endings are shown (bug #10537).
+
* INTERNALS