Commit Graph

44349 Commits

Author SHA1 Message Date
David Schulz
43f02573df Debugger: Use shared TerminalRunner also for CDB
Task-number: QTCREATORBUG-19633
Change-Id: Ic16335de1c5e57da7d9253772bad9e4ade1db926
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-30 11:20:45 +00:00
hjk
7ab872ce6a Android: Remove dependency on plugin object pool
Change-Id: Ic6908cca581a0d6155c8c43c86163347ca578a4c
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
2018-01-30 10:21:18 +00:00
Christian Stenger
f55ce0a1e0 Debugger: Do not immediately assume engine setup done
Instead of assuming engine setup done wait for the respective
signal coming from the debugger bridge.

Task-number: QTCREATORBUG-19666
Change-Id: I3b9daffc7f22ce2a0fde5c993760a2a5bda31310
Reviewed-by: hjk <hjk@qt.io>
2018-01-30 10:20:27 +00:00
Ulf Hermann
14297c9543 Sqlite: Add a dtor to Database
The base class TransactionInterface has a virtual destructor that is not
exported. This means we get linker errors when trying to use Database in
a different library.

Change-Id: Iba431a627dca32d59ea7316b7f3eb07fa209c60f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2018-01-30 09:35:50 +00:00
Ulf Hermann
373f5835dc Timeline: Add some missing override
Change-Id: I010ef4b5c34265329166513793cd6d18dab93401
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-01-30 09:20:10 +00:00
Thomas Hartmann
84d81f27b2 QmlDesigner: Simplify settings in stand alone mode
We also hide the related error message pointing to
the QML emulation layer.

Change-Id: I8e2f08bcbc4bdbf36a49e8fba1d1d92adab36e11
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2018-01-29 16:29:06 +00:00
Marco Bubke
0f8befacd3 Clang: On the road to update and preprocessor support
This patch has grown in a quite big change set and it is really hard to
divide it in different parts.
V2::ProjectPartContainer is now using FileIds instead of file paths. This
cleans code up because it is a big step in the direction that internally
only file ids are used. But it is depending on the file cache, so the
file cache has to be provided as an argument. There is now an interface for
transactions too which are ease the testing of them and enables the support
of preprocessor. It adds macros as symbols and is saving used macros. The
used macro support is enabling update improvements because only if a
changed macro is used it needs to be recompiled. This is still in flux
and can be changed in later patches.

Change-Id: I492a2c9af1201d40fdd9f46a0045f7878bbbaa3d
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-29 13:47:09 +00:00
Thomas Hartmann
e6f43be202 QmlDesigner: Add setting that hints for a stand alone mode
Change-Id: Ib0287b74b5ddb2eb9fdeccb1d50cffec9ae0467a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-01-29 11:01:21 +00:00
hjk
3d2db474a4 Core: Force and rely on mode creation before extensionsInitialized
cf7f898db3 broke initial mode display due to the then-intentional
delay in registration. Now change the approach: Only record
the modes and the last requested start mode and do all remaining
setup triggered from MainWindow::extensionsInitialized.

This changes behavior insofar as only the last requested mode
on startup (typical Welcome, if Welcome not loaded, Edit) will
be activated.

Change-Id: I62b28342c347938b001c6d3be6a076c5a69b560b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-29 10:43:02 +00:00
Ulf Hermann
aade6ef371 Fix binding loops in Timeline and FlameGraph
This also gives us a nicer minimum width for the details windows.

Change-Id: Ibf57899b24caa22f303a83cafd20f2b07b5efbb4
Task-number: QTCREATORBUG-19653
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-01-29 10:10:02 +00:00
Tobias Hunger
78b7c34bbc Core: Fix build failure
Change-Id: I8a0b204749763ef07d0118990eca9d4c1cc19d29
Reviewed-by: hjk <hjk@qt.io>
2018-01-29 09:58:51 +00:00
Eike Ziller
049b761242 Fix inconsistency between tool tip and context help
For the tool tip it moves the position to the start of the word before
passing it to the hoverhandler. That wasn't the case if the user
requests context help, which lead to the strange situation that the tool
tip showed help, but context help at the same position did not (e.g. on
QApplication::topLevelWidgets() with the cursor between the
parentheses).

