Commit Graph

47434 Commits

Author SHA1 Message Date
Eike Ziller
6371fa23a6 Merge remote-tracking branch 'origin/4.15'
Change-Id: Ia0cf8d72871437386bf8ad16a8e101bd9d97cc73
2021-03-09 13:17:52 +01:00
Thomas Hartmann
84800e8113 QmlDesigner: Forward QT_IM_MODULE=qtvirtualkeyboard to puppet
If QT_IM_MODULE=qtvirtualkeyboard is used for the application,
when we should also set it for the puppet.

Task-number: QDS-3859
Change-Id: Id88132cebbb7aeddb3fbb8ff1e8aa5191cc89d15
Reviewed-by: Tuomo Pelkonen <tuomo.pelkonen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-09 12:11:37 +00:00
hjk
cb55af8e55 Utils: Replace BaseAspect::setVisibleDynamic by setVisible
This was a workaround from a time where BaseAspect didn't know about
subwidgets created by derived aspects. That's not the case anymore.
Subwidgets registered with registerSubWidget() get their visibility
adjusted by BaseAspect::setVisibility() nowadays.

Subwidgets not registered with registerSubWidget() should not exist.

Change-Id: I8cdf72e5ea1f93c519f606913e084c78afecb56f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-09 11:30:10 +00:00
Michael Winkelmann
98ab3af2a8 Annotation: isEmpty const
Change-Id: I95f1c275c7190f27e0ac2c1a57eb791c9353d4c8
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-09 11:24:10 +00:00
Jarek Kobus
675a72e296 Fix a deadlock when closing Creator while loading a project
Replace the call to SynchronousProcess::run() by asynchronous
call that invokes a process.

This change may be tested by applying the additional patch
mentioned in QTCREATORBUG-25385 description.

Don't call the SynchronousProcess::run() from the main thread when
the Quit event was already scheduled for qApp, since the Quit event
will get removed from the awaiting queue by a call to
QEventLoop::exec().

Fixes: QTCREATORBUG-25385
Change-Id: I8af39552443bfa9b3af6e31ddce85a01b91bbbd8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-09 11:13:01 +00:00
Mahmoud Badri
af41cca569 QmlDesigner: Move new item lib qmls to the share folder
...so that theming and hot reloading can be applied. Theming isn't part
of this commit. Also used icon font instead of pngs.

Change-Id: I7df149fe9c07fb4c2e3deca6bcf3b0346025e3d6
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Miina Puuronen <miina.puuronen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-09 08:58:14 +00:00
Marco Bubke
5c459be526 QmlDesigner: Add Model::bindingPropertiesAboutToBeChanged
It is sometime quite useful to know the old value. For example to remove
it. We could add add the old values to the bindingPropertiesChanged but
this would be a much larger change.

Change-Id: I9b4a78602a35766c99092892b61173fc5c439978
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-03-09 08:58:00 +00:00
Marco Bubke
00cec8a688 QmlProjectManager: Bump up version of the multilanguage database
Change-Id: I123171475f6d37241fdbe37c94725df718f5fe9f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-03-09 08:57:53 +00:00
Tuomo Pelkonen
dab168fa81 QmlDesigner: Fix flow editors decision items selection area
Decision item must only be selectable from the item, not the label text. Text can
overlap with other items and selection becomes unnatural if it is included
in selection bounding rectangle.

Task-number: QDS-3747
Change-Id: Ic5697f124cd0210f6af00b3c004ea19d0af2cd91
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-09 08:46:53 +00:00
Tuomo Pelkonen
29307b7b15 QmlDesigner: Improve in-place Text element text modification
When double-clicking Text -element, check if the text is rich text or not.
In case of rich text, show a rich-text editor modal dialog
In case of plain text, show a in-place LineEdit with correct font

Task-number: QDS-2306
Change-Id: I5206c7d6c869e26ad39979106510d72626dbe800
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-09 08:46:46 +00:00
Tuomo Pelkonen
8e7a3ae4a6 QmlDesigner: draw FormEditorItem bounding rectangle
Draw red rectangle around FormEditorItems
Optimize drawing using square root based sizes

Task-number: QDS-2241
Change-Id: Iedd11b7e50f23e2d8c5a26ad5f7da62756ad426e
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-09 08:46:43 +00:00
Christiaan Janssen
b5781e6028 McuSupport: Improvements with version detection
Task-number: QTCREATORBUG-25261
Change-Id: I1b378eb4a4d132b64e4c36e0a0cdafd402570785
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-09 08:31:16 +00:00
hjk
89646aadce Utils: Don't raise SIGSTOP in the process stub
Previously, the starting inferior was sent a SIGSTOP to avoid
progress before the debugger could attach.

