Commit Graph

53347 Commits

Author SHA1 Message Date
hjk
23ccfc4b36 Utils: Delay saving of treeview column sizes while resizing
As discussed in the linked report, QSettings behavior was changed to
aggressively attempt to sync on each ::setValue() call, therefore causing
excessive disk thrashing when used regularly.

This is arguably a regression on the QSettings side, specifically as the
documentation suggests some kind of delay and therefore merging of quick
sequences of setValue calls (as implemented previously), but since this
opinion is not generally shared, Qt applications need to implement that
behavior now by themselves.

This patch here does that for the reported case in Creator (and uses the
opportunity to delay to 2 secs, which should be sufficient for the case)

Change-Id: I04af0cd1a042abcf7113b5dde5c36e0338f7acb3
Task-number: QTCREATORBUG-15594
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-27 09:48:09 +00:00
Tobias Hunger
dfcd573427 Qmake: Do not crash when closing a project while it is parsing
* Fix crashes and resource leaks in qmake project.

Task-number: QTCREATORBUG-19358
Change-Id: I3b383640cdf994b4014ccbfc4278be48f9e5fd3f
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-11-27 09:16:54 +00:00
Eike Ziller
92a91a38f6 Bump version
Change-Id: Ie823825b9dd4092f9997716790bfc3fbe138dd46
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-24 11:00:03 +00:00
Orgad Shaneh
b43e22b8f4 CppTools: Disable Qt keywords for C files
Task-number: QTCREATORBUG-1478
Change-Id: I29afc0f38e5f86ca2c30d5b6551974df68ee7512
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-11-24 08:43:27 +00:00
Orgad Shaneh
ec86bf8ca6 CppTools: Fix initial macro parsing for generic project
The extra macros in the config files are being read in
CppModelManager::internalDefinedMacros(), but they also affect the language
features in ProjectPart::updateLanguageFeatures().

Task-number: QTCREATORBUG-1478
Change-Id: Ic197b0b7d4cc6e6a74637da0c710b0630daae25c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-11-24 08:40:56 +00:00
Ulf Hermann
283069f4af Doc: Update perf profiler documentation
Numerous things have changed in the perf profiler since this was last
edited.

Change-Id: I5443b526fc203ecc506401343b90c81038869f62
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2017-11-23 15:40:35 +00:00
Tobias Hunger
3b86d90266 CMake: Add QT_INSTALL_BINS to PATH on windows
Add QT_INSTALL_BINS to PATH on windows in the CMake RunConfiguration.

This should fix cmake applications using Qt not being able to get
started after they were built.

Unfortunately this patch is not a great solution: This should be configurable,
similar to the "Add libraries to LD_LIBRARY_PATH" checkbox we have for other
OSes and build systems. Such a change is unfortunately not acceptable at this
stage of the 4.5 branch though.

Task-number: QTCREATORBUG-19354
Change-Id: Ic2d568d965e41e3eb875fed8c2e5dd2ba15d2db1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-23 15:00:58 +00:00
Thomas Hartmann
76c1041dc9 QmlDesigner: Add support for requesting types of frames
Change-Id: I3262887682520f521e84eacc26a6708d3d09b233
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-11-23 11:56:51 +00:00
Thomas Hartmann
f6068c9fd4 QmlDesigner: Add constants for live preview
Change-Id: I9b0987508ada8f973fbcb52403a3fb38c92ec2ef
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-23 09:40:27 +00:00
hjk
8e8890abc8 QbsProject: Compute uniqueProductName on the fly
To simplify and fix cloning.

Change-Id: I380834710243f104635628b8d455219f0f73e67b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-11-22 15:46:15 +00:00
Tobias Hunger
e037fe7e0c CMake: Hide nodes from project list
Hide nodes from project list so that they will not end up cluttering
the locator with directory locations (which creator can not open anyway).

Task-number: QTCREATORBUG-19346
Change-Id: I78d7d16b7cdacf5536e81c5001a292af0bd0c2df
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-22 13:16:34 +00:00
Tobias Hunger
7c96f0027e NavigationTreeView: Improve horizontal scrolling in treeview
Do not move horizontally so often when scrolling to an index in the
TreeView. This is done by getting more accurate sizes for the items
being drawn.

Change-Id: I9cbc7912ede6a4bec3126c3ce9a0a4eb65805910
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-22 08:41:45 +00:00
Leena Miettinen
983e2cd09d Doc: Update Qt Quick UI Prototype wizard docs
The wizard name has changed.
The option to create an ui.qml file has been replaces with
the option to add a virtual keyboard.

