It's returning a FilePath, so it's a better fit.
Keep the old versions as inline function now to ease downstream migration.
Change-Id: I535887928018f42b92895c8b0c82527f0d55e5ca
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Use "flat" aggregation instead.
This is another step towards the formatter/parser merger.
Along the way, also fix some some subclasses (mostly in BareMetal) that
erroneously forwarded handled output to other parsers.
Task-number: QTCREATORBUG-22665
Change-Id: I12947349ca663d2e6bbfc99efd069d69e2b54969
Reviewed-by: hjk <hjk@qt.io>
Including some random uses.
This mimics std::filesystem::operator/(std::filesystem::path).
Change-Id: I0b0f5cf0d962fd33d4cbb9be96645a0b4a21ee03
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
All parsers can now have search directories, not just the GnuMakeParser.
This allows us to get rid of the "task mangling", removing another
instance where the order of parsers in the chain mattered.
Task-number: QTCREATORBUG-22665
Change-Id: Id0d55522ae6800afd9f50ff36546224b0d8bb382
Reviewed-by: hjk <hjk@qt.io>
... that's currently stored in ProjectNodes. Plan is still to adapt
all user code like this, and finally move the data storage from
ProjectNode to BuildSystem.
Change-Id: Ida9b47c4a3013b857d00e7792eaf78d9f91b3c9a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The manifest editor is always adding the meta-data part for
"android.app.lib_name" because parseMetaData() is wrongfully
returning false.
Change-Id: Ic5f1971e98f213b6fe517bf6605120b21ca51508
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
The path can't be set unconditionally, and copyIcon
sets the path when necessary. So call copyIcon here.
Task-number: QTCREATORBUG-23747
Change-Id: I72a61798ad54c94a5c2a30bb313eb234f51d5ff3
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Use label text instead of icon for Auto SDK download button.
Fixes: QTCREATORBUG-23774
Change-Id: I5f10bafb0cdf88210f7121504778885291169e07
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
... instead of Target. The model is tied to an ApkBuildStep, i.e.
already per-BuildConfiguration.
Make the update depend on its BuildSystem parsing state, not any
in the target.
Change-Id: I72c00b9c40bfb7bee0375ae7b3f912f27bd18ca8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
If Qt Creator is not run in fullscreen or the user's resolution is too
small it is possible, that the licenses which have to be accepted are not
visible when the according message box is shown.
In these cases we scroll down to the SDK manager so that it's obvious that
the licenses have to be accepted there and no additional message box will
be shown.
Task-number: QTBUG-79664
Change-Id: Ic24bd8c4457a43011b4035b659063dd45b321bcc
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
sdkmanager only works with version 8 of JDK specifically. We should warn
the user if a different version is used.
Task-number: QTBUG-79664
Change-Id: I5be8d068e4ec119453654adda1a684dc65b4c631
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
sdkmanager only works correctly with JDK 8, so we should not point to the
latest JDK release, but specifically that one.
Task-number: QTBUG-79664
Change-Id: I29dc2d26d41eed96c1abc03907ee835d70b9553b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
QRegExpValidator is going away in Qt6, so port over to the
version using QRegularExpression.
Change-Id: Iecd1ba1f0e5e01009ae43b79c1ccc73f0fc046b2
Reviewed-by: hjk <hjk@qt.io>
The highlighted headers gets a bit annoying and serves nothing.
Change-Id: I5061792ee080cb10740d2dedc26f06f499043ac1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The minimumSize can cause the manifest editor UI to have a vertical
scroll bar even if it's not needed on some small displays.
Change-Id: I78b855d63d5a5f16a77ce58b86f0537f526aec44
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Presumably, they were intended for output that shouldn't get an
automatic newline, but if there ever was such a thing as automatic
newlines, it must have evaporated over time. All users of
OutputFormatter provide a newline if they want one.
Change-Id: Ibd219b7305fd503ce075d6f77930d2b538d5e2e8
Reviewed-by: hjk <hjk@qt.io>
By default, copy the sdk_definitions.json to Qt Creator user resource
path. The user can use that to make any updates if desired.
Add SdkDownloader instance as a member of AndroidSettingsWidget.
Change-Id: Ieabc9c6ddecbe63586f750b26bcf4ca990caee26
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Add "extras;google;usb_driver" to essentials packages to be installed
automatically. So, change would also account for platform specific
packages.
Change-Id: I9b452b9ee30be9f606ca77fcd79712d66fab84e7
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
The start button being in the middle looks weird and not desired
from a UX perspective.
Change-Id: I524f61a8963aa7d81f50181150a2af3b94acfacf
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Use QListWidget to show all installed NDKs (from SDK manager), and NDKs
Added manually by the user. Each item has an icon to indicate if it's
removable when added by the user, or non-removable if installed from the
SDK manager.
Change-Id: I26ae5909ce930d5cc8af561b6b4e9cc5415d12f1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This serves as a convenience addition to allow users to directly
include OpenSSL prebuilt libs for Android. The path of the OpenSSL
would be defined once in the Android options page, and always used
to include the libs when needed by the user.
How this works:
1- A download button is provided, it first tries to automatically
git clone the OpenSSL repo to the defined path. If the cloning fails,
the repo URL is opened externally for maunual download.
2- If SDK tools auto download is used (like for first time setup),
the OpenSSL download will start after SDK eseentials are installed.
3- Once the libs path is set, it can be used by AndroidBuildApkWidget
to include() function to the project (qmake/cmake). It also, should
detect if the include() part already exists in the project file.
Task-number: QTBUG-80625
Change-Id: I338e916f03f4ff55db25a118f1ea08f1da5dd103
Reviewed-by: hjk <hjk@qt.io>
The m_skipBuilding variable in AndroidBuildApkStep needs to be re-
calculated on every call to init().
Also add some debug statements that will help us find out why it becomes
true in the first place.
Task-number: QTCREATORBUG-23572
Change-Id: I058b58cf0e511557d1fad7e5bd03048a7d8b9c69
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Starting with Qt 5.15 we moved sdk min & target versions from
AndroidManifest.xml file to build.gradle (the change was needed by
android gradle plugin).
Fixes: QTBUG-70817
Change-Id: I3b493d88da1a4a98f1a6d8ebadc26aebfc601090
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Simple indentation based on the previous line was already available in
the NormalIndenter class. Merge that up the hierarchy chain into
TextIndenter which is the base for other text-based indenters, and make
that the default indenter for text editor factories.
Text editor factories that don't have a special indenter get at least
basic indentation support for free that way.
Change-Id: Ib977a990f10a99bead82bc8a8348c02a106665f1
Reviewed-by: David Schulz <david.schulz@qt.io>
This fixes minor things missed in previous commit
b081d7dc8f.
Change-Id: I47c0703a81726d7c0c2bf01d844e39096424ea5e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
It's more convenient to have the add permissions combobox
on top of the list view, so that it would be directly visible
without needing to scroll down, especially if on non-fullscreen
mode or small screen.
Task-number: QTCREATORBUG-23283
Change-Id: If3ef29fc91dd38f00d03ec63ce56103728c4b5f9
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Make a bit more easier to choose the method of style extraction to
the manifest editor UI.
Task-number: QTCREATORBUG-23283
Change-Id: I65ad52f07d31913cf091ef4ef1693617ac82d4ad
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This adds the option for the user to add a custom NDK out of the
predefined list installed from SDK manager. Once an NDK is added and
settings saved, both the toolchains and debuggers will be detected
automatically. The user then can create a custom kit with those added
toolchains and debuggers.
Task-number: QTCREATORBUG-23286
Change-Id: I46200accca6fc956b73f211213bfe2a495093934
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>