Run just "cp" on device instead of transferring the content of the
source into local and sending it back again to remote.
Change-Id: I703ad1181d77d470ae145691979c34fc75b59a97
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
The class is responsible for asynchronous read / write
of file contents. The file may be local or remote.
It's also able to do an asynchronous copy of files
between different devices.
Change-Id: I65e4325b6b7f98bfc17286c9a72b0018db472a16
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
The copy action should only be enabled once a selection exists.
In the beginning no selection can exist, therefore the copy action
is disabled.
Previously this lead to a bug where only the second "Enter" keypress
was passed on to the terminal.
Change-Id: Iac01c273f70a50a4fc131bd6a2bbb1507705b853
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Previously a value of "-1" from ::read would result in an endless loop.
This could easily be reproduced by "cat /dev/random | base64"
The buffer usage was also much more complicated than needed.
A static readBuffer now keeps the amount of allocations lower.
Change-Id: I5bb1a3c84b107ff8c2d3801bca8c6ae9a709cdb3
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
On macOS:
* new terminal Ctrl+T
* next terminal Ctrl+Shift+]
* prev terminal Ctrl+Shift+[
On Windows / Linux
* new terminal Ctrl+Shift+T
* next terminal Ctrl+PgUp
* prev terminal Ctrl+PgDown
Change-Id: I5626816cd18fd7a6d2b1cea5eea835a40b0c1029
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
QDateTime's interface various between supported Qt Versions,
so we use std::chrono instead
Change-Id: I5af5ae9950e61c2ed38ff15dc0580f0dc2aa1f57
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This way cmd, bash, powershell are more descriptive than "Terminal"
Change-Id: I19310f423cd4188ecc48580a30ed414833a15aee
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Previously error output occurring while the PID marker was
not parsed yet was not passed on to the parent QtcProcess.
Change-Id: Id6cbaa13a7d6c62d7a8612e118092eb2be6e790c
Reviewed-by: hjk <hjk@qt.io>
Since Terminals can now be started for device file paths, there
is no need anymore for IDevice::terminalCommand.
Change-Id: I01c831ea7ee29d53efa6880631e8c6d54a4316aa
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This has unwanted side effects like closing the completion and switching
the current editor.
Change-Id: Ic0e150f2377a731910e409b9edc959fda670cd99
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Integrating PtyQt directly into QtcProcess allows us to
start Pseudo terminal processes using the existing QtcProcess
functionality such as starting remote process on e.g. docker
or remote linux devices.
This is needed for the new Terminal plugin.
Change-Id: Iaeed5ff9b341ba4646d955b2ed9577a18cd7100f
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Iterators expose the underlying datastructure and get
in the way of moving towards "env as stack of changes"
Task-number: QTCREATORBUG-28357
Change-Id: I69e3b53e62ed4c9ab394779e97afbc6fd1986838
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This allows to easily register a singleton similar to
context properties.
Change-Id: I0c391165473a949e7fd09d907e3a0752c23ba62d
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
The painting of an editor assumes the block is layouted properly. This
was done implicitly when calculating the block bounding rect previously.
With the option to replace the block layout with another document this
is not the case anymore, so we need to explicitly make sure that a block
was layouted before painting.
Change-Id: If6947a3a5c13a03310e0cab0f6fcbd4ff8078b1b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This happens from time to time, but I do not have a way to reproduce it
safely. In order to present the user a somewhat usable state after this
error cancel the debug run and show a message box with potential fixes.
Fixes: QTCREATORBUG-24323
Change-Id: I7e557001bd5dfb3b0abb19fa635bf2d20bb3b16c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Qt Creator provides numbers of plugins.
Setting focus to the filter control helps to find a plugin.
Change-Id: Iac34ff04b97311a8c7890a3cbafdde22b2242dcd
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The material name for the property editor's material field
is presented in the following format:
MaterialName [MaterialId]
Task-number: QDS-8663
Change-Id: I59fdfcb52ecb2ce9a1079ae20b7e2d748bbc1d61
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
On my system where I have strawberry perl installed, the "patch.exe"
from strawberry perl is picked.
This patch.exe has issues while reverting chunks, where as git's
patch.exe works perfectly.
Change-Id: I7e8c8f91f0f841c128ff8538dba68bee161a5f7b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Instead of performing costly computations keep
track of the currently present types in the
respective branch of the subtree.
This also makes the filter invalidation on
newly added items obsolete.
Fixes: QTCREATORBUG-28831
Change-Id: I12cd31dc95b4c310a04ced2c98de3d509032482c
Reviewed-by: David Schulz <david.schulz@qt.io>