Commit Graph

88653 Commits

Author SHA1 Message Date
Christian Kandeler
e7505088f5 CppEditor: Move "move function definition" quickfixes to dedicated files
Change-Id: I4e963bd7fef1f1c9f0b69dde56298a52c74e01e4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-17 08:11:38 +00:00
Christian Kandeler
92f3731d78 CppEditor: Move ConvertQt4Connect quickfix to its own files
Change-Id: I04b2548d860250fd916c035de68516b7c3f1628c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-05-17 08:10:54 +00:00
Eike Ziller
fecf95b58e Merge remote-tracking branch 'origin/13.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	doc/qtcreator/src/projects/creator-only/creator-projects-build-run-tutorial.qdoc
	qbs/modules/qtc/qtc.qbs

Change-Id: I67a2540677a8b5c309c0c81e2a509a61d0a65aa8
2024-05-17 09:18:14 +02:00
Marcus Tillmanns
ce1f45cbfc Lua: Fix meta file install location
Change-Id: I3dcd16057bac3ba4b5e125253b48c6a03f1ca33d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-17 07:04:10 +00:00
Leena Miettinen
2b23a359d4 Doc: Describe using Perforce config files on Linux
Fixes: QTCREATORBUG-30816
Change-Id: I52adaa3a5f216a503c7e22c8e4905146ee778f3b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-17 07:03:46 +00:00
Eike Ziller
5789c22306 Locator: Remove settings restoring from QtC 4.15
Change-Id: I9c263122d649bb284acc9a1fc2409b3761ca8643
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-17 06:58:37 +00:00
Eike Ziller
c64754edfb LanguageClient: Fix condition
Amends 770f1b0376

Change-Id: I289bc9af8499860e58a95e9c1d83faf92c8056f9
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-17 06:58:24 +00:00
Eike Ziller
2649a49209 Editors: Add menus for back/forward buttons
Add menus to the back and forward buttons in the editor tool bar, that
show history the history. Limited to one entry per consecutive same file
path, because we currently don't have the means to visually distinguish
multiple locations in the same file.

Fixes: QTCREATORBUG-347
Change-Id: I69c5cfaf4c12ec8b59f98eb692c799babca0458a
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-17 06:57:40 +00:00
Leena Miettinen
58abfc52e5 Doc: Fix QDoc warnings for the API reference
Change-Id: I3507009756822f3ac795057a37c5f34a6e2bcd10
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-17 06:57:23 +00:00
Johanna Vanhatapio
92120273b1 Doc: Add a missing qdoc command
Change-Id: I36567e0e3da15d99cf8fe9eac887112ad20b032d
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-05-17 06:52:47 +00:00
Eike Ziller
eaefe4bf30 Editors: Centralize creation of EditLocation for history
Change-Id: I05387ccf444351de4002b706f7c03027fdd9adaf
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-17 06:52:23 +00:00
Eike Ziller
e964a0e2a7 TextEditor: Move navigation history update from Widget to IEditor
Telling the EditorManager to update the navigation history only really
makes sense in the context of IEditor, not if the widget is used in some
other context.

For this reason the code in the text editor widget also had a check to
only add history in case the current editor's widget is the text editor
widget - which does not work in case of e.g. the Markdown editor or the
Compiler Explorer. Signaling the request for adding navigation points to
the IEditor gives these other editors that integrate text editor(s) a
chance to implement this too.

Change-Id: Id1bb3516519f48a3f4448ac226be21e52bb02b2b
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-17 06:52:04 +00:00
Eike Ziller
9f1c6e9c72 TextEditors: Do not add to history twice for Ctrl+Click navigation
When Ctrl+Clicking to follow symbols, the original location was added
twice to the history, once in the click handler, and once when the link
was opened in `TextEditorWidget::openLink`

Change-Id: I806165621d7ea229aa963b5b7d83c5327d8e7f14
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-17 06:51:52 +00:00
Marcus Tillmanns
9160679b04 Lua: Add better error output to fetch()
Change-Id: Ic9092ff52130ac3cfc620ead9a1c69f112a864ac
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-17 05:13:04 +00:00
Henning Gruendl
a7913d5430 QmlDesigner: Update EffectsSection tooltips
Change-Id: Ib0cf243f84d125ab488ff4f597bbc4dd1637c1d3
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-16 15:14:15 +00:00
Marcus Tillmanns
450611ddcc Utils: Fix FilePathAspect::expandedValue
It should use the macro expander if there is one.

