Commit Graph

68765 Commits

Author SHA1 Message Date
hjk
bf325fd6af ClearCase: Use a FilePath for the test file
Change-Id: I79b149df87d28e91f7692616dd9fdb1b925f7ab5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 08:06:56 +00:00
Orgad Shaneh
a2baeea394 Git: Enable instant blame only if current file is managed
If the current project is Git managed, but the user opens a header from an
unmanaged directory, don't try to run blame.

Change-Id: I563f7a687b2ea03f4c03bf97c8f5c27c1f8411ec
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2022-11-22 16:43:36 +00:00
hjk
fa1adf4d40 CPlusPlus: Proliferate FilePath use
The starts with CppDocument::filePath(), plus a bit of the fallout

This is one patch of potentially many. It is hard to draw the
line where to stop this kind of chunk, this here converts a few
additional functions for which including it in the patch looked
like less churn than without.

Converting is mostly fromString/toString, with a few exceptions
for "already seem" like caches, that use cheaper "path()" to
avoid likely performance regressions (on Windows FilePath
comparison is currently case-insenstive, and more expensive).

There should be no difference for local operation with this patch.

Change-Id: I7b35f98a0a6f0bfed4ea0f8f987faf586f7a8f2b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 15:30:00 +00:00
Jarek Kobus
822e2a224a KillAppService: Some cleanup
Remove undefined and unused handleStdErr() and
handleProcessFinished() methods.

Remove cleanup() and finishDeployment() methods
and move the implementation into stopDeployment().

Change-Id: I983e4513c4bcba45638eb054b389783ec4f73367
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 15:23:39 +00:00
Jarek Kobus
8dc13379dd KillAppService: Use queued connection for signal operation
Otherwise the m_signalOperation may be deleted directly
from it's signal handler.

Change-Id: I38ae09ac8b2cb936459592b006c5330fbfa3027c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-22 14:54:21 +00:00
Jarek Kobus
0ced4ab061 Utils: Remove unused ProxyCredentialsDialog
Change-Id: I8f234ba6e851edc4a5cb41cfabd76cf05670eef2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-22 14:49:06 +00:00
Artem Sokolovskii
fabf2f8cde Android: Rename Android Settings names
Change-Id: I5d8fe1d1525dcea65c2a616b86d777d1ffabce28
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-11-22 13:31:19 +00:00
Marcus Tillmanns
75b43de14a Docker: Cleanup docker process interface
Instead of creating the actual command in two places
this change moves everything into one function.

Instead of sending the environment and working directory
into the shell as arguments, we send it via the correct
docker exec cli arguments.

Instead of creating QStringLists and adding them
to a CommandLine we directly add them to the
CommandLine instead.

This also fixes an issue when the working directory
contains spaces.

Fixes: QTCREATORBUG-28476
Change-Id: I4f5b39a2dd4c86d20717dbb53003f1eb60f6c089
Reviewed-by: hjk <hjk@qt.io>
2022-11-22 13:17:11 +00:00
Marcus Tillmanns
3e6c3d9fe7 Utils: Add "addCommandLine..." functions
addCommandLineAsSingleArg allows to reliably create commandlines
like "bash -c 'echo ...'"

addCommandLineWithAnd combines two command lines
by adding '&&' in between

Change-Id: Ic5af34c90fd5271dced40ba1341a3df019ededb8
Reviewed-by: hjk <hjk@qt.io>
2022-11-22 13:17:00 +00:00
Tim Jenssen
83fa44afd4 qml2puppet: qt5 puppet fixes
Change-Id: I2fd809c6646944b06b497f0587178e2dcd92c4a1
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-22 12:22:16 +00:00
Jarek Kobus
b1df55426a CppFileSettingsPage: Use Layouting
Change-Id: I0c966b3659aa7d7f889b0f4c6bb898b076587cd4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-11-22 11:45:53 +00:00
Jarek Kobus
d2b887cfad RsyncDeployService: Remove setFinished()
Use stopDeployment() instead. Simplify file transfer's
done handler.

