The old code produced crashes with gcc5 caused by calling the copy
constructor (see https://bugzilla.redhat.com/show_bug.cgi?id=1260976).
This has been filed as gcc bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67557
It is currently being marked as invalid (they claim the code is not valid and
produces undefined behaviour), but I don't think that this is correct.
Fortunately i does not matter for us whether the old code was valid or not,
since the new version is easier to understand and works with all compilers.
* Omit commented-out lines
* Properly escape backslash
* Do not allow non-space chars after delaration
* Allow blanks before # comment character
Fixes: #9746
This solves a few bugs related to the font not being set correctly.
For example, when putting a selection somewhere with
putSelectionAt(), the font was not reset so that before this commit
if the cursor was in an ERT, strange things could happen.
putSelectionAt() is notably used when highlighting the location
corresponding with a LaTeX error (GuiErrorList), when using find,
and when using the spellcheck. I could reproduce the bug using all
three of these.
Bug #9500 is an example of the type of bugs that this commit fixes.
(cherry picked from commit f8774a446b)
Currently, insets are notified that the cursor entered or leaved them
in Cursor::dispatch. This is not the case for lfuns which are handled
in BufferView.
Adding the proper code allows to fix many bugs where previews are not
updated correctly.
Fixes bug #6173.
Actually, the change is done only if the cursor language was the
document language already.
This fixes an trivial but annoying problem: create a new file (in
English), change language to your favourite language, then start to
write. Before this fix, the words come out in English, which does not
make sense.
Fixes bug #9586.
If keymaps are activated and there is a secondary keymap but no
primary one, then the pointer to the active keymap was 0x0. This can't
be good.
Fixes bug #9685.
When entering an inset from the keyboard, setCurrentFont()
was not called and thus the cursor retained the font that was set
before. This could create strange behavior that could often go
unnoticed by the user.
It is easy to imagine many other situations similar to #9597 where
the user could trigger this bug.
Fixes bug #9597.
The upcoming Mac OS version 10.11 (El Capitan) will not allow TeX the installation of links inside the /usr directory anymore.
(cherry picked from commit c11c4fd767)
This made text in smallcaps+emph display as upright instead of plain
emph. There is no latex font for smallcaps + emph, but it is not a
reason for displaying it wrong.
Fixes bug #3519.
* Fix crash when zooming after latex failed to generate any output for previews.
This was new in 2.1.4, so no status line is needed.
* Fix crash when copying macros with instant preview on.
The path argument of checkProg* was added to the PATH list in a nested
loop such that the list doubles in size each time the loop is executed,
thus also slowing down detection of missing programs.
The patch also makes sure that only the macros actually used in a
math inset are included in the preview snippet. In this way, the
size of the tex file used for generating the previews does not
explode in the presence of lots of macros.
Create new helper class UndoGroupHelper, which simplifies a lot the
handling of undo groups in cases like this one. The class tracks open
undo buffers and allows to switch buffers transparently.
Using the class for advanced search and replace is trivial. The class
may be useful in some other classes.
Also fix the status.21x file that had DOS end of lines and reorder a few undo-related entries.
Fixes ticket #8658