Commit Graph

7974 Commits

Author SHA1 Message Date
Robert Löhning
a46fc4e8a2 SquishTests: Ignore hide/show entry in kit tree
Change-Id: Idb32c143d17867e7ccd86e4814604785eb4fc08a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-05-21 05:37:48 +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
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
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 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
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
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
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
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
Alessandro Portale
6663f7c9bd ExtensionSystem: Introduce alias PluginSpecs
Change-Id: Ic7b87246cf91328c4291bbce5760a45dfa0b14e5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-13 13:46:53 +00:00
Christian Stenger
6c9cea2f82 SquishTests: Adapt combo box values
Change-Id: I4ca2cf10ff1fe1c6fde2835f04d954527232b658
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-05-13 04:56:07 +00:00
Marcus Tillmanns
657ce51467 ExtensionSystem: FilePath'ify
Change IPlugin::fileName() and IPlugin::location to use
FilePath instead of QString.

Change-Id: If473ab1e258951735f93221cbd62c505f0727eb2
Reviewed-by: hjk <hjk@qt.io>
2024-05-08 10:29:59 +00:00
Michael Weghorn
23b7ac84a9 Debugger: Use integer from native GDB value for typedef
Extend the solution from

    commit d86cf5e235
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Sep 24 12:02:06 2020 +0200

        Debugger: Retrieve and remember int from native GDB value

to also retrieve the int representation for numeric values
from the corresponding native gdb.Value if a typedef to
an integer or bool type is used, not only when an integer
type is used directly.

This makes expressions for bifield members in the
debugger's expression view show the correct value
when the type of those bitfield members is a typedef
to an integer type.

Extend the "Bitfields" dumper test accordingly.

One real world example where incorrect values were
previously shown is GtkWidgetPrivate from the
GTK library [1].

[1] ebc84a6185/gtk/gtkwidgetprivate.h (L39-76)

Change-Id: Ib39e00ebbfc8d7d9ab10dc89af61f37ec41fb4ee
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-08 06:29:35 +00:00
hjk
67072d3f5b Debugger: Re-work bridges
The type cache has been split into smaller caches for individual
aspects. Type ids are now integral, not strings.

In addition, there is new supporting code for logging, timing and
profiling

Change-Id: I6db72a149650d42aecf8b899869c542b1303d43b
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-07 10:15:34 +00:00
Eike Ziller
a79f02ca4a Merge remote-tracking branch 'origin/13.0'
Change-Id: I77d3656aec10063a90095d5299b85304692d8b32
2024-05-06 08:14:24 +02:00
Robert Löhning
b000978278 SquishTests: Remove dead code
The Qt Quick Application template doesn't allow changing
the build system. skipBuildsystemChooser is True above.

Change-Id: I413fa6c3b4d97e1f1212dbab96d2a39458ce3751
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-05-02 20:22:35 +00:00
Christian Kandeler
4506b184a3 CppEditor: Let users disable the built-in indexer
Fixes: QTCREATORBUG-29147
Change-Id: Ib7e791362782f5b40c5678de95d2309a6396ccb9
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-05-02 12:38:01 +00:00
Eike Ziller
dea0da7a8b Merge remote-tracking branch 'origin/13.0'
Conflicts:
	src/plugins/languageclient/languageclientutils.cpp

Change-Id: I8d1945f79d93cecee9b22f409bc5f2eefaf6a4cd
2024-04-26 10:59:07 +02:00
Tim Jenssen
ef0ee52bf9 Merge remote-tracking branch 'origin/qds/dev'
Conflicts:
	doc/qtcreator/src/overview/creator-only/creator-keyboard-shortcuts.qdoc
	doc/qtcreator/src/qtquick/qtquick-live-preview-devices.qdoc
	doc/qtcreator/src/qtquick/qtquick-profiler.qdoc
	src/plugins/qmlprojectmanager/qmlprojectmanager.qbs
	src/plugins/remotelinux/linuxdevicetester.cpp

Change-Id: I3683c1799df05209d05413383456b285a2daf96e
2024-04-23 16:05:55 +02:00
Tim Jenssen
7dfa746920 Merge remote-tracking branch 'origin/13.0' into HEAD
Change-Id: I1f87297930db420606aab8d7016c290483f262c0
2024-04-23 14:03:46 +02:00
Robert Löhning
987cd409f3 SquishTests: Make sure that button in Designer is renamed properly
This misused typeLines() to close the dialog by pressing "Return".
Although the entire name of the button should be selected at first,
I witnessed the new name being appended to the old one.

