Commit Graph

62849 Commits

Author SHA1 Message Date
Christian Stenger
5d3e56b3b4 QmlDesigner: Fix compile with Qt5.11 and building tests
Change-Id: I96dea7de0d185c67ea3a26a42de0805bd60dc1d1
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2020-02-24 13:40:07 +00:00
hjk
0e48783c03 CMake: Use buildConfiguration() instead of target()->activeBc
In case it does the same, it is faster now.
In case it does't do the same, it was something  wrong.

Change-Id: Ic3c237a9349d490bcadb10a5e9f700d68a178dae
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2020-02-24 12:57:03 +00:00
Miikka Heikkinen
4908055937 Integrate Edit3D view into Creator
Edit3D view is now a tab alongside Form Editor.
Buttons were moved to a Creator side task bar on Edit 3D view.

Change-Id: Ia06107e4f855ba512ffea3e628a61558894e800e
Fixes: QDS-1570
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-02-24 12:18:53 +00:00
Robert Loehning
7eda08f600 Squish: Directly click mode selector
The tooltip doesn't show up on Windows anymore unless
you manually move the mouse.

The positioning has proven to be stable, so we don't
need to double-check using the tooltip anymore.

Change-Id: I92400d1fa273d4fb6a011cdf00c3b127c06764d5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-02-24 10:50:34 +00:00
Tobias Hunger
e525dea898 CMakeBuildStep: Fix message
Change-Id: I6c373639273bdce17531e3e7fe5ec0f38e62b8b3
Reviewed-by: hjk <hjk@qt.io>
2020-02-24 10:44:39 +00:00
Orgad Shaneh
de5f4d1160 VCS: Fix broken annotation changes detection
isValid() is true for empty regexp...

Change-Id: I0af92574181736d5dde2ca48d3a8ab75ff6f14dc
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-02-24 08:32:03 +00:00
David Schulz
e17c96cf11 Dumper: move global enums and functions to utils
Change-Id: I11f5f0d970cd23a5fd907d33daa3cb8a441d0c58
Reviewed-by: hjk <hjk@qt.io>
2020-02-24 07:47:40 +00:00
Orgad Shaneh
b2ceb7db79 Git: Open log for ranges in output window
Show doesn't make much sense.

Change-Id: I945910749fa99245469164c1a411ce39b9f4f3d4
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-02-24 07:13:25 +00:00
Andre Hartmann
710836f222 Debugger: Fix std::optional dumper
Tested under Ubuntu Linux 18.04.1
with gcc 7.4.0 and gdb 8.1.

Started-by: Tobias B. on Jira
Fixes: QTCREATORBUG-22436
Change-Id: Id75c817f26bf16e4d93332ab24068cacbe5d9d8e
Reviewed-by: Marcel Petrick <mail@marcelpetrick.it>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2020-02-23 14:33:45 +00:00
Alessandro Portale
6e88cc33de StudioWelcome: Add the qml files to the CMake build system
Add a missing delimiter for the debug build. For the release build, we
need a .qrc file which captures the whole qml/ subtree.

Change-Id: I07fa916f6074870278c2aa90a8e4a599bf784a3d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-02-23 11:05:03 +00:00
hjk
d45e123b8e ProjectExplorer: Remove pure ProjectConfiguration::isActive function
It's never used polymorphically, and only caused an unused
implementation in BuildStep.

Change-Id: I5fbd34925788ca22960a2f522eef75be3137c67b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-02-21 17:30:15 +00:00
Cristian Adam
63b0c79a46 GitHub Actions: Add OpenSSL to resulted test artifacts
Change-Id: Ieec647abc87f87de79ef07c12378a2a32e783d8e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 16:08:42 +00:00
Denis Shienkov
b858e58d3f Debugger: Allow to specify 'init' and 'reset' GDB commands
... in case the attaching to the remote running GDB server.

We need in this option for the bare-metal programming, because the
'Attach to Running Debug Server' option should cover functionality
of the removed 'Default' GDB server provider.

Without of this option the debugging is non-functional in a most
cases.

