Replace a QTimer field with a call to single shot timer,
guarded by qApp.
Make StringTablePrivate QObject-less.
This fixes a remaining warning about destroying QTimer
object after the qApp is gone.
Change-Id: Id71bc17fc72894ad30d277c03e3f09232050d6bb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The orginal output from git is:
* "Not Committed Yet" for the author
* "Version of %1 from %1" for the subject
Fixes: QTCREATORBUG-32093
Change-Id: I541895b079880727ea0a47d1b4fda8c80b6d313c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Olivier Delaune <olivier+qt@delaune.info>
It's included in isShared() already, which looks like:
bool isShared() const noexcept { return !d || d->isShared(); }
The isMutable() looks like:
bool isMutable() const noexcept { return d; }
So, if d == nullptr, isShared() == true, thus !isMutable() == true.
In this case !isMutable is no-op.
Otherwise, if d != nullptr, !isMutable() == false, thus or'ing it
with isShared() is also no-op.
The public access to isShared() is via the negation of
QString::isDetached().
Change-Id: If9a2c3d635504e9f54ae608b192bd9b2fb7a12f5
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
With the current implementation it always returns true, even when
there is only one existing copy of a string inside m_strings set,
without any reference. This is due to creating a copy of the
QArrayDataPointer:
1 QArrayData::ref / qarraydata.h
2 QArrayDataPointer<char16_t>::ref / qarraydatapointer.h 438
3 QArrayDataPointer<char16_t>::QArrayDataPointer / qarraydatapointer.h 40
4 isQStringInUse
So, the ref_ is always at least 2.
Avoid creating a copy by taking a reference instead.
Observed misbehavior: After switching session nothing is erased from
the m_strings, it cumulates indefinitely instead.
Task-number: QTCREATORBUG-18800
Change-Id: I17981d44f88307e736ec03380baa39a03f0719bf
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
F-strings are Python 3.6 feature and we have users with older versions.
Task-number: QTCREATORBUG-32475
Change-Id: Ia4e70f64a8d63b399e92902e952330d7267ad60b
Reviewed-by: hjk <hjk@qt.io>
This copies the section between ";DS Theme Palette START" and
";DS controls theme END" from design[-light].creatortheme to the Qt
Creator themes.
Any theme loading warning should disappear with this change.
Change-Id: Ib5983f8962d1fc0f5e7ce8c67fd46c73ce9d2733
Reviewed-by: Brook Cronin <brook.cronin@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Fixed some (primarily related to `QMap`) alignment/padding issues
on ARM-based Macs.
Note that this change does not completely fix `StdMap` debugger dumper
test, which still fails due to incorrect reported alignment of
`std::string`.
Task-number: QTCREATORBUG-32309
Change-Id: I06b8be49453546fafacfefe88acbc7197d6c9434
(cherry picked from commit caf06b1a3b)
Reviewed-by: hjk <hjk@qt.io>
If just the sorting of the current dashboard changes
there is no need to refetch every bit again as this
also includes additional server-side work which is
not needed and decreases overall performance.
Fixes: QTCREATORBUG-31998
Change-Id: I3bc1841b66587b59cdf764157252e9c4b04b8605
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Mohammad Mehdi Salem Naraghi <mehdi.salem@qt.io>
Unfortunately pip still reports the python language server as outdated
even if the package was updated, most likely since the old package is
still in that directory. So instead of purely relying on the pip output
we compare the pip reported current version against the version
the python language server reports when startet with "--version". Since
neither the pip nor the version check is completely free we cache this
information now in case the server is installed or it is not and no pip
is available.
Change-Id: I3a56fd5240672555bd54e92685c0c58c4dc95d7c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This makes for a better out-of-the-box experience with prefixed member
variables.
Fixes: QTCREATORBUG-32459
Change-Id: I945b5f37bf444beca2ae43a9dad355d96ec37dd2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The entry for document check was introduced to avolid adding temporary
documents to a python language server, but it seems it does not work
reliable. Using the explicit Document::isTemporary is superior for this
check.
Fixes: QTCREATORBUG-32468
Change-Id: Ie6e920e975a3dcc0fe17eeae02e7d3b9610e08e6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The usages if validate() disappeared in the following commits:
ec75575e640d185a0ad3
Restore a call to validate() from init() reimplementation.
Inline validate() body there.
Change-Id: I5999cc98345cd4d15138eb891c92d9bb9de00027
Reviewed-by: hjk <hjk@qt.io>
If a QImage is displayed in a separate window, `nbytes` variable
used to become unbound if the expression
had not been previously expanded.
Simply moved the splitting outside of the conditional block,
so that the variable is always available.
Fixes: QTCREATORBUG-32390
Change-Id: Id3d0f02e9c6a564c4d7cedfde8d7f94ba65c8d68
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
(cherry picked from commit 563e2d3e73)
Only enable the qmlls-powered outline when the
"Use advanced features (experimental)" checkbox is enabled. The new
outline is not feature complete compared to the previous outline (namely
the icons are different), so disable the outline feature by default.
Note that the outline feature only exists in qmlls from 6.9 and later.
Fixing the icons is tracked via QTCREATORBUG-31767.
Change-Id: I0f742ad8bacf026407e2ea7b151d04033ed273c6
Reviewed-by: Dmitrii Akshintsev <dmitrii.akshintsev@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Amends 5f8ffd66ff that had a connect-call
at the wrong place. Each time the toolbar needs to be rebuild, it
connects a call to the method changing the toolbar.
Fixes: QTCREATORBUG-32356
Change-Id: Ia40619d2d7a8c19bb5fd0d3fc7a0fbf133bd7c33
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
go-to-definition is an "experimental" feature, but it is actually needed
to fix the bug at QTBUG-131920. Therefore, make it unexperimental and
use it by default, instead of using the buggy embedded codemodel.
I am not even completely sure why it was made experimental in the first
place, as its not even mentioned on the settings checkbox (so no string
changes needed there!).
[ChangeLog][plugins][qmljseditor] Qmlls will be used to process
go-to-definition requests without having to enable the
"Use advanced features" checkbox.
Task-number: QTBUG-131920
Change-Id: I1bb106022cc8d7611fe43fabbcd327d7d8573e62
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
There is no real reason to save these in the binary database, and
putting them into the .ini makes it easier to override e.g. with the
installer.
Task-number: QDS-11927
Change-Id: I499f871b4be66303f46d21084dcae37d2b987fa8
Reviewed-by: David Schulz <david.schulz@qt.io>
...for running CTest based tests. These where placed below the
last project although they are meant globally.
Fixes filtering issue of the results where these information
interfered with the test execution items and broke the logic
to determine whether an item is to be shown or not.
Fixes: QTCREATORBUG-32452
Change-Id: Ie8aa3e711398ca92c4ade0a65b082f97605e17c1
Reviewed-by: David Schulz <david.schulz@qt.io>
This is somewhat arbitrary as I don't want to bisect down to
what is exactly needed, and this affects only a warning.
Python 3.7 was released 2018-06-27 and is out of support since
2020-06-27 and security fixes up to 2023-06-06, so most
people should already have much newer setups.
[ChangeLog][Debugger] Require Python 3.7 as minimum for GDB support
Change-Id: I433956365965144a7b8e11bbca7d76e0bf25cf69
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
It looks like the alternative implementation of vcsCheckout()
is currently createInitialCheckoutCommand().
Detected by Axivion plugin.
Change-Id: Iab375bf5839ee87345c01a682bc04e33198f6023
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Leftover of the needsDevice() -> !isLocal() change.
Change-Id: I1a97cc274c01c272cd54745397eff442490f08d2
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
We cannot ensure that the document has not changed between closing and
reopening the document so we need to reset the tokens inbetween.
Change-Id: I84553c8d92b20ee6e2909e85de82fc8f6b2c1253
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>