Commit Graph

80509 Commits

Author SHA1 Message Date
Miikka Heikkinen
39d0a554b8 QmlDesigner: Fix initial positioning when dragging item to 2D view
Fixes: QDS-8365
Change-Id: I624afcb15d800e5f5597a9e760843148d02d8975
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-24 12:43:40 +00:00
Christian Stenger
27df715479 ClearCase: Fix display of mnemonic
Change-Id: Ic0f8e55ad2a141031d8540c6fdf7b0ed5a9b0aba
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2022-11-24 12:40:51 +00:00
Eike Ziller
e0b84100c3 change log: adapt doc-snapshot link and add CMake preset QtC doc
Change-Id: I5f7a086d55aefd3db8990c5fcb8a585dedbb5808
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2022-11-24 12:00:06 +00:00
Miikka Heikkinen
fea463bb4a QmlDesigner: Drag textures from content library to material browser
Fixes: QDS-8337
Change-Id: Iee42341a18e4acaa0d455aef276df36013ebf21e
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2022-11-24 11:16:59 +00:00
Alessandro Portale
4536258c9e Android: Revive second half of AndroidManager::updateGradleProperties
The extra "gradlew" which gets inserted into packageSourceDir makes all
paths that are subsequently based on packageSourceDir be invalid.

Amends: ded34daa2b

Change-Id: Ied7fe12a3d68c27b56eeb4d0ad4ce375ee228f4e
Reviewed-by: hjk <hjk@qt.io>
2022-11-24 10:57:58 +00:00
Mahmoud Badri
34b236e7fb QmlDesigner: Disable assigning a texture to a model with no materials
Disable apply texture to selected model option from texture editor's
toolbar when the selected model has no material. Also relevant fixes
to make sure texture assigning happens in the current state.

Fixes: QDS-8395
Change-Id: Iab2e8fce4696c6bd5d50636b4077362ba04cb8a0
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-24 10:45:57 +00:00
Jarek Kobus
f2d50ba6ff GenericDirectUploadService: Reuse TaskTree
Change-Id: Ib450274d3e73059bbc5e8f8e0d586ebb2a7a0dc4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-24 10:33:56 +00:00
Jarek Kobus
a6015a6216 LinuxDeviceTester: Use Storage for internal inter-process data
Change-Id: If186c2cd83781a1de4c2a9d579611079ee7318b4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-24 10:33:25 +00:00
Thomas Hartmann
5995810d34 FilePath: optimize comparison
* The QTC_ASSERT in pathView() is quite expensive
* Constructing the scheme using scheme() is not required

Change-Id: Ibea33dd6abf67c8bd184d118f23e2598075c362c
Reviewed-by: hjk <hjk@qt.io>
(cherry picked from commit e471417539)
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-24 10:10:42 +00:00
hjk
3d492c47e7 FilePath: Backport some pathView() changes
After the change to a single-string representation, the QString
construction for path() is expensive for the comparison operators
and simple convienience functions.

Change-Id: I643c7115d3ad52f971d1692230b6eab82645b810
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-11-24 10:10:21 +00:00
Thomas Hartmann
07e96c299a QmlDesigner: Allow to disable possible imports
Getting all possible imports can be slow and
is not required in every context.

Change-Id: I75c50e0f6600dfa8fca7dfec26382783b084bdb9
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
2022-11-24 10:08:42 +00:00
Christian Kandeler
bfecefabc0 CppEditor: Let users check for unused functions in (sub-)projects
Note that especially in C++, there can be a lot of false positives,
especially in template-heavy code bases. We filter out the most notorious
offenders, namely:
    - templates themselves
    - constructors and destructors
    - *begin() and *end()
    - qHash()
    - main()
Since the code model does not know about symbol visibility, the
functionality is quite useless for libraries, unless you want to check
your test coverage.
The procedure is rather slow, but that shouldn't matter so much, as it's
something you'll only run "once in a while".

Fixes: QTCREATORBUG-6772
Change-Id: If00a537b760a9b0babdda6c848133715c3240155
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-24 09:27:03 +00:00
Eike Ziller
110332e920 GitHub: Build with Qt Creator 9 and Qt 6.4.1
Change-Id: I622f820e7a1026888ff02442057d7bdee9eb4c87
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-24 09:18:51 +00:00
Leena Miettinen
ccd7365d7e Doc: Fix link to image in QDS Manual
The image format changed from PNG to WEBP.

