Commit Graph

5807 Commits

Author SHA1 Message Date
Martin T. H. Sandsmark
df7a462f85 Fix compatibility with xterm's OSC 104 without arguments
It is called by `reset`.
2023-05-16 13:58:57 +00:00
Kurt Hindenburg
eec2e87e92 For plugins, only check RELEASE VERSION MAJOR and MINOR XX.YY 2023-05-15 06:49:11 +00:00
Alexander Lohnau
2b5832a7e3 Check KPluginMetaData version before loading plugins
This will only load plugins that match the RELEASE_SERVICE_VERSION set by
the release team.

See !429
2023-05-15 06:49:11 +00:00
Matan Ziv-Av
b69a2b88ef Add a menu option for monitors to only notify once.
When this option is enabled, the monitors (prompt, activity, silence,
process termination) are disabled automatically after one notification.
2023-05-14 14:15:19 +00:00
Matan Ziv-Av
542a04560d Add "Monitor for Prompt" action
When semantic shell integration is enabled, Konsole will generate a
notification when a shell prompt is displayed.
2023-05-14 14:15:19 +00:00
Luca Carlon
fe46ddc09a Ensure both unerline and overline are drawn inside the row
This commit ensures both the underline and the overline are
both drawn inside the row. Each row keeps the same height as
the font.

If possible, the position of the underline and of the overline
are those provided by Qt. If the position is outside of the row,
then the nearest position is chosen.
2023-05-13 17:55:43 +00:00
Luis Javier Merino Morán
73026198bc Disable keyboard selection mode on resize
When resizing, the selection cursor can easily end up being out of
bounds, potentially causing a crash if trying to extend the selection
later.  Since resizing already clears the normal mouse selection on
konsole, it makes sense to also disable keyboard selection mode to avoid
trouble.

BUG: 467872
2023-05-12 21:12:03 +00:00
Luca Carlon
1f0cefa408 Invalidate a slightly larger area when scheduling a repaint
In highdpi with fractional scaling factor some lines appear in the
terminal area. This may be the result of areas that should be
refreshed with new content that are not included in the invalidated
area. This commit increases the invalidated area a bit to ensure
the missing area is included.

CCBUG: 373232
2023-05-09 21:57:15 +00:00
Matan Ziv-Av
679ce05ba6 Add two emoji sequences to the samples in the emoji font selection dialog
In order to show rendering of ZWJ sequences with VS16.
2023-05-07 20:08:15 +00:00
Matan Ziv-Av
3bf562a847 Don't decode right half of double width chars when decoding screen to text
The code is supposed to skip them, but Character::stringWidth() does not
always return the correct result, so make sure they are not decoded into
text (as NUL characters).
2023-05-07 20:08:15 +00:00
Matan Ziv-Av
be2a5ac6ae Fix width of emoji characters with VS16
VS16 (emoji presentation variation) may change the width of some
emoji characters from 1 to 2. With this commit, konsole changes the
character width in those cases.
2023-05-07 20:08:15 +00:00
Kurt Hindenburg
63616e8497 Revert "Check KPluginMetaData version before loading plugins"
This reverts commit cf312f42cc.
2023-05-07 15:55:37 -04:00
Kurt Hindenburg
6e40c93cc2 Revert "For plugins, only check RELEASE VERSION MAJOR and MINOR XX.YY"
This reverts commit 4ea97e7ddd.
2023-05-07 15:55:23 -04:00
Kurt Hindenburg
4ea97e7ddd For plugins, only check RELEASE VERSION MAJOR and MINOR XX.YY 2023-05-07 15:49:58 -04:00
Alexander Lohnau
cf312f42cc Check KPluginMetaData version before loading plugins
This will only load plugins that match the RELEASE_SERVICE_VERSION set by
the release team.

