This broke the activation and de-activation of plural, capitalize,
etc. I guess that tells us how much those get used....
(cherry picked from commit 9b3f9cc687c5294e13555c6596184dd0e6a5d6cf)
In particular, introduce the new InsetMathScript::allowLimits method
that checks for that and honor it in getStatus/ddoDispatch.
Do the same for (over|under)brace
(cherry picked from commit 7b7ed64a0e760eccad5fff7fa944b983d0bed025)
(cherry picked from commit 6cfd733dea70bf26c512dea8491f79f68cb512e6)
In many cases, the origin xo_ of insets was forgotten.
Also fix spacing between text and label in rtl
Fixes bug #11425.
(cherry picked from commit 5c1d65afee3a37d5befcf9eb55d8d50e1d8e4f13)
(cherry picked from commit 5fc035f99c42835da41d6eb6cf5a375382c06870)
For some reason, adding a LTR/RTL Override unicode character before a
MinionPro string increases the ascent of the line.
This creates vertical offset issues when painting if the ascent used
as reference is the one of the font. Use the QTextLine ascent instead
for better results.
This is a followup to 1bed76e2a.
Fixes (reopened) ticket #11284.
Fixes ticket #10532.
Fixes ticket #10767.
(cherry picked from commit d8498d4785282a6f42a69f56ebd46ac32e1d2f51)
We need to do this unconditionally, since there is no (trivial and non-
awkward) way to update it when the bibliography paragraphs are modified.
Fixes: #4899
(cherry picked from commit 35534231d45426a842ccad0219fbffbdbda446a0)
When blinking the caret, it looks like a cool idea to only update the
small rectangle containing the caret. Actually it is an awful idea, since
the paint event will paint some rows, and these rows will not be
properly painted outside of the small rectangle. Unfortunately, the
painter will skip those "painted" rows on next paint events.
This leads to painting errors that depend on the ordering of "real"
and "caret" paint events. This is the reason why they only appeared
with split screens.
Quote of the day: ``The real problem is that programmers have spent far
too much time worrying about efficiency in the wrong places and at the
wrong times; premature optimization is the root of all evil (or at
least most of it) in programming.''
-- Donald Knuth, The Art of Computer Programming.
Fixes bug #11354.
(cherry picked from commit fba9f5b9e884f0a988bd77992772eb4986eecdec)
Eventually, all overridden virtual methods should be marked properly.
Currently, clang only warns about those in classes that already use
override in at least one place (which was the case dor GuiApplication).
(cherry picked from commit c8f4b68423520378d02fe9f953d94759b862dc55)
We need to bail out here early since otherwise the cache is prematurely
set to valid even if it is invalid with the bibliography environment.
The following checks (for timestamps of bib files) are only targeted
at bib(la)tex.
The fix is already in master.
Layouts can have spaces, underlines (that must be read as spaces, and
be enquoted)
Candidate for stable
(cherry picked from commit da273a944f4b720b1da5fd737ededc2f2129e9bc)
We used to need a hack to set the size of the layout combo, but
the code was changed in Qt 4.5 or so. Hence the appearance of this
bug in 2009. We can now just remove this hack, and all seems to
work correctly.
(cherry picked from commit d7f4346a19b69ae4f46ceba40b9e3a9744bb33f6)
I'm not entirely happy with this way of doing it. It seems messy.
But there is not another clear option right now.
(cherry picked from commit 4f0ccae3990bfe1c6ce268bfb3c22f7bfe9cfc0b)
We need to load the master document before applying the params, since
otherwise the TOC reset (and other things) happen before the master
has been loaded (and set as parent).
(cherry picked from commit ac3693c04ffaa8e5bcb69884465c5508981e347e)
The check for the iterator being in the same paragraph as the end of
selection was incorrect, because paragraphs in different cells could
have the same pit. We now additionally condition on having the same
idx.
This commit amends d1279875 (and thus 23de5e5e).
For discussion, see:
https://www.mail-archive.com/search?l=mid&q=a5afd0c01a0eb9a84fd4d050d15eb23016d6f38a.camel%40lyx.org
Thanks to Jürgen.
(cherry picked from commit c5301a6495b108df5b307da39dad5be65926f76b)
Patch by Daniel Ramöller (racoon), with slight modifications of mine.
Fixes: #10062
(cherry picked from commit 81e4f8dfb610ae8e6a5cc79a869030b229587b26
with minor adaptations)
When selecting text, in some cases a DocIterator could be forwarded
to a (non-existant) paragraph after the end. The critical part of
this fix is to break the loop at the correct place. The following
are additional improvements:
- increase readability by defining a bool named "in_last_par"
- use cur.selectionEnd().pit() instead of cur.selectionEnd().paragraph().id()
- use it.lastpos() instead of it.paragraph().size()
This commit fixes a regression introduced by 23de5e5e, and reported
at #11204.
Thanks to Jürgen and JMarc.
(cherry picked from commit d12798759aeb7bae77bec63098fd81f8cc9e554b)
In the context menu for a selection, we now only show the options
"Accept Change" and "Reject Change" if there is actually a change in
the selection. Similarly, in the toolbar, the buttons are only
enabled when there is a change in the selection.
This fixes#10338.
(cherry picked from commit 23de5e5e195f8f76aea4760f0e6999a9a4174612)
Spaces are now conserved when they surround current cursor. Examples:
abc | def
becomes
abc | def
after DEPM and
abc |
is kept as it is.
Fixes ticket #11412.
(cherry picked from commit dff0c5729e6eec4c799f60171e4d0a377327ab10)
Enclose in braces an optional argument of a math macro when it
starts with an incomplete script inset or ends with a delimiter
size-modifier macro.
(cherry picked from commit 2dcb73002666001ff55067abab05f6ab4a5760d9)
The latter has the workarea font settings, which are not of interest
here.
Fixes: #11385
(cherry picked from commit 9705b8825172ff1158b7c1451eb1c0da214808a1)
We have to take into account that Buffer::updateBuffer can modify the document.
Fix bug #11292.
(cherry picked from commit 57feb0fed0c078903900aaea069c49207c8cb9ac)
Make MathData::setBuffer set the buffer of insets that it contains.
Remove corresponding code from InsetMathNest.
update the buffer() property in the following tabular-feature
actions : copy-row, add-row, copy-col, add-col.
(cherry picked from commit 837bcbb0433316ebe528b71e7c9952638ac1baee)
The backslash is the escape character used in our parser. Hence,
when used as a path separator on Windows, it has to be itself
escaped or the path enclosed in either double or single quotes.
Windows users are maybe trained to quote paths containing spaces
but not paths with backslashes. So, we automatically escape the
backslashes when they are not already enclosed in quotes.
(cherry picked from commit 4c9df62c6cb8168d8d129f2c5f6a16ba7e895f63)
https://marc.info/?l=lyx-devel&m=154458979925296&w=2
This is related to the fix for #9158 and the caching of bibfile
information. On Windows, it is incredibly slow to run kpsewhich,
which we do to check where files actually are, so as to get info
about them (e.g., timestamps). So we have started to cache that
as a map. The map is supposed to be invalidated when various
things happen, but an oversight was causing it to be invalidated
on every cut operation. This is because cutting uses a temporary
Buffer, and the operations on it were affecting the *global* cache
of biblio file info. (It makes sense to have a global cache, since
these files are not document-specific.) Basically, we have to update
the list of bibfiles in that temporary Buffer---but that is one of
the things that invalidated the cache. The solution is only to
invalidate the cache if the list of bibfiles has actually changed
(a sensible idea anyway). The only time that will happen in the
temporary Buffer is when the copied information contains a BibTeX
inset. That should be fairly rare.