Commit Graph

72811 Commits

Author SHA1 Message Date
hjk
df658d1a96 QmlDesigner: Inline TransitionContext
Change-Id: I2f6d101a7d7ae06f11b780ea754e1b4ce6028b4c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 12:06:53 +00:00
hjk
63bb621694 QmlDesigner: Inline EffectComposerContext
Change-Id: Id4b32bde5b1b12b023cffb4bc3f134627dec508b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 12:06:43 +00:00
hjk
e0ae91a775 QmlDesigner: Inline TimeLineContext
Change-Id: Ifa002d1c9100c28ac9a382c8fced3b834122ef85
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 12:06:37 +00:00
Marco Bubke
b78335a50e QmlDesigner: Fix build
- remove useless unique pointer
- remove const when values are changed
- add QVariant include
- explicitly delete the copy constructor and copy assignment operator
  so the std::unique_ptr in the map can not copied by accident
  (create compile problems on newer Visual Studio Compilers)

565449 introduced it

Change-Id: If10f8191ee9b09c7bcdacd328fb495449b49f219
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
2024-07-09 11:56:25 +00:00
Christian Stenger
da797a8f21 PerfProfiler: Fix release build for qbs on macOS
Change-Id: I965f7ac9947425d08878d401abb22a3daf470ce1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-07-09 11:25:09 +00:00
Mathias Hasselmann
da2e60fa3e Core: Show context of filter matches
When inspecting logs often enough the relevant information is next to
the line with the unique expression that's easy to match. The `grep`
tool solves this problem by providing various `--*context` options
which configure how much context to show for each match.

This change tries to replicate this feature.

Task-number: QTCREATORBUG-30167
Change-Id: I6432870c0b958df8c5dc616009aea4ca54973245
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 09:00:17 +00:00
Mathias Hasselmann
54532795ab Core: Allow numeric options in OptionsPopup
For numeric options a spinbox is added to the popup. The text shown
before and behind the spinbox is controlled via the action's label:

    "Show {} preceding lines"

A label with the text "Show " is created before the spinbox, and another
label with the text " preceding lines" is created behind.

Task-number: QTCREATORBUG-30167
Change-Id: Id0fba97c3a674ae41d4ab9d767694f5f5674ef18
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 09:00:02 +00:00
Mathias Hasselmann
5374705531 Core: Change filterNewContent() to use a predicate
At this point this might appear slightly over-designed, but when adding
context matching and highlighting of matches the body of the lastBlock
loop will become much more complex. Something you surly don't want to
copy and paste. On the other hand the following changes are way too
complex to mix them with this refactoring. That's what this change
prepares for, and that's why it is separate.

Task-number: QTCREATORBUG-30167
Change-Id: Idb0ed2471006ebaa199acb164043f8fea8fc0d42
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 08:59:51 +00:00
hjk
3f636a710f QmlDesigner: Register the remaining contexts more directly
The texteditor case remains somewhat special as it modifies
the set context after construction.

Change-Id: I8dadeff9177db5281d91f7826f06b994ff132883
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-09 08:55:20 +00:00
Marcus Tillmanns
b3db7c1095 Docker: Guard m_fileAccess
Change-Id: Ic7df2d44d39ba54b15ad24181bfcddcc13c6d02b
Reviewed-by: hjk <hjk@qt.io>
2024-07-09 07:57:08 +00:00
Jarek Kobus
b507a0039f QMakeStep: Simplify recipe
Use conditional expression with nullItem.

Change-Id: I38e14fceef1a7e3e72c6b3598831241966062bb5
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2024-07-09 07:03:50 +00:00
Jarek Kobus
6c2c287335 GitClient: Call done handlers also in case of an error
This removes the "Precedes: <resolving>" label when
doing git show on a very fresh, local commit.

The same fix applies to "Branches", though not sure if
it's possible that there is no branch.

Change-Id: I08614d47b229bd04256de1a059876d679cc57b99
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2024-07-09 07:03:43 +00:00
Jarek Kobus
faff9bb220 GitClient: Simplify recipe
Use LoopList element instead of constructing large tree.

