In particular, the directory frontends/qt4 is renamed to frontends/qt.
Many configurations file have to be updated. All mentions of qt4 in
the source have been audited, and changed to qt if necessary.
The only part that has not been updated is the CMake build system.
By default, the behavior is the same as before, except that the
language of new document is not unconditionally en_US anymore.
The new checkbox "Respect OS keyboard language" (off by default)
governs this behavior.
Update prefs format to 30.
Instead of setting language from context when moving the cursor, set
it to the OS input language. This behavior will probably need to be
controlled by a preference, since not everybody changes keyboard
mapping when changing language.
This required to move BufferView::setCursorLanguage to
Cursor::setLanguageFromInput().
This bug provides two features:
1/ when a new document is created the language is set to the current
keyboard language.
2/ when keyboard is switched at OS level, the input language of
current window is changed. The language is set preferably to one of
those of the document. Ex. if the keyboard changes to en_GB but one
is typing a document in US English and Hebrew, then US English will
be selected rather that adding UK English to the list.
The implementation depends a lot on Qt. The platform status is :
* working on Windows 10
* not working with Linux (although 1/ works with Qt4); it seems that
Qt5 supports switching through ibus, but I do not know what this
means.
* not yet tested on macOS.
This addresses bugs #6450, #6247 and somehow #10514.
This is done to ensure that numbering never overlaps equations. The
result can be different according to the bufferview, which is why
RowInfo::offset is now a std:map.
Remaing issues (how bad are theese ?):
- the numbering is considered too large when it overlaps the inset
rect, whereas one could consider the width if the current row
instead.
- previews may need to be adapted similarly to fit the whole screen width
This is the first (easiest) step in fixing bugs 10668 and 11333.
The numbering is now drawn outside of the insets, which solves the
alignment problems and make editing easier.
What does not work yet:
- long labels will overwrite equations. To fix this, we need to
implement the same algorithm as LaTeX and put labels on their own
row when required.
- previews may need to be adapted similarly to fit the whole screen width
It is not a good idea to call caretPosAndHeight when the caret is in a
paragraph that is not in cached metrics. This can happen when not
using "cursor follows scrollbar".
This commit refactor things a bit so that testing is done in
BufferView.
This bug is not in 2.3.x.
Like with macOS, the Wayland compositor seems to require a
backingstore when doing partial updates like we do.
This extends the mechanism that has been introduced for macOS. This
has to be done at run time, not compile time.