Commit Graph

61529 Commits

Author SHA1 Message Date
Tobias Hunger
8bfe0da2f7 Ios: Silence warnings about unnecessary ';'
Change-Id: Ie77d1f49da7eaf970a508f316034741b5d7b94b7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-02 09:35:36 +00:00
Christian Stenger
265498cadc AutoTest: De-noise code a bit
Change-Id: I4585ebfb53623221c713ab0e8e254ba59a4e5920
Reviewed-by: hjk <hjk@qt.io>
2019-09-02 09:04:28 +00:00
Christian Stenger
03b80025a9 AutoTest: Shuffle namespaces for clearer separation
Change-Id: I6ac440c6d72c3d0dbcd75907f8a6ae756f3cf5ee
Reviewed-by: hjk <hjk@qt.io>
2019-09-02 09:04:16 +00:00
Christian Stenger
df93c6c5a7 AutoTest: Pimpl plugin
Change-Id: I36c1ec242e29b9d06c1c2304960b445833fb9ebb
Reviewed-by: hjk <hjk@qt.io>
2019-09-02 09:04:01 +00:00
Henning Gruendl
9af2563a69 QmlDesigner: Fix SpinBox DragHandler issue
Fixes an issue of the RealSpinBox DragHandler where the value
compression timer, which is responsible to trigger a write to the
backend, wasn't triggered anymore, because the SpinBox had no focus
after ending the drag operation.

Change-Id: Ibdf02856c96b997db20c3019438f9645fa853e75
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-09-02 07:36:36 +00:00
Christian Stenger
d12f90047a AutoTest: Allow run after build per project
It might make more sense to be able to enable this
per project instead of globally.

Task-number: QTCREATORBUG-16704
Change-Id: I2e29d3af62c428bcbb534b72b5eb13f1fbd83973
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-09-02 07:08:50 +00:00
Christian Stenger
51382a846d AutoTest: Add automatic run after build
Add an option to automatically run tests if the build
succeeded and the current project has tests.

Change-Id: I1fe028be84279b9b488f78590565c6d4b0449e34
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2019-09-02 07:08:38 +00:00
Christian Stenger
43e27f76b3 AutoTest: Add project based {en|dis}abling of test frameworks
Provide integration into the 'Project' view which allows to set
some settings on a per project base.
For now only enabling or disabling of test frameworks.

Task-number: QTCREATORBUG-16704
Change-Id: Iedd9a300164931e07a21cbb4e5a222be3266c81e
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-09-02 05:49:52 +00:00
Christian Stenger
330126af1e QmlDesigner: Fix includes and compile on Linux
Change-Id: If1cf1d6a2f7c9ec25d7e2bd949f4f4cd6295b694
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-09-02 05:48:38 +00:00
Tim Jenssen
fa5af00db6 QmlDesigner: add missing QColor include
Change-Id: Icb8ad0c5e3dd0873ec7c1dea5bb622314e43479c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-09-01 15:41:11 +00:00
Tim Jenssen
90816d7897 QmlDesigner: add missing QTimer include
Change-Id: I7aaf180957006a2e3a9abde73e64808adcd57c95
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-09-01 11:18:21 +00:00
hjk
edcd955aad QmlProfiler: Remove some dead code
Change-Id: I5f13797044e2c80d4a651bb91bf6e722552566f6
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-08-30 15:50:21 +00:00
Christian Kandeler
53d00e5e8a Update qbs submodule
To HEAD of 1.14 branch.

Change-Id: Iff2853200df560e9b0c110d46bbcb8682db2a91e
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2019-08-30 15:05:18 +00:00
Thomas Hartmann
27d82a1758 QmlDesigner: Cleanup checks
This patch consolidates the checks we do in the callbacks.

Task-number: QDS-1029
Change-Id: I64adb399ebd3ccd939d4412bee3c0e78290dabac
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-30 15:02:48 +00:00
Thomas Hartmann
6f774ff10e QmlDesigner: Open color dialog from property editor
Task-number: QDS-601
Change-Id: I8ab2b286213174c19b330b1db4c27efd7af8792c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-30 15:01:20 +00:00
Tobias Hunger
ac8fe14508 Ios: Fix spelling in id
Change-Id: I96b4a19615560c5d22afca9f07ae715e7ff4e646
Reviewed-by: hjk <hjk@qt.io>
2019-08-30 14:31:54 +00:00
hjk
7cd3bda4c0 iOS: Fix/add RunWorker ids
Easier to debug worker setup errors.