Related to QTCREATORBUG-15959

Change-Id: I2b9918ea235869c2ddeeba6e749958c10a47d259
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-29 09:51:23 +00:00
Ulf Hermann
e44504371c QmlProjectManager: Prepare for running on remote devices
We add a "targetDirectory" property to the file format and fill in the
deployment data.

(cherry picked from commit fba61c5b55)
Change-Id: If207cd5c77175c54cffdb5df92ea85c425cd3191
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-29 09:04:45 +00:00
Christian Kandeler
c535cce8c6 Update qbs submodule
To HEAD of 1.11 branch.

Change-Id: I6bdc81ae2f5aaa2b4403266615200ab51dc75cca
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-29 09:04:34 +00:00
Nikolai Kosjar
33b6fe812a Clang: Make clazy/tidy options part of the diagnostic config
As a side effect, clazy/tidy options become available for project
specific customization in the projects mode.

Change-Id: Id72762dedd857915139c15f532d2f1c6d1f43edb
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-29 08:14:14 +00:00
Nikolai Kosjar
5b1ae09fbf Clang: Auto reparse if diagnostic config changes
On diagnostic config change, affected documents are closed behind the
scenes. Visible ones are parsed immediately, invisible ones are tagged
for parse once they become visible.

Task-number: QTCREATORBUG-16263
Change-Id: Id4dcc69f1a4bfccc597e798d6821f8718f86e352
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-29 08:14:08 +00:00
Nikolai Kosjar
2c74441260 Clang: Use only one ClangProjectSettings instance per project
So far we've created ClangProjectSettings objects on demand. To get
change notifications there should be only one per project alive (and
accessible).

Change-Id: I757186ceaa642c6864d02946258cc6eb18064a52
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-29 08:14:03 +00:00
Nikolai Kosjar
384128662e Clang: Avoid storing settings more than needed
There is no need to store on every key stroken when changing the
diagnostic config in the projects mode.

Change-Id: I627c11621b999527c110862365ba5c2a0b1e878b
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-29 08:13:57 +00:00
Nikolai Kosjar
49ba25e183 Clang: Let ClangProjectSettings announce changes
Change-Id: Idd6c91f5e8f0a73e4a15fe2f4b667302e6ee5e49
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-29 08:13:51 +00:00
Nikolai Kosjar
9b4688f1a4 Clang: Let CppCodeModelSettings announce invalidated diagnostic configs
Change-Id: I1fe62d4cd4bc91bfd73e57ace6dc9a87d13b3537
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-29 08:13:44 +00:00
hjk
22742b15e7 HelloWorld: Do not use global object pool anymore
Change-Id: Ief4b53475fbe87f30b8305cf07dc14a5819e4662
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-29 07:55:34 +00:00
hjk
e783f883ea Core: Move MenuBarFilter closer to its peers
Change-Id: I9d7eac297a06fae39ef7ee19841547e8b5bea45a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-29 07:55:26 +00:00
hjk
8a8426d7ba BareMetal: Don't rely on global object pool anymore
Change-Id: Iaaf0828cbcc3b3df9ec1774579381e36be82e3c7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-01-29 07:43:31 +00:00
hjk
2052d6fc03 Debugger: Remove use of IPlugin::{add,remove}Object
The functions are about to be removed.

After cf7f898 the mode does not have to be in the global
pool at all, the plugin needs to stay there as it is used
for soft dependencies, but use direct insert/removal now.

Change-Id: I6497c3ea9fb68fdfa488e8c8700e31d91e36858f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-01-29 06:57:45 +00:00
Christian Kandeler
c6d9507a8b Update qbs submodule
To HEAD of 1.10 branch.

Change-Id: Id930196829322ffd3a3baa43da34e233a1864ea4
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-01-29 06:45:19 +00:00
Thomas Hartmann
5b6b26893f QmlDesigner: Fix crash
We cannot use references if the container is just temporary.