Change-Id: I8fb7760f23305f4b243e784d38d44d9bef4c0065
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-16 13:52:45 +00:00
Jarek Kobus
1ddcd8ad70 Android: Add locking mechanism when creating avd
Lock avd file system watcher changes when executing create avd command.
Otherwise the avd file system watcher sends notifications during
create avd command execution and subsequent avd list command
doesn't report the device which is being added, yet.

Change-Id: I1a0123d1bf14cf76e3a90e7f19416eb634e9c4a6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-16 13:39:07 +00:00
Marcus Tillmanns
60a66ce3fa Utils: Remove duplicate call
Change-Id: Ic21ea5a911de01f63fa5c736233cef544a00c210
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-16 13:34:45 +00:00
Alessandro Portale
e8060ba97e Utils: Make working directory in Process::toStandaloneCommandLine work
The value for "-C" was never printed out. Let's fix that.

Change-Id: Id8f23867b586bfa6f017258cad96db071e819729
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-16 13:24:19 +00:00
Jarek Kobus
53de9701f4 CommandLine: Use more 1-arg c'tor
Change-Id: If52c4094f94859d51e31862d913b1756e333e512
Reviewed-by: hjk <hjk@qt.io>
2024-05-16 12:45:42 +00:00
Jarek Kobus
34f4ec11bd CommandLine: Add a constructor test
Change-Id: I5d5bf8e7f31017f16663103f560e598e2a003d50
Reviewed-by: hjk <hjk@qt.io>
2024-05-16 12:43:11 +00:00
Jarek Kobus
7e4c7aa779 CommandLine: Add a c'tor accepting a list of various types
Make it possible to pass a list of a mixture of QStrings
and QStringLists for command line's "args" argument.

Change-Id: Iafe3249f074b9568537e72a80e46ec4ed143014a
Reviewed-by: hjk <hjk@qt.io>
2024-05-16 12:42:49 +00:00
Christian Kandeler
513bfcbda1 CppEditor: Move RemoveUsingNamespace quickfix to its own files
Change-Id: Iba66511d273bdf6e7fcf913411a38e89f3b8822a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-05-16 12:39:09 +00:00
hjk
acf1ecb47f LayoutBuilder: Complete experimental implementation
This adds support for inheritance to the existing experimental
implementation in tests/manual/layoutbuilder/experimental
and gets rid of the tight coupling and qobject_casts in the
setter implementations. Plan is to use this (minus "bindings"
via *::Id / id()) for utils/layoutbuilder.{h,cpp} later.

The "binding" support via id() is still experimental, and in
its current version not really useful. A possible idea would
be to re-use the Tasking::Storage idea, but it's not quite
clear how to expose that "long distance" (i.e. across multiple,
unrelated top-level builders). However, this is not used in
in current uses of the "old" layoutbuilder, so this is not
blocking anything.

Some notes:

The *Interface hierarchy is not strictly needed, it could directly
act on things in the QObject hierarchy but would then need #includes
of all "buildable" classes, which can be avoided in the current
implementation. Besides, the indirection allows us to tweak and/or
add functionailty to the Qt classes in the indirecting code, that
does not necessarily have to match 1:1 to the underlyings Qt classes.

The std::function based callbacks are quite fat and not functionally
needed and could be dropped  by "inlining" the relevant bits from
typical std::function implementations. However, these invariably seem
to end up calling functions through pointers to (ABI-compatible, but)
different types, which is for /user/ code formally undefined behavior
according to C++11 §5.2.10/6. To avoid a discussion whether doing
the same ourselves is tolerable or not, this uses std::function
and pays the price of the overhead.

Change-Id: I6d40c1bd48cf065fcf211eaff8d9a2298bca20eb
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-05-16 12:06:06 +00:00
Christian Kandeler
8d0025fe09 CppEditor: Move some related quickfixes into dedicated files
The new file is still too large, but these functions and data structures
are so horribly coupled that it will take an extra refactoring round to
split them up.