Change-Id: I77a37552b2c7c2e76d70dbecfe9e21f316c02534
Reviewed-by: hjk <hjk@qt.io>
2020-02-21 16:07:40 +00:00
Thomas Hartmann
af9f703dc3 QmlDesigner: Remove project explorer from navigator
This was a 'hack' to make the project explorer more accessible
and with dock widgets this is not required anymore.

Change-Id: I92b0a168a41eade2718698b9602e33550286e96f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 14:44:18 +00:00
Thomas Hartmann
c74a3042d4 QmlProject: Add qtForMCU flag
Change-Id: Ia473fd257414f5edddc0ffcce8c913897d75f351
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 14:02:23 +00:00
Christian Kandeler
21ab7e59d7 AdvandedDockingSystem: Fix deprecation warnings
Change-Id: I21193c2b275f9c11d25eef11bdbe2931ad2ea4ff
Reviewed-by: hjk <hjk@qt.io>
2020-02-21 13:47:44 +00:00
Christian Stenger
8d71943cfa Mercurial: Fix compile for Qt5.11
Change-Id: I2ae766a76d34f0ca6e43ba6059fda82edaf0358d
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-02-21 13:30:19 +00:00
hjk
b2a31f5be8 Modeling: Fix deprecation warning
In file included from /data/dev/qt-5/qtbase/include/QtCore/qlist.h:1,
                 from /data/dev/qt-5/qtbase/include/QtCore/../../src/corelib/kernel/qobject.h:49,
                 from /data/dev/qt-5/qtbase/include/QtCore/qobject.h:1,
                 from /data/dev/qt-5/qtbase/include/QtCore/../../src/corelib/io/qiodevice.h:45,
                 from /data/dev/qt-5/qtbase/include/QtCore/qiodevice.h:1,
                 from /data/dev/qt-5/qtbase/include/QtCore/../../src/corelib/serialization/qdatastream.h:44,
                 from /data/dev/qt-5/qtbase/include/QtCore/qdatastream.h:1,
                 from /data/dev/qt-5/qtbase/include/QtCore/QDataStream:1,
                 from ./qmt/infrastructure/uid.h:30,
                 from qmt/model/melement.h:28,
                 from qmt/model/mobject.h:28,
                 from qmt/model/mobject.cpp:26:
/data/dev/qt-5/qtbase/include/QtCore/../../src/corelib/tools/qlist.h: In instantiation of ‘void QList<T>::node_construct(QList<T>::Node*, const T&) [with T = qmt::Handle<qmt::MObject>]’:
/data/dev/qt-5/qtbase/include/QtCore/../../src/corelib/tools/qlist.h:622:13:   required from ‘void QList<T>::append(const T&) [with T = qmt::Handle<qmt::MObject>]’
./qmt/infrastructure/handles.h:162:9:   required from ‘void qmt::Handles<T>::add(const qmt::Uid&) [with T = qmt::MObject]’
qmt/model/mobject.cpp:80:23:   required from here
/data/dev/qt-5/qtbase/include/QtCore/../../src/corelib/tools/qlist.h:471:35: warning: implicitly-declared ‘constexpr qmt::Handle<qmt::MObject>& qmt::Handle<qmt::MObject>::operator=(const qmt::Handle<qmt::MObject>&)’ is deprecated [-Wdeprecated-copy]
  471 |     else *reinterpret_cast<T*>(n) = t;
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~^~~
In file included from ./qmt/infrastructure/handles.h:28,
                 from qmt/model/mobject.h:29,
                 from qmt/model/mobject.cpp:26:
./qmt/infrastructure/handle.h:40:5: note: because ‘qmt::Handle<qmt::MObject>’ has user-provided ‘qmt::Handle<T>::Handle(const qmt::Handle<T>&) [with T = qmt::MObject]’
   40 |     Handle(const Handle &rhs) : m_uid(rhs.m_uid), m_target(rhs.m_target) { }
      |     ^~~~~~