Task-number: QTCREATORBUG-19661
Change-Id: Ie0c9af142d5155d3f61c14bad1fbecce7f2dfd0f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-01-26 17:38:29 +00:00
hjk
5250959bd9 FakeVim: Reorganize internal class dependencies
Initially, this was just meant to remove the nowadays unneeded
object pool registrations, but some of the internal encapsalization
is not much more than line noise. So do what most other plugins do:
Keep a global pointer to most of the 'singleton' data, instead of
passing around one value that will never be different.

Change-Id: I24bf02d1ffa53c8f0d4890db3579a434b1233d42
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk@qt.io>
2018-01-26 17:27:15 +00:00
Ivan Donchevskii
09310bcdc6 Clang: fix utf8 related column numbers
Use new clang_getFileContents to efficiently convert
utf8 byte offsets from line start to column numbers.
Also provide simplier backwards convertion to pass
resulting utf8 offset to clang.

Task-number: QTCREATORBUG-16941
Change-Id: If0e58fe01ad3e281b7e952e972b9e86f6e75aadb
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-26 15:39:31 +00:00
hjk
268efa4a0b Autotools: Remove dependency on plugin object pool
Change-Id: I402e84d2702faf58b18ce896ebda5501966e5c9d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-01-26 15:09:11 +00:00
hjk
53d14fbb48 Locator: Do not use object pool for some filters and LocatorManager
Also bundle lifetime management into one object.
Also minor interfact cleanup.

Change-Id: I60eec84b0b28a20ce353fcdbfdff1c4848686ba0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-26 14:40:44 +00:00
Tobias Hunger
c7e4eee345 ProjectTree: Add command to manually sync current document and project tree
Add a command to manually sync the current document and the project tree.

Task-number: QTCREATORBUG-19625
Change-Id: I2423853ca1a876c6203a004b465adde949eb6c5b
Reviewed-by: hjk <hjk@qt.io>
2018-01-26 14:35:10 +00:00
Tobias Hunger
9b495853c6 CMake: Ignore duplicate files in server-mode
Some cmake generators create a set of different configurations of the project
at the same time (e.g. Visual Studio related ones). These typically contain
the same set of files.

Creator iterates over the configurations and adds files to the project tree.
For multi-configuration generators this does lead to the same file being listed
several times below a target (the targets themselves were already deduplicated!).

This patch adds deduplication of file paths already listed in the target's
subtree of the project, thus fixing the multiple files issue. New files (e.g.
those that get only built in debug/release mode) will still get added as before.

Task-number: QTCREATORBUG-19020
Change-Id: I5dd6012ea335d9946c78c25be258c8c4d60698f2
Reviewed-by: hjk <hjk@qt.io>
2018-01-26 14:34:24 +00:00
Ivan Donchevskii
4ba4079db2 CppTools: Use -isystem only for non-project includes
...and return -I for ones in project.

In case -isystem is set for all includes we don't get
proper reparse when the included file is in angle brackets
and is changed.

Change-Id: Iba912edfc488aed2a4484f6a742a7c36099e8a13
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-26 14:00:57 +00:00
hjk
06d47b930e Welcome: Don't add ProjectWelcomePage to global pool
Not needed anymore after 4fad9dfa8f.

Change-Id: I36820046fbab3db36d5a4b3928bbfa6b0cd18188
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-26 13:12:30 +00:00
hjk
8426cc4025 Core: Do not put Edit mode in object pool
After cf7f898 not needed anymore.

Change-Id: I8d88ffe00b5a94cd9423dd2b9f3f60a2a745a924
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-26 12:45:55 +00:00
Christian Stenger
4e81360e4a AutoTest: Simplify code for (de)selecting all items
Checkstate handling has been redone, which allows to simplify
these actions.

Change-Id: Ice89d2e9a1d8c3e38520ff2519d06fc4e6d67df9
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-26 11:43:44 +00:00
Christian Stenger
f3c8ab52fa AutoTest: Avoid unnecessary local object
Change-Id: I9794a35ce5f983114769f3a14ab970f4e822471f
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-26 11:43:35 +00:00
Christian Stenger
30000c80af AutoTest: Ensure removal of empty items if possible
Change-Id: I2cac91e56e8f22f89f88bbc82cc5f7b526500529
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-26 11:43:24 +00:00
Ulf Hermann
13ba063696 QmlProfiler: Fix translations and tests for statistics view
The statistics view is not called "events" anymore.

