aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/utils/infobar.cpp
Commit message (Collapse)AuthorAgeFilesLines
* InfoBar: Do not synchronously delete widgets in updateFabian Kosmale2022-11-281-1/+1
| | | | | | | | | | | | | | | | | Deleting the widgets can trigger use after free errors if those widgets are stil supposed to handle events. This can for instance be observed with an ASAN build of Qt when pressing the "Link Qt" button - the button still has a pending MouseReleaseEvent, when update is called, and by deleting the InfoBarWidget that contains the button, we run into the use-after-free. That might also be relevant to the comment about a "complictated crash" in infoBarDestroyed. Change-Id: I9f807aa26db1169a5a749692922e580dc5874254 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Port from qAsConst() to std::as_const()Marc Mutz2022-10-071-4/+4
| | | | | | | | | | | | | | We've been requiring C++17 since Qt 6.0, and our qAsConst use finally starts to bother us (QTBUG-99313), so time to port away from it now. Since qAsConst has exactly the same semantics as std::as_const (down to rvalue treatment, constexpr'ness and noexcept'ness), there's really nothing more to it than a global search-and-replace. Task-number: QTBUG-99313 Change-Id: I88edd91395849574436299b8badda21bb93bea39 Reviewed-by: hjk <hjk@qt.io>
* Use SPDX license identifiersLucie Gérard2022-08-261-24/+2
| | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Task-number: QTBUG-67283 Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Drop Qt5: Utils: Get rid of QOverloadJarek Kobus2022-07-201-1/+1
| | | | | Change-Id: I864bfb18668fd325badd34003adf494c7924f86b Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* InfoBar: Avoid using sender()Jarek Kobus2022-07-201-6/+3
| | | | | | Change-Id: I575aa4999b4cb8d39135880a3bc6d1b2fe44cf4a Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* Utils: Drop unused headers [I-Z]Jarek Kobus2022-05-251-3/+3
| | | | | | | | | Round 2 - focus on sources. For classes with initial in range [I-Z]. Try to keep the same separators between different kind of headers. Change-Id: I8a7ab99bab8120ee72cda6433ee3dc6f260a4d76 Reviewed-by: hjk <hjk@qt.io>
* Utils: More forward declarations / drop unused headers [H-K]Jarek Kobus2022-05-251-6/+6
| | | | | | | | | | Round 1 - focus on headers. For classes with initial in range [H-K]. Try to keep the same separators between different kind of headers. Change-Id: Iefb032953743be41a847ee011c30527edfa425d8 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Utils lib: Remove unneeded includes from cpp filesJarek Kobus2022-05-191-2/+1
| | | | | | | | It's a result of a team work consisting of yellow triangle and me. Change-Id: I8b4812766da70e0785ae71bf0cb71357379e2514 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* MinimizableInfoBars: Move to UtilsEike Ziller2022-05-091-0/+5
| | | | | Change-Id: I6b42948c4bddaa396122b845c5c1e2aa70d8aaad Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* MinimizableInfoBars: Remove last hardcoded thingsEike Ziller2022-05-091-0/+10
| | | | | | Change-Id: I6ec1e290056d97136077c0ddbc161669c7225eba Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Utils: add tooltip parameter for info bar controlsDavid Schulz2022-03-251-15/+25
| | | | | Change-Id: I395dea4240d09b3721a24e04016c6db4076449b5 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Utils: postpone combo box handling of the info barDavid Schulz2022-03-231-2/+2
| | | | | | | | | | We might want to remove the info bar in the callback. This makes sure that all direct connections are handled before removing the info bar and the combo box gets deleted. Change-Id: Icfce358d69923fa0558d48c2513e1cfff4926ed9 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Utils: add current index parameter to InfoBarEntry::setComboInfoDavid Schulz2022-03-231-2/+6
| | | | | Change-Id: I8933d0583846672a6bebdefec402203375e5e09b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Utils: Fix build with Qt5Christian Stenger2022-03-211-1/+1
| | | | | | | Amends 2b286c755bc5e6070ed034d9974b9c670268619c. Change-Id: I7f28cb4ac0d5b515df1e46c1f514a0275472d438 Reviewed-by: David Schulz <david.schulz@qt.io>
* Utils: allow passing data via info bar combo boxDavid Schulz2022-03-211-4/+13
| | | | | Change-Id: I47daa83a533a76eb4ad0ab3f5cf8c04faf389b98 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* InfoBar: Make adding more buttons possibleEike Ziller2022-01-181-7/+5
| | | | | Change-Id: Ic0c946cf3f87fe46cd06391f38e0bc71374ad340 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* InfoBar: Do not suppress info bar if it is closedThomas Hartmann2021-11-241-1/+1
| | | | | | | | | | | | | Before the patch, any closed infobar was suppressed until Qt Creator was restarted. With this patch the infobar will just be closed, as naively expected. To suppress any infobar you have to click "Do not show again". Task-number: QTCREATORBUG-26605 Change-Id: I29645e853119286f507cba82c228f372dd80fa64 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Kimmo Leppälä <kimmo.leppala@qt.io> Reviewed-by: hjk <hjk@qt.io>
* QmlProject: Propose to open QDS for any .ui.qml fileThomas Hartmann2021-09-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | This is only enabled if no QmlDesigner plugin is found. When a .ui.qml file is opened we check for a QDS installation. If QDS is installed we propose to open QDS instead, if not we show information on QDS. Search oder for .qmlproject file. QDS requires a project file. * Check if current project is .qmlproject * Check if the current folder contains a .qmlproject * Check folder for .qmlproject that contains the .ui.qml file * Check parent folder for .qmlproject ... If not .qmlproject is found we show an error message. Enabling external link support for InfoBar. Task-number: QDS-5065 Task-number: QDS-5066 Change-Id: I2c70c400c4d11b83a4848f9e002e180fa119f6e2 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Libs: Use qAsConst with non-const Qt containers in range-loopsAlessandro Portale2021-02-171-2/+2
| | | | | Change-Id: I00d9f7c1634bbb62191470d58158e1fd150533c0 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Utils: Use new settings APIEike Ziller2021-01-051-2/+3
| | | | | | | | Avoid writing defaults to the settings. Task-number: QTCREATORBUG-24430 Change-Id: I57193c0c07c02faf95753378bb1c8d86d18fd131 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Utils: Improve InfoBar borderAlessandro Portale2020-10-191-17/+37
| | | | | | | | | Replace 80s 3d frame with a slim separator line. Task-number: QTCREATORBUG-23176 Change-Id: If50d35f500323bf4b963cb2222b5f947a307a5bc Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Move InfoBar to UtilsEike Ziller2020-06-181-0/+359
The only reason it was required to be in Core plugin, was its use of Id, which now is available in Utils. Change-Id: I66ce863c24924e6448d339b3422538a7fe167336 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com>