A typical problem when change tracking is on is:
1/ insert a new space between two words (as if you want to insert a new one)
2/ move the cursor
3/ see how one has one inserted and one deleted space, whereas one would expect nothing.
The problem is fixed in a general way in master, but here we propose
a simpler one, where the spaces that we keep are the ones at the end
of the sequence of spaces.
Part of #11412.
When change tracking is active, it may happen that spaces are marked
as deleted instead of being removed. Therefore it is better to measure
the change of size of the paragraph to know how to offset the cursor.
Moreover, it the cursor was strictly after the start of the sequence
of spaces, we ensure that it is still the case.
This commit is _not_ a backport from master, which has diverged.
Part of bug #11412/
Remove special handling of spaces at end of paragraph. Now they are
handled like interword spaces by both DEPM methods.
Fix off-by-one error in loop when testing for end of paragraph.
Part of bug #11412.
(adapted from commit c00234503f)
Now we search in priority with the GUI language, and then the
language(s) specified in the LANGUAGES environment variable.
Preoviously, the GUI language would only be considered when
LANGUAGES was not set (which was a bug).
Take this opportunity to remove old compatibility code from 2007.
(cherry picked from commit e203bf519b)
When splitting parameters at commas, take into account that
commas inside curly braces are not parameter separators.
(cherry picked from commit 6316b9b7ae)
Otherwise, we will ask about it again next time, when the file
may have changed. Also, if we crash again, we'll over-write that
file, which we may not want to do.
See bug #11464.
(cherry picked from commit b804e8851c)
This is a follow-up to 714b731e. This fixes the issue when the cursor
is in front of a space
abc| def
and one inserts another space (to start a word). DEPM would eat one
space and produce
abc |def
instead of
abc | def
Additionally, fix the same_par boolean, wheich did not take the cell
index into account.
Related to ticket #11412.
(cherry picked from commit 7848d3c90c)
The PATH prefix modified through the GUI was set without
replacing embedded environment variables. This might have
caused problems on Windows with external python installations.
(cherry picked from commit 472bdf5910)
This adds a new (boolean) parameter "active" to the label cache, where
we track whether a label is deleted in ct mode (the same could be done,
if wanted, for labels in notes and inactive branches).
Deleted (inactive) labels are neither considered in the uniqueness check
nor added to the outliner. This also means that undeleted references to
deleted labels are now (correctly) marked as BROKEN.
Cherry-picked from:
[3ae6bff538/lyxgit]
[a550a613e8/lyxgit]
[c457ea90e/lyxgit]
[5cfd25697/lyxgit]
[5afacb144/lyxgit]
[54366c38e/lyxgit]
Fixes: #6563
This amends somehow 9238004c. Since the system font NanumMyeongjo
and the "mj" spec as CJK latex font are related, this change
seems appropriate.
(cherry picked from commit f092208c89)
If we use that, the document actually needs to be in utf8 encoding, and
the CJK environment needs to account for it.
Candidate for stable.
(cherry picked from commit d193cd05a8)
The column is flushed when the display of equations is flushed.
Not sure what to do with RtL languages.
Fixes bug 11324.
(cherry picked from commit 7cb0284a3f)
On Mac the inkscape binary is started by a wrapper script. This script changes the
working directory internally and fails to process files with relative path names.
The previous attempt to solve it was to pass the file names with absolute names
by prepending them with the $$p variable (representing the directory name of the files).
This broke the on screen conversion (used for SVGZ to PNG e.g. in the users guide)
because here the $$p variable is undefined.
Now the wrapper script of LyX which is used to locate the Inkscape.app bundle converts
the relative path names into absolute names and the $$p variable is removed from the
converter definitions for inkscape again.
(cherry picked from commit caa1dd2aee)
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 9b3f9cc687)
- Add note explaining this file should not be compiled on its own.
- Remove custom preamble.
- Remove setting of master document.
(cherry picked from commit 3ac2dd8e6c)
(cherry picked from commit 91d8aea8d3)
(cherry picked from commit 6e815d3eba)
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 7b7ed64a0e)
(cherry picked from commit 6cfd733dea)
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 5c1d65afee)
(cherry picked from commit 5fc035f99c)
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 d8498d4785)
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 35534231d4)
Amend eec3d1eb,7568571a
We are trying to check if the resulting file after lyx2lyx
is compilable, we have to ensure that copying the original file
to the test directory does not mangle use_non_tex_fonts-entry.
(cherry picked from commit c9e62dec53)
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 fba9f5b9e8)
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 c8f4b68423)