Current autoDetected Android debuggers list is never cleaned, if one
sets up many NDKs it could get really big and messy. This change tries
to keep it clean from old or duplicate entries, as well as keep it
chained to the autodection mechanism of Android toolchains and kits.
Relies on 291807 to allow autoDection for kits, toolchains, debuggers
to work out-of-box.
Change-Id: I320a021f0435d80fd3d56c060caa316def533afa
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The change 290840, made AndroidToolchain tied to an NDK location, but
when restoring a toolchain the NDK wasn't being assigned. This deduces
the NDK location from the toolchain compilerCommand().
Change-Id: I3cd936ac48570fadbec15ac1e13496706718c0ea
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
It seems that forcing sdkmanager reloadPackages is causing a duplication
in all packages and ndk listings.
Change-Id: I7e92d1c6dcec2a09db088d9596aca31a3d8b437f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
As collateral damage, use a capital C in KeilToolchain*.
Change-Id: If9d64de2108366546683144975d975d9d1727712
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Some toolchains that were auto detected in previous sessions or version
of Creator might re-appear as manual toolchains. Thus, make sure that's
fixed. Also, make sure the name of old toolchains is updated with the
current name format.
Change-Id: I04d2145cb9c5e1e25e2bcbc21c014280bc355195
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Also adjusts icon preview sizes and adds a master icon from which
the other icons are generated.
Task-number: QTCREATORBUG-23283
Change-Id: I21c3d11f9b5d4d815dc6d9ad7c2363b67767d03a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Using Target is actually not optimal as handle to access that
information (BuildSystem + BuildKey or sth to that effect would
be better), so reduce the visibility of this kind of interface.
Change-Id: I138f156b51795d51d2af49c5119d160663dfc20d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Do not crash when Qt version is nullptr. This was checked for in
some places, but not in others. Not sure whether or not it is safe
to assume that Qt version is never a nullptr here, so I went for
the better-safe-than-sorry option.
Change-Id: Ief9a479ee5719204582902bfa72412145658f0c2
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Make sure the UI ticks are updated directly after SDK Tools package
is downloaded.
Change-Id: If1d94c624dcbc5be14246f61b197d849438d19e5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
AndroidSettingsWidget::onSdkPathChanged() is being called then
m_sdkManager->reloadPackages(true) after it at start, that's not
necessary.
Change-Id: I6171e8a5fb765fa26aecb505ca50231c3e609b74
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The proper use is to call cancel(), the dialog will be hiden after that.
Otherwise, it will not be cancel and can get visible again.
Change-Id: Ifb2a00721571ce2bc8ded7c96e6b69e587020b34
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Allow parsing packages of the latest Android 11 (R) with API level 30.
Change-Id: Ia50d2ff23395b79828d47a8f9aeb3880aa131d83
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This causes a delay when clicking the deploy button for an Android
project. Also, it is a repeated call as this will be called inside
AndroidDeviceDialog::device() then refreshDeviceList().
Change-Id: I9203e746e4e9b3e5bfa42133d9a5246863c87e5a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Mainly to avoid an explicit use of BuildStep::buildConfiguration()
Change-Id: I96f1403d0aa2b9f5bcde06e994809466700b1357
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The change 286266 was causing an unwanted modal dialog upon entering
Options > Devices page, this fixes that.
Also, this fixes the synchronous SDK and AVD list reloading that was
causing some hang time upon opening Devices page.
Fixes: QTCREATORBUG-23581
Change-Id: I1a55aaadb873c77612aced1c687cc5a0ded3441d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
... and use in ProcessStep and related classes.
Change-Id: Ie6f1403d0aa2b9f5bcde06e994809466700b1357
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Special accessors to the repeatedly used C and C++ cases to denoise
and slim down user code. Plus some code cosmetics nearby.
Change-Id: Iba4662bd4731d8c4256e658529f39d5c995691ce
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Instead of a Target and hoping that its activeBuildystem is the
right one.
Change-Id: Ieb384d89e8f580b24205ce46a38f151aa72e2f6e
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
... and avoid the implicit used of Target::activeBuildConfiguration()
there,
Change-Id: I08ec72be601ef7b854b5aec5784b0636c738faa4
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Based on change 286266, we can find a correct NDK version for Qt for
Andriod version. This change allows Android plugin to get relevant NDK
information and registers appropriate toolchains and kits settings.
[ChangeLog][Android] Automatically use correct NDK version
corresponding to used Qt version.
Task-number: QTCREATORBUG-23583
Change-Id: Ic6b0d7a1ae8962c075b77498de88e018a008ac3e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
... or when reading non-Qt config files. FilePath::fromString would make
FilePath keep native dir delimiters, which would cause wrong negatives
for example in FilePath::isChildOf().
This change here fixes that AndroidToolChain:::isValid incorrectly
returned true.
Change-Id: I28b321fe3c4064f61b78dc7fc36b8af3d18b806c
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: hjk <hjk@qt.io>
We don't have logic to parse that part and it's not
even needed, because if an update is available the package
will be listed in "available packages" section. This is now
throwing errors and it's not needed.
Change-Id: I3bb65694fbef9218e5a294d9dbfd9e3f1f4c8333
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
If no Qt for Android version is installed don't show the config info
bar.
Fixes: QTCREATORBUG-23580
Change-Id: I880594701cdd6d5c0fc0586b5e49cc6a66efedb7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
A build step knows where it belongs to.
Change-Id: I990cf1fb7f22b608a2f317a05b05f1219649aa6e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Automatically download Android SDK Tools to default path
used by Android Studio, then essential packages will be installed
using the sdkmanager tool. Automatic installation can also be
triggered by an added button in the settings page.
Essentials packages include NDK Bundle and other NDK versions
required by previous Qt versions.
An sdk_definitions.json file holds download paths for SDK Tools,
and other (Qt version <-> essential packages) combinations.
[ChangeLog][Android] Automatically download SDK Tools, NDKs and
all essential packages for Android builds.
Task-number: QTCREATORBUG-23285
Change-Id: I90e7aafecd017d2bdc959e403711d9d440a6bbb2
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Also, replace or remove unneeded Q_OBJECTs, and make base
setters and adders protected.
Change-Id: I212257ef53984d8852dc8c478537199fc9483486
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
WinRt is the odd one out.
Some were using setObjectName, but only used for debug reasons,
not really needed.
Change-Id: I4a370e4694443bc1c455fda4337ef3acfb9259b8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>