Change-Id: Ie10af350c7ed15a7d06363414174042b65c7ec53
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2024-07-09 07:03:34 +00:00
Jarek Kobus
9035454afb DiffFilesController: Simplify recipe
Drop inner TaskTree and use LoopUntil iterator instead.

Change-Id: I683efb52c3527c36c2cd98e2e2767521817f7d13
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2024-07-09 07:03:25 +00:00
Marcus Tillmanns
fb96b34337 Utils: Add "amd64" arch detection
Change-Id: I04930aa61714231f54bd4a2d2b644f2e43de2b61
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-09 07:00:20 +00:00
Eike Ziller
fcf76f7b2b Remove empty file
Change-Id: Ib27b1976f04cfa5337f772a3b35318ae89174f52
Reviewed-by: hjk <hjk@qt.io>
2024-07-09 06:53:34 +00:00
Marcus Tillmanns
9dc0a77503 Docker: Make GoCmdBridge optional
Change-Id: I29dbaafca3878b8130ae00eefc57881e35fd31e4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-09 06:44:55 +00:00
Christian Stenger
cd0d02f248 Docker: Fix qbs build
Change-Id: I9485518845cf98c6bedd7d9d383518c900636337
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-07-09 04:36:50 +00:00
Marco Bubke
155013c889 QmlDesigner: Move utils file in designer core into designercoreutils
Clean it up before more files are added to it.

Change-Id: I58c531a80718d99d05dc444974e1a4236da8c6cb
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-07-08 21:53:33 +00:00
Christian Kandeler
38a2189757 ProjectExplorer: Allow build and deploy steps to be run as root
Fixes: QTCREATORBUG-31012
Change-Id: Ie4e6c0da3e17176f61c61ead9d20f203d3c607dc
Reviewed-by: hjk <hjk@qt.io>
2024-07-08 15:43:45 +00:00
Christian Kandeler
332db8de18 qbs build: Do not use relative paths in Export items
Those will be interpreted relative to the importing product in the
future.

Change-Id: I57f6159053acf1e0334d3289de1f93545e2e871b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-08 14:41:55 +00:00
hjk
c66b02d37e QmlDesigner: Register AssetsLibraryContext more directly
... in the constructor of the relevant AssetsLibraryWidget.

This simplifies the code and ensure the context gets set in all paths
creating such an object. One was missing.

Change-Id: I00daf9ef9f932a35bdc8b2b258c471a655b97fbf
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-08 14:38:27 +00:00
hjk
4156287a03 Core: Introduce a IContext::attach() version taking a help provider
... and use it to dissolve the DesignerContext as example.

Change-Id: I0b67989050390fd9017203ec48068c144e0b8ac9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-08 13:57:52 +00:00
hjk
baf20b8491 Core: De-virtualize IContext::contextHelp()
Adapt the using code.

Change-Id: I2f46de253d5f00c4bd74b2adea163b7c23145393
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-08 13:51:08 +00:00
hjk
90e0cd4912 Core: Prepare de-virtualization of IContext::contextHelp
... by providing a way to specify modified implementation
by setting a functor.

Change-Id: Ib0907dd00fdb2ef15242a7ec2e25a5f8a9cc6979
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-08 13:51:01 +00:00
hjk
4992a686e8 Core: De-virtualize IContext widget and context related members
They are not used polymorphic anymore.

Change-Id: Ibb20a5617dcbb65de39214f84c5b29f262f69644
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-08 13:22:36 +00:00
Eike Ziller
028f27781f Core: Fix saving document after showing editor context menu
The editor context menu generated for the drag mark contains actions
that also gets the same shortcut as the global save command, to make
them visible in the menu. This leads to ambiguous shortcut events if
these actions are still taken into account after closing the context
menu.
Avoid this by removing the actions from the context menu again when
hiding it. This was previously done before the menu was shown again, so
this just does it earlier.

