* Combined local and ssh process list retrieval into LocalProcessList
* Combined QnxProcessList into LocalProcessList
* Renamed LocalProcessList to ProcessList
Change-Id: I230c575375e306c638e4ca3034fa2d7ed243a44c
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
By re-using the caching QFileInfo variant for icon(FilePath).
QFileInfo/FSEngine caches the result of isDir etc for a while, which
improves performance for slower devices in case that is called for the
same file paths over and over again, like it is the case for locator.
The cache might be out of date for some time when things change on disk,
but for a cosmetic property like an icon that is not a big deal. (And it
would be a file that transforms into a directory or vice versa, which is
not very common either.)
Change-Id: I663ac7e81f8f2996b87591dad17c5483e3f4ad3c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
We highlight concepts as types for now, as it's a pretty good fit. We can
always introduce a dedicated concept highlighting type later if there is
demand.
Task-number: QTCREATORBUG-28887
Change-Id: I405db5ca4351efd565b968e765fe8bca976a2800
Reviewed-by: David Schulz <david.schulz@qt.io>
lupdate doesn't like toplevel ::, so we changed globally to Qtc::*
Change-Id: Id6f27989653dd16974d0c12ea4832c4e1abe3ca3
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
If neither relative nor install path of the example files exist.
This makes the error message that the file is not found more sensible.
Change-Id: I1a7d2acdb4017cdaac97af35d9d35b70c06323a6
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
This seems to have silently broken ages ago, perhaps when run workers
were introduced: The clang tools' run controls no longer hold the
executable, so we passed an empty file path to the function that was
supposed to retrieve the include path, which in turn gave us compile-
time values as a fallback.
Change-Id: Ie275dab93e4a4ed551c3c8fcd604cd37a3b7bd0e
Reviewed-by: hjk <hjk@qt.io>
Previously lldb never actually attached to the process running
in the terminal, but started its own copy.
Since the process is interrupted by the terminal stub already,
code was added to automatically continue the process.
"Start and break on main" and "Run in Terminal" also did not work
together and are now fixed.
Change-Id: Iaeb6e7dd0f511f3bf195ab5d0008856b310615d9
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
The LinuxProcessImpl works better. Specifically the QnxProcessImpl
process exit code would always return 0.
Change-Id: I939d486e1cf7a1bdbb61a120a303d79e7cbce8e6
Reviewed-by: hjk <hjk@qt.io>
The location of the dll doesn't depend on the application's current
directory but its binary's location. This caused the manual test to turn
false positive when running from Creator, because on Windows, the
binaries are placed in a subdirectory named "debug" or "release",
respectively.
Change-Id: Ie5115fbacd30ad0ef85bc258d405ae3ac42f8ece
Reviewed-by: hjk <hjk@qt.io>
The crash could be reproduced by opening a project, clicking the "Kit
Configuration" button in the build configuration, closing that dialog,
opening it again, opening the settings from the "Manage" button for the
CMake tools, and closing the settings dialog.
The "KitAspectWidget"s are not really widgets, and by default do not get
a parent, or are otherwise lifetime managed. When "they" are added to a
layout, actually only their widget members are added to the GUI. When
opening and closing the "Kit Configuration" dialog, the widgets were
deleted, but the KitAspectWidget instances were leaked and lived on, the
CMakeKitAspectWidget referencing a now deleted QComboBox, and still
being connected to the CMakeToolManager's signals, which subsequented
crashed when these were sent.
Fixes: QTCREATORBUG-28740
Change-Id: I36db3b6596ef21cc01dc877bca92b9961c0606b9
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
To allow the same item to appear in multiple categories.
Change-Id: Ib957b1fb0d98a28ceeb1d80e9fb497cc2a6b1f48
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
Add a reference to c'tor's encodings arg.
Make c'tor's args default.
Make m_items field const.
Change-Id: I74bb1829f3ba0ea8a61106bddadeb935b6405f77
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Another attempt for 87c00b86db.
This section was added in 3b5ecac238, which was a refactoring commit,
not sure why.
It causes state discrepancy, because only on quit the "thread-exited"
messages are processed, and when the thread list is clear, the engine
considers it as InferiorShutdownFinished and triggers engine shutdown
again, which is wrong, because it quits twice and can no longer write
to the process, which is already dead at this point.
Change-Id: Ic5cfced672b640865e701ac96b6fcea34d748211
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The target of the connection determines in which thread the slot is
executed, and in these cases the slot needs to be executed in the
logging thread. But the LogTailFiles object is created and stays on the
main thread. So, the slot that was supposed to stop the event loop in
the logging thread was blocked from being executed when
IosToolHanderPrivate waited for the canceled threads to finish with
futureSynchronizer.waitForFinished().
Use the event loop as the "target" of the connections.
Amends 33e8251edf
Change-Id: Ie78fcb33b88c1fe7a138fac790fd4f3b7dd9bad9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Use a separate client for the authenticator widget that can react on
changes in the settings widget. This removes the need to manually apply
the settings between setting up the nodejs and agent.js paths and
signing into github.
Change-Id: I6628a3a8906ccbba208f9dac968262df962f93c0
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Whenever cmake runs, the app_version.h of qml2puppet is
recreated. This was included almost everywhere so a complete
rebuild of qml2puppet would be triggered. This patch
moves the app_version.h include into a single .cpp to limit how
much of qml2puppet needs to be recompiled.
Fixes: QTCREATORBUG-28784
Change-Id: I5064d450ed92ec003f164bcd42be694612011196
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Section collapse all and expand all functionalities are controlled via
a singleton instance. Since multiple views are now sharing QML engine,
they also share this controller singleton. Therefore it is necessary
to allow user of the Section to specify which category the section
belongs to, so that invoking expand all from one view doesn't
expand sections in another view, but only sections in the same
category.
This also allows fine tuning which sections are grouped within a view,
which was not possible previously.
Fixes: QDS-9248
Change-Id: I0a1c870e6746580255a02f91d590eb80ce6ebcbe
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
- centralize starting client
- allow to start copilot with alternative settings
- do not reset the client on finished.
A finish might be followed by a restart attempt, so untracking the
client in the plugin can result in having multiple running clients. Use
a QPointer instead to safely reset once the client is deleted.
Change-Id: Ifab8b04287d84bbdd4a0e936f4684b8d4391da2b
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>