Change-Id: I1d050c715488db2bcce323f4efcd9808d1770eaa
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 12:25:53 +00:00
Milian Wolff
5f494e2e0c Fix CMake build by adding missing library dependencies
This patch fixes the following compile errors when using CMake:

lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'dlerror'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'pthread_join'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'pthread_mutexattr_settype'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'pthread_mutexattr_init'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'dlopen'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'dlsym'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'dlclose'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'pthread_mutex_trylock'
lib/qtcreator/libSqlite.so.4.10.82: error: undefined reference to 'pthread_mutexattr_destroy'
lib/qtcreator/libClangSupport.so.4.10.82: error: undefined reference to 'pthread_create'

Change-Id: I7bf4a9f173622c36ac3ea0c7bde5a0999e9b0edf
Reviewed-by: Tim Henning <tim.henning@kdab.com>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-30 12:19:12 +00:00
hjk
ee98d3a0a8 Nim: Work around deprecation warning
Amends 67349baded.

Change-Id: Id1e7c455932c8cbf6f89601502a8c3ef049d2d6f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 11:28:41 +00:00
Eike Ziller
0f8aa10df1 CMake build: Add missing script
Change-Id: Id22c29368adec84854a2d9d67fee36417e59e43b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-08-30 11:27:42 +00:00
hjk
3d954477a4 QtSupport: Move qtSoPaths from Android
Also add QT_INSTALL_IMPORTS, which is used in a so-called "copy" of
the code in the QtApplicationManager plugin. More is better in this
case.

Change-Id: Ie705d95a24664d3627875ee0463e83a13b830260
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-30 11:21:52 +00:00
hjk
eec6fbe61a ProjectExplorer: Remove traces of previous attempt
... to access runconfig aspect data in a generic way from the
runcontrol.

The plan is now to use a Kit-style variant map with some
helper functions for type-safe(r) access.

Change-Id: Ia3855758be3fce4efd423b83f185d0df88d266f3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-30 11:20:44 +00:00
hjk
cd3876fd1a ProjectExplorer: Use a ISettingsAspect::setConfigWidgetCreator() setter
Closer to the usual pattern elsewhere.

Change-Id: Ieaed483bc7f61b63e5bde87a721f43c3e3d737aa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-30 11:13:51 +00:00
Christian Kandeler
8b4344f2a2 ProjectExplorer: When running in the terminal on macOS, make it close
... after the application has finished and the user pressed the return
key as requested.

Fixes: QTCREATORBUG-15138
Change-Id: Id5b9fce553eb96b10aa76ccbd87fb66f02218110
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 08:55:38 +00:00
Christian Kandeler
5f845a02cd FancyLineEdit: Make completers triggerable via Ctrl+Space
In particular, this allows to trigger the completer without providing a
leading character, thus showing all history entries.

Task-number: QTCREATORBUG-17891
Change-Id: I8ae900d196de2e5083a626faa757648637b325ae
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 08:53:20 +00:00
Nikolai Kosjar
0ba729e527 Import YAML-Parser yaml-cpp
Version: tags/yaml-cpp-0.6.2
  License: MIT

yaml-cpp requires c++11 and since yaml-cpp 0.6 there is no dependency on
boost anymore.

A YAML parser is needed for the ClangTools plugin to parse exported
diagnostics from clang-tidy/clazy:

  $ clang-tidy -export-fixes=/tmp/tidy.yaml source.cpp

The imported source is stripped of unneeded files as documented with

  src/libs/3rdparty/yaml-cpp/patches/0001-yaml-cpp-Strip-unneeded-sources.patch
  (generated with "git format-patch -D")

