summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Dumpers: Add a failing test for string display()drafts/for/masterdrafts/for/4.3Orgad Shaneh2017-08-112-0/+27
| | | | Change-Id: Ib70761ffcd76bdfed7879c222d471b50a8b32c0b
* DiffEditor: Fix saving diff containing new or deleted filesJarek Kobus2017-08-102-18/+56
| | | | | | | | Fix also the case when new file was empty. Fix some const correctness. Change-Id: Ied71c3de0398914e595fbf542f1b8ec3659d69b6 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* DiffEditor: Optimize patch processingJarek Kobus2017-08-101-282/+375
| | | | | | | | | | | | | | | | Get rid of QRegularExpressions, they are very slow. Simplify readGitPatch() a lot. Make reading of the patch about 20 times faster, especially make readGitDiff() itseft (excluding the calls to readChunks) working about 1000 times faster for huge diffs. So, the processing time for e.g. the bottom commit of qttools module (the import commit) decreased from ~20 seconds to ~1 second. Implement nice progress of patch reading. Change-Id: Ie24786596237bde475e37337663018a8bec086bb Reviewed-by: Tobias Hunger <tobias.hunger@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* QmlProfiler: Include qtcfallthrough.h for Q_FALLTHROUGHUlf Hermann2017-08-101-0/+1
| | | | | Change-Id: Iac3b7ea8314eff6e15c3c4a04a612a8026bf040f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* DeviceSupport: Implement DesktopDevice::portsGatheringMethod()hjk2017-08-107-60/+152
| | | | | | | | | | | | | The feature is useful in a QtApplicationManager debugging context. Internally, DeviceUsedPortsGatherer uses a DeviceProcess now, not an SshRemoteProcess, to cover cases where the (Windows Desktop) device not have ssh available. Change-Id: I9d33ceac65a135123a376ebd2727dcb540563179 Reviewed-by: Wolfgang Bremer <wolfgang.bremer@pelagicore.com> Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Qnx: Create slog2 runner processes at more reasonable timeshjk2017-08-101-4/+5
| | | | | | | | 89f02cba2ca65f introduced a regression. Change-Id: I3ae4ecc7f2dfcd477ffe7a277a87acd90aad5339 Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmlProfiler: Clean up some includeshjk2017-08-101-12/+2
| | | | | Change-Id: Ia4706170b07070e46c62296a806e785d96d2f4ef Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Express record button state in a single functionUlf Hermann2017-08-102-53/+45
| | | | | | | | | This way we get a concise description of the inputs it reacts to and we don't have to dereference the pointer in unrelated code, which lead to crashes on shutdown. Change-Id: Ieb75ab95cccc0d1f88420b270909c97867a5c3e0 Reviewed-by: hjk <hjk@qt.io>
* Debugger: Add some hints on how the Python manual test workshjk2017-08-103-1/+6
| | | | | Change-Id: I7a20451739c759510ea2d400493985ae543c6965 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* QmlProfiler: Merge inferior worker into LocalQmlProfilerSupporthjk2017-08-102-31/+7
| | | | | Change-Id: Ie9f9db6ecf2891731e90326b4a27b2d819b1e7ca Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Move TCP connection initialization to runworker's start()hjk2017-08-102-43/+36
| | | | | | | | That makes the high level sequence of operation the same as for the local socket case. Change-Id: Ib8af2a7826a482e98b75fe00f3c0e672b98886c5 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Remove connection timerhjk2017-08-102-63/+0
| | | | | | | | | | The connection timer was traditionally used in cases where the application was started without being given a port on the commandline. These setups do not exist anymore or have been changed to provide a suitable port on the commandline. Change-Id: Ib4653e73943819762f0c8162cc13e4da789705a7 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QmlProfiler: Fix and extend the local qml profiler runner testUlf Hermann2017-08-102-73/+86
| | | | | | | | We need to indirectly verify that the profiler support is doing the right thing by watching the RunControl's state transitions. Change-Id: I8f92f21022668ed3bb28477152132ccdcffaaea6 Reviewed-by: hjk <hjk@qt.io>
* Debugger: Switch perspective when coming from another modeNikolai Kosjar2017-08-101-1/+3
| | | | | | | | | | | | | Problematic case was: 1. Run some analyzer (mode switch: edit->debug) 2. Close project, re-open it (mode switch: debug->edit) 3. Run analyzer from 1. again --> Ops, no mode switch to debug mode (and thus no analyzer view) because it's still the same perspective Task-number: QTCREATORBUG-18549 Change-Id: Iccb1e0629454c1373280a55d6c41410c7161520e Reviewed-by: hjk <hjk@qt.io>
* Doc: Fix paths to Qt Quick Toolbar optionsLeena Miettinen2017-08-101-4/+3
| | | | | | | The options were moved to the "QML/JS Editing" tab. Change-Id: Ieccc6b1fa2d051a6986a6050bff6d0a6710ffb26 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* QmlProfiler: Connect to timelabel only after it is createdUlf Hermann2017-08-101-1/+1
| | | | | | Change-Id: If9e810cfbd5162f1e40db24db2f8f784accaff4e Task-number: QTCREATORBUG-18597 Reviewed-by: hjk <hjk@qt.io>
* QmlJs: fix false positives for propertiesMarco Benelli2017-08-101-0/+3
| | | | | | | | Resolve references while looking up for object members. Task-number: QTCREATORBUG-18362 Change-Id: I9d2b2457fb3488c723a41e4e8ba1fc0ea9fe800f Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* QmlProfiler: Stop the recording timer when the time label is destroyedUlf Hermann2017-08-091-0/+1
| | | | | | | | Writing to the label is all it does, and that crashes if the label is gone. Change-Id: I23bbbe0c46603a8de91143ee6167cb404c1b0004 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Introduce RunWorker::reportDone()hjk2017-08-093-1/+30
| | | | | | | | | | | | To be used for short-lived tasks to signal that they are done. Essentially an optional reportStarted() followed by reportStopped() Using it in GdbServerPortsGatherer when the port list is ready fixes the wrong "un-stopped" situation in RemoteLinux debugging when the inferior finishes by itself. Change-Id: I310831a7875fe6f2c598302b73cda6c9669efb1d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmlDesigner: Some cleanupThomas Hartmann2017-08-091-14/+0
| | | | | Change-Id: Ic89c578474d7cdf1f72a61a91d0cdf32f7b70a7f Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* ProjectExplorer: Introduce an "essential" flag for RunWorkerUlf Hermann2017-08-092-0/+18
| | | | | | | | An essential RunWorker triggers the whole RunControl to stop if it spontaneously stops. Change-Id: Ia05b927e306022e99b45cc8cd7ab9636f4d3c129 Reviewed-by: hjk <hjk@qt.io>
* QmlProfiler: reportStopped() only when entering Idlehjk2017-08-091-2/+2
| | | | | Change-Id: I291ff6506a16e294165109a89f2acf22d24d7928 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* ProjectExplorer: Allow RunWorker::Starting -> Stoppinghjk2017-08-091-1/+4
| | | | | | | Can happen on worker startup, e.g. missing binaries, permissions, ... Change-Id: Ibeee0a6992af80d3486b00890664e83525f17204 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* ProjectExplorer: If a worker fails while we're stopping, continueUlf Hermann2017-08-091-1/+4
| | | | | | | We don't need to re-initiate the stopping. Change-Id: I2c19dca854c93e0340227d08a381c3bde919363d Reviewed-by: hjk <hjk@qt.io>
* ScxmlEditor: Make the Attribute Editor table themableAlessandro Portale2017-08-091-3/+1
| | | | | | | | ...by not using hardcoded colors. Task-number: QTCREATORBUG-18685 Change-Id: Idbe694b4112cb2c7d82738598fb04c68c510c609 Reviewed-by: Marco Benelli <marco.benelli@qt.io>
* QmlDesigner: Remove unneeded margin around the connection viewAlessandro Portale2017-08-091-0/+12
| | | | | | | The other tabs also have no margin. Change-Id: Ied1cf078b728f9b24d0357c919ac5c41fa3440e9 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* QmlProfiler: Reverse start dependencies for LocalQmlProfilerSupportUlf Hermann2017-08-091-1/+5
| | | | | | | | | We need to start the local server before the application, as the application has to connect to it. If we use a TCP connection, we will retry. So it doesn't hurt to start it before the application, either. Change-Id: I64c24f922040d0ac58fe4f05abffef9ec24e3e9a Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Remove RunWorkerState::Failedhjk2017-08-092-26/+5
| | | | | | | | It is always acted upon essentially the same as Done, but complicates the scheme. Change-Id: I8d9161fb162195a533c7ed29e251c3f486479dc9 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Update Russian translationSergey Belyashov2017-08-091-782/+1342
| | | | | | Change-Id: Ib821849cec98c999302a7f5e4c8ce2a1f7e5ef1f Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Debugger: Fix editing of std::{w,}string, QString, QByteArrayhjk2017-08-093-17/+26
| | | | | | | | | ... as well as std::vector and QVector Change-Id: I7fd33be9917a17414149813c28316166b8de9be7 Task-number: QTCREATORBUG-18681 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* RemoteLinux: Use stop dependencies for QML profilingUlf Hermann2017-08-081-0/+5
| | | | | Change-Id: I8a4f531928f46c6866c798d79476fdd37875326c Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Kill dependent RunWorkers if dependencies go awayUlf Hermann2017-08-081-0/+16
| | | | | | | | There is no point in e.g. keeping the QML profiler RunWorker going if the process has spontaneously stopped. Change-Id: Ifdae17231cb193fd220397fa0739a74871ceeab3 Reviewed-by: hjk <hjk@qt.io>
* QmlProfiler: Use stop dependencies for RunWorkersUlf Hermann2017-08-081-1/+4
| | | | | Change-Id: If4d0af85c6e537e6d9a35dc877f7542c91a2bc13 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Add stop dependencies for RunWorkersUlf Hermann2017-08-082-67/+66
| | | | | | | | A run worker will only be stopped if all its stop dependencies are stopped. Change-Id: I16a42253874adafb9ca87d175bfb361fae46cc39 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Rename worker dependencies to "startDependencies"Ulf Hermann2017-08-0812-26/+26
| | | | | | | | There will be stopDependencies, too, which apply when stopping the runcontrol. Change-Id: Id72771d28cbb6b254572c9f93db93e0d054b890f Reviewed-by: hjk <hjk@qt.io>
* Debugger: Make std::complex values expandablehjk2017-08-081-0/+1
| | | | | | Change-Id: Idecd15378cfe2a0026ad5b9317ee7ad791a5ff47 Task-number: QTCREATORBUG-18680 Reviewed-by: André Hartmann <aha_1980@gmx.de>
* Doc: Make deprecated tools less prominent in Android instructionsLeena Miettinen2017-08-082-49/+25
| | | | | | | | | Ant was deprecated in Qt Creator 4.3 and will be removed. The sdkmanager and avdmanager command-line tools must be used to manage SDKs and AVDs. Change-Id: Ibba8bc429e5da87e3f79ce45766f4583d0a461b1 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
* Doc: Describe new debugger and Qbs fields in Kit optionsLeena Miettinen2017-08-082-1/+8
| | | | | | Change-Id: Icb78a85ffd724fc951b5aef4c3ffeedb79e80bfe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
* Doc: Fix heading levels in run settings topicLeena Miettinen2017-08-088-8/+8
| | | | | | | | Several sections were heading 2 level even though they should have been heading 1. Change-Id: Ib994cc216ab9957c885931461cb350a1e56eaf69 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* C++: Limit number of nested class instantiationsNikolai Kosjar2017-08-081-0/+2
| | | | | | | | | ...to avoid out of memory crashes. Task-number: QTCREATORBUG-18649 Change-Id: I5e121bf4be0fd0c01a97a182ed07ee7552fb68ac Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* AutoTest: Fix handling of running selected Quick TestsChristian Stenger2017-08-081-31/+3
| | | | | | | | | | | Unnamed Quick Tests cannot get explicitly selected. They also should not get executed implicitly if we try to execute a named Quick Test of the same project, but only if "Run All" is triggered. Task-number: QTCREATORBUG-18501 Change-Id: I5cddbca5bffd2d5f82e121e0455226e4b388a293 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* QmlProfiler: Fix linkageOrgad Shaneh2017-08-071-1/+1
| | | | | | | | | | | | | 76:5: warning: instantiation of function 'QTest::qCompare<ProjectExplorer::RunControl *, nullptr_t>' required here, but no definition is available qtestcase.h:180:5: note: expanded from macro 'QTRY_COMPARE_WITH_TIMEOUT' qtestcase.h:89:17: note: expanded from macro 'QCOMPARE' qtestcase.h:364:10: note: forward declaration of template entity is here 76:5: note: add an explicit instantiation declaration to suppress this warning if 'QTest::qCompare<ProjectExplorer::RunControl *, nullptr_t>' is explicitly instantiated in another translation unit qtestcase.h:180:5: note: expanded from macro 'QTRY_COMPARE_WITH_TIMEOUT' qtestcase.h:89:17: note: expanded from macro 'QCOMPARE' Change-Id: I0d9ed4eb9109cbc93439f655781cee34331719ce Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* ProjectExplorer: Fail more gracefullyhjk2017-08-071-2/+3
| | | | | | | | | | ... when SomeDevice::portsGatheringMethod() is not implemented. That's more a debugging help than an actual solution for the user. Change-Id: I2ab97f6fb00c4d5cfebb60e58cf948d725f3d6a6 Reviewed-by: Wolfgang Bremer <wolfgang.bremer@pelagicore.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* CppEditor: Adapt test_autoCompleteNikolai Kosjar2017-08-071-2/+1
| | | | | | | | | | | | ...for the case "Insert Open Curly Brackets Into Empty File". This should have been adapted in commit a6aa287720112c70c1363bcb46d55d438fe57eac C++: Fine-tune auto insertion of '}' Change-Id: I895fe5fd0d98f7736cc5506c33f8eb7fafca8f9a Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* C++: Do not insert matching } within stringNikolai Kosjar2017-08-072-0/+12
| | | | | | | | | | | Regression from commit a6aa287720112c70c1363bcb46d55d438fe57eac C++: Fine-tune auto insertion of '}' Change-Id: I3ede8c7a1e3c73708d5d5a59c314e4b4596976b2 Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* QmlProfiler: Make sure local runner test fails before test run endsUlf Hermann2017-08-071-0/+2
| | | | | | | | | QTimer::singleShot postpones the execution of the test methods. If we return from the current test method before, we might end the test run before the code gets executed. This was hiding failures. Change-Id: I0250cd37e5b25f2a72752a2d6f3abcac3314946a Reviewed-by: hjk <hjk@qt.io>
* AutoTest: Add minimal logging to TestConfigurationChristian Stenger2017-08-071-3/+30
| | | | | | | | | | This might help to figure out what is wrong if we are not able to determine which run configuration must be used or if this determination goes wrong. Task-number: QTCREATORBUG-17882 Change-Id: I6f1dc573b4a8c07035fa521d056ccde890f07142 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Squish: Remove workaround for fixed issueChristian Stenger2017-08-071-5/+1
| | | | | Change-Id: I7cc40e83400bcf2614ae6eb34eecefa9bb75d172 Reviewed-by: Robert Loehning <robert.loehning@qt.io>
* Squish: Work around Squish issue on macOS if necessaryChristian Stenger2017-08-071-2/+8
| | | | | Change-Id: Ib6a6179ba51a907ee5e7aa1a6e30f345da217e52 Reviewed-by: Robert Loehning <robert.loehning@qt.io>
* Squish: Add special menu handling for macOSChristian Stenger2017-08-071-1/+4
| | | | | | | | | | | When sub menus are going to get triggered the mouse interaction done by Squish might close the sub menu with the mouse click - avoid this by explicitly setting the mouse cursor onto the item before clicking it. Change-Id: Id2afe9823304caac1bd66a423fe4a0ee12993ddd Reviewed-by: Robert Loehning <robert.loehning@qt.io>