(cherry picked from commit 5064c09e9f57a7ffb6082a7f8ec06c03ee9a0cef)
Update the Advanced F&R document class when switching buffers.
(cherry picked from commit 944b0ae55dd89e48bf8845c6d5e08a73bd1c4917)
The nice hand-made solution for moving tabs has made its time. Use Qt's feature
instead from now on.
(cherry picked from commit 19794963990f13aaae2cd575b2f445585ec82910)
When using QTextDocument to check the natutal size of a text, one has
to remove the text margin, which is not useful here.
Fixes bug #11353.
(cherry picked from commit 7db99672e6838535d837096ab2344e7ecedb47e3)
Instead of "Save" (permanently) and "Apply" (temporarily), OK and Apply
now always save permanently, unless the new checkbox "Apply to current
session only" is checked.
Addresses: #10016
(cherry picked from commit c7bdb3b342823d3144f3c73e125e274aa40c77e2)
If we were not ready to paint the screen, this does not mean that we
should give up on repainting, just potpone it.
I thought that it was bad to call update() in the paint event, but I
cannot find reference to this anymore and everything seems to work as
intended.
Fixes part of bug #11323.
(cherry picked from commit 38f09c177b7da08f852e13c9a50fd2e8098b7491)
(cherry picked from commit 2617a4dd501c64048573e2d9c4e6fb9f423a1067)
We do not know what to do with horizontal scrolling events, so we ignore them.
Note that the code has to be different between Qt4 and Qt5.
Fixes bug #11257.
(cherry picked from commit 2cfbc5ecf6e26da0ca3f61372e5373d1ef4f7ab7)
1/ Handle space in color name in set-color (with quoting)
2/ read properly branch inset which name has a space
Fixes bug #11108.
(cherry picked from commit 819cf53c2254f17e9bb6c6b971904451cfaaae6d)
The goal of this patch is to make "self-insert <string>" act as a
sequence of individual self-insert calls. Once it is done, the
insertion of the commit string in GuiWorkArea can use that, which
fixes the issues described in bug 11183.
1/ in InsetMathNest, SELF_INSERT is rewritten to be a proper loop of
interpretChar, instead of inserting the string as characters. This
solves the issue of interpreting ^ properly.
2/ the text version does not need to be changed (the loop is rewritten
using a range, though).
3/ Then {{{GuiWorkArea::inputMethodEvent}}} is changed to invoke
directly self-insert. This removes the update issues.
Fixes bug 11183.
(cherry picked from commit ad5548cfe39a17389ca721aab896e876f2cd4124)
A new UNDECIDED state is used if multiple cells with differing border
settings are selected.
This prevents additional borders to be set without being asked.
Fixes: #10010
(cherry picked from commit 99aefa5fd2c2184f0a67930046956df7d8f611df)
Minted does not have a language option but it is possible to enter
this option in the LyX interface for compatibility with the listings
package, and also for letting to enter a language not present in the
gui. So, this option is only used for properly specifying a language
in a listing, unless it is entered in the document settings dialog.
This case was not foreseen and thus the option was being passed to
the package as is, causing havoc. With this commit the option is
still available but is used to set a default language for a new
listing in place of the default "tex" language used so far.
(cherry picked from commit 16ca5290c0d619df23406275e6698594b90ce7ab)
Qt 5.2 introduces the possibility to place a checkbox on a QMessageBox,
so we need no longer to use our own crude dialog.
(cherry picked from commit 0148ef7e6c2f01ce96b91567af5e2b160f9d070a)
This is detected when an undo group is open and contains at east one
element. This means indeed that changes are in progress. Note that the
group is in general opened in GuiApplication::dispatch. The code there
is changed to ensure that the group is closed before updating the
screen.
This patch is experimental. It is expected to be replaced in master by
a more complete solution. It could in the meantime be backported to 2.3.x.
Fixes bug #11159.
(cherry picked from commit c7496a11b2f0bd714b6c2ee0f7189ff420e014ce)
(cherry picked from commit 4d0c43f9aa944649d4b5788c5de98d37c280a036)
The problem is that popping dialogs during reload can cause paint
events for which we are not ready. If this does not work, then we
can introduce a new flag, besides 'busy', for that case. But busy
does not seem to be used very widely, so hopefully this works.
Note that when paintEvent is triggered on macOS, the least we can do
is to copy our backing store to the screen.
(cherry picked from commit 19e6977b5b527ec8311da35d8f0a40d6fd509080)
(cherry picked from commit d03deeca0c666256ea68087c5c70b8de73b66edc)
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)
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 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 a master document is compiled and has errors, and then a child is
compiled without error, the errors from the master compilation were
shown.
The setup of the relevant code is the following:
processingThreadFinished() calls errors(). errors() makes the
assumption that if it is called, there must have been an error
somewhere.
The logic of the setup is the following:
processingThreadFinished() knows whether there was an error on
the most recent preview/export, although it doesn't know whether
the error is from master or child (i.e. does not know whether the
user was compiling the child, or whether master-buffer-view was
called). Inside error(), if there is no error in the child, it is
assumed the error is from master.
For the above logic to work, errors() should only be called if there
was an error.
This commit fixes#11106 and preserves the fix to #7330.
(cherry picked from commit 8d2b121ef506804fe2c894a61cd4232e87254847)
This change is made in response to Ticket 10992.
The change made is consistent with those captured in Ticket 9966.
(cherry picked from commit 869e2fe9b9e5a6966665e1d82da0555ed03a2b5e)
Add a new LyXRC variable use_native_filedialog (true by default) that
allows to select the kind of FileDialog we want at runtime.
(cherry picked from commit af795b80d8512926261e2457bc5f2e0ac017bec4)
* Describe the viewport/bb situation more accurate
* Use generic term "coordinates", since bb and viewport are flavor-specific
* Add some tooltips
* Increase the width of the options widget.
(cherry picked from commit c462fadff57373744e27ac38df04bac2c651b67c)
- the column width must be as wide as the column header text
- also center the radiobuttons in the table
- also use alternating colors for the table rows
(cherry picked from commit a69f1a9e161c87cc58e1a2dcec1e174136190b89)