Change-Id: I0b24fee9687f36ae38d5a0377fb79627cc4ca926
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2022-11-24 09:07:43 +00:00
Marcus Tillmanns
43b21595e9 Utils: Disable broken commandline tests on windows
Change-Id: I20e89877886b0f9416cca766a119b99191011d1b
Reviewed-by: hjk <hjk@qt.io>
2022-11-24 09:00:32 +00:00
Mahmoud Badri
6943322b42 QmlDesigner: Suppress some unused params warnings
Change-Id: Ib54014fdc6d1256393e60b2d2df17fa3cd4573e4
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2022-11-24 08:54:46 +00:00
Vikas Pachdha
a3753deebe Fix build error
QList::paths is changed to std::set

Change-Id: Ib996723ab316f956367ed801d0b897a481fbfb4a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-24 08:32:38 +00:00
Christian Kandeler
b841d68a95 Wizards: Let "new file" wizard create subdirectories
Change-Id: I1267025ab3db3803e10c6a5ebf78bb945fe19c71
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-24 08:18:17 +00:00
Jarek Kobus
953051b8bb UpdateInfoPlugin: Reuse TaskTree
Change-Id: Ic54f6d829eb4c9257ecba183fa0d029289d00bdd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-24 07:34:57 +00:00
Jarek Kobus
5e5d412fc4 GccToolChain: Create process on stack
Amends 948f0070fa

Change-Id: I67c537f19da6cd012d1d51d80f0b987dd2b1fede
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-24 07:34:19 +00:00
Christian Kandeler
706b0ff9eb "New Project" wizard: Create project parent directory, if needed
There's no reason to force users to the terminal if they want to create
their project in a new subdirectory.

Fixes: QTCREATORBUG-28346
Change-Id: Id92b2194c018274aac6f7f29c7304efa8c1d2d9e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-11-24 07:33:19 +00:00
Jarek Kobus
2e75492257 TextEditor: Replace qAsConst() with std::as_const()
See 8eb4d52342

Change-Id: Ic96065a4bda4c9658d88bbab2e916e8f2525bcb2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-11-24 06:01:03 +00:00
Thomas Hartmann
3f5259dd00 QmlDesigner: Fix crash
Change-Id: Ic996823ab316f956367ed801d0b8974481fbfb4e
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
2022-11-23 17:01:19 +00:00
Thomas Hartmann
d0a07dcacb QmlJS: std::set instead of QList
This reduces the CPU time of Export::visibleInVContext() from 50% to 15%
on Windows, when switching files.

Change-Id: Iff82924c47d1b696c9d3d7ca40f49d9d02bcb3e6
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-23 16:28:26 +00:00
Jarek Kobus
f9b4bcd3d8 TarPackageDeployService: Reuse TaskTree
Change-Id: I74d19719f5a946a79409f04b4536fe9368747bc1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 15:34:06 +00:00
Jarek Kobus
c88a829059 RsyncDeployService: Reuse TaskTree
Change-Id: I411726e47550da5fd3269fcbb3e4f3e19096adeb
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 15:12:14 +00:00
hjk
587bafc771 Utils: Make errors from CommandLine test better readable
Change-Id: Ibea4bbe7c1f7e502849f0ef6985cbf107fc236f0
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-23 14:21:49 +00:00
Jarek Kobus
85340d9508 TarPackageDeployService: Get rid of killer process
The installation process is being run in remote shell, so
closing the process with close() should finish the remote
shell together with all running children processes.
There is not need for separate "tar" killer.

Change-Id: Ib3b36ca955fe033cea8abdffbee3f14a5e007905
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-23 12:59:45 +00:00
Jarek Kobus
dfd06ec175 TaskTree: Fix destruction of running task tree
Delete all storages that were created before.

Change-Id: I8cbeb571424086b77fa7b19611c5b3f6cc1f4db1
Reviewed-by: hjk <hjk@qt.io>
2022-11-23 12:59:29 +00:00
Jarek Kobus
3468cd20ca TaskTree: Introduce Storage item
The Storage item makes it possible to define the whole
subtree as a self-contained, full-functional recipe, without a need
for passing (together with recipe) a one-use only (disposable)
pointer to storage object.

That's the last closing element of making the idea of pure,
value-based recipe real. It makes the TaskTree machinery ultimately
powerful.