Fixes: QTCREATORBUG-31205
Change-Id: I49490c2d6cbd3b000c717f35373e7f9b6b5393e4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-08 13:16:22 +00:00
David Schulz
7dfbab418f TextEditor: fix toggle visualize whitespace and text wrapping
Fixes: QTCREATORBUG-31202
Change-Id: I9d601dfb9d9b00e2c92525b55874c8314051ae02
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-08 13:04:32 +00:00
Cristian Adam
dd1f76d85b CMakePM: Do not use "edit-copy" icon for source folders
This "edit-copy" icon used for source folders is very confusing. The
linked bug report has screenshots comparing Qt Creator and Xcode. Xcode
just uses consistently a folder icon for all nodes that are actually
folders.

This change will make Qt Creator also display a folder icon for the
source folders.

Task-number: QTCREATORBUG-30012
Change-Id: Ibfcc4f55e779ed368edd30bfbc711bd81a4aa499
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-07-08 11:39:13 +00:00
Marcus Tillmanns
431c598a34 Docker: Use gocmdbridge instead of DeviceShell
Change-Id: Ic5ba7e203d7c5210dc2c3fe21c2c92039877e9bd
Reviewed-by: hjk <hjk@qt.io>
2024-07-08 11:38:01 +00:00
Eike Ziller
8d99cd800b Merge remote-tracking branch 'origin/14.0'
Change-Id: Ic3c53630e16712b6493873d21485b726f0d06574
2024-07-08 10:31:06 +02:00
Alessandro Portale
1bf641795f Utils: Fix FileUtils::copyRecursively with user interaction
CopyAskingForOverwrite got passed around as value, thus it got copied.
The messagebox results were stored into the fields of such copies, and
therefore had not the expected values across the recursion.

This change wraps the copy helper function into a lambda and the lambda
is passed around instead of the object. It may still be a bit much
decoupling architecture for a single use-case, but it works now (for
me).

Fixes: QTCREATORBUG-31174
Change-Id: I5444d18d7bf4ef59ab879e31e5233eadf1c935e4
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-07-08 06:34:53 +00:00
hjk
9e413cb458 Utils: Make Aspect::addToLayout() const
It's conceptionally const, and would be useful to use as such, but
the current implementations often modifie mutable state.

To ease the transition pain, rename the previous non-const version to
addToLayoutImpl() and call it after const_cast'ing.

Change-Id: Ic8ca38e40f5df69c3d11121f96ea37648cf4feb7
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-07-08 05:53:24 +00:00
hjk
d34d716c37 Utils: Merge fsengine_impl.{h,cpp} into fsenginehandler.cpp
Sprinkle in a few 'final'.

Change-Id: Icba260aaa612e12f5c2895924273281e326ccd7c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-07-08 05:37:36 +00:00
Thomas Hartmann
666a41fa91 QmlDesigner: Fix excessive number of dot properties
In some cases there is an excessive number of dot properties.
We need to check for this and filter the number of dot properties.
QQmlPropertyMap cannot handle this number of objects.

Task-number: QDS-13176
Change-Id: Ic0ea2c3c3d77aaab21a3219f8591a421bca3d7ef
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2024-07-05 15:04:53 +00:00
Jarek Kobus
3dd0b21f78 TaskTree: Document nullItem, successItem, and errorItem
Change-Id: I1836451ddae2265a26a3cccf8afd8b4a965c128d
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2024-07-05 15:03:23 +00:00
hjk
d37ca65d4f Welcome/PE: Use new IContext::attach() function
Change-Id: I793dfc5b4d9143a71fb388335d33816620c04477
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-05 13:17:29 +00:00
Christian Kandeler
97822d1ab6 Update qbs submodule to HEAD of 2.4 branch
Change-Id: I86934e132a32147b0b82f1aa9b0f9ee773b5f509
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-05 10:55:56 +00:00
Eike Ziller
a41e20a5de Do not show empty items in editor history menus
The menus that are available from the back and forward buttons in the
editor toolbar could show empty items, because some editors are not
backed by files. When they are closed, they are no longer available. For
example: open a file, trigger a git diff (regardless of whether that is
empty), switch a fill times between file and diff to fill up some history,
close the diff.

