If the values are the same we should avoid writes to the database
because they are not so cheap. Also recognize that "IS NOT" is used
instead of "<>" because we want to test for null values too.
Change-Id: I6699c6c40ad42f5d07910905b10cc7d423373320
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Synchronization should always throw an exception if it gets in an
inconsitent state.
Task-number: QDS-4551
Change-Id: I8c55198115aa79b676a13fe0cd7ab225fb6723d5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Alias for lupdate for missing
Change-Id: I8a9a68e6d3be54ab8e1d143d3611e9d8da6d760d
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
At least for the red marking of valid/invalid.
Change-Id: I91f856f93ba74f6b62a540322c2445691afbf170
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
also renamed the qmlscene* qmlRuntime*
Change-Id: Ifd522e21f5ce30aaa54060fdcebee2cd8b9463c4
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This make the code better re-usable from other places that
wish to put a cmake version into a new kit.
Change-Id: I1ef7770a7f8efa36e88b2f3862b011fecd38de98
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Changes in Utils::FilePath need some adjustments to fix the
expected behavior.
Fixes: QTCREATORBUG-25979
Change-Id: Ife35a68458db9ae7c08637687a3fc9acd7d058e9
Reviewed-by: David Schulz <david.schulz@qt.io>
... by caching frequently accessed data of the massages.
Change-Id: I0a0a70c404cbc2fd8d26340004a45aa364843055
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Mark detected debuggers as such and give them some bonus to match,
overriding other hacks.
Change-Id: Iaf4d88fa22dd50e68124b61087d4c742f7a56d0f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
In general, the more specific isReadableFile etc are preferred, but for
porting a 1:1 match to QFileInfo functionality is helpful.
Change-Id: I5b575ca9a5053f13f63c0fbe0e3dcc222494280f
Reviewed-by: David Schulz <david.schulz@qt.io>
* Create blocked states for PropertyLabel, ControlLabel and
MultiIconLabel
* Rename and cleanup the MCU blocked state properties
* Add missing MCU related control blocked states
* Remove majorQtQuickVersion usage
* Add context for the translator
* Fix a nested SecondColumnLayout
* Add missing property control in Column- and RowLayout
* Remove comments from EditableListView
Task-number: QDS-4692
Change-Id: Icb93fe153241f015ced54409a953a3318c7763ae
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Since Qt 6.2 qmlscene is deprecated by Qt.
This patch also removes QMLViewer as a last
QtQuick 1 artifact in external tools.
Task-number: QDS-639
Task-number: QDS-4535
Task-number: QTCREATORBUG-22385
Change-Id: I5f67040954f8ef438961f7166a53bd96d5b73f4d
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
After the TextEditorWidgetPrivate's d'tor has finished,
compiler starts destructing all the member fields of
TextEditorWidgetPrivate before calling base QObject d'tor.
Some d'tors of some members may still emit signals which
are connected to TextEditorWidgetPrivate's slots. In this
case we may start operating on corrupted internals.
Fixes: QTCREATORBUG-26001
Change-Id: I865cad16601b278fe7f7cf95145557310bb83126
Reviewed-by: David Schulz <david.schulz@qt.io>
When Qt Creator is built as an Intel binary, and runs on
an Apple Silicon (ARM) Mac, it will be run via the Rosetta
translation layer. This means any process spawned by QtC,
including qmake, CMake, and lldb, will launch as x86_64
binaries as well.
For qmake and CMake, this affects their default choice of
build architecture, resulting in x86_64 builds of user
applications. We want to produce native arm64 apps, even
if Qt Creator itself isn't one, so we explicitly detect
the situation, and if Qt has an arm64 slice, we default
to arm64 builds.
The logic of adding CONFIG+=x86_64 to the qmake step has
been disabled, as the assumption that a single qmake run
and build will produce only a single architecture does no
longer hold. The corresponding logic in Qt was removed
in 2015 (qtbase f58e95f098c8d78a5f2db7729606126fe093cbdf).
In the case of lldb, running it as an x86_64 binary fails
to attach to the running application. We work around this
by using the 'arch' tool to explicitly launch it as an
arm64 binary. This works for debugging both arm64 and
x86_64 applications.
Change-Id: I65cc0f600223990f25c76cef18d927895e551260
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Otherwise it may happen that destructor of an editor being
deleted may trigger a call to EditorManager::currentEditor()
before reaching the editor's QObject destructor. In this case
the pointer to the editor (EditorManagerPrivate::m_currentEditor)
isn't cleared yet by Qt and it may return the pointer to
partially destructed object.
Change-Id: I4f44dce8d680008148a73eb2a8ac13477d0fb825
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
A simple function is faster and less code.
Change-Id: Ibea38936bb0866bb7a8f884d44551e2c4d1bf6a3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Would be useful to link auto-detected items to the source of
their detection and later automatic removal when the source vanishes.
This is bit more fine grained than the existing detection() and
mimics what QtVersion, Debugger and CMake have.
Change-Id: I2fae95e7e3c2e8191e9ff4cc7f36dc3fde86cf18
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Some setups pass error messages via stdout, fooling the detection logic
into believing everything is fine. We roughly know what to expect
from qmake -query, so we can at least filter out some cases.
Change-Id: I799a0bc708d44e062c8ad298c0d8fc576328e5b5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
clangd memory usage explodes when the workspace/symbol result count hits
the six-digit mark, so prevent that.
Change-Id: Iefc2eeb3da7fe541e2b1d3105818126980fc3323
Reviewed-by: David Schulz <david.schulz@qt.io>
Fixes local documentation links that refer to just an anchor.
Change-Id: Ib84db2a1a78f31fb081e8c02df0ccdb5a00cae05
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Implement the reply confirmation for the started signal.
After qtcreator_processlauncher starts a new process
we connect to its started() signal and post a reply through
the socket to the LauncherInterface with the information about
the new PID. ProcessLauncherImpl now emits the started signal
with a delay, just after the confirmation has been received.
Change-Id: I2689e8e97b17466bd1f6b32c01909c12d80fcdef
Reviewed-by: hjk <hjk@qt.io>
... if they have been properly opened in the meantime.
This fixes the problem that when a file was opened indirectly via "Go to
definition", the didClose message for the file that we temporarily opened
to search for overrides sometimes came in after the "regular" opening of
the file. As a result, such files were not actually in clangd's open
documents set, and no functionality was available for them (e.g. F2 on a
symbol would do nothing).
Also remove a left-over related declaration.
Change-Id: I9fc85d95595cb38a8d92e3f46505b9c514537d21
Reviewed-by: David Schulz <david.schulz@qt.io>
This was part of very original gdbserver support where normal
remote debugging did not start the server on the device.
The effect can still be achieved by a custom deploy step.
Change-Id: I8763ea131700115065693bd8a8a5382f0e02a113
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
The Issues pane has a placeholder for the find tool bar, there is one in
the top level layout for all output panes, but it doesn't support
searching itself. Make sure that the Find/Replace action is updated even
when switching focus from another find tool bar to the issues pane.
Fixes: QTCREATORBUG-25991
Change-Id: If96e9a2c59e159408aa881a01a1df0bb7bf28963
Reviewed-by: David Schulz <david.schulz@qt.io>
Makes it easier to understand what is failing.
Change-Id: I23140641a796150aa97f02c514c0ccd8e7623f51
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
If the document highlights are requested after a timeout the document
might have changed again inbetween leading to another document change
notification that gets send to the server.
Change-Id: I476e833c55e1bed96c9bd49ee2f17915ee3536a2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Update the outline sidebar widget after document changes are send to the
server like in the outline combobox in:
Amends ed199da1df
Change-Id: Iab58c0712a1c489576ed25a9b7e28f6f01e65946
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>