Change-Id: Ib0a521b5aff4b1cd058eb480bfb99fde4b320dc7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 08:42:22 +00:00
hjk
d663b8e406 Android: Avoid a direct use of RunControl::runConfiguration()
Change-Id: Ib9b6533bb00446107150946c431b31cdc601a2da
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-08-30 08:15:38 +00:00
hjk
335ea0c831 iOS: Avoid double-indirection between DeviceTypeAspect and run config
No need to leave the aspect context.

Change-Id: I96a93f7c85d8bbb1fdc28352a4c70a29bc510e4c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 07:11:45 +00:00
hjk
c343d98215 CMakeProjectManager: Work around deprecation warning
Change-Id: I2e2281395ca030ba76334fba8a574c145bc1dbf5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 07:07:10 +00:00
Tim Jenssen
b77bce63e3 QmlDesigner: add a generate resource menu entry
The result can be used with the Webassembly qmlprojector.

Change-Id: I69ed21561c05fcbb9552bf74217e3546c489d4a6
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-08-29 14:40:23 +00:00
Tim Henning
7fec418205 Tracing: Add Chrome Trace Format Visualizer plugin
This new plugin adds a viewer for Chrome Trace Format (CTF) files
(aka Trace Event Format). It uses the same UI components as the
QML Profiler timeline and the Perf Profiler.