However, these signals are then also visible in the debugger and
need to be ignored as part of the startup handling in Creator.

The waiting effect can be achieved less intrusively by waiting
on a pipe read between fork() and exec().

Task-number: QTCREATORBUG-25073
Task-number: QTCREATORBUG-25082
Task-number: QTCREATORBUG-25227
Change-Id: Ie70b9eb5ea865f85411c26b0dbf377a019fec8d5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-09 08:06:21 +00:00
Miikka Heikkinen
d37f6648f3 QmlDesigner: Preserve item library expand state
Section and category visibility updates always expanded section
or category. Now this forced expansion is only done when searching
for items.

Fixes: QDS-3811
Change-Id: I006124a92086c4851d54407c4ffba0e9c94a854d
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2021-03-08 15:47:45 +00:00
Eike Ziller
08f8dd355d Merge remote-tracking branch 'origin/4.15'
Change-Id: I528bff4d19dc4dfcb600e1e18b0d375c232eb417
2021-03-05 17:55:17 +01:00
Eike Ziller
fee671dfbe Merge remote-tracking branch 'origin/4.14' into 4.15
Change-Id: Ifbfb495fff50b5bb27a12b204653cf1697820913
2021-03-05 17:18:43 +01:00
Eike Ziller
5e1f40a3af CMake: Don't add standard Linux paths to LD_LIBRARY_PATH
If a project specifically links to a library in a standard path (like
/usr/lib/...), we do not need to add that path to LD_LIBRARY_PATH.
Actually adding it can be harmful if the build needs to link against
some other library in a different version than is available in the system
path.

Common case is linking the application against a Qt version from the
online installer. If /usr/lib/... ends up in the LD_LIBRARY_PATH before
the path to the Qt from the online installer, the system Qt is picked up
at runtime instead of the Qt from the online installer.

Fixes: QTCREATORBUG-25292
Change-Id: Ib080e41f5893fb68e9d65cc9c9f11d1a9a60f485
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-03-05 14:53:41 +00:00
Miikka Heikkinen
fab090907d QmlDesigner: Remove duplicate sections from item library
If there are multiple imports of the same library, only use the
highest version to populate item library.

Fixes: QDS-3786
Change-Id: I2dd0976c9353692342b390bec15a99554e74aa05
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-05 13:28:32 +00:00
Miikka Heikkinen
dfeff5b30d QmlDesigner: Search also possible imports in item library
Possible imports are now also parsed for items in item library.
They are only shown in case the search string is not empty.
Starting a drag of unimported item will automatically add the import.
Added a small manhattanlength check to the start of the drag to
avoid unwanted import additions on clicks.

Also fixed the item sorting to alphabetical order within categories.

Task-number: QDS-3825
Change-Id: I93366182af3fd7eda38bf94d53807393ecf92a08
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2021-03-05 13:28:22 +00:00
David Schulz
064da4e0cc LanguageClient: make typed settings backwards compatible
Instead of saving the typed settings in the same list as the generic
stdio settings use a separate key. This way the new typed settings won't
get misinterpreted and overwritten by running older Qt Creator versions.

Change-Id: Ic14dfd978b5577b6ae08735bf811c21fba5ab725
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-05 13:27:52 +00:00
Eike Ziller
30da5aafd7 CMake build/Qt6: Automatically disable build of profilers
Tracing library does not build with Qt 6. Disable that automatically
and also the plugins that depend on it. Add some feature info for
the Tracing library, though we usually do not add feature information
for libraries in general.

Change-Id: I51b6993e30ec69d63a031c7bf404ea3887e14d84
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-03-05 12:29:57 +00:00
Cristian Adam
69afdcd290 CMakePM: Use case insensitive search for file-api configuration
Fixes the case of CMAKE_BUILD_TYPE=RELEASE on Linux, when the project
loading would fail due to "Release" build type name used by Qt Creator.

Change-Id: I2b1a643df190fd02acc422d154a717ed5cd9ce31
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-05 12:16:22 +00:00
Cristian Adam
8c9faaf3e5 CMakePM: Do not issue error message when CMakeCache.txt is missing
Only do the backup of the CMakeCache.txt and the file-api json
reply directory when they exist.