See !429
2023-05-07 14:03:35 -04:00
Kurt Hindenburg
65b5d43046 Add tests to check fix of invalid parent in profile 2023-05-02 00:06:59 +00:00
Kurt Hindenburg
9aef76a028 Do not allow an invalid parent to be set in profiles
There are numerous crashes that come from this.

BUG: 467790
2023-05-02 00:06:59 +00:00
Luis Javier Merino Morán
4682c1cbe7 Invalidate selection reference points on resize
These are used when extending a (possibly empty) selection via
shift+LMB.  When resizing, a point of reference may easily be out of
bounds if it was beyond the last line written.

BUG: 464040
2023-05-01 23:22:01 +00:00
Kurt Hindenburg
807382fabf On macOS readArguments(), check returned data for issues 2023-04-27 20:04:44 -04:00
Luca Carlon
d747635ce1 Fix position and size of the underline
When rendering underlined text in hidpi, the result may be wrong: position
of the underline may be wrong, invisible or with incorrect size.

The patch draws the line using floating point precision and changes the y coord
of the line to respect the Qt coordinate system specs.

CCBUG: 373232
2023-04-26 18:59:41 +03:00
Luca Carlon
87c895cf97 Computation of overlines and underlines is not accounting for line spacing
The computation of overline and underlines is missing the line spacing. The result
is a completely wrong position for the underlines and the overlines when line
spacing is > 0.
2023-04-25 10:51:33 +02:00
Kurt Hindenburg
b02e8e5b19 On macOS, implement readArguments()
Among other things, this allows remote tab titles and ssh profile
changes to work.
2023-04-23 17:00:31 +00:00
Kurt Hindenburg
83528f1a7c On macOS, implement setUserId which then allows readUserName to work 2023-04-23 17:00:31 +00:00
Kurt Hindenburg
c9aff2c555 Use the built-in profile for TerminalInterfaceV2; no need to add a new one 2023-04-23 16:34:42 +00:00
l10n daemon script
f841e79655 SVN_SILENT made messages (.desktop file) - always resolve ours
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"
2023-04-19 01:45:57 +00:00
Matan Ziv-Av
4a16ab981e Draw selected background for right half of double width char if selected
BUG: 468465
2023-04-14 21:41:52 +03:00
Kurt Hindenburg
31fe671f2c Add target to generate coverage html pages
Add cmake-options -DBUILD_COVERAGE=ON -DCOVERAGE_GENERATE_HTML=ON
Output will be in build folder under coverage/
2023-04-04 20:38:50 -04:00
Laurent Montel
956493dcbe Use Qt camel case includes 2023-04-04 14:37:29 +00:00
Luis Javier Merino
6466523141 Use correct kcmshellX for QtX version - Fix typo in d962ae00c 2023-03-27 21:19:23 +00:00
Laurent Montel
d962ae00c3 Use kcmshell6 on kf6 2023-03-26 20:43:39 +02:00
l10n daemon script
ea764ed7c0 SVN_SILENT made messages (.desktop file) - always resolve ours
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"
2023-03-26 01:46:37 +00:00
Marco Martin
1e611bd458 Fix a translucency repaint glitch in Wayland
When the konsole profile is set to use translucency and the konole part
is used in an app that doesn't support it, like konsole or dolphin, on X11
the translucency has no effect and the konsole part is opaque.
On wayland this doesn't happen and it tries to make that area of the app
translucent, but then the damage information is not correctly set and
there are drawing glitches in the transparent area.

