mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-23 13:31:49 +00:00
Automatically adjust tab stop width
Extend tab stops to the same indentation point instead of a fixed number of spaces. Fix for bug #12736
This commit is contained in:
parent
a487a7e250
commit
bb16efc07e
@ -899,10 +899,13 @@ Row TextMetrics::tokenizeParagraph(pit_type const pit) const
|
||||
FontMetrics const & fm = theFontMetrics(text_->labelFont(par));
|
||||
int const wid = fm.width(par.layout().labelsep);
|
||||
row.addMarginSpace(i, wid, *fi, par.lookupChange(i));
|
||||
} else if (c == '\t')
|
||||
row.addSpace(i, theFontMetrics(*fi).width(from_ascii(" ")),
|
||||
} else if (c == '\t') {
|
||||
// Make tab stop size adjust automatically depending on char number
|
||||
int tabStopWidth = 4;
|
||||
std::string s = std::string(tabStopWidth - i % tabStopWidth, ' ');
|
||||
row.addSpace(i, theFontMetrics(*fi).width(from_ascii(s)),
|
||||
*fi, par.lookupChange(i));
|
||||
else if (c == 0x2028 || c == 0x2029) {
|
||||
} else if (c == 0x2028 || c == 0x2029) {
|
||||
/**
|
||||
* U+2028 LINE SEPARATOR
|
||||
* U+2029 PARAGRAPH SEPARATOR
|
||||
|
Loading…
Reference in New Issue
Block a user