Task-number: QTCREATORBUG-19658
Change-Id: Iff4375d3dc0cf5d82d118244698887818f924c07
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2018-01-26 11:26:48 +00:00
Nikolai Kosjar
fa501caa76 Clang: Handle cancelled future in ClangHoverHandler
This completes

  Clang: Cancel tooltip future on backend restart
  commit 56157f739d

Task-number: QTCREATORBUG-19644
Change-Id: I4a27681368df912003a415cec809c578f7c409cd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-26 11:18:17 +00:00
hjk
3c91777e48 Core: Detach status bar handling from global object pool
Instead of relying on addObject notification, provide a
StatusBarManager::addStatusBarWidget() method to create,
register and keep track of an IContext object.

That's essentially what was StatusBarWidget before, but does
not need to be known on the user side. For removal, this
provides a StatusBarManager::destroyStatusBarWidget(),
any not explicitly removed items are handled in response
to ICore::coreAboutToClose()

The StatusBarManager class is fully static now, could
be a namespace.

Change-Id: Ia2bd13b391c3f68c8dfd584b53524a9649cc0787
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-26 10:20:38 +00:00
Marco Benelli
1442919823 qmljs: correct error level for M127
Lint message M127 (Expression statements should be assignments, calls
or delete expression only) is a warning and not an error.

Task-number: QTCREATORBUG-19534
Change-Id: Iff93cd77582c28f4160fe7a8dec42f19c22436cb
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2018-01-26 10:03:20 +00:00
Nikolai Kosjar
e2fcea264c Clang: Fix file names for qbs build
Change-Id: I8caf7ed2cda83a7ac6f2c6226ea80424d3bafc60
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-26 08:53:59 +00:00
Thomas Hartmann
848c066025 QmlDesigner: Show Fusion and Imagine style in combobox
While those only exist since Qt 5.10 I would like
to avoid Qt version checks all over the place.

Change-Id: I5750a93ef2e5bbc675ab9adcf35e356990b3059a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2018-01-26 07:59:59 +00:00
Thomas Hartmann
e7bc21e912 QmlDesigner: Allow adding of resources
* Allows adding of multiple files
 * Files are copied
 * Files are added to the project
 * Supported file types can be extended

Change-Id: I41d1d18c4a3fc9c6c50e0629070d9a2cbf082976
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2018-01-26 07:59:25 +00:00
Ivan Donchevskii
2c7823c975 Clang: forward clangbackend QDebug messages to stdout
...to see them in both qtcreator application output
and DebugView.
clangbackend is a separate process which provides
QtCreator stdout and stderr channels so we need to
have QDebug messages there in order to receive them.

Change-Id: I2edc4de1ca203b061395b0b3070e4471348eaad7
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-25 14:12:34 +00:00
Christian Stenger
a5b82fe827 AutoTest: Fix running test cases with grouping
When gathering information for running tests we need to
take the grouping into account if enabled.
This patch amends 4eabcda3a1.

Task-number: QTCREATORBUG-17979
Change-Id: I27c17a5de8596c95f3b207530560d2a7c2cb5e99
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-25 14:11:07 +00:00
Christian Stenger
5ef822da9f AutoTest: Redo check state handling
Simplify and re-arrange to avoid wrong indirections and
unnecessary delegation.
Beside this ensure correct check states of group nodes
when adding them.

Change-Id: I24a32249d785e48c9d27111d062c2a06a17327ef
Reviewed-by: David Schulz <david.schulz@qt.io>
2018-01-25 10:16:09 +00:00
Eike Ziller
32c938c4a0 Merge remote-tracking branch 'origin/4.6'
Change-Id: I724da8f761275865e735e7dce10c3b2b2d99fe94
2018-01-25 10:20:06 +01:00
Eike Ziller
ebede577b6 Merge "Merge remote-tracking branch 'origin/4.5' into 4.6" into 4.6 2018-01-25 09:17:24 +00:00