- 07 Jun, 2021 12 commits
-
-
AutoScrollHandler allows to extend the selection by dragging the mouse outside the display. It does this by generating synthetic mouse move events when the left mouse button is held down and the mouse is moved outside of the display area. This improves the user experience of extending the selection to cover text that is scrolled outside the display area. Unfortunately, this was broken by commit 6667d96e, which filters out mouse move events if they don't change the character cell position. So, modify the filtering a bit, allowing mouse movements outside the display area to pass through.
-
Something was swallowing mouse moves on the top left 100x30 pixels of TerminalDisplay. As it turns out, it was the widgets for TerminalFonts and TerminalColor. Neither of them really needs to be a QWidget. TerminalColor emits the onPalette(const QPalette &) signal, has slots, and overrides event(QEvent &), so turn it into a QObject. TerminalFonts doesn't do any of the above, turn it into a plain C++ object. Now that TerminalFonts is no longer a QObject, manage it with a std::unique_ptr. TerminalFonts::fontChange(const QFont &) was calling update(), which was probably a leftover from when it was split from TerminalDisplay. Get rid of it. Trivial testing using keyboard shortcuts to change font size (Ctrl++, Ctrl+-, Alt+Ctrl+0), and previewing font changes on "Edit Current Profile..." seem to indicate that it isn't needed.
-
Mode 1003 reports all mouse movement. Support it in Konsole. BUG: 391967 BUG: 416530 BUG: 423333
-
xterm's DECSET 1000 requests justs press and release notifications, so do not send move events on this mode. BUG: 302731
-
On xterm, modes 9 (X10 legacy, button press), 1000 (button press and release), 1001 (mouse highlight tracking), 1002 (mouse drag) 1003 (mouse move) and DECELR (DEC Locator) are mutually exclusive. So are 1005 (extended coordinates mode), 1006 (SGR extended coordinates), 1015 (urxvt extended coordinates) and 1016 (use pixel coordinates). On xterm, disabling any of the 9, 1000, 1001, 1002, 1003, DECELR modes disables mouse tracking. To disable the extended coordinate modes (1005, 1006, 1015, 1016), the current mode should be disabled. So, do the same for the modes Konsole supports.
-
The read-only property wasn't being respected for mouse move and mouse release events.
-
As explained by magiblot at the bug below, "When double clicking with the right button, the sequences sent to the application in the terminal are DOWN-UP-UP instead of DOWN-UP-DOWN-UP." BUG: 425926
-
Martin Tobias Holmedahl Sandsmark authored
CCBUG: 432376 CCMAIL: cbc.alves@gmail.com
-
Martin Tobias Holmedahl Sandsmark authored
-
-
-
When a Splitter has only one child, it can be removed, and the child can be united with the widget above, unless it's the only splitter - as that holds the main widget.
-
- 05 Jun, 2021 1 commit
-
-
Heiko Becker authored
(cherry picked from commit 1a62df92)
-
- 01 Jun, 2021 1 commit
-
-
Adriaan de Groot authored
The existing code scans through `programs` to find an acceptable shell to start; `_program` is the shell that is configured for the session (line 456). The first shell to be found from that list, is assigned to `exec` and we'll run that shell. If the shell found wasn't the one configured (e.g. one of the other ones from the list) then a warning is printed, but we carry on. **However**, if the shell found is the **last** one in the list (i.e. `/bin/sh`) then a warning is printed and the shell does not start. If the configured shell is `/bin/sh` this obviously breaks down: it is found (as the first one in the list!) but still equals the last one; the warning is printed and nothing runs. It is unclear **why** `/bin/sh` is not allowed as a shell: it exists, it's an executable, and it's an interactive shell. Curiously, configuring the shell as `sh` for the session runs `/bin/sh` in the end, but just tricks the logic here: - `checkProgram("sh")` returns `sh` as string, - so the comparison against `/bin/sh` fails, - and we can run `sh` .. which is `/bin/sh`. There's no good reason to forbid `/bin/sh`, so change the check to **only** fail if no shell was found at all (`exec` stayed empty) or if the found shell behaves weirdly (is not equal to itself).
-
- 25 May, 2021 1 commit
-
-
Luis Javier Merino authored
Commit 72d604c6 refactored some code from TerminalDisplay into a new TerminalColor class, and in the process lost an F on setAlphaF(). BUG: 437223
-
- 24 May, 2021 2 commits
-
-
A new assert in GCC 11.1.0 std::piecewise_linear_distribution fails in the case that the lower and upper boundaries are equal. So, make sure to not construct a std::piecewise_linear_distribution when minSaturation equals maxSaturation and when minLightness equals maxLightness. BUG: 434892
-
Ahmad Samir authored
It should be uint. I am not sure this fixes the mentioned bug, but it's correct anyway, std::mt19937 and co. unsigned types; and we shouldn't mix signed with unsigned. CCBUG: 434892
-
- 23 May, 2021 1 commit
-
-
Carlos Alves authored
Was missing the startColumn factor in the startCopy position. BUG: 436845
-
- 16 May, 2021 1 commit
-
-
Ahmad Samir authored
We only need to set the favourite emblem for the default profile icon, for other profiles, the profile icon is already set on the menu action. Rename a lambda to a more meaningful name. BUG: 437200 FIXED-IN: 21.08
-
- 07 May, 2021 1 commit
-
-
Heiko Becker authored
(cherry picked from commit 2680966a)
-
- 06 May, 2021 1 commit
-
-
Alexander Lohnau authored
-
- 05 May, 2021 3 commits
-
-
Keep _cuY position inside max screen lines in AppScreen mode.
-
Commits 9ffe33a2 and 4352df00 introduce and use a getScreenLineColumns(line) method to provide support for DECDWL (Double-Width) lines. It turns out that under some conditions on resize Screen::_cuY (the current cursor Y position) and ScreenWindow::endWindowLine() can have different ideas of how many lines the terminal has. A test that asserts: - while [ true ]; do echo -e "\e[?1047h"; done - Resize the window, making it smaller BUG: 436327
-
Restore Y coordinate before X coordinate, so we make sure Y is in bounds before trying to access _lineProperties depending on Y. To test: - Go to the last line - tput sc - Shrink the terminal - tput rc
-
- 03 May, 2021 4 commits
-
-
* Using internal erase function instead of While loop. * Just clear if there is only one line.
-
Declaring it where there is no change in content and enable compiler to perform better optimizations.
-
It is removing the vector of lines storage. Now it is using a similar idea used in history file. All chars are stored in a linear way, only the line indexes are changed when reflowing. No speed problem found when removing lines.
-
Friedrich W. H. Kossebau authored
GIT_SILENT
-
- 01 May, 2021 1 commit
-
-
Carlos Alves authored
When you open settings and close it, than open a new window, than close the old window, the MainWindow with the settings will delete the configDialog. If you try to open settings againg it crashes. Fix is each MainWindow now has its own configDialog. BUG: 436366
-
- 30 Apr, 2021 1 commit
-
-
Kurt Hindenburg authored
-
- 29 Apr, 2021 1 commit
-
-
Alexander Lohnau authored
-
- 28 Apr, 2021 1 commit
-
-
Carlos Alves authored
When needed CompactHistoryBlock can now increase from 256kb to a bigger size. BUG: 436031
-
- 26 Apr, 2021 2 commits
-
-
Nicolas Fella authored
This fixes the rendering on highdpi screens
-
- 25 Apr, 2021 1 commit
-
-
Yuri Chornoivan authored
-
- 24 Apr, 2021 1 commit
-
-
Add three layouts to the toolbar; add --layout <file> to the command line. The 3 defaults layouts are 2x2, 2x1, 1x2 GUI:
-
- 21 Apr, 2021 1 commit
-
-
Script Kiddy authored
In case of conflict in i18n, keep the version of the branch "ours" To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
-
- 17 Apr, 2021 3 commits
-
-
Kurt Hindenburg authored
-
Kurt Hindenburg authored
-
Kurt Hindenburg authored
-