aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Centralize retrieving the "parent" build configurationEike Ziller2018-05-2216-56/+21
| | | | | | | | | | | | | If a step is part of a build configuration, that is used, but many steps can be used as part of a deploy configuration. In that case the active build configuration of the step's target must be used, and that logic was duplicated many times. Instead, let BuildStep::buildConfiguration take care of that logic. For steps that are not offered for deploy configurations there is no semantic difference, and for the others this removes code duplication. Change-Id: I02f3bb50226590092cedcec02fce6fde9c7c6e63 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Merge remote-tracking branch 'origin/4.7'Eike Ziller2018-05-2239-553/+487
|\ | | | | | | Change-Id: I00dd929a4ed32af8f1b76cea57a7c49239dafc7c
| * Android: Make sure we can queue AndroidDeviceInfo in connectionsUlf Hermann2018-05-223-2/+4
| | | | | | | | | | Change-Id: I7f59cba50e180ea4584442f8c2a409abb9e49a33 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Android: Don't start avd if AndroidDeviceInfo doesn't want itUlf Hermann2018-05-221-1/+1
| | | | | | | | | | | | | | | | If the avdname is empty, we have a physical device, rather than an emulater, and no avd is necessary. Change-Id: I5eeaa02ae505cce80da5f27ad9a5e1dddcabb4e2 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Android: Merge output channels of AVD processUlf Hermann2018-05-221-0/+1
| | | | | | | | | | | | | | | | Otherwise, if the process produces a non-0 exit code, we get an error message with only the stdout, which likely is empty. Change-Id: I3b84f928cf786015aab499cdc2277d530d243841 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Debugger: Remove DetailedErrorDelegateNikolai Kosjar2018-05-224-109/+38
| | | | | | | | | | Change-Id: I08cd9af5e11e705378a53075c7fade44fc3246ce Reviewed-by: hjk <hjk@qt.io>
| * AutoTest: Fix timeout handlingChristian Stenger2018-05-181-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt5.5 introduced a hard limit of 5 minutes for the test case run. If the timeout configured inside the settings is higher and the test case runs longer than the the internal default the test would crash ignoring the timeout set by the user. Qt5.6.1 fixed this by adding a capability to raise this limit. Handle the hard limit used inside QTest appropriate. Task-number: QTCREATORBUG-20439 Change-Id: I33f1d9bce4e503be7175228dde50b4484e57d337 Reviewed-by: David Schulz <david.schulz@qt.io>
| * AutoTest: Redo running testsChristian Stenger2018-05-182-104/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing the event loop and the costly internal infinite loop to reduce CPU load. We need an event loop for on-the-fly processing of the results, but the main event loop is good enough for this. There is no need to add another one. There is also no need to put all this into an asynchronous job as all of this happens asynchronously anyway by using signals and slots. Task-number: QTCREATORBUG-20439 Change-Id: I126bf0c1be3e49fd0dd477e161e4fe7a10a080c9 Reviewed-by: David Schulz <david.schulz@qt.io>
| * AutoTest: Extract code into functionChristian Stenger2018-05-182-24/+32
| | | | | | | | | | | | | | Part of a later refactoring. Change-Id: I8321b344ff333195905be68131aab508d1a87aee Reviewed-by: David Schulz <david.schulz@qt.io>
| * AutoTest: Simplify internal functionChristian Stenger2018-05-181-5/+2
| | | | | | | | | | | | | | ...and silence a krazy2 warning. Change-Id: I72efc50baa53f03250813cae646da0f7c07a83f5 Reviewed-by: David Schulz <david.schulz@qt.io>
| * CMake: Report an error when project can not get parsedTobias Hunger2018-05-181-0/+6
| | | | | | | | | | | | | | | | Report an error when a project can not get parsed. Change-Id: I659a5ffb465b4a2de39910b05e7eef2481b9ad70 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| * ProjectExplorer: Don't register targets that are restored to empty stateTobias Hunger2018-05-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Don't accept targets that get restored to an empty state. This un-confuses the Projects page:-) Note that DeployConfigurations are not tested: I see no use-case where a target with only a deploy configuration makes any sense. This can be triggered, e.g. by opening an existing cmake project after making sure there are no more kits with cmake tool set up. Change-Id: Iaf14f70e4e0d4206a88a08b47b0eccc666653f76 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
| * ServerModeReader: Fix crash when filtering out known headersTobias Hunger2018-05-181-2/+1
| | | | | | | | | | | | | | Task-number: QTCREATORBUG-20412 Change-Id: I9e58b099ef002b3139576b15507f191e1c5a5ced Reviewed-by: Jan Kundrát <jkt@kde.org> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
| * CppEditor: Preselect Project Parts / Header Paths in the inspectorNikolai Kosjar2018-05-181-102/+102
| | | | | | | | | | | | | | | | | | | | | | Previously, the tab "Snapshot and Documents" was preselected. However, in most cases, especially nowadays with the clang code model, the most important information is the one about the project tabs - so preselect that one instead. Change-Id: I5738e27483ba4389b016c0f2518086bc03b8a8b7 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: David Schulz <david.schulz@qt.io>
| * ClangTools: Disable fixits checkboxes for diagnostics without fixitsNikolai Kosjar2018-05-181-3/+9
| | | | | | | | | | Change-Id: Ie65fad3acd2a84bbb7ecb40e05d3a43cf89be11f Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
| * ClangTools: Adapt button state to checked fixitsNikolai Kosjar2018-05-183-4/+27
| | | | | | | | | | | | | | | | "Apply Fixits" is disabled by default and enabled as soon as some fixits are checked by the user. Change-Id: I7e1345512b206f52d1e8628705c81c6b34dfb9ba Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
| * Clang: Require LLVM/Clang >= 6.0.0Nikolai Kosjar2018-05-173-9/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Adapt versions and tests, remove code assuming clang < 6.0. Switch also to our custom repositories instead of dealing with patch files. LLVM/Clang 6 was released on 09 Mar 2018. Task-number: QTCREATORBUG-18535 Task-number: QTCREATORBUG-18552 Change-Id: I0ec2c2f56265e161ae7cbb5b03e7b8a182ba6cc6 Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
| * ClangTools: Fix build for Windows/qbsNikolai Kosjar2018-05-171-0/+1
| | | | | | | | | | | | | | | | | | Apparently qbs does not pull in the dependencies of the declared dependencies. Change-Id: Ib15b883462c74436403dcc56e69786ec3b7fb6dc Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Tracing: Correctly handle custom mininum row valuesUlf Hermann2018-05-171-2/+9
| | | | | | | | | | | | Change-Id: I3aa9ac116307f6e2c089399f7c1c40f4f0fc0ec1 Task-number: QTCREATORBUG-20433 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * HighlightScrollBar: Always show the current lineJarek Kobus2018-05-171-9/+7
| | | | | | | | | | | | | | Also when the scrollbar handle occupies the whole scrollbar area. Change-Id: I124950e3f0898f853a187ea393731ddb0800aa99 Reviewed-by: David Schulz <david.schulz@qt.io>
| * Utils: remove Clang from ClangCodeModel_*_TextMarkColorDavid Schulz2018-05-173-8/+9
| | | | | | | | | | | | | | | | They are also used by the qml code model, and may be used by additional code models in the future. Change-Id: If216cbeb7b77be0f3b6f31671c71d913206315cb Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
| * ProjectExplorer: Remove unused BuildStepFactory::clone methodhjk2018-05-162-19/+0
| | | | | | | | | | Change-Id: I559441a6160e288b647bdb45b759992df26227d1 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
| * QmlDesigner.PropertyEditor: Always set current model on context objectThomas Hartmann2018-05-162-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | We just set the first model once. This means that many functions only worked on the file that was the first one opened. This bug was undetected for some time, because the checks were silent. Replacing all related checks by proper QTC_ASSERTs. Change-Id: If46cb7fb7d0d3ae2bb9772a93eece5fcf1fe450b Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
| * DiffEditor: Keep horizontal scrollbar policy in syncJarek Kobus2018-05-162-0/+21
| | | | | | | | | | | | Task-number: QTCREATORBUG-14330 Change-Id: I4c45089f10a9b59cd1bc5b5368f14e0bb0738f22 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
| * Android: Remove AndroidRunnablehjk2018-05-165-95/+0
| | | | | | | | | | | | | | Not used anymore. Change-Id: Iad4fd894c389b310d11cac2fe49b96ded39b0677 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
| * Android: Add a key name constant for the package namehjk2018-05-161-0/+1
| | | | | | | | | | | | | | For later use in the GammaRay integration plugin. Change-Id: Ib3221f4cc09c75d1d961792da07ac579848c3a7e Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Android: Use packageName directly in AndroidRunnerWorkerhjk2018-05-164-20/+20
| | | | | | | | | | | | | | | | That was the only remaining field of the AndroidRunnable, passing the packageName as single string is sufficient. Change-Id: I73333e58a0719df09d6905eb212007ce421f600e Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Android: Remove AndroidRunnable::{beforeStart,afterFinish}AdbCommandshjk2018-05-166-31/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have nowadays two ways to pass data from run configurations to tool that do not require intimate knowledge of the sender: 1. Using RunConfigurationAspects, accessible for all workers in a RunControl 2. Using RunWorker::recordData for an individual worker. This removes the need to use specific fields in a runnable and means that a tool plugin can be better separated from target plugins. The approaches are not mutually exclusive, both use an string-ish id, I chose here to use the same string when using both. This patch here uses approach 2. for the GammaRay/Android combo. It also fixes a (harmless) typo (s/POSTSTART/POSTFINISH). Change-Id: I4048693ca73b17253a39bfcacc9e1880ecf25736 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
* | Rename files for QmakeMakeStepEike Ziller2018-05-187-9/+9
| | | | | | | | | | Change-Id: Iff0f3f08fff7a5e25ed309891e54d3c02dbb8713 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Fix qbs buildChristian Kandeler2018-05-181-1/+1
| | | | | | | | | | | | | | Amends 0db5f13dd1. Change-Id: I1bfdc2f7f7ede8c4027fe345f15c62a9954bfb6d Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | Use make step base for qmake projectsEike Ziller2018-05-179-362/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two differences that get introduced by this change: - The configuration widget checks that there is a build configuration, but not if this build configuration is a QmakeBuildConfiguration. This should not matter, since Qmake is still the only supported project type for the qmake specific make step - It removes the automaticallyAddedArguments(). As far as I can see this never had any effect anyhow, though. They were never actually added to the arguments. Change-Id: I73be227a32117e462def38bdd040dbd7cbcc113f Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Generic/Base make step: Improve details textEike Ziller2018-05-172-22/+47
| | | | | | | | | | | | | | | | | | | | | | | | The new summary is similar to the one in the qmake make step, adding the working directory to the summary text, and adding checks for tool chain and build configuration etc. Different to the qmake variant is that it doesn't restrict to any particular build configuration type, and that it needs to show allArguments() instead of just userArguments(). Change-Id: Ie79264267a2ce834a3d3ffe2e4c066786642adc1 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | ProjectExplorer: Prepare RunWorkers for more flexible setupshjk2018-05-172-18/+71
| | | | | | | | | | | | | | | | | | | | | | | | A RunWorker can in theory (and will in practice) support several run modes. Also, it has turned out to be beneficial to specify restrictions on a fine grained level, so re-use the idea from the RunConfigurationFactory etc. constraints setup here. Creation of RunWorkerFactories can be made protected at some time. Change-Id: I9e2a84abfd7377c5bf0bbe84e0c7940b1317dc10 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | ProjectExplorer: Start transferring RunWorkerFactory ownershiphjk2018-05-173-19/+26
| | | | | | | | | | | | | | | | | | | | | | | | ... to the plugins providing them. To allow this being done one-by-one in the plugins, allow both central and per-plugin ownership, and clean up the central instances centrally. This step will be removed again once the transition is complete. Change-Id: Ica7786012e05ab83a0784448f2f8b3b781fe2167 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Generic/Base make step: Add variable chooserEike Ziller2018-05-161-0/+3
| | | | | | | | | | | | | | Variables are already supported, just the chooser was missing. Change-Id: I3a0d64c6a954a8180a388b6dda8c94af11a6daba Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Generic/Base make step: Use path chooser for make commandEike Ziller2018-05-162-4/+19
| | | | | | | | | | Change-Id: Ib926305104379ae5af6e1a859e5e482711cb39e3 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Add effectiveMakeCommand to MakeStep baseEike Ziller2018-05-163-15/+21
| | | | | | | | | | | | | | | | | | | | | | | | Similar to the make step from qmakeprojectmanager. There is an internal semantic change when there is no C++ toolchain: Now the effective make command will be empty in that case. Before this patch it was defaulting to "make", but init() was never using that because it also checks for an existing C++ toolchain, so there is no visible change, and actually more consistent now. Change-Id: I31157fee63c465b4b61701d76152f3ad172c29e8 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | QMake make step: Remove unused signalEike Ziller2018-05-162-19/+0
| | | | | | | | | | | | | | | | User arguments could not change behind the configuration UI's back, so no need to inform it about changes. Change-Id: Id03d61c6f0b5abcd9bed50504a518554d08eae78 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Move generic make step to project explorerEike Ziller2018-05-1611-285/+395
| | | | | | | | | | | | | | | | As a first step of creating a generic base for the 3 existing implementations. Change-Id: I2456db74cb635316f97a247e2a2b6bdb34931440 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | Utils: add hash function for MimeTypeDavid Schulz2018-05-161-0/+3
| | | | | | | | | | Change-Id: I4ba86887a4ed575e4aee0cbe1157254e8cd5abb8 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | Utils: make nullopt_t available in the Utils namespaceDavid Schulz2018-05-161-0/+1
| | | | | | | | | | Change-Id: I7e8084b4fce5cdda88435453e096ef0b9530d00d Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | Utils: add has_value to optionalDavid Schulz2018-05-161-1/+3
|/ | | | | Change-Id: I73af682c98d3fd9e97c169ffb3930950e2b0addb Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Merge "Merge remote-tracking branch 'origin/4.7'"Eike Ziller2018-05-1613-14/+72
|\
| * Merge remote-tracking branch 'origin/4.7'Eike Ziller2018-05-1613-14/+72
| |\ | | | | | | | | | Change-Id: I0ef2f6ac30fb0c020e0f59d2a014d0dd3bab7d81
| | * Merge remote-tracking branch 'origin/4.6' into 4.7Eike Ziller2018-05-167-5/+33
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/qnx/qnxplugin.cpp Change-Id: I8ede5fa9c8daf3001e41fcba7cbee68edb9db3a6
| | | * Android: Fix the android include pathVikas Pachdha2018-05-161-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTCREATORBUG-20340 Change-Id: Ie1d7c15bf8b38b5141868149684e026ba9666630 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
| | | * QML Debugger: Don't hang if there are no scopes to be retrievedUlf Hermann2018-05-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt 5.11.0 contains an optimization that does away with call contexts for simple inline bindings. Also, it doesn't report QML contexts as scopes in the "frame" and "backtrace" commands. Therefore, in those cases "this" is the only thing to be retrieved. Check if we are done when "this" has been retrieved and no scopes have been found. Change-Id: I9e0f545777bc38333938b65a934d42701ec4f807 Task-number: QTBUG-68218 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: hjk <hjk@qt.io>
| | | * Qnx: Fix persisting of deploy stepshjk2018-05-153-3/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While the deploy steps re-used from RemoteLinux were created ok when creating a new QnxDeployConfiguration, they did not survive a restart (or rather a toMap/fromMap cycle, as the restoring insisted on having a RemoteLinuxDeployConfiguration). Since sharing DeployConfiguration*Factory*s is not yet possible, this patch here creates additional DeployConfigurationFactories creating the same steps, but insisting on a QnxDeployConfiguration parent. Task-number: QTCREATORBUG-20248 Change-Id: I70666f79993a1332cd1959ab5e3665797d2401ca Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
| | * | iOS: Fix incorrect device type in run configurationVikas Pachdha2018-05-162-8/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTCREATORBUG-20413 Change-Id: I5b96273161401e83567da80770f0f1c3482b7311 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
| | * | QmlDesigner: Disable shortcut if document did not changeThomas Hartmann2018-05-151-0/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: I95f67379d507ab599d2435cc042f96fc28d8d7cd Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>