Change-Id: Icd81bdd3e94251e8b241b2b550957d566fa4ab75
Reviewed-by: hjk <hjk@qt.io>
2022-11-23 12:59:18 +00:00
Jarek Kobus
1667b06236 TaskTree: Introduce TreeStorage class
TreeStorage enables delayed creation of instances of
StorageStruct. It encapsutates recipe on how create / delete
instance of StorageStruct. It doesn't create any instance
of StorageStruct when TreeStorage is created. These instances
will be created later, by TaskTree.

It will enable getting StorageStruct instance inside task / group
handlers (passed by lambda argument).

Change-Id: Id707353f196aa5ba3e7876d6c601e04ca08d6e63
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 12:58:57 +00:00
Jarek Kobus
129bd24131 TarPackageDeployService: Don't disconnect from installer signals
It looks like the same instance of TarPackageDeployService
may be reused for subsequent application run.
Close the process instead.

Change-Id: I3430404c33c14b1b4f24b728b44b3e54a57e3c9b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 12:40:06 +00:00
Jarek Kobus
2a830a12f2 TarPackageDeployService: Remove removePackageFile arg
It was always true.

Change-Id: I9136e924ae15471e6ffc51fa475d965fb49a7df7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 12:40:00 +00:00
Eike Ziller
adc064d502 Merge remote-tracking branch 'origin/9.0'
Change-Id: I69ebd63cbd780ed4edb3873acfc8aac208933032
2022-11-23 11:20:15 +01:00
Eike Ziller
373200accf Fix double * for long names of changed documents
We used to elide the right part of the name, and needed to take care of
not eliding the * away in that case. Now we elide in the middle, and in
that case the * may not be added to the elided text again.

Change-Id: I646b51d315e141a65df67841e163826e7136c118
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-11-23 10:17:25 +00:00
Samuel Ghinet
910a8864dc Use QML TreeView in Assets Library
Task-number: QDS-7344
Change-Id: Ia1ea584fc7acabb0d35b745e36fef18799f21ab5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-23 10:00:04 +00:00
Christian Kandeler
918c7ca52d ClangCodeModel: Make use of new clangd token type "modifier"
See https://reviews.llvm.org/D137943.

Change-Id: I313576b32fff1c9ba44e3753e3f02cdd34e2ea3e
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-23 09:52:33 +00:00
Mahmoud Badri
a575cb4f46 QmlDesigner: Implement drag-n-drop a texture to material editor
Fixes: QDS-8339
Change-Id: Iea61c175525fbef25e763454f53e9bcc28847fe2
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2022-11-23 09:22:13 +00:00
hjk
7e9cab6e78 Utils: Introduce a FilePath::fromPathPart()
... as shortcut for the fromParts({}, {}, x) case.
Less noise on the user side, and saves a few cycles.

Change-Id: Ie5b2a76c7261a049a3e600f29c4edaff37ab3828
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-11-23 08:41:55 +00:00
Eike Ziller
b7716087e1 tst_tracing_*: Fix build in certain configurations
There are Linux distributions that (at least for building packages)
separate the development packages for the various Qt modules.

So, to find the include <QtQml/qqml.h> in timelinemodel.h when
building the test, a dependency on QtQml is required.
Pass the dependency down to everyone depending on the tracing lib.

Fixes: QTCREATORBUG-28434
Change-Id: I58a534a9c25f1f6ecfc10a9ce8292b5983cdcbae
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-11-23 08:38:02 +00:00
hjk
53526e4d4b FilePath: Backport some pathView() changes
After the change to a single-string representation, the QString
construction for path() is expensive for the comparison operators
and simple convienience functions.

Change-Id: I643c7115d3ad52f971d1692230b6eab82645b810
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2022-11-23 08:22:49 +00:00
hjk
c7c6ddb8b0 Utils: Replace Environment::isSameExecutable()
... by FilePath::isSameExecutable().

The only non-mechanical case is the use inside QmakeBuildSystem::testToolChain
using a build environment instead of the FilePath's device environment.

This make a difference in theory due to the use of PATHEXT in the actual
check, but I believe the case that someone creates a 'qmake.foo' and
a 'qmake.bar', adds .foo and .bar to PATHEXT and then complains that
there's a warning missing about not-matching mkspecs has zero
likelihood in reality (and will break other places in Creator anyway).

Change-Id: Id6a8d1e4dc2eb74ca81610ccb1c4ee94c6f47e12
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-11-23 08:07:08 +00:00
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