Change actions to use ActionBuilder and
use ToggleAspects for tool buttons.
Change-Id: I0f4a58c3a98cb2804e3d387ea02cac043bd71ae7
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
FilePath::toUrl does not pass queries correctly to QUrl.
So we use QUrl::fromUserInput directly.
Fixes: QTCREATORBUG-29850
Change-Id: If0706b3b37d03eeea87247b44f07f8a0f8915a95
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Previously most errors when opening shells were completely
opaque to the user. This patch adds error output either via
QMessageBox if there is another modal dialog, or as flashing
disrupting messages.
Change-Id: I54be7a90295b61c23c739294c2d1d37c288ad273
Reviewed-by: hjk <hjk@qt.io>
Clean-up, simplification and modernization.
Also fix the bugs uncovered by this.
Change-Id: Ia3a77557f10faf9a901540a55fd6c07a2e986bf5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
When a selection is present, let Ctrl+C work as copy
on Windows.
Remove sending ESC key in clearSelection as it interfered
with a Paste after copy.
Change-Id: I92db7f263e1eb433bca8aa5500fcecb637a23f90
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Move the burden of finding the shell of a device from the shell menu
to the TerminalWidget, so that opening the shell menu does not block
the ui.
Change-Id: I7f2e5a891f20faa53a1e3eec879866219f9bee0b
Reviewed-by: hjk <hjk@qt.io>
A missing call to the base class meant that when starting to search with
a selection set, the selected text was not copied into the search field.
Change-Id: I1f2f1054a687d8b33b6733cc2a96e85ffa7f7816
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Pasting large amounts of data on macos would block the App indefinitely.
The issue was a blocking call to ::write. The first fix for that was to
set O_NONBLOCK on the tty stdout fd. The second fix was to pass the
actual result of the write back to the caller so they can react to it.
In the TerminalSurface we now check if the write was successful and
if not we buffer the data and try again later.
Change-Id: Ibc92cce57fad88b5e9aa325197b42e17bec5e746
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Does not delay much yet, as settings() is accessed in
Plugin::extensionInitialized()
Task-number: QTCREATORBUG-29167
Change-Id: I8f7c7fbef78c4ce0f92302e57a81f6216456c27b
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Show it as a "flashing" message instead
Fixes: QTCREATORBUG-29373
Change-Id: Ib9e7280a1b80cc52835aecb954f80e9daa80f7ca
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
Preedits on linux can often contain more than one character.
Also changes the painting from white on black to painting with
just an underline.
Change-Id: I6769217ca80cf131aa3fb96b20e23b717f591467
Reviewed-by: David Schulz <david.schulz@qt.io>
ShortCutMap::addShortCut did assert if the keysequence was empty.
Changed Q_ASSERT to QTC_ASSERT to not crash.
Change-Id: Ib03e21bb00ab989e00d5c3de68b52b84c6eb2360
Reviewed-by: David Schulz <david.schulz@qt.io>
We copied QShortCutMap into Qtc to allow us tight control over which shortcuts
are "enabled" while the focus is inside a terminal, and the keyboard is "locked"
to the Terminal. Locked here means that except for a select few, all key presses
are send directly to the terminal and cannot be used to activate other actions.
Change-Id: I96cddf753033c0f4e7d806b20085bb4755853117
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Especially on Linux the pointer value of the Terminal might be reused,
leading to warnings about actions being registered for the same context.
Cleaning up the registration fixes this.
Change-Id: Ie1d53bf79581e9f98576e7a4e70420ec63da0f86
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
Change-Id: I5d57843eba79f0eb023ea7e3c4149aa515430189
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
When moving the mouse left or right out of the viewport
the selection would grow into the previous/next line
without the bounding.
Change-Id: Ica38eac3b306338ef24aa4abace66f110edb2aef
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Under some font sizes the cursor size and cell size were not correctly
aligned on the pixel grid, leaving behind artifacts of prior draws.
Change-Id: I25e6efdc44102f24672912e1e56c31be0c686b89
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Calling Aggregate::remove is not necessary and led to a warning message.
Change-Id: I51cdd7bfa9bdda7a3ebedf6a86e48fe54fd8f3ef
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Previously urls such as http://google.com were appended to the current
dir, as FilePath::isAbsolute would return false since there is no path.
Change-Id: I17546aed322a74f6b8cbcc166d37608fd809fd1e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Show link if control key is pressed (without mouse move)
* Copy link on Control+Shift+Click
* Add Copy Link Action to Right click menu
Change-Id: Ide4ff4e77c03e015117c67f09c9d60dedd14dfcb
Reviewed-by: Cristian Adam <cristian.adam@qt.io>