Change-Id: I2466500dcabda59586806939c0e7b8f3100d6677
Reviewed-by: Tarja Sundqvist <tarja.sundqvist@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-11-21 15:00:43 +00:00
Ulf Hermann
14db426133 Fix outdated perf profiler documentation
The event types should now be chosen in a structured way, not as
additional arguments. This is a hotfix for 4.5. A more comprehensive
documentation of the settings will follow in master.

Task-number: QTCREATORBUG-19321
Change-Id: I56670bd8d54fa8a62eb35951d86e4023a2a8c680
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-11-21 14:48:12 +00:00
Ivan Donchevskii
194bde265c Clang: Define __FUNCSIG__ and others for msvc toolchain
Affects __FUNCSIG__, __FUNCTION__ and __FUNCDNAME__.
By default Clang can't concatenate strings under those
macros with other strings.
Because of that we need to define them with empty strings
to make clang compile such cases without errors.

Task-number: QTCREATORBUG-19295
Change-Id: I9a3770ebe56b4b8a49ba9982c5a1ba90c8f0b304
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-11-21 11:31:22 +00:00
Vikas Pachdha
59e3d9af1e Android: Enable emulator tool installation
Let Android sdk manager UI install the emulator tool. AVD needs this
tool to manage AVD's.

Task-number: QTCREATORBUG-19332
Change-Id: If836c511ca4a5673470d42c14115afa21b1b96fd
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
v4.5.0-rc1
2017-11-21 10:53:20 +00:00
Tobias Hunger
216e40b3f0 CMake: Fix tree scanner not getting run automatically
This lead to <Headers> entry being missing from the project tree.

Task-number: QTCREATORBUG-19333
Change-Id: Ice3bab6d92aaa3799e66800cbae0bacd57537322
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-21 10:19:53 +00:00
Nikolai Kosjar
2abf1f29cc Clang: Add identifying macro Q_CREATOR_RUN
Use the same we use for the built-in code model.

This is useful for conditions of pragmas.

Task-number: QTCREATORBUG-16847
Change-Id: I4c83be46bb2b8a23e4c8f70d98e2b4c9572121ee
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-11-21 10:05:31 +00:00
Eike Ziller
7186456fd5 More 4.5 changes
Change-Id: Id75bc6dbfdfda12f2c12c70fb7a95ae7a0a3c56b
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-11-20 14:51:57 +00:00
Christian Stenger
0d87abee8b AutoTest: Fix handling of forward declared test classes
If a class has been forward declared we might not end up
inside the real class declaration when trying to find
declared test functions. So, do not just take the first
found symbol into account, continue to process others if
we haven't found the real declaration.

Task-number: QTCREATORBUG-19319
Change-Id: I752d7a10470f5362e2214596966d93c037d58f4a
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-11-20 14:45:18 +00:00
Christian Stenger
466fb7ea53 AutoTest: Fix running Quick Tests with special functions
If special functions (init, initTestCase, cleanup, cleanupTestCase)
are present for a Quick Test they must get ignored when trying to
run a single test as they cannot get explicitly addressed.

Task-number: QTCREATORBUG-19311
Change-Id: Ie91928271928cf581bfef0b5e3463e027af985fd
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-11-20 14:45:10 +00:00
Christian Kandeler
fae4f2c9b5 Update qbs submodule
To HEAD of 1.10 branch.

Change-Id: I12398ee8eb381b31356fdc515d07addc9bf501da
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-11-20 09:44:00 +00:00
Christian Stenger
4ead3aa522 AutoTest: Fix nullptr access
Task-number: QTCREATORBUG-19313
Change-Id: I84a6f35c4da325ed5b0bd12de90cf156d27b86c5
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-11-20 06:54:48 +00:00
Jake Petroules
7a0fbf2c23 Use qbs.defaultBuildVariant to inform Qbs of the default build variant
Qt Creator always put its value for qbs.buildVariant in the config when
building Qbs projects. That overwrote values applied by the multiplexing
mechanism or by the project files, which is undesired. Instead, Qt
Creator will now use the qbs.defaultBuildVariant property, which is
provided for this reason.

