* Added modes for background image
They are "None", "Stretch", "Zoom", "Fit" and "Center".
Some problems are fixed in the code for the following purposes:
1. The background image isn't limited to translucent terminals.
2. The background color isn't blended with the background image. Blending is not only ugly but unneeded. Instead, the user can use translucent images as the background.
3. Image scaling is smooth and antialiasing.
A patch for QTerminal will follow this to use it.
* Just added some curly brackets
It was hard-coded in TerminalDisplay.cpp - Shift+Up always results in
ScrollLineUpCommand regardless of settings in *.keytab. Now those
commands are correctly parsed by KeyboardTranslator.
Fixeslxde/qterminal#348
This fix is similar to KDE/konsole@b88dfb402a
while I use signals and slots instead of introducing new pointers. That
sounds more reliable :)
Root cause:
When font is changed paintEvent is called and we draw text "Mq" to
calculate font height. Then on next paintEvent we draw original content.
Since it's done in 2 steps we get flickering.
Fix:
Do calculating and redrawing in 1 step.
Transient scrollbars don't take space but that wasn't considered in a small part of the code. This patch completes https://github.com/lxqt/qtermwidget/commit/2b7c2b38edd69613f5c1ec67958c18f438d27e4f
I encountered a small problem during a big compilation (qt), made and applied the patch and, by chance, had another big compilation (qtcreator) afterward. The test was successful, as expected.
* Disables automatic conversions from 8-bit strings (char *) to unicode
QStrings.
* Disables automatic conversion from QString to 8-bit strings (char *).
* Disables automatic conversions from QByteArray to const char * or const
void *.
* Disables automatic conversions from QString (or char *) to QUrl.
* Use QStringBuilder for more efficient string creation.
It make us aware of string and encoding conversions.
Fixes https://github.com/lxqt/qterminal/issues/415
Because they are transient by definition (since Qt 5.5), the code should not spare an extra space for them (Konsole does not have this feature).
Apart from that, the code does not need to fill the area behind the scrollbar explicitly; it is enough to auto-fill it.
Naturally, no change will be seen with styles other than Kvantum.