Move some logic for avd creation to the AvdDialog, and some
refactoring and simplification.
Change-Id: Id65e586ab1c0e9e898a04f07d7707371f20da649
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Annoyingly, LLVM does not complete preprocessor directives in disabled
code, so that we would not offer e.g. "#endif" after "#if 0" (but we
would offer it after "#if 1").
Fixing it would require messing with the clang libs (rather than just
clangd), so let's just keep using our existing code, which seems to work
fine.
Change-Id: I9dabf9a2a8f3a2f68e88a11b62c3df3b5e64a55c
Reviewed-by: David Schulz <david.schulz@qt.io>
The export script is designed to first let Inkscape export all .pngs,
and then to optimize the .pngs via optipng.
This used to work with previous Inkscape and Python versions.
A few Inkscape and Python versions later, however, the optimizing phase
starts already while the exporting is still happening. That can leave
.pngs unoptimized.
This change defines the stdout and stderr channels as subprocess.PIPE in
the subprocess.Popen call. That restores the intended behavior with
current Inkscape and Python versions.
Change-Id: I3b2775cc24b33ffb181c3b24e545f8cf98244103
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
As adding a remote leads to a model reset which does not
trigger the selectionChanged signal, all buttons were
enabled despite no remote was selected.
Change-Id: I2f752fcf5f1830728d1bcf9810ca4648bd2f287b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
allowing to overwrite apply and get rid of the apply helper in the
LanguageClient completion provider and processor.
Change-Id: I066fe10b116d638bd1b7a81d4488840bec5f0b63
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The re-used toolbar settings icon from Utils appears a bit small in
comparison to the other icons on the welcome screen.
This change adds a dedicated, properly sized "Settings" icon which fits
better.
Change-Id: I8af239a93806eaa6f355d504be282691b2463f3a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
And consolidate the palette setting code for QLabel, QSpinBox and
QCheckBox.
Change-Id: If0dea048e2341bcbb35c52eb394d4d01efef88be
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Since we use the AST in several contexts, it can easily happen that we
need to consult it more than once for the same document revision.
Therefore, it makes sense to cache the AST to prevent redundant requests
for potentially large amounts of data.
Change-Id: I33100e0052ee21bb46e91848d3d2e8a0a96bb860
Reviewed-by: David Schulz <david.schulz@qt.io>
Turn the current un-themed icons into icon masks which now get recolored
according to the current theme.
Change-Id: I435f9a43dae04797ad0b948992f77179d93164a8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Introduce Utils::Singleton class and
Utils::SingletonWithOptionalDependencies class template
that helps implementing singletons that depend on other
singletons. It's guaranteed that whenever singleton B depends
on singleton A, than A is always created before B is being
created, and that the order of destruction is always
opposite to the order of creation.
Dependencies of singleton are listed as template arguments
for SingletonWithOptionalDependencies class template.
The first argument of SingletonWithOptionalDependencies
class template is always a singleton class itself.
Prepare a common interface for all singleton subclasses:
SingletonSubClass *SingletonWithOptionalDependencies::instance();
Make instantiating singletons and its dependencies thread-safe.
Create singletons on demand (only if some code needs them).
It's not needed anymore to explicitly instantiate
all required singletons in tests.
Make it possible (and thread-safe) to instantiate ProcessReaper
and LauncherInterface singletons in non-main threads.
Make the following dependencies between existing singletons:
SshConnectionManager depends on:
-> LauncherInterface depends on:
-> ProcessReaper
Change-Id: Iefaacab561c2b3dcf07e7fafbb87339ea6a15278
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The behavior is now the same as when using libclang. Namely:
- The whole block is grayed out, rather than just symbols
having a gray background.
- Ifdefed-out blocks no longer mess with the brace depth.
Change-Id: I8b5f3a788430edcd9dd79249323c26a5ee5d68ed
Reviewed-by: David Schulz <david.schulz@qt.io>
Wizard json files can now define via
"iconKind" : "Themed"
that the provided icon is a themable mask rather than a plain image.
Change-Id: I668b7fe368b6989f3609143b22270cb8cec21b12
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Removes noise from the interface. Using specialized clangd processors
that redirect the proposals for testing purposes is an overall cleaner
solution.
Change-Id: Ia4f3d4720765f0533c5530a2a5c7db3cc971e0be
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Prevent non-portable dir delimiters from getting into a FilePath.
Change-Id: I78e4a98e03ffe95e3cef70c9c499af28fa33c25c
Reviewed-by: <christiaan.janssen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
That opens the selected file/path in the file system view.
Behaves the same as the navigation view shortcut + syncing with the
selected file.
It would be nice to have that at other places too, but this requires
moving the file system view to Core plugin first.
Change-Id: Icc6d1041156d97f5d2bda43a3501758f06fe80aa
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
The widths of the "Sessions" and "Projects" lists are not well
distributed on Full HD screen width. The sessions are squeezed and the
projects are extra wide.
Set a stretch factor also on the Settings widget, so that both stretch
proportionally. Use a 1 to 3 ratio.
This change also removes the setting of struts which does not appear to
have any effect and was (by mistake?) assigned to one sublayout, twice.
Fixes: QTCREATORBUG-26319
Change-Id: I365a6a6c5d9c2250e3f711cc139d3279f2f5e3b1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Move AVD management and creation to Qt Creator's DeviceManager
facilities. This allows AVDs to be created from the Devices settings
page and their details and control/action buttons for starting/stopping,
etc. are added there as well. This makes the process similar to other
device types that Qt Creator supports, to get a similar experience.
Task-number: QTCREATORBUG-23991
Change-Id: I16c52b3cc73035e0ee12fd54ae9dad4595c8cda5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
We already know the module id because it's the source id of the module.
Change-Id: Ice241d38c12c7ca79a525464c53b7d552095a0fc
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Exported type names are synchronized so that old type names are removed.
Task-number: QDS-5130
Task-number: QDS-5126
Change-Id: I6e6482170c8197f37f60a57bdfb7f1b450001b4b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
CMake projects need to add the headers as source files in order to get
exported from the CMake file-api json export.
Having header files that are not part of the project displayed in the
<Headers> node is error prone and confusing.
This also means that you won't get bogus files when doing git commit
for example.
Fixes: QTCREATORBUG-18206
Fixes: QTCREATORBUG-24609
Fixes: QTCREATORBUG-25407
Change-Id: I89ac4f8a80f452119f8a991b9e4ef14efb7a86b9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>