Change-Id: I421a3db6dfc74ea78a35d0ccf1a88d782d863b9a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-05-16 11:53:46 +00:00
Marcus Tillmanns
f11c896b7f Core: Add function to expose the "IdeVersion"
Change-Id: Ic6c8fc4de59ee46baa616928c845632d3a1b8809
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-16 11:45:12 +00:00
Marcus Tillmanns
50fbf6056a Lua: Install meta files
Change-Id: I5ea812f9b64fd80d64a3930bc5301c932554ce18
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-16 11:26:22 +00:00
Marcus Tillmanns
1e6b0d3df5 Lua: Remove templates plugin
We decided to stick with the json based templates for now.
Instead we added the ability for lua plugins to add json wizards too.

Change-Id: I71b91264f77e24c9b2b9a3a0c9a11cf0440673a4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-16 11:26:13 +00:00
Mahmoud Badri
379933cb39 QmlDesigner: Hide bundles from the components view
Also few relevant tweaks.

Fixes: QDS-12680
Change-Id: I3d552d9de2d92c0501c7b05d626cad84e3688dc9
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2024-05-16 10:37:46 +00:00
Christian Stenger
96f33150fe SquishTests: Adapt to changed reload behavior
The default for the reload behavior has changed, so explicitly
set the setting when necessary.

Change-Id: Ibcc3e8d2decf3f50dd3d1288c38ec3d027fbc23e
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-05-16 10:21:47 +00:00
Marcus Tillmanns
fde45e98b9 Lua: Add Error handling during hook invocation
Change-Id: I63bb062d87126278ad4f6670f5b98e31d59aa8bb
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-16 10:20:28 +00:00
hjk
6aab6f61b5 Debugger: Provider Qt version externally to bridges
Extracting within the bridges is expensive.

Change-Id: Icf69db4b112230cc23e331abc0b3eb0de1323f46
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-16 10:03:08 +00:00
Jarek Kobus
bee7cdfd1e Android: Add AndroidDeviceManager::createAvd()
The createAvd() command is going to turn off the
avd file system watcher during execution, so this needs to be
a part of AndroidDeviceManager.

Change-Id: Ic8038be53d2be34136649b6b8a44435a4fc87a9f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-16 09:56:06 +00:00
Alessandro Portale
46fb01f785 Android: Make avdConfigEditManufacturerTag() more readable
Rename it to modifyManufacturerTag() and use newly introduced enum
to describe the type of modification.

Change-Id: I8e903891e87d7133ec37e9aecfd303b424a36d15
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-16 09:33:59 +00:00
Jarek Kobus
7af6722c07 Android: Simplify listVirtualDevices()
Introduce ParsedAvdList struct and return it from the parseAvdList().
This eliminates passing the errorPaths result by reference.
Simplify listVirtualDevices() implementation by removing some local
variables.
Adapt the tst_AvdManagerOutputParser test accordingly.

Change-Id: If4670bcc81ce36416c1fe35e8ee57e822f82516f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-16 09:33:41 +00:00
Marcus Tillmanns
58f596e36a Lua: Add "printToOutputPane" plugin option
Allows a plugin to automatically forward the "print" command to
the output pane instead of only to qDebug()