This just disables transparency when the toplevel window doesn't have
the WA_TranslucentBackground attribute set.
2023-03-24 12:19:21 +01:00
Kurt Hindenburg
c2415c3121 Minor cleanup - normalize signatures 2023-03-18 20:22:35 -04:00
Kurt Hindenburg
bcf3c78de9 Fix comment spelling 2023-03-18 19:52:25 -04:00
Kurt Hindenburg
9a13e5810b Minor cleanup - remove extra semi-colons 2023-03-18 19:39:57 -04:00
Biswapriyo Nath
9b53d55db0 SSHManager: Disable checking current process name in Windows
This allows to use ssh plugin in Windows by skipping the check
if the running process is shell or not. If the running process
is not a known shell, creating any new ssh connection will fail
without any error message. It is possible to run different shell
under cmd.exe or powershell.exe. So, it is not enough to check
only the child process of conpty's conhost.exe.
2023-03-19 00:21:07 +05:30
Kurt Hindenburg
104b016c61 Remove unused variable 2023-03-17 19:13:47 -04:00
Kurt Hindenburg
82e615d6bb Comment out unused variables 2023-03-17 19:13:36 -04:00
Luis Javier Merino Morán
343e3f21e7 Restrict all KSandbox use to KCoreAddons 5.97
Other uses (and the include) of KSandbox are restricted to KCoreAddons
5.97, so do the same here so it compiles with earlier versions of
KCoreAddons.
2023-03-17 23:37:03 +01:00
Biswapriyo Nath
54a74d7e26 ptyqt: Append arguments with shell command in conpty
This helps to run a command with arguments in conpty in Windows.
For example, "C:\\Windows\\System32\\cmd.exe /c ping -t 127.0.0.1"
command can now run with the arguments. Otherwise, only cmd.exe
is executed without the arguments.
2023-03-15 22:55:47 +00:00
Waqar Ahmed
e7d336e590 Use test -x exec when in flatpak 2023-03-15 11:03:57 +00:00
Waqar Ahmed
646c935892 Fix TERM env variable not being set in flatpak
If this is not set, the whole terminal experience is useless with any
non bash shell e.g., zsh
2023-03-15 02:11:00 +05:00
Waqar Ahmed
2d0fad18dc Fix crash in ProfileSettings
Fixes the following crash

- Open Settings -> Manage Profiles...
- Click on a non default profile and edit it
- In "Edit Profile Dialog", check "Default" to make this profile default
- Click Ok, Now we are back in "Manage Profiles" dialog.
- See that "Set as Default" is still clickable, clicking it crashes konsole

BUG: 423136
BUG: 445173
BUG: 454986
2023-03-13 23:31:00 +05:00
Kurt Hindenburg
ea6bbcb4fe For ptytest failures print errno; close pty after testing
Every now and then the PtyTest fails.  A rerun typically fixes it.
Add errno output on tcgetpgrp failure. Close pty after test.

FAIL!  : Konsole::PtyTest::testRunProgram() Compared values are not the same
   Actual   (pty.foregroundProcessGroup()): 0
   Expected (pty.processId())             : 3239
2023-03-12 23:55:34 +00:00
Michal Bukovský
7a9d8839ad Allow setting cursor color with escape sequence again.
This commit 97feb543 broke support for changing cursor color 
by escape sequence if value starts with `CursorShape=`.

printf '\e]50;CursorShape=0;CustomCursorColor=#ff5f00\a'

This also implements support for setting cursor color and also for cursor
blinking without changing the current profile what is purpose of the
97feb543 change.
2023-03-12 22:06:47 +00:00
Waqar Ahmed
0a76f1f746 Fix warnings reported by windows qt6 ci
Fixes
- "warning C4804: '-': unsafe use of type 'bool' in operation"
- warning C4477: 'fprintf' : format string '%i' requires an argument of
 type 'int', but variadic argument 1 has type 'qsizetype'
2023-03-11 14:31:02 +00:00
Waqar Ahmed
4361a1ccc1 Fix Qt6 build for windows 2023-03-11 13:48:49 +05:00
Kurt Hindenburg
293629ac66 Revert "Enable windows-qt6 ci"
This reverts commit 51c089cf27.

This has 2 extra commits that I want separated.
2023-03-10 12:45:56 -05:00
Waqar Ahmed
51c089cf27 Enable windows-qt6 ci 2023-03-10 12:09:02 +05:00
Waqar Ahmed
a3d60578b1 Add SPDX license headers 2023-03-09 11:22:43 +05:00