Change-Id: Ib43d95c1498be590d1557fbe4fcaf2f2e79d08fb
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 10:50:35 +00:00
Jarek Kobus
0312bfc066 KillAppService: Don't call cleanup() from d'tor
It's being done implicitly by QSharedPointer d'tor.

Change-Id: I058dd3e1c06eb92fad4ea8b5d43ee4d1da9182c4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 10:49:31 +00:00
David Schulz
1aa2d8ad30 QmlJSEditor: do not wait for the semantic info update
... when destructing a qmljseditor. Just let the updater continue and
delete it once it finishes.

Fixes: QTCREATORBUG-28206
Change-Id: Icabe10f17b7bf326bb15e5ee622504c477d83acf
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2022-11-22 10:48:06 +00:00
Miikka Heikkinen
ac1af9a582 Implement texture context menu
Apply to selected model/material, delete, duplicate, and
create new options are available in the menu.

Fixes: QDS-8342
Change-Id: Ib9bdc1738500a87361000bcd3e89403e3b8ccef8
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-22 10:44:36 +00:00
Artem Sokolovskii
a130a7ae0b Android: Remove support old cmdline tools
Link: https://developer.android.com/studio/releases/sdk-tools

Change-Id: I9ea7c83af604bfc4b5d5e81b037034b7e148e99a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-11-22 10:10:46 +00:00
Miikka Heikkinen
e3a817ec77 QmlDesigner: Hide or disable material browser and editor if no library
If material library is missing, material browser and editor UI should
be disabled, except for material editor main pane in case of root
material node.

Change-Id: I3d2bd545de0649fb90d3fe1f751d46b7c7054bbf
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-22 10:05:55 +00:00
Jarek Kobus
e8454dc5fe QdbStopApplicationService: Always call stopDeployment() when done
Call stopDeployment() also when process didn't finish with
FinishedWithSuccess.

Change-Id: Ibeafecb9e06a02650de35d635c1acfaa5af22870
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 09:59:01 +00:00
Jarek Kobus
94cc91b833 QdbStopApplicationService: Move setting connections into c'tor
Change-Id: Iccfae9c2e6be7e7987e8385003ba98fecfb1c3ee
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 09:58:08 +00:00
Jarek Kobus
197002ef04 QdbStopApplicationService: Remove cleanup()
Don't call QtcProcess::close() from QdbStopApplicationService
destructor - this is done implicitly by QtcProcess destructor.

Remove cleanup() method, since it's used only by stopDeployment().

Change-Id: I6e82fe83f31f7dd8eb4fd69174c1aebc636de53d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 09:57:53 +00:00
Jarek Kobus
20aa5d4888 AbstractRemoteLinuxDeployService: Remove setFinished()
It was used only by handleDeploymentDone().

Change-Id: Ie294b4c2adf28a5b086941106d1c360e2f8992df
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 09:32:44 +00:00
Amr Essam
f70cdf52c4 QmlDesigner: Fix created effect cannot be used
Create effect node needed to be added to a transaction
There are other fixes to the effectmakerplugin

Task-number: QDS-8152
Change-Id: I37eac416e7664ae4a28a0a3362f98080ca29fd17
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-22 09:28:01 +00:00
Marcus Tillmanns
0f8613f61b CPPEditor: Allow clangd from device
Change-Id: Ia9b59b374aaebf0bfb820b5a289c6e3c0599cb10
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-22 09:26:29 +00:00
Mahmoud Badri
6d620429c6 QmlDesigner: Fix Material/Texture Editors toolbars issues
Make sure each toolbar's enum is registered under a different URI.

Change-Id: I7613b4018b62188ba3fba5f651d064ada8173066
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-22 09:24:13 +00:00
hjk
3e941652e1 Utils: Reduce scope of Environment::appendExeExtensions()
The general idea is to use FilePath as entry point for this
kind of functionality.