Change-Id: I9fe85f5b46912a52d1722da0f048d4eee6171ade
Reviewed-by: Jochen Becher <jochen_becher@gmx.de>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-21 11:48:49 +00:00
Leena Miettinen
45a575c218 Doc: Fix QDoc warnings in Core plugin Wizard classes
Task-number: QTCREATORBUG-23620
Change-Id: Ia8d27be35911378703126c1e2d06a157ce6185f0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-21 11:37:36 +00:00
Cristian Adam
ea7d59e58a GitHub Actions: Display tests pass rate as warning annotation
Change-Id: I7d9970067b786f34fc29c82f85c5fc31f6d02704
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 10:42:46 +00:00
Leena Miettinen
5835e22793 Doc: Fix Progress Manager docs
- Fix issues that cause QDoc warnings in documented classes
- Mark undocumented classes \internal

Fixes: QTCREATORBUG-23619
Change-Id: Id1fb3ff55b89a21a65f687beccb5b4ff36747ae7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-21 09:16:19 +00:00
Christian Stenger
bd428b2f13 ADS: Do not enable debug log by default
Change-Id: I9e3f9608b5710b03c3e6089b5bfa40b651a865dc
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 09:07:52 +00:00
Orgad Shaneh
a83f0c5d74 VCS: Replace QRegExp with QRegularExpression in VcsBaseEditor
Change-Id: I8e8a6649e441597e29e88506d494ec69260bebd1
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-02-21 08:28:34 +00:00
Christian Stenger
e445f7aac3 ADS: Fix compile for Qt < 5.12.2 and namespaced Qt
Change-Id: I552d19b1659598d98d0ef1900c79e3c93747ffb2
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-02-21 06:59:17 +00:00
Andre Hartmann
32935591dd ExecuteFilter: Add timestamps to command outputs
By adding a new function to MessageManager.

Change-Id: Ia70d781c0398e8ce0a055ae8fc4718a9081e688f
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-02-20 19:39:29 +00:00
Orgad Shaneh
b14351dab8 Git: Support case-insensitive grep/pickaxe
Change-Id: Ie3da0f5cca2bd3ffa658e3adbba0b1b86a2911d9
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-02-20 19:05:36 +00:00
Orgad Shaneh
6d8efefbe5 Git: Add a toggle button for filter widget
Change-Id: If9680d1fc8a06f57f995a63095ad201fc1f3156b
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-02-20 19:05:25 +00:00
Orgad Shaneh
2110be00ab Git: Move filter widget to GitEditor
and make it a QToolBar.

Change-Id: I6a16b1a828bfabaace8e14ef39344f7f2bac7e8a
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-02-20 19:05:16 +00:00
Andre Hartmann
d21f72d0dd Git: Simplify action in branch view
Change-Id: Ic1a604baa7b83b7244febde776c95896b56a1467
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-02-20 18:46:13 +00:00
Assam Boudjelthia
37ff19c002 Android: update UI after downloadSdk() is done
Make sure the UI ticks are updated directly after SDK Tools package
is downloaded.

Change-Id: If1d94c624dcbc5be14246f61b197d849438d19e5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 17:55:53 +00:00
Assam Boudjelthia
2191bcea36 Android: avoid calling m_sdkManager->reloadPackages() twice
AndroidSettingsWidget::onSdkPathChanged() is being called then
m_sdkManager->reloadPackages(true) after it at start, that's not
necessary.

Change-Id: I6171e8a5fb765fa26aecb505ca50231c3e609b74
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 17:55:32 +00:00
Assam Boudjelthia
ad927dac85 Android: call cancel() instead of hide() in sdk download progressdialog
The proper use is to call cancel(), the dialog will be hiden after that.
Otherwise, it will not be cancel  and can get visible again.

Change-Id: Ifb2a00721571ce2bc8ded7c96e6b69e587020b34
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 17:55:05 +00:00
Orgad Shaneh
44023c8f43 Clang: Fix build with Clang/LLVM 10
Change-Id: I740286c9dcfd325b1c31ab863fb5c91bf9c6ec70
Reviewed-by: hjk <hjk@qt.io>
2020-02-20 17:30:27 +00:00
Henning Gruendl
79612417e3 Integrate ADS in QtCreator
- Integrate DockManager in DesignModeWidget (create factory default
   workspace, create menu items, add qds constants, remove unused
   shortcuts)
 - Remove unused functions and variables due to new docking system usage
 - Add DockWidget style sheet to resources
 - Fix scrollbar style by merging base and scrollbar style sheets
 - Fix update of StatesEditorWidget when switching tabs
 - Add missing unique ids in widget info
 - Set minimum size on ItemLibraryWidget