Change-Id: I0fe1098968c5b6b3a8285745452d5a24d7ded638
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-05 11:36:54 +00:00
hjk
7ccd9d6943 Debugger: Move interpretation on nature of source path mapping to user code
Change f0e2708 introduced the ability to specify source path mapping
containing regular expressions and used this in the elf reader.

To simplify the code, this change here moves the decision which paths
are considered regular expressions to the user. The other users which
are not aware of the special handling of paths starting with '(' in
the elf reader will interpret them as plain string, which appears to
be the right thing.

Change-Id: I31f10ed866fe7582d44307a923b6db10206acc9a
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2021-03-05 10:52:57 +00:00
Alessandro Portale
011bc5ce33 Core: Hide the horizontal scrollbar in WelcomePage
The horizontal scrollbar appears with some certain window sizes. That is
most likely due to the column count calculation not taking the vertical
scroll bar width into consideration.

This change simply prevents the unneeded horizontal scrolbar from
sporadically popping up.

Change-Id: I2fb4aac0921f4a6627058d3e73af22c1fe6db3b9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-05 08:34:34 +00:00
hjk
ee13340bdc Debugger: Fix a few left-over FIXMEs from the aspectification
We can have action icons now, and there's setDisplayName for
BookStyleCapitalized text to be used in the right places.

Change-Id: I9f2bdcd0cc738d2f8169c669a41d5309ab69ecd5
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-05 07:36:39 +00:00
Eike Ziller
28f53a9040 macOS: Fix vanishing controls in Welcome mode with macOS dark mode
The example set selector and the search input field were missing some
palette tweaks that were done by other classes deriving from
WelcomePageFrame.

Fixes: QTCREATORBUG-25405
Change-Id: I43a022aa5464a1167f94d26e945de225a436b768
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-05 07:34:32 +00:00
hjk
2152564329 Utils: Remove BaseAspect base from AspectContainer again
Turns out to get into the way more often than it helps, e.g.
'setAutoApply' operated on the base class' m_autoAspect flag
instead of spreading it over the items in the container.

Change-Id: I2711f2a488d1a6c30ec21d3fc481563cec6e55d4
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-05 06:01:34 +00:00
Knud Dollereder
1ba7c149af Enable step functions in the curve-editor
... and shut-up an annoying qDebug log in the transition-editor.

Change-Id: Iea8b48e48bb7e52cd4c845f28c49f8a513785fab
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-04 14:48:19 +00:00
hjk
0e2445bc54 Valgrind: Aspectify settings
Change-Id: I2fbf8244a05ffb1b642843c6471f92e2b154cf8a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-04 13:37:35 +00:00
Christian Stenger
60aac50a44 QmlDesigner: Fix build
Amends 2f86e6d7b5.

Change-Id: I55bdb470137f945267f792a6513ae96afad7aa48
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-04 11:46:18 +00:00
Christiaan Janssen
65215b01e8 McuSupport: Better management of older Qt for Mcu SDKs
Task-number: QTCREATORBUG-25337
Change-Id: Ib0b2f6c75a41a2a897c128455c7b6f761832f5d4
Reviewed-by: Dawid Śliwa <dawid.sliwa@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-04 10:12:25 +00:00
Cristian Adam
6fa671b329 CMakePM: Use UNINITIALIZED for -D<var>=<val> in Batch Edit
CMake is setting the UNINITIALIZED type if you forget to set the
type of a variable when you do it from command line.

Qt Creator was setting INTERNAL, which had the effect of not
being displayed in the UI at all, giving the impression that the
value has been dropped.

Change-Id: I9a6b487bf5062d288365938fd7ef99b49de42884
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-04 10:09:11 +00:00
Christian Kandeler
ffb19f9acf RemoteLinux: Proper support for rsync on Windows
The Windows implementations of rsync have some peculiarities.

Fixes: QTCREATORBUG-25333
Change-Id: Ic69c7ffb868d25e391501a3e3c1b8d007abca8ae
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-04 05:29:15 +00:00
Tim Jenssen
2f86e6d7b5 fix "qmldesigner: do not use hardcoded path in plugin"
-> 6571bd5197.

Change-Id: I62524ec88fed1d041227cf7d9ac97ff65b24af8a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-03-03 19:11:12 +00:00
Lukas Holecek
e3d95ac094 FakeVim: Fix Windows build
Standalone FakeVim library fails to build on Windows due to missing
operator+ for "QString" and "const char *" arguments.