Task-number: QTCREATORBUG-19316
Change-Id: I923dfb6e083135b7c3ae6346af3ac639a4f02dbc
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-11-17 22:56:52 +00:00
Christian Kandeler
b289a3f87a QbsProjectManager: Run updateAfterParse() also on add/remove file
Adding and removing files via the project tree is essentially the same
thing as doing it by editing a project file, except that no reparsing is
necessary.

Task-number: QTCREATORBUG-19292
Change-Id: Idb1bcf0e183f34d4de513f69f974e45ac91afeeb
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-11-17 10:09:41 +00:00
Orgad Shaneh
951f0e0bbd Valgrind: Fix cyclic connect
Editing the widget triggers rawPathChanged(), which calls
setValgrindExecutable, which emits valgrindExecutableChanged(), which calls
setPath on the widget.

No other path reaches any of these functions.

This causes the cursor to jump to the end, so if you want to change
'valgrind' to '/usr/local/bin/valgrind' you have to jump back after each
character.

Removed the now unused signal.

Change-Id: Iaf4e902fb9a42975e9ada6662b7a64e53fab5cad
Reviewed-by: hjk <hjk@qt.io>
2017-11-17 07:53:32 +00:00
Orgad Shaneh
a02ee529ef Valgrind: Fix callgrind parsing with git version
Commit db860c7cdce8765f8c4ec28127860c8e97ba34ab added a format marker to
the file. First line is now: `# callgrind format`

Task-number: QTCREATORBUG-19004
Change-Id: I2f6ed81044fa0d675a02b9634d8ee8e3ea1da6e5
Reviewed-by: hjk <hjk@qt.io>
2017-11-17 07:37:43 +00:00
hjk
c1d3e22511 Debugger: Do not create a new terminal when attaching
... to a running application that already has one.

Task-number: QTCREATORBUG-19302
Change-Id: Id83f840408c26f3db85dbe30dadac9949ce6b660
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-11-16 13:12:11 +00:00
Filipe Azevedo
ac1ce65a38 Add isRemoteRunning() as isRunning() only apply to local processes
Change-Id: I75d726cea160c557374051db3ba413d3dd1a41a2
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2017-11-16 10:10:31 +00:00
Thomas Hartmann
17b761ce86 QmlDesigner: Ignore indentation for multi line expressions
If expressions cover multiple lines they might be altered by the indenter.
This means the expression differs slighlty in white spaces.
This did assert before, but is a false alarm.

For now we just treat the white spaces in th beginning of the line as a
special case. Eventually we have to fully normalize expressions.

Task-number: QTCREATORBUG-19284
Change-Id: Icc57ef08d1c889deded7cca08ccfba66f09f3115
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-16 08:10:21 +00:00
Tim Jenssen
09f02013e5 Utils: move 2 images to utils
select.png is used by the designer

Change-Id: Icfa0ab4c931de7365c8bd252de0a0f972beb2c6c
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-11-15 11:59:25 +00:00
Tim Jenssen
4969837ad6 QmlDesigner: fix crash while adding a delegate
Change-Id: I5944332dcc741cb67be55062c5d24e293973f090
Task-number: QTCREATORBUG-19190
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-11-15 07:53:25 +00:00
David Schulz
63d18a4537 Editor: Fix indenting on the very first position of a document
Task-number: QTCREATORBUG-19294
Change-Id: I3c859d90f0c58165d526b2c9dd9a7afe2abda94b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-11-15 06:14:52 +00:00
Thomas Hartmann
dbe7ea7d88 QmlDesigner: Add enablers for frame scaling, moving
Change-Id: I24777f47f2f3826a21c7f5dd9984372b1738d2e3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 14:54:32 +00:00
Thomas Hartmann
6b5192bd52 QmlDesigner: Update state names if edited in text
Task-number: QTCREATORBUG-19283
Change-Id: Ic627c609d784e570d47bcea2fdddf8ab9240ef92
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 14:54:26 +00:00
Thomas Hartmann
056c9c641f QmlDesigner: Filter modifiers in override event
We have to ignore Qt::KeypadModifier.

Task-number: QTCREATORBUG-19272
Change-Id: I0233812e3c7e4623a00ef077f9a5057db5ba8b93
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 14:54:16 +00:00
Thomas Hartmann
de43bd5a59 QmlDesigner: Catch potential exceptions
This fixes any crashes related to uncaught exceptions when
reparenting in the navigator.