Change-Id: I08be6d753233fc767037a33b41af335cec6d43b1
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 16:15:03 +00:00
Henning Gruendl
8f686e985c Add Advanced Docking System library
This library is a fork of the following repository
https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System
Development started from the following commit
1de42a9766134eecd2611c2b4e209d3e0ede74d2
Incorporate all commits until
3ffbbfb6d01ff211d8349027221a19b1419296b5

 - Rename variables and files to follow the Qt style guide
 - General code cleanup (remove goto, fix typos, add overrides, remove
   explicit slots specifier, replace string-based with functor-based
   connections, replace dynamic_cast with qobject_cast)
 - Replace most preprocessor instructions Q_OS_LINUX/Q_OS_MACOS with
   Utils::HostOsInfo
 - Remove all QT_VERSION preprocessor instructions below 5.11
 - Change loading and storage of workspaces. Store workspaces in
   separate file instead of a list in the Settings.ini
 - Add workspace dialog, model and view for managing workspaces
 - Rename XML tags and use enum/bool instead of ascii art/numbers as
   attribute values. Use base64 instead of hex for storing geometry info
 - Remove internal style sheets
 - Add more build systems (qmake, qbs)
 - Adapt copyright header
 - Remove unix specific build rules
 - Replace ADS_PRINT with QLoggingCategory
 - Replace Java-style with STL-style iterators

Change-Id: Icf8c2fbaccec9680df83c6e2100e3446a090a437
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 16:14:52 +00:00
Christian Kandeler
61932b5d4b QbsProjectManager: Use the same build key as in previous versions
We changed the build key derivation method in commit 6913947986 under
the assumption that it doesn't really matter as long as it's unique.
However, this value gets serialized, so the change broke restoring
existing qbs run configurations.
As we don't want users to lose all their run configs when upgrading to
4.12, we switch back to the old pattern.

Change-Id: Ia4a353af08cca33dbc3c60bd9fc0e28f42dcfe20
Reviewed-by: hjk <hjk@qt.io>
2020-02-20 15:49:12 +00:00
Cristian Adam
f65f260c91 CMakeBuildSystem: Don't re-update code model on CMakeLists.txt saves
Currently if you edit a CMakeLists.txt and then press save, the code
model will be reindexed.

On projects like Qt Creator this operation is quite significant.

Note that the code model is updated after CMake has run on the project,
which is what I would expect.

Saving the CMakeLists.txt and not running CMake has no effect on the
project, and the code model shoudn't be reindexed.

Change-Id: I61289fda60752ef002cf3625d339d4fcaf144d1b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2020-02-20 15:41:28 +00:00
Christian Kandeler
65e244b238 Qbs: Use more sensible build step summaries
It makes no sense to use the "equivalent command line" value as the step
summary. It's much too long and will never fit into that label.

Change-Id: I55f291c370c97481d37e9f9ba9baec48d7215774
Reviewed-by: hjk <hjk@qt.io>
2020-02-20 15:35:22 +00:00
Christian Kandeler
344a8f5622 Qmake: Do not list all the command-line arguments in the step summary
They will often not fit.

Change-Id: I749242a576e57dd1ffc721ca14b85d1e0fa1ac98
Reviewed-by: hjk <hjk@qt.io>
2020-02-20 15:12:48 +00:00
Christian Kandeler
74a38b9716 Qmake: Do not repeat build directory in warning message
The build directory line edit is right above the label containing the
message, so repeating the build dir value just widens the label
unnesessarily.

Change-Id: I650a4ce76a82582b2710a4673c134dbb4faf306e
Reviewed-by: hjk <hjk@qt.io>
2020-02-20 15:11:52 +00:00
Assam Boudjelthia
b9b2145396 Android: parse Android 11 (R) packages
Allow parsing packages of the latest Android 11 (R) with API level 30.