The Trace Event Format is generated by different kinds of tracing tools.
Usually the files are display with the trace-viewer, built into Chrome
(chrome://tracing). This plugin was developed because of the high memory
usage of trace-viewer, which makes it difficult to use with trace files
bigger than 100 MB.

The plugin fully supports all event types used in data generated by
LTTng, converted to CTF by https://github.com/KDAB/ctf2ctf.
Some of the more advanced event types used for example in Android system
traces, though, are not supported. The viewer will silently ignore
unsupported event types.

Supported Event Types:
- Begin, End, Duration and Instant events
- Counter events (graphs)
- Metadata events (process and thread name)

The plugin uses nlohmann/json instead of QJson because of the ~128 MB
object size limit by QJson.

[ChangeLog][Tracing][CtfVisualizer] Added Chrome Trace Format Visualizer plugin

Change-Id: I5969f7f83f3305712d4aec04487e2403510af64b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-08-29 13:37:04 +00:00
Tim Henning
41361047b4 Tracing: Add hasMixedTypesInExpandedState property to TimelineModel
If the property is true, it disables the functionality to select the
type of row by clicking on the row label.
This is required by the CtfVisualizer plugin that shows more than one
type of events per row in the expanded state which would make the above
mentioned functionality meaningless.
This change doesn't change the current default behavior.

Change-Id: I20d42404a4cd3c9142bf0b59b57f4de083be07f3
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-08-29 13:36:52 +00:00
Thomas Hartmann
b1f54536ba QmlDesigner: Make AnimationCurveDialog a normal modal dialog
QDialog::open() opens the dialog as a modal dialog.
Since no dialog parent was set the dialog did not
block any parent windows.

In this patch we set Core::ICore::dialogParent as the parent
and use show() instead of open().
The dialog is not modal anymore and Qt Creator is the proper parent window.
Therefore Qt::WindowStaysOnTopHint is not required anymore.

Change-Id: Iea48a73e67de5e9d2568e71145d57d0ffd0df78b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-29 12:54:27 +00:00
The Qt Project
96ecbf363c Merge "Merge remote-tracking branch 'origin/4.10'" 2019-08-29 11:09:16 +00:00
Ulf Hermann
8e60467d8b Update perfparser to latest master
Change-Id: I5a7c68168b5e76c2da32a42f6e840ce1a6ae7fb9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-29 10:25:11 +00:00
David Schulz
587dc52119 Editor: accept common text edit short cut override events
see QWidgetTextControl::processEvent and
QInputControl::isCommonTextEditShortcut. This will break assigning
shortcuts to for example Shift+a.

Change-Id: I4f97c27a47e2a7a44bf06b3ca949a6de74d4bb64
Fixes: QTCREATORBUG-22854
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-29 08:12:48 +00:00
Tim Jenssen
8463ade7e0 Merge remote-tracking branch 'origin/4.10'
Change-Id: I82fe9d3d37081cfca2c3408984279ed944ffe807
2019-08-29 10:06:26 +02:00
Christian Kandeler
5d706eff7e QmlDesigner: Fix warnings about unused functions
Change-Id: I5dd9619dd4cc8c17bac9f824cb56d39b0fa5c6b4
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-29 07:54:09 +00:00
Marco Bubke
20a304c8e0 CppEditor: Reuse document for search results
Instead of open a document for every entry we do open it only once per
search. For that we sort the entries by file path, so that they are clustered
together and reuse the last document if the path hasn't changed. This can
improve the calculations of the search results drastically.

Change-Id: I9c9c1e387624297d84c6a2ca6edb6130f739d295
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-08-29 07:53:24 +00:00
Tobias Hunger
246277c570 Nim: Disable non-".nim" files in project tree
Change-Id: If1493bbf0ff7055e326753cf563080c0bbf850b5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Filippo Cucchetto <filippocucchetto@gmail.com>
2019-08-29 07:30:51 +00:00
Tobias Hunger
67349baded Nim: Introduce a NimBuildSystem
Change-Id: Ib9bdf52939c88f01fe861308d0c08b5c69efa624
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-29 07:29:41 +00:00
Tobias Hunger
fb21b78444 Autotools: Introduce AutotoolsBuildSystem
Introduce AutotoolsBuildSystem and slim down AutotoolsProject.

Change-Id: I68296152f9ecd5d14198c8d0b36a06c2d1b162ec
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-29 07:28:26 +00:00
Tobias Hunger
b7e4046a17 ProjectExplorer: Add BuildSystem class
Add a class to abstract out the BuildSystem from the Project.

Thie idea is to make a Project have-a BuildSystem, so that
it can stop being one.

The Projects in the different ProjectManagers will get much
simpler that way (and many will only consist of a constructor
with some setter calls) and handles all the interactions
between the rest of Qt Creator and the project.

The complex code to interact with the build systems is then
separate from that.

Change-Id: I3bbb000bb1aed91f0b547ac493f743ede8afb8cd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-29 07:28:04 +00:00
hjk
f4c1c0e441 ProjectExplorer: Rename BaseStringAspect::{f,setF}ileName
... to filePath and setFilePath. In line with Utils::FilePath.

Change-Id: I7115b91876542629c3d61c8259bbd8d9f4022fc1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-29 05:42:37 +00:00
hjk
ae11f30b20 ProjectExplorer: Proliferate FilePath
DeployableFile and fallout.

Change-Id: I9a9c56e4a4ebf8f68df70d65da2e699efedfe907
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-29 05:42:13 +00:00
Eike Ziller
6c9f75ff4a Transform Qt Quick 2 Extension Plugin wizard to JSON
Change-Id: I0e59219adeb5b3aa08a99da7c0bb657d793ba2e1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-28 16:38:23 +00:00
Thomas Hartmann
3d5beb59a4 QmlDesigner: Fix crash
The workaround for QTBUG-75847 is crashing in some cases.
To avoid being in an illegal state we have to reset the
property editor synchronously

Task-number: QDS-1028
Change-Id: I487abf8dcfd9f8f0e83a25fe583e6337dcf8dc24
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-28 14:02:31 +00:00
Thomas Hartmann
c61702fca4 QmlDesigner: Fix potential crash
The new selected ModelNode (m_selectedNode) was set to early, since
we defer the creation of the QML frontend.

We have to set m_selectedNode when the QML frontend is actually created.
Otherwise, we might access an uninitialized QML frontend.

Change-Id: I630b103246c414c737c977e233180723df0c3160
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-28 14:02:14 +00:00
Henning Gruendl
217f0c0305 QmlDesigner: Fix SpinBoxIndicator ghost input
* Fix SpinBoxIndicator not properly setting the pressedAndHeld flag
 * Rename sync function

Task-number: QDS-885
Change-Id: I9b8aae051fc6c8b802bb6ab90d63faa0d985f962
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-08-28 13:32:47 +00:00
hjk
2e8f650044 ProjectExplorer: Store BuildTargetInfo in RunControl directly
Target might go away...

Change-Id: Icbe040b030148a75e84f89b1ea47867f7ab18519
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-08-28 11:49:56 +00:00