summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix dangling references, found by GCC 13Thiago Macieira2023-04-204-5/+5
| | | | | | | | | | | | | | | Lifetime extension via const-ref only applies to functions that return by value. For those that already return by reference (such as QList::constLast()), no extension happens and we end up with a dangling reference. cmakebuildconfiguration.cpp:1473:25: warning: possibly dangling reference to a temporary [-Wdangling-reference] cmakebuildconfiguration.cpp:1473:61: note: the temporary was destroyed at the end of the full expression ‘ProjectExplorer::BuildStepList::steps() const().QList<ProjectExplorer::BuildStep*>::constLast()’ Change-Id: I3b169860d8bd41e9be6bfffd1757167b7348be9b Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* Link with Qt: Remove now harmful checkEike Ziller2023-02-171-8/+0
| | | | | | | | | | | | | | | | | | | | | | The check was trying to find out if the Qt Creator installation is part of the online installer or a Qt installer, by checking if there are install settings without the key "Settings/InstallSettings". Since we made Qt Creator optional in the installer, the install settings contain that redirection key anyway, so it is no longer an indicator for Qt Creator being part of the online or an Qt installer anymore. Actually the check now _disables_ the Link with Qt button for the commercial Qt Creator offline installer on macOS, because that ships install settings that add the plugin path to the commercial plugins outside the Qt Creator app bundle, but does not contain "Settings/ InstallSettings". Just remove the check. Change-Id: I88c3ef007a728dff0f4214e5a5683ffcede23796 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
* CMake: Fix editing of CMAKE_PREFIX_PATHEike Ziller2023-02-081-1/+1
| | | | | | | | | | | | | When editing e.g. CMAKE_PREFIX_PATH in the initial configuration settings it was resolving the path(s) in there, thinking that it was relative to the project directory. Fix that after editing the resolved file path was set as the new value, instead of the raw unexpanded data. Fixes: QTCREATORBUG-28779 Change-Id: I14d097e3a3a51b78006dd30a67b08477cfe0f2d8 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Editors: Fix message box when opening broken code style fileEike Ziller2023-02-081-2/+3
| | | | | | | | | The file name is not supposed to be the button label. Fixes: QTCREATORBUG-28746 Change-Id: I45ee2a860da8f7ffefc6d72c0d85b7f6a261489c Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* CMake: Detect cmake from ARM homebrew on macOSEike Ziller2023-02-071-2/+3
| | | | | | Change-Id: I67c539c9e9a42de086df9e0c12fa4e661494e121 Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* UpdateInfo: Fix never ending progress spinner in settingsEike Ziller2023-02-071-1/+2
| | | | | | | | | When searching for updates from the settings page. We need to always send the signal that the search finished. Fixes: QTCREATORBUG-28745 Change-Id: Ia4c764081916fdde4175799ab6d74fb7c4045810 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* CMakePM: Improve CMake presets kit config hashingCristian Adam2023-02-023-6/+48
| | | | | | | | | | | | | | | | Amends a3153c535d7e9e64fab530d86e64ab76ef4988e0 QT_QMAKE_EXECUTABLE was not taken into consideration and this would result in not matching kits. Also Visual Studio generator will not have a CMAKE_C|XX_COMPILER values in the cache. On Windows there could be paths with "C:" vs "c:" and the hashes again wouldn't match. Change-Id: I5da5fafbd29f3d1fd8c9615c41b7659e63c30ff1 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* QtSupport: Fix missing object nameChristian Stenger2023-02-011-0/+1
| | | | | | | Used in squish tests. Change-Id: Ib0eadfd295a5f03449509d70d1e1dfd1601e616b Reviewed-by: hjk <hjk@qt.io>
* Utils: Fake root infoMarcus Tillmanns2023-01-274-5/+26
| | | | | | | | | | | | | | | | When trying to open a FileDialog all roots were tested for existence. This is slow and might show ask-pass. Since "/" can be considered always valid, we create a fake entry for it and only test existence of remote paths if they are not a root path. In the future FilePath should get a "isRoot()" function so we don't just test for == "/". Remove the fileAccess from WebAssembly devices. Change-Id: I7a1a6e7d2025e9fd4428e4bd1d07cdbdb5680c8e Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Update qbs submodule to HEAD of 1.24 branchChristian Kandeler2023-01-271-0/+0
| | | | | Change-Id: I5c6a67335460bdc8b45e3808ddff22d91cfe3671 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* QmlDesigner: Fix missing validationMarco Bubke2023-01-271-0/+3
| | | | | | | | | | | | Fixes: QTCREATORBUG-28672 Change-Id: Ic8663d6c44cadbf3678ae564ec91572998d6d236 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> (cherry picked from commit 571d822c7b5d270a3017ffddb6b779dcac488d60) Reviewed-by: Robert Löhning <robert.loehning@qt.io> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Update qbs submodule to HEAD of 1.24 branchChristian Kandeler2023-01-251-0/+0
| | | | | | | Change-Id: I38933e0ca016d31a0702b368c9b7ccd72741d3f1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* TextEditor: fix endless loop on adding cursor for selectionDavid Schulz2023-01-231-5/+7
| | | | | | | | | | | | | | Since the find of QTextDocument is line based, it is not possible to find selections spanning multiple lines in the editor. Triggering a find on a search term containing a paragraph separator returnes an invalid QTextCursor which always result in searching from the beginning of the document in the add cursor for selection logic. Prevent that by checking the selected text beforehand and add a safety net in the loop to verify that we do not start over again on an invalid TextCursor. Fixes: QTCREATORBUG-28709 Change-Id: I8c1b9d16e707fefbba6dc0a0a9ef21b8c82ebe19 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* Utils: Fix crash in fsengine testMarcus Tillmanns2023-01-231-0/+4
| | | | | | Change-Id: I6a28dfc907d34f1a6e20bc92f5cc506b308f1c0b Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Utils: Add FilePath.hasFileAccess()Marcus Tillmanns2023-01-203-1/+9
| | | | | | | | | | | | | FilePath::hasFileAccess allows a user to test if a specific device can access files. This is faster than calling "exists()" as it does not have to actually check anything on the device. cherry picked from commit 21ef25a0f5aa957857528861a960aeb1f2bb9180 Task-number: QTCREATORBUG-28531 Change-Id: I363ca634d921464fe4ec68397c09fba49dccee25 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* Fix tab order in "file deleted" dialog on Windows/LinuxEike Ziller2023-01-191-3/+3
| | | | | | | | | | For some reason it doesn't like it if the order of adding the buttons is different, though that works on macOS. Fixes: QTCREATORBUG-28676 Change-Id: Iea7c595216140dd242cac0aa528699866c4bb1c7 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
* CMake: Fix missing path to Ninja from Qt installersEike Ziller2023-01-161-1/+1
| | | | | | | | | | | | In the configure environment for MSVC toolchains. The MSVC toolchain actually overwrites the PATH environment (triggered via kit()->addToBuildEnvironment(result)), which it shouldn't. But this is a minimal fix for Qt Creator 9.0 that also is in line with what BuildConfiguration::baseEnvironment() does. Fixes: QTCREATORBUG-28685 Change-Id: I0cb8e3c84419403672175bd581c16d90902e23ba Reviewed-by: David Schulz <david.schulz@qt.io>
* AutoTest: Redo handling of data tags with spacesChristian Stenger2023-01-132-11/+16
| | | | | | | | This basically reverts commit 7684571e108f5d as it broke running the test inside the debugger. Change-Id: Iacd46e2b9fb5af813fbf17156fd847375d750480 Reviewed-by: David Schulz <david.schulz@qt.io>
* qmlproject: fix qmlViewerAspectTim Jenssen2023-01-122-1/+3
| | | | | | | | | | - add its own settings key so it gets saved into the project settings - read the correct placeholder text, commandLineGetter is set too late and would also create a loop (qmlViewerAspect is used to get it) Change-Id: Iee3458cfe84e3f6b6750aa14d9d89347da21b37c Reviewed-by: Burak Hancerli <burak.hancerli@qt.io> Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* Utils: Guard against endless loop in PathChooserhjk2023-01-121-0/+6
| | | | | | | | | | | | | Adding a slash to the text in the path chooser for a custom build directory currently triggers an endless recursion. This here does not fix the actual problem but at least prevents the crash. Task-number: QTCREATORBUG-28682 Change-Id: Ic7d70ccfaccc1fd9437ca41e8b40b027718af6cb Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Fix compilation with Qt 6.6hjk2023-01-121-2/+2
| | | | | | | | | | | | | appoutputpane.cpp:272:12: error: cannot convert ‘const QList<ProjectExplorer::Internal::AppOutputPane::RunControlTab>::iterator’ to ‘ProjectExplorer::Internal::AppOutputPane::RunControlTab*’ in return Caused by "QList: deprecate iterator<->pointer implicit conversions" 0220484329029fc7598dfe11ba35ea10c3126477 b6cbd9c43afc7e005c1f78e1d0f700524930ed71 Change-Id: I596ead9deafca1154b5a79495e707137b61a14d5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> (cherry picked from commit 8ee6b14f00ebc1c0d113a2ee092cd0742450fe1e) Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* CPlusPlus: Work around Qt SiC breakagehjk2023-01-121-1/+2
| | | | | | | | | | | | | | | | | Qt Base b6cbd9c43afc7e005c1f78e1d0f700524930ed71 introduced #if !defined(QT_STRICT_QLIST_ITERATORS) && (QT_VERSION >= QT_VERSION_CHECK(6, 6, 0)) && !defined(Q_OS_WIN) #define QT_STRICT_QLIST_ITERATORS #endif removing iterator-to-pointer conversion starting with Qt 6.6 as dev, i.e. now. Change-Id: I75f25623917d0e666fb267db70d9701a13b270f2 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> (cherry picked from commit be89f99ecc631431c15df970112f909eb38114d2) Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Utils: Show hidden directories in non-native file dialog by defaulthjk2023-01-121-0/+1
| | | | | | | Selecting .ssh/*.pub is tricky otherwise. Change-Id: Icd26ec7e4bb6fbb348d62fe6f4a629ea2e723706 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* Allow combo box scroll wheel when pressing CtrlEike Ziller2023-01-111-2/+4
| | | | | | | | | | | Wheel scrolling was disabled for combo boxes in Qt Creator 9, because it created more issues than it solved. Instead of completely disabling it, allow wheel scrolling when simultaneously holding Ctrl. Fixes: QTCREATORBUG-28578 Change-Id: I08bccf039b60035bf425fac95b6af6fad349f43a Reviewed-by: Tasuku Suzuki <tasuku.suzuki@signal-slot.co.jp> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* ClangCodeModel: do not highlight tokens as TextDavid Schulz2023-01-111-0/+4
| | | | | | | | Fixes: QTCREATORBUG-28639 Fixes: QTCREATORBUG-28637 Change-Id: Idfcfc6c61db9d5449ab14eda566ce704160bac54 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
* Debugger: Add missing spaceRobert Loehning2023-01-101-1/+1
| | | | | Change-Id: Ibb8623392c1b0e759df198fab87a6059558236e9 Reviewed-by: David Schulz <david.schulz@qt.io>
* AutoTest: Fix handling of data tags with spacesChristian Stenger2023-01-101-4/+10
| | | | | Change-Id: Ie725d8bf67b6a143f52c84b902b69a077a55a2bc Reviewed-by: David Schulz <david.schulz@qt.io>
* AutoTest: Fix checked state for QtTestChristian Stenger2023-01-101-0/+7
| | | | | | | | Data functions and special functions may get handled as normal test functions which obviously fails when executing tests. Change-Id: I630fedcdbcc7577c1896f8cccbe77008a623900f Reviewed-by: David Schulz <david.schulz@qt.io>
* CMakePM: Add default kit configuration hashingCristian Adam2023-01-063-11/+66
| | | | | | | | | | | | | | | | | | This adds a QTC_KIT_DEFAULT_CONFIG_HASH variable containing the hash of all the default Qt Creator CMake kit variables: * CMAKE_C_COMPILER * CMAKE_CXX_COMPILER * QT_QMAKE_EXECUTABLE * CMAKE_PREFIX_PATH This way when a CMake preset changes any of these CMake variables a new Kit will be created. Otherwise a previous kit containing different values will be used. Fixes: QTCREATORBUG-28609 Change-Id: I77b67e9c8fa15dc3ff2f22c5b63d4ca1c7670fdc Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* CodeStyle: Fix preview updateArtem Sokolovskii2023-01-052-8/+27
| | | | | | | Fixes: QTCREATORBUG-28621 Change-Id: I66a66d9c16933ebd8197f9e286e72dce7a621933 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
* Properly support relative paths in Link with Qt UIEike Ziller2023-01-041-16/+22
| | | | | | | | | | | | Relative paths are resolved based on the applicationDirPath, so reflect that in the path chooser too. Also, do not resolve relative paths in the path chooser to absolute paths when writing to the settings. Change-Id: Iaeffa2cad1e145adbbc5c918b5f8ff14f6f2b31e Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* GLSL: Fix file licenseshjk2023-01-042-2/+2
| | | | | | | Amends a7956df3ca which accidentally dropped the (L)GPL part. Change-Id: I75ab5013925bac6563a782c5e19676d39accc1e0 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* AdvancedDockingSystem: Fix file licenseshjk2023-01-0440-40/+40
| | | | | | | Amends a7956df3ca which accidentally dropped the (L)GPL part. Change-Id: I22e3f5cdb12b15ee777524cac04aa888606026c3 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Add support for plugin paths set by the installerEike Ziller2023-01-031-8/+37
| | | | | | | | | | | | This is important on macOS, where we cannot install optional plugins into the app bundle, because that would break code signing. Instead the install settings in the signed bundle sets a custom plugin path outside the bundle, and the installer puts optional plugins there. Task-number: QTCREATORBUG-26705 Change-Id: I8b36752471d16dfc5828e87e20254f39ab985ca2 Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Editor: fix crashing on updating snippet selectionsDavid Schulz2023-01-031-0/+5
| | | | | | | | | | | The final selection is not tracked in m_selections and needs to be handled explicitly. Also add an assert preventing unconditionally accessing an out of bounds element of m_selections. Fixes: QTCREATORBUG-28631 Change-Id: I1898418b1126bdaffccbdf0e483e2c659d191917 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Replace ANDROID_NATIVE_API_LEVEL with ANDROID_PLATFORMAlexey Edelev2022-12-232-2/+2
| | | | | | | | | | | | | | ANDROID_NATIVE_API_LEVEL is not handled by the android toolchain files starting the NDK version r23b. We should set ANDROID_PLATFORM instead, to specify the NDK platform version, that exists in all NDK versions supported by Qt. Also the ANDROID_PLATFORM variable expects the 'android-xx' format as a value, so avoid cutting the 'android-' prefix when adding the value to the CMake configure string. Fixes: QTCREATORBUG-28624 Change-Id: Idd4ba472e46982162e5ad74e9fc6868e50e3b434 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* CMakePM: Allow relative compiler paths for presetsCristian Adam2022-12-191-0/+23
| | | | | | | | | | | | | You can have a preset with the PATH environment variable modified and with CMAKE_C|XX_COMPILER CMake variables only as "gcc.exe" and "g++.exe" Qt Creator now will search in PATH after the compiler file names and work as expected. Fixes: QTCREATORBUG-28602 Change-Id: I8520f6fcf5e542600fab08228d04d3709d3a8e8f Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* ClangFormat: Fix crash when m_fileName is emptyArtem Sokolovskii2022-12-161-2/+3
| | | | | | Fixes: QTCREATORBUG-28600 Change-Id: I3e0d64eb892daa5c63abe7ec81b258bf96fcdb1b Reviewed-by: hjk <hjk@qt.io>
* Editor: prevent validating line number in unwrapped editorDavid Schulz2022-12-161-1/+3
| | | | | | | | | | Checking whether a position is inside the first line is also not for free. Only check the line number of a cursor position if we expect the editor to have multiple lines per block or in other words line wrapping is enabled. Change-Id: I0e3cb1fbd11c250677f7c11d1a5c780f60085ec2 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* TextEditor: prevent shaping text for indent depth paintingDavid Schulz2022-12-161-1/+1
| | | | | | | | | QTextLines cursorToX indirectly calls shapeText which is not for free. We just want to have the x position for the line so there is no need to shape the complete text to get the position of the first cursor. Change-Id: I0ae636ed8250385b7ac77c6f37d45922bbf2e9bf Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* LanguageClient: Do not send out invalid errorsDavid Schulz2022-12-162-1/+5
| | | | | | | | | | | An error is expected to contain an error message so add one that misses one. Additionally assert when trying to set an error to a response that is invalid (does not contain message or code.) Fixes: QTCREATORBUG-28598 Fixes: QTCREATORBUG-27856 Change-Id: I0631433d847610531758d297a93a5c7cdfdc6c1d Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* QMakePM: fix potential crash when accessing deleted membersDavid Schulz2022-12-151-0/+5
| | | | | | Fixes: QTCREATORBUG-28370 Change-Id: I1767678221afc0d1a99194bce2d987a226998da5 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* SquishTests: Update tst_QMLS04Robert Löhning2022-12-151-0/+1
| | | | | Change-Id: I383e8f652ae233df7ed5bef93dcaa9a43fe95f0e Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* SquishTests: Update FindToolBarRobert Löhning2022-12-151-0/+1
| | | | | | | | ...as seen in tst_CSUP05 Change-Id: I1736a4ec9c69a3db3fc98ea1234b0363ceeaef41 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* ProjectExplorer: Consider the form "-D key=value"Christian Kandeler2022-12-141-8/+15
| | | | | | | | | | | ... when filtering compiler options for MSVC macro extractions. Otherwise we end up with a stray command line argument, breaking the call to cl.exe. Fixes: QTCREATORBUG-28016 Change-Id: I29979a4b968d2056a0feba61fee01d5ddc9aa28f Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Fix language selection boxEike Ziller2022-12-141-4/+4
| | | | | | | | | | | | | When Qt Creator is installed in a path with underscore. Amends 451d02c88d3aca4a1c1d6487b2ecaaac848e5c90 which changed the pattern matching from file name only to the whole path. Fixes: QTCREATORBUG-28591 Change-Id: Ice6a7cb34fd2bb98c384a3b7cb573614bb7a43b6 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* Editor: Fix deleting with numblock delete in multi text cursorDavid Schulz2022-12-141-1/+2
| | | | | | Fixes: QTCREATORBUG-28584 Change-Id: Ib65a933b61536d9a6342e82c51779c2a91983ec8 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Beautifier/ClangFormat: Fix style check box statesEike Ziller2022-12-131-2/+5
| | | | | | | | | | | | | Broke when inlining the .ui file. Because the two checkboxes no longer have the same direct parent, "autoExclusive" does not work, and it needs an explicit button group. Amends 4933697d9a5b38299340e265d2f4e6c78dd1604a Fixes: QTCREATORBUG-28525 Change-Id: Ia6af5f6083975faa5a65cdc9dd0bd2b671af147b Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: hjk <hjk@qt.io>
* CppTypeHierarchy: Fix showing type hierarchyJarek Kobus2022-12-121-3/+4
| | | | | | | | | | | | Don't repeat the main symbol as its child inside derived hierarchy. The regression was introduced when addDerivedHierarchy() was added. Amends e2155a91df81e812c4f086d4558ead70c0ed2551 Change-Id: I34cd19be4307d355ea84fbdb64a06d0d3505e8a9 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Fix Add button alignment on Compilers tabArtem Sokolovskii2022-12-121-0/+2
| | | | | | Fixes: QTCREATORBUG-28367 Change-Id: I468729fc2fd46f7f55081a696ff9d8913f5823d0 Reviewed-by: Eike Ziller <eike.ziller@qt.io>