Just do not show history items with empty display names.

Change-Id: If7e966e55ada407ed03069027b352d12f053751f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-07-05 10:53:18 +00:00
Miikka Heikkinen
29144a2eff QmlDesigner: Add bundle 3D node under root if there is no 3D scene
Fixes: QDS-12916
Change-Id: Iaa437c832afb8fb78b41a9d91d2bbc9e04d27702
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-07-05 10:37:55 +00:00
Miikka Heikkinen
b1074dd6b3 QmlDesigner: Add id for 3d items imported from user content
Fixes: QDS-12927
Change-Id: I54537d864cdfb9748ae8e388536a57616de2d543
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-07-05 10:37:42 +00:00
Miikka Heikkinen
588c75442e QmlDesigner: Update empty state after adding texture to content library
Fixes: QDS-13190
Change-Id: I876e2ad14aa649d6c68f075ecd4a58e6b8259198
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-07-05 10:37:32 +00:00
Christian Kandeler
f0d125f35a Core: Prefer to split text chunks in OutputWindow at line breaks
We want to minimize backtracking in OutputFormatter.

Change-Id: I114472d761ddbf0a2c3e6b42c87a531206fb1473
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-07-05 10:08:50 +00:00
Christian Kandeler
1fd7056840 ClangCodeModel: Allow empty project info list
... when generating compilation database.
This can happen in session mode.

Fixes: QTCREATORBUG-31186
Change-Id: Ieb081932ac2c562bacae995c7d05a3e0e96c9153
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-07-05 10:07:46 +00:00
hjk
3fb37b1210 Core: Correct declaration of Context debug output function
Amends 104ea4acc.

Hidden friends don't work when declared in the wrong class.
This here happened to go unnoticed as it was nowhere used.

Change-Id: Ie26d5c777c85e143a6b7189ccbd87aedd2502df0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-05 09:34:05 +00:00
hjk
1642a6b2f6 Core: Remove StatusBarContext
It was apparently not adding functionality.

Change-Id: Ia6277a3df5ff65d4b797a5ca34909cf1dc4d48bc
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-07-05 09:34:00 +00:00
Cristian Adam
412eeefafa CMakePM: Detect CMAKE_PREFIX_PATH from qmake's path when empty
If qmake -query fails for some reason then %{Qt:QT_INSTALL_PREFIX} would
evaluate to an empty string and CMAKE_PREFIX_PATH will not help CMake
find Qt packages.

By using the path to qmake itself we can safely determine a valid
CMAKE_PREFIX_PATH and CMAKE_FIND_ROOT_PATH.

Fixes: QTCREATORBUG-31194
Change-Id: Ib649dd57bfe3a97ef93a42603d83331922f99612
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-07-05 09:01:23 +00:00
Alessandro Portale
f6ed7edd0a ExtensionManager: Display extension status
Fixes: QTCREATORBUG-31180
Change-Id: I28c56f2e312670183b21e919ef578135c0384d92
Reviewed-by: hjk <hjk@qt.io>
2024-07-05 08:57:24 +00:00
Christian Kandeler
8da67b75c5 RemoteLinux: Use reaper timeout setting also in signal operation
Fixes: QTCREATORBUG-31200
Change-Id: I5093f761c58551702cbc82ad16e4034ef30efb38
Reviewed-by: hjk <hjk@qt.io>
2024-07-05 08:53:01 +00:00
Semih Yavuz
a8a3d79592 Disable qmlls for the document when settingsChanged
Qmlls client was still alive eventhough it was turned off via the
settings page. This was causing both qmlls highlighter and the embedded
highlighter do the job at the same time. Disable qmlls client
appropriately.

Fixes: QTCREATORBUG-31148
Change-Id: I9577a78f9c861cf2fe718ffe58f3d7f77a916b9a
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-07-05 08:12:48 +00:00