The new code uses replaceEditorContent() to explicit select the old
name and replace it with the new name. After that, it explicitly
presses "Return" to close the dialog.

Change-Id: I5ec946f57000396b70428e08ab795a1ee3eba91a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-23 12:03:13 +00:00
Christian Stenger
facd32b2e0 SquishTests: Remove duplicate object
Change-Id: I7ceed8ef40684323b8404c3fe7c529fbd5b7be74
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-04-23 11:08:44 +00:00
Robert Löhning
ec33fc0476 SquishTests: Avoid using occurrence value for SideDiffEditorWidgets
Change-Id: I7c519347a25b0c541b019dd1cae65df4a74c8826
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-23 09:35:37 +00:00
Robert Löhning
457488a106 SquishTests: Avoid using occurrence value for IconButton
Change-Id: I0a4d9497801dbd39c2c735cac760c5dc6a0298fd
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-23 07:04:42 +00:00
Robert Löhning
93d0085517 SquishTests: Avoid using occurrence values for OutputPaneToggleButtons
The occurrence count can't be understood without looking at
the running application and can even change at runtime.

Change-Id: I34677fd2fe2a0a8a7f2cdcd9f37ec938efe1a5ea
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-23 07:04:23 +00:00
Robert Löhning
59ebb8a6a7 SquishTests: Autodetect cdb
Creator automatically detects the debuggers anyway and then can't handle
the fixed ID.

Change-Id: I732f86649b02016be2ca513c896a80ce254d721f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-23 07:03:35 +00:00
Marco Bubke
b74c47ec66 QmlDesigner: Remove template parameter from project storage
There are now other ways to prevent locking bugs. So we don't need the
template parameter anymore. That makes it possible to move much of the
code to a cpp file. Maybe later we have to move some functions back for
performance reasons.

Change-Id: I01269912618d7cf5e070219e7edaa3a00623b7cf
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-22 15:35:11 +00:00
Marco Bubke
e262ec1ebb QmlDesigner: Integrate item library entries from project storage
Task-number: QDS-12102
Change-Id: Id6fbfcfb44d3b8c290f5e5d74addf33ef4d9a5e5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-22 15:34:53 +00:00
Eike Ziller
e5640386f8 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	doc/qtcreator/src/qtquick/qtquick-live-preview-devices.qdoc
	src/plugins/projectexplorer/projectexplorer.cpp

Change-Id: I682b330a278a329fc6294baeff6a28040abd10bc
2024-04-22 12:18:10 +02:00
Christian Stenger
8781befcfb SquishTests: Wait for combo box popup closing
On systems where some ui features may be using animations
the animation could interfere with the test.
Explicitly wait a short amount of time as there is no
easy way to achieve this.
This fixes a couple of tests on macOS.

Change-Id: Ib79b43955ebf218342db108a43979093994fba02
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
2024-04-19 11:55:15 +00:00
Marcus Tillmanns
ef8455f270 ExtensionSystem: Rename PluginSpecImpl to CppPluginSpec
Since we now have multiple classes inheriting from PluginSpec it makes sense
to rename PluginSpecImpl to the more accurate CppPluginSpec as it deals with
compiled plugins only.

Amends b39b192518

Change-Id: Icae9daed2be5a258a9918731a881c72cbe4f0fa4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-19 11:26:03 +00:00
Marcus Tillmanns
7cf2e4352c ExtensionSystem: Fix compile without WITH_TESTS
PluginSpecImpl::read is used outside of tests, but PluginSpecImpl itself
is only exported when WITH_TESTS is on. So compilation without
WITH_TESTS would fail. To circumvent this the ::read functions are moved
outside of the PluginSpecImpl and friend'd to it.

Amends b39b192518

Change-Id: I4bd8ce087267ab4e059cff2470ff882c7db6fd78
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-19 10:39:17 +00:00
Robert Löhning
20f01b351c SquishTests: Replace wait condition strings with lambdas
Squish allows passing wait conditions as strings containing python code.
The only advantage I see is that the notation is a little shorter than
using a lambda. On the other hand, the strings can't get proper syntax
highlighting and cause false positive warnings about unused variables.