Task-number: QTCREATORBUG-19272
Change-Id: If087b866059cd285413d54f57d7c4199bfc50ba7
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 14:54:08 +00:00
Vikas Pachdha
8c1a08d760 iOS: Fix simulator startup for Xcode 9
For Xcode 9 boot the second device instead of creating a new simulator
app instance

Task-number: QTCREATORBUG-19270
Change-Id: I68d1c319f8b5e709fc20462098db0c89a66566eb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-14 14:49:47 +00:00
Tobias Hunger
69e9f81bd8 ApplicationOutputPane: Handle runControl being nullptr
The runControl associated with a tab might become nullptr. That was
already handled in some places. Do so consistently now.

Change-Id: I899cc467a213f2a991967fa98a5819a98412d387
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-14 14:20:34 +00:00
Tobias Hunger
77bea93a6e RunControl: Make RunControl::canReUseAppOutputPane more robust
The pointer passed in was assumed to be non-null, but that does not need
to be the case.

This should make the function more robust in face of errors. The RunControl
passed into the method is taken from a QPointer. So if the RunControl is
destroyed, that pointer may be nullptr.

Task-number: QTCREATORBUG-19269
Change-Id: I42e7b9d5582df2ee0830c8f92af4e4a97e7d6417
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-14 14:19:58 +00:00
Tobias Hunger
da18c76b96 CMake: Block project configuration widget while project is parsing
This prevents the user from changing settings while the project is parsing. Those
changes would get lost.

Task-number: QTCREATORBUG-18988
Change-Id: Ie04c6750c8aea3fe5543168ae4838f42fe488ca2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 14:19:27 +00:00
Alessandro Portale
71933a4df8 QtQuick wizards: Add 5.10 to minimal required Qt versions
QtQuickVersion: 2.10
QtQuickControlsVersion: 2.3
QtQuickWindowVersion: 2.10
QtQuickVirtualKeyboardImport: QtQuick.VirtualKeyboard 2.3

Qt 5.9, which is LTS remains preselected.

Change-Id: Ida5c234431af8cf681ad6f8206283f9a4048bcec
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 13:34:42 +00:00
Alessandro Portale
92fa3a756e QtQuick wizards: Bump virtual keyboard version for Qt 5.9
According to the Qt 5.9 documentation it is
   import QtQuick.VirtualKeyboard 2.2

Change-Id: Ic560e187f57e9db9e8552ec0f407766e74d20d7d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 13:34:37 +00:00
hjk
d2e29acdc3 Debugger: Remove explicit GdbServerRunner's "Starting gdbserver ..."
Same (or similar, in case an explicit path is configured)  message
is triggered by the base class, no need for duplicated here.

Change-Id: I1a3e3c386674e98dc0ddd31f1156f7e8254a53c2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-11-14 12:20:59 +00:00
hjk
5f3363df59 DeviceUsedPortGatherer: Clear used port list on (re)start, not stop
It's typically query handled after stop() (triggered by process
finished), clearing the list then would essentially discard the
result of the operation.

Change-Id: I12fb09249f8437009d3365fadcca222855468cd7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-11-14 12:14:49 +00:00
Christian Stenger
895eed7164 Wizards: Fix project files for macOS
Task-number: QTCREATORBUG-19286
Change-Id: I81a7486edfd34570d7b4bd82646a2e5e39a585ee
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-11-14 10:55:33 +00:00
Tobias Hunger
043035fb79 sdktool: Fix header file list
Task-number: QTCREATORBUG-19232
Change-Id: I5db60e284221775c4105dc43b0ea2a9044de6bcd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-11-14 10:31:39 +00:00
Tobias Hunger
b39687645d TargetSetupPage: Ignore changes while ProjectImporter is updating
This causes the same kit to be processed repeatedly, which should not
cause harm, but waste CPU cycles.

Change-Id: Ie42272aacec6d8350398b65973570282c0c8d287
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 09:57:22 +00:00
Tobias Hunger
cf3640a882 TargetSetupPage: Use old importer to clean up when switching
Use the old importer when cleaning while switching to a new importer.

Change-Id: I8fd3af32271b839502571ee3806903abd927ef0a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-11-14 09:57:16 +00:00
Vikas Pachdha
8a5c7966c2 iOS: Fix missing URL scheme to fix QML profiling in iOS
Task-number: QTCREATORBUG-19273
Change-Id: Iddf34493b46ed7afcedcc7d987260e7a744e4082
Reviewed-by: hjk <hjk@qt.io>
2017-11-14 08:36:41 +00:00