Change-Id: I10fb8063bc1713eaaf77368ea7f760270df190b3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-16 09:22:36 +00:00
Marcus Tillmanns
84e706b6da LSP: Remove unused function declaration
Change-Id: Ib8841b7eafb225faaa7952fde6c71cbcf6848c4f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-16 09:22:14 +00:00
Mahmoud Badri
16d9535c8d QmlDesigner: Hide content lib user when a warning message is shown
Fixes: QDS-12679
Change-Id: I5cc673eb24f6479a3cb8e876e0f31a4d2d5cb658
Reviewed-by: Shrief Gabr <shrief.gabr@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2024-05-16 08:44:29 +00:00
Leena Miettinen
5b5c61c519 Doc: Restructure info on developing for Boot2Qt devices
- Split the topic into how-to and reference topics
- Remove redundant information
- Make the instructions consistent with the remote Linux topics
- Include info about SSH connections from the remote Linux topic
- Add the \B2Q macro for "Boot to Qt" and use it where possible
  (some UI text still says "Boot2Qt"

Task-number: TCREATORBUG-29361
Change-Id: I7fe5f957049d84ec7402f4c11a070ac2d44fcb38
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Inkamari Harjula <inkamari.harjula@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2024-05-16 07:42:09 +00:00
Marcus Tillmanns
898203aa6e Lua LSP: Add callback if server fails to start
Change-Id: I422baeffff96cf56a110cbf74716352c9104c5ef
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-16 07:15:48 +00:00
Jarek Kobus
29822d1a2b ThreadUtils: Replace the implementation for Qt 6.8
Change-Id: I8d4890179165bca02af972debfe4f11fae41ebbd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-16 07:05:39 +00:00
Robert Löhning
394e9a9fb3 SquishTests: Don't proceed in hopeless situation
When the GenericProposalWidget is not being shown,
there's no point in trying to use it.

Change-Id: Ibe6f3ed9230fdc41271f5ff8538bd863da3d0ab3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-16 07:05:07 +00:00
Marcus Tillmanns
c00ae02dff LanguageClient: Add "unexpected" argument to clientRemoved() signal
Change-Id: I25b6b13759d6052bfc15fc78ac60c532a55885b8
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-16 06:54:42 +00:00
Christian Stenger
609d81b8aa AppStatisticsMonitor: Fix missing include on Linux
Amends de18097cb4.

Change-Id: I91d8fcc76ba3bf464f9fc53eabc39704253bd497
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-16 06:18:53 +00:00
Alessandro Portale
15446c9e3f Android: Don't crash when dis- and reconnecting phone via USB
When ADB signals a change about the list of connected devices, the whole build/run steps tree gets deleted and recreated.

The AndroidBuildApkStep is a part of that tree and starts one or more
"keytool" processes on creation/init. They were started with their own
event loop. Those synthetic event loops caused a change in order of
deletion which led to crashes with obscure backtraces.

This change removes the event loop creation from "keytool" calls. The
crash is avoided.

The calls take ~0.5 seconds. The short UI freeze should be an acceptable
hotfix trade-off for a crash in QtC13. If 0.5 seconds freeze seem too
much, a better fix could be done in QtC 14.

Fixes: QTCREATORBUG-30645
Fixes: QTCREATORBUG-30770
Change-Id: I8842dc87023142ae75572bf255c7f1ec808d9bab
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-05-15 18:52:46 +00:00
Christian Kandeler
b16f4ccdc0 CppEditor: Move MoveClassToOwnFile quickfix into its own files
Change-Id: I1d54263ac55c57e76120924627949b98816aafc3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-05-15 14:14:17 +00:00
Christian Stenger
22e91fc119 SquishTests: Move waitForObject calls
Before calling clickOnTab we used explicit waitForObject calls
sometimes.
Move these waitForObject calls into clickOnTab as the workaround
inside clickOnTab lets assume that the call of waitForObject
beforehand could fail.

Change-Id: Iba3bd952bfeec3738417ab6e2ea735665acb504d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-05-15 13:56:17 +00:00
Christian Stenger
ef4f690cef AppStatisticsMonitor: Add to qbs build
Drive-by changes to follow common patterns.
Amends de18097cb4.

Change-Id: I05e1e28a0ca080cd28c55aa3b8d88a66b7e8dbcf
Reviewed-by: hjk <hjk@qt.io>
2024-05-15 13:55:57 +00:00
Christian Kandeler
6a3f66af85 CppEditor: Introduce central function for registering quickfixes
... and use it to register the InsertVirtualMethods quickfix.
The resulting registration pattern encourages the presence of tests and
easily allows minimal visibility of the classes involved.

Change-Id: I85fba0b983b51d84b6fae1f6fe51b63eed0ee336
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-05-15 12:40:24 +00:00
Pranta Dastider
36ed2c6278 QmlDesigner: Create new document for QDS Property Effects
This patch creates a new document for Qt Design Studio
Property Effects.

Fixes: QDS-11087
Change-Id: I53287ae9635161a5a48c9cdaed045977944f34c0
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
2024-05-15 11:51:53 +00:00