This is problem even if using `QT_RESTRICTED_CAST_FROM_ASCII`.

Change-Id: I0ec13d7dfa8ef99d98fa737456d12f16facc5427
Reviewed-by: hjk <hjk@qt.io>
2021-03-03 15:55:43 +00:00
Lukas Holecek
b8af4341da FakeVim: Fix backspace option
Change-Id: I908ea8db7da0711de24c87b484893e1bbe3ced93
Reviewed-by: hjk <hjk@qt.io>
2021-03-03 15:55:23 +00:00
Lukas Holecek
97d1a0ba3e FakeVim: Fix default options in standalone library
Change-Id: I49eb9a4b05f155c986e514edf30bf01bacf83d05
Reviewed-by: hjk <hjk@qt.io>
2021-03-03 12:52:20 +00:00
Alessandro Portale
d38a49a9d6 CMakeProjectManager: Conform Modules icon
The Modules node in the tree of a loaded CMake project looks quite
different than the rest of the icons. Also, it is neither available as
High-DPI variant nor do we have the original vector graphics for it.

Thich change fixes the above issues.

Task-number: QTCREATORBUG-25412
Change-Id: I4ad5853330424f9fec2520b8b539a325b6c80176
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-03-03 10:45:56 +00:00
hjk
93a5803956 Debugger: Aspectify settings
Change-Id: I527be79965250b82a0928171b17aa93bac9fa2a0
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-03-03 07:39:17 +00:00
hjk
50f93710b7 FakeVim: Aspectify settings
Change-Id: Ic73edce82e192779ed3efe86a5cb747a52d94d36
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-03 07:12:21 +00:00
David Schulz
9d72c807f1 Theme: fix saving default theme on dark systems
Change-Id: I08fbe6441b87c05c93ae30f816eb0d6f79bfb4da
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-02 18:24:52 +00:00
Eike Ziller
7c112ed01d QmlDesigner: Fix build with Qt 6
No QList<T>::toSet anymore

Change-Id: I6e42bd3a1e917c128142b4628277ed48844d1d4d
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2021-03-02 15:40:39 +00:00
Christiaan Janssen
3e08210998 McuSupport: Detect dependency versions when building MCU kits
Task-number: QTCREATORBUG-25261
Change-Id: I79d24aa2e26a3f647bd2251c0407c7d09eea73b3
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Dawid Śliwa <dawid.sliwa@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-02 14:36:40 +00:00
Cristian Adam
8f2db9fcbe CMakePM: Ask for configuration save if the user has changed variables
If the use has forgotten to click "Apply Configuration Changes"
button in project settings but it tries to build or run the
project, then the "Apply Configuration Changes" dialog box pops
as a reminder.

Change-Id: I26728ee3c79af72125be3bede759620c2cf3d7a1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-02 14:18:53 +00:00
David Schulz
3cb6d17d5a LSP: remove optional from required properties
Change-Id: Id13dee6d09ee32f0aa6718efdc42ce56bf04e2c5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-02 12:51:51 +00:00
David Schulz
d17277b546 LSP: reduce error handling complexity
Instead of checking recursively every possible object just check the
required keys for an object and validate it on construction or
assignment from json.

This will reduce the implementation effort for protocol extensions and
also reduce the false positives we might get if the protocol gets
updated.

Change-Id: I3df24e62430d2c7575d26c1581e6a9606e7da4c1
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-02 12:51:47 +00:00
Thomas Hartmann
c100616ea6 QmlDesigner.RichTextEditor: Use proper parent and make dialog modal
Change-Id: Ifeb7f228acfcfc7daecdcd431be639809ec47f0e
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-03-02 12:13:18 +00:00
Eike Ziller
261967a5f4 Fix search result font for symbol searches
SearchResultItem defaults to the standard application font,
we need to tell it to use the text editor font explicitly,
like the specialized addResult method did that was removed.

Amends d3deefc3a4

Fixes: QTCREATORBUG-25396
Change-Id: Id8d41d93c96fbfd6d993568a37d42509da452665
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-02 11:13:52 +00:00
Vikas Pachdha
385aecc692 QmlDesigner: Handle dynamic properties while merging model
Add variant properties explicitly to handle dynamic properties
Required for important customer

Change-Id: I22366e29e390a2dda7d882e4c2fde2540397c955
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
(cherry picked from commit 0c1d44604a)
2021-03-02 10:44:10 +00:00