Change-Id: Id6ade8809229d119eb6af44baa7d4e473676f6f9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-22 08:42:43 +00:00
hjk
a333efe901 Utils: Introduce a FilePath::refersToExecutableFile
... to avoid the need in user code to care for .exe and .bat suffixes.

Change-Id: Ic249f14273f72c663912482555f98be1af923823
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-22 07:15:54 +00:00
hjk
9635b1545b CMakeManager: Avoid one use of Environment::appendExeExtensions()
Use FilePath::refersToExecutableFile() instead.

This makes it better re-usable for remote setup.

Change-Id: Ic69739b332f036ed791adbbc8092a139b4c83c2d
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-22 06:29:07 +00:00
Orgad Shaneh
3a7fee0cc6 Git: Fix crash when closing last editor
before instant blame was activated.

Change-Id: I8a8acf6dc58cb25f7c10c1dfa08e3b7f6bae3e76
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2022-11-21 15:53:13 +00:00
Orgad Shaneh
252179b938 Git: Stop blame attempts for unmanaged files in the repository
A file that is in the repository directory, but not managed by Git should
not attempt to run instant blame on every cursor change.

Change-Id: Ia7daa2ae9980cea4363e010a98fb1e2f2a3ec05f
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2022-11-21 15:49:56 +00:00
Andre Hartmann
4d63f2a598 Git: use unique_ptr for instant blame marks
Also simplifies the code.

Change-Id: I5da0aeb86ba5a28c9016cde11aab9dcee922d908
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2022-11-21 15:46:00 +00:00
Alessandro Portale
dfa5b54647 Utils: Fix StyleHelper::drawArrow workaround for 6.4.0
The workaround that fixed the drawing of arrows after a change between
6.4.0 and 6.4.1 broke the drawing of arrows with Qt 6.4.0.

This change add another enforced detachment of the palette (leading to a
modified cache key) that works with Qt 6.4.0. It still works with 6.4.1.

Amends: 9d32093421

Change-Id: I8917c99488cec4fb17ed148bb3b0f95d4ed7127c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-21 15:26:57 +00:00
Mahmoud Badri
a04f1590de QmlDesigner: Update texture preview when source change
Fixes: QDS-8386
Change-Id: Ifaa6effc040398452b022080257bbacbfb14efdf
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-21 15:12:52 +00:00
Mahmoud Badri
88ce27736f QmlDesigner: Add separate + buttons for material browser sections
Fixes: QDS-8343
Change-Id: Id986820c857df241cf25e55416832f189c28bfe0
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-21 13:32:45 +00:00
hjk
722312f62f Core: Combine two code paths creating absolute paths
Remote and local can use the same nowadays.

Change-Id: I218aafb0293dadbbf75f248f4076cabfa4a0f3da
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-21 13:25:26 +00:00
hjk
ba80985769 Python: Replace one use of QDirCurrentPath()
Change-Id: I88a04930b8c62a68ee1adb73e1cdd3c433eea4e3
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-21 13:09:43 +00:00
hjk
e567cb313b Core: Use FilePath for working dir in MainWindow::openFiles()
Change-Id: Ifc8e167a1734115fa7a23f7aefa45fc52e4a70cc
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-21 12:46:11 +00:00
hjk
fbc2da621c ProjectExplorer: Postpone search of custom executables
... until launch time. More central, less duplicated activity.

Change-Id: I7d0e380c43e0f2cdbc1b50ac10f6739c65adb9bf
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-21 12:23:32 +00:00
Mahmoud Badri
9e48f63a07 QmlDesigner: Remove one unused variable warning from ItemsLibrary
Change-Id: I1446879250dd99d27d3e84fc7b133e35603472a9
Reviewed-by: hjk <hjk@qt.io>
2022-11-21 12:21:47 +00:00
hjk
33ea6f2433 Utils: Don't resolve relative paths in ProcessArgs::prepareCommand
Part of an attempt to disentangle streamline environment creation/setup.