Change-Id: I226840fa26dc75d07d89f20647d069e2e866bbc9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-18 15:07:56 +00:00
Christian Stenger
f720835680 Tests: Fix build
Change-Id: I6d9475bf2d95a1075d7a761f49d8edff89a30f78
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-18 09:52:28 +00:00
Robert Löhning
db492c461c SquishTests: Log found shortcut in tst_HELP02
Change-Id: I144dc9961d97968d3b0355487714d287d22abb71
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-18 09:32:52 +00:00
Robert Löhning
6e44fd29f1 SquishTests: Tests wizard of Qt Quick 2 Extension Plugin again
Change-Id: Icfae5823d2b4f273350388d772a929b054879bd2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-17 14:55:40 +00:00
Eike Ziller
0fe7350368 Merge remote-tracking branch 'origin/13.0'
Change-Id: I0892d8e54930bb5a65dc51117b8ca7d70ce300a3
2024-04-17 13:29:02 +02:00
Robert Löhning
00ac4b7ccc SquishTests: Fix supported platforms for Qt Quick 2 Extension Plugin
Change-Id: I3accd8f43c5cace3145aacff28ef068ff20ecea2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-04-17 09:11:21 +00:00
Robert Löhning
6838be76aa SquishTests: Fix wait condition in tst_git_local
Change-Id: I401e3c8f8f2743ff9b108d3e25693f834d61e8ac
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-04-17 09:10:47 +00:00
Jarek Kobus
20e332b135 TaskTree: Introduce parallelIdealThreadCountLimit
Reuse the new element.

Fixes: QTCREATORBUG-30647
Change-Id: I79836a9243abcb1661c79842dcf6c33492342552
Reviewed-by: hjk <hjk@qt.io>
2024-04-15 11:05:18 +00:00
Marco Bubke
b01522f102 QmlDesigner: Skip QQuickItem in QtQuick.Templates
Otherwise we have to QQuickItem meta info objects and that creates bugs.

Fixes: QDS-12460
Change-Id: Iaf76df6671c4ca73913285b78bf1d6408fbe93be
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:26:53 +00:00
Marco Bubke
316d88bd12 QmlDesigner: Extract default property in qml document parser
Change-Id: I2b3576312cc2bec0c2e103fd3f342a5fe059b10c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:26:14 +00:00
Marco Bubke
665d043e72 QmlDesigner: Extract default property in qmltypes parser
Change-Id: I0cc9ac71ba764db252e302d11d1cd3e4aff834f5
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-04-15 09:26:02 +00:00
Marco Bubke
afd1b3b6e9 QmlDesigner: Lookup the default property in prototypes too
The default property can be set too in any prototypes. Look them up
there too. Because it is expensive we cache them in the node meta info
to make hasDefaultProperty() followed by defaultProperty() cheaper.

Change-Id: I3b9ec90fc1bc5f0228dad3b580c335734f03821d
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:25:51 +00:00
Marco Bubke
db84bc43a9 QmlDesigner: Improve node creation with project storage
The file url was missing, so no valid source id could be created. That
lead to invalid imports.

The qualified path for the node instances is now created in the node
instance view.

Change-Id: I2685ab2fdbdb0fa8a5f89793be52c8fae2b8db8c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2024-04-15 09:25:46 +00:00
Eike Ziller
310d3cc041 Merge remote-tracking branch 'origin/13.0'
Conflicts:
	src/plugins/remotelinux/linuxdevice.cpp

Change-Id: Iad28a1bfa4632922931d351d2fe27757cf21dec3
2024-04-15 08:33:39 +02:00
Jarek Kobus
56c388000a Async: Re-enable onResultReady tests
Enable them conditionally, since the fix went into Qt 6.6.

Task-number: QTBUG-119169
Change-Id: I6b9f1a9da6a5b6337384f37d940195f09bd28bd4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-04-12 09:15:55 +00:00
Jarek Kobus
698488fc05 TaskTree: Add a test showing the parallel disorder
In parallel mode the done handlers may be invoked in a
different order than the corresponding setup handlers.

Change-Id: Ib3df668491054501d250fef9c499d127fe98626d
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-11 12:19:02 +00:00
Jarek Kobus
a583436365 TaskTree: Zero-initialize the Storage
Change-Id: I9d5ee11285b377abafe21d472481c941f49a5ae1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-04-11 07:59:56 +00:00