Change-Id: Ia50d2ff23395b79828d47a8f9aeb3880aa131d83
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 15:00:13 +00:00
Assam Boudjelthia
267cb34542 Androdi: set m_isDeploying to false if deployment is cancelled
If Android deploy dialog is cancelled, then "Run" is clicked again,
the deploy dialog will not show again. Instead, a build is started then
fail in deploying because no device was actually selected. This makes
sure d->m_isDeploying = false in BuildManager.

Change-Id: I8cb899fa57df30b3669e42d30d0f280f8f73fb38
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 15:00:09 +00:00
Alessandro Portale
bad2d31747 Python: Fix MSVCs struct vs. class (forward) declaration warning
src\plugins\python\pythonutils.cpp(67): warning C4099:
'Python::Internal::PythonLanguageServerState': type name first seen
using 'class' now seen using 'struct'
src\plugins\python\pythonutils.cpp(66): note: see declaration of
'Python::Internal::PythonLanguageServerState'

Change-Id: Ibec8b0b990ee88fcd274961db4c8d8d0ee29533a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-02-20 14:41:27 +00:00
Assam Boudjelthia
1f4028d834 Android: remove repeated call to AndroidConfig::connectedDevices()
This causes a delay when clicking the deploy button for an Android
project. Also, it is a repeated call as this will be called inside
AndroidDeviceDialog::device() then refreshDeviceList().

Change-Id: I9203e746e4e9b3e5bfa42133d9a5246863c87e5a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 14:22:59 +00:00
Cristian Adam
b7bfcc3786 CppTools: Do not reindex all sources on project update
When CMake was run it would cause an update, which would have a
cancelAndWaitForFinished on the future interface.

The CppTools would have the future interface added on all updates, and
even though an indexing job would be finished, it would be picked up as
active and cancelled, which would be interpreted as action from the user
to cancel the indexing and cause a full reindex.

This patch makes sure that if an indexing job has finished, it doesn't
register as active, and only the jobs that actually do some work, and
will be finished will wait for the cancel signal.

Change-Id: If8a4db2a4a7a5707a360db84affe794ab0678d38
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2020-02-20 13:53:36 +00:00
David Schulz
552ccd6a61 CodeAssistant: add cancel to asynchronous processors
Fixes crash when the processor reports a result after the code assistant
was destroyed.

Change-Id: I8588d3d6acad69f1ec6302e8ba09d642ebbb77f1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-02-20 12:59:55 +00:00
Thiago Macieira
86fae567fa TerminalControllingProcess: don't use qWarning in the child process
qWarning() and all of QMessageLogger will get to qFormatLogMessage(),
which locks a mutex. Additionally, qWarning may call a number of
different backends that, in turn, may have mutexes of their own. Locking
mutexes in child processes between fork() and execve() is a big no-no:
it may have been locked by another thread before fork(), so it's still
locked in the child process and will never get unlocked. Result:
deadlock.

Plus, qWarning reacts to QT_FATAL_WARNINGS, which I guess was not
intended for this class.

So just use a plain perror(), which is guaranteed by POSIX to be
"MT-Safe race:stderr".

Change-Id: I4e559af2a9a1455ab770fffd15f4a37a3fd113ca
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-02-20 12:53:00 +00:00
Eike Ziller
6f1ad0b0cb Fix extensionsystem API documentation for new qdoc
Change-Id: I2303e46a3e5840a3c23c84a9126237eeb2eb21d9
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2020-02-20 12:01:54 +00:00
David Schulz
db7d12b78c LanguageClient: fix memory leak in client initialization
Change-Id: I30e4032cea5fff46ffd790336729cc6fbaf4b104
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-02-20 11:56:58 +00:00
Christian Stenger
94ee0a575d Debugger: Avoid crash when settings change after debugging
If the debugger engine is not running there is anyway no need
to update its data.

Change-Id: I8cda9218985db8b88d96046254847e8916ca37eb
Reviewed-by: hjk <hjk@qt.io>
2020-02-20 11:15:19 +00:00