Completion uses a complicated async scheme based on timers to update
itself. This is probably not necessary anymore and is fragile to
event order changes.
This is what happens with the new painting scheme. Therefore the
asyncHideXXX() methods have to be made more robust and detect whether
completion state has changed by the time they are triggered.
(cherry picked from commit f1ea7fee5cda3fbbeb9fdbb8bec2bd91c0745e56)
This avoid cases where the blinking cursor erases the frame.
(cherry picked from commit 4e9084b3e48697efc3eb4cc7a76b87f99a5e4aed)
(cherry picked from commit 6bcc7d6e42a53979b5c002ea445cf1e32006571e)
When an image has to be loaded a second time and the cache
is not used or the image is not in the cache, its preview is
going to be regenerated again. Hence, if the same image
appears more than once on screen, avoid requesting simultaneous
generation of the same preview.
See also this thread:
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg205057.html
The code in 90cfe4ec3 only handled the cells which metrics are
computed directly, and missed those who were linearized inside a MathRow.
To fix this, we use the fact that all the positions in a math row have
the same height and make MathRow::metrics return a boolean indicating
whether it contains a caret for a given bufferview.
Fixes bug #11153.
(cherry picked from commit a3868e40a40853bf3500ec4b3fb1a152f846464c)
LyX on Mac uses a user directory with version suffix. On change of the version suffix
the existence of the directories with previous versions is checked and the latest one
is used for a copy on first configure run.
For 2.3 the candidate list starts with 2.2 now as it should.
(cherry picked from commit 17c3617c49487977e5c46de20cb450952c68b03d)
It is better to handle SinglePar before FitCursor, since the later
requires correct metrics at cursor position.
Fixes bug #11139 and probably #11125.
(cherry picked from commit 7f83d26934e50e3d83e254b0f9ab847d957053f7)
Compute a height from current font and current cell vertical
dimensions in MathData::metrics(), because this is where current font
is known.
Introduce BufferView::setCaretAscentDescent to remember this value.
This mechanism is not used for text because Cursor::current_font is
restored by undo, and the caret height would not be changed then. But
in principle it is doable.
(cherry picked from commit 90cfe4ec3b4ff22ef798a63e98ca70d0d33a1656)
When computing a cell metrics, it is now possible to specify whether it
is tight (at least as tall as 'x') or not (as tall as the max height of
the font).
Use this to make sure that grid insets have large enough cells. It
will probably appear that other cells needn't be tight. Currently, the
only cell which is known to be tight is the nucleus of the root inset.
Others should be examined one by one. It might be that the default of
MathData::metrics tight parameter should be `false'.
Fixes bug #11050.
(cherry picked from commit 7bcb78a77875ecae0f54063ff02ec90e1b78f8b6)
The value used here is the x height. It would be nice to see what the
TeXbook really says.
This makes a big difference with \tilde{.}, for example.
(cherry picked from commit 6df8c42e59f7dbe00d585525d1ce7e91a42411ca)
We have a couple of converters (using Sweave and knitr to "tangle"
an intermediate file) that are used for exporting code chunks
contained in a .lyx file. Since the code is just exported to a text
file and is not executed, needauth is not necessary.
(cherry picked from commit 065e37e96ff37dd891e47aede84258fd9adf23cf)
It surprises me a bit that the code is different in this case
from the case when EXPORT_in_THREAD is not set. I should check
to see if there's a problem in the other case, too.
(cherry picked from commit 0fc50a26371b9cbaf2cd73c5e377c86bf7fdb215)
This commit fixes an issue where the menu option "Insert Separated
Frame Below" would show up twice, with one instance disabled. This
occurred when there was a "Standard" environment nested in a
"Frame". With this commit, the duplicate instance is removed.
(cherry picked from commit 4f7a5f8c3e1bb633a9ee92cf692a116180537073)
The fixes are simple and on line with the changes made during
the 2.3 development. It was an oversight to leave them out.
With this commit all the python scripts should be supported by
python 2 and 3.
(cherry picked from 5b160e82be3797ae57632174f2510a132a7558a1)
The fixes are simple and on line with the changes made during
the 2.3 development. It was an oversight to leave them out.
With this commit all the python scripts should be supported by
python 2 and 3.
The new code is much simpler: what it does is, after redrawing has
been done, to mark the cursor row as changed, so that it will be
repainted on next paint event.
This avoids some crashes at the price of possibly repainting the row
when it was not necessary.
(cherry picked from commit 2f1eb35b868aaa5adb83ff358c2468551e25685e)
This causes problems with biblatex. Instead, we sort the old and
new lists and then compare them.
(cherry picked from commit 6b095e2b7107110bec593edd02bbdcf25adae76a)
When the cursor is inside a subscript that may become empty, metrics
issues can happen. This patch fixes the issue, although it is not
clear to see what the problem is.
Still, requesting a metrics update also in the case where the macro
mode is canceled makes sense.
Fixes bug #11125.
(cherry picked from commit 68ec34e60343a5dec9f32d60c79a2c0825b62d12)
The idea here is to force commands to be run syncrhonously when
they are launched via "command-sequence" or "repeat". We do this
by using a new flag in FuncRequest.
(cherry picked from commit 2477493cf5641c9e6ccb4c1b52548a0e9b104ea0)
If we're in the first paragraph after a division (section, etc),
use the prefix for it.
(cherry picked from commit dd2efe8d0d1fb7070c4fa0cbcb52f15a48bec33b)
For some reason, special code was added for LFUN_INDEX_INSERT
when it was not actually needed. So just delete it.
(cherry picked from commit 83356ab9fed1b6ab24d129486ab8e3c7dfd6ea4a)
Spaces are, amazingly, allowed at the end of bibliography keys. So we
introduce a new parameter allowing getVectorFromString not to trim
whitespace, and then use it.
For some reason, this seems not actually to have been backported
to 2.3.x.