Searching is expensive and needs currently the proper environment.

Change-Id: I95d93abf6c0cedeb8ba0b7a447345cd033ac2f25
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-21 12:17:47 +00:00
David Schulz
fd17724597 LanguageClient: use reported rename placeholder
Using the reported range to create a usable placeholder if the
cursor ('|') is placed on the end of an identifier like in:

int global|;

Change-Id: I2ebacf3b9b54cff8f8887526479792374f67c881
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-21 11:47:52 +00:00
hjk
02c041c13a Utils: Introduce FilePath::isSameExecutable()
... to replace Environment::isSameExectuable().

New code is a filepathified copy of the orginal.

Change-Id: Iebf61cd183c9a5c03a5b8a90a33b5e074af9ecbe
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-21 11:42:12 +00:00
Amr Essam
b6c2b08555 QmlDesigner: Change icons to original ones for effects
Task-number: QDS-8353
Change-Id: I9a1fcdb7da7c0fd9d079720d3b3fafde1df384de
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-21 10:58:49 +00:00
Mahmoud Badri
815dd39e47 QmlDesigner: Implement Texture Editor view
Fixes: QDS-8209
Change-Id: Ief0c9f56da79841c745595024dbcd9219072b681
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-21 10:16:33 +00:00
Christian Kandeler
0f2db176fa ClangCodeModel: Re-enable renaming via clangd
... for clangd >= 16, which has the configurable rename limit.
Still allow users to opt out for now.

Change-Id: I86d6809b66ffbf80245b61cf57c648842d2e17af
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-21 08:57:40 +00:00
The Qt Project
04116b89df Merge "Merge remote-tracking branch 'origin/9.0'" 2022-11-21 08:57:28 +00:00
Eike Ziller
ea79027e20 Merge remote-tracking branch 'origin/9.0'
Change-Id: Idd9c2b1bf787040b7b415b7cda29035227ca1011
2022-11-21 08:57:14 +01:00
Jarek Kobus
ccc7e14246 DeviceUsedPortsGatherer: Fix endless loop
The original change introduced emitError() function in
place of bare emit error() in order to record the last
error emitted inside m_errorString. Apparently all
emit error() usages were replaced with emitError(), even
the one inside emitError().

Amends 3a1f94ec28

Change-Id: I298ee7c04506d45d2a0cf176739cad02da0d302e
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-21 07:56:36 +00:00
Andre Hartmann
cae1936da3 Git: Add instant line annotation (blame)
Inspired by the Visual Studio Code plugin GitLens.

Add an annotation to the editor line the cursor
is  currently in. A tooltip contains the commit
data and allows to invoke git show for the commit.

When the automatic annotation is turned off, it can
still be forced for the current line with an action.
The default shortcut for this action is: Alt+G,Alt+I

Task-number: QTCREATORBUG-23299
Change-Id: I58eef9efcf531afb11470e5f5456e19f282b18d0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-11-19 16:30:29 +00:00
Cristian Adam
61fcdcb4a1 CMakePM: Do not crash with invalid build presets
If a build preset doensn't reference a configurePreset, the preset is
invalid but Qt Creator crashes.

Task-number: QTCREATORBUG-24555
Change-Id: Ibf5dd7f1bb165d8b7f392e6a1aaa043548bb0f7a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2022-11-19 12:55:40 +00:00
Christian Kandeler
ea917a0aa6 ProjectExplorer: Improve UI for project-related closing actions
- Do not hide, but just disable currently non-applicable actions.
- Properly group the closing-related actions in the project context
menu.
This makes for more stable menu entries and reduces the chance for
accidentally choosing the wrong one.

Task-number: QTCREATORBUG-28211
Change-Id: I26ddc71839d124ec92212971f2facea82cf8d199
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2022-11-18 17:14:48 +00:00