Commit Graph

18 Commits

Author SHA1 Message Date
Alessandro Portale
3a007ee499 ExtensionManager: Reduce spacing between "cards" from 24px to 16px
Use the dedicated gapSize contant more consistently.

Change-Id: I3d4e27493a758b3bfa1b29988496f53ad0fbd811
Reviewed-by: hjk <hjk@qt.io>
2024-06-26 12:26:42 +00:00
Alessandro Portale
ee1ae662b9 ExtensionManager: Add logging
Log the network request, incl. result and response. And how many
extensions were fetched remotely and added locally.

Change-Id: I634d72462c8076c2fa01e88a1918163f76d28aff
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-26 09:23:18 +00:00
Alessandro Portale
62e37eec42 ExtensionManager: Let QtC developer test data sets explicitly
The extansion query service is currently only reachable from within the
internal network. So far, if the request failed, and if Qt Creator was
configured with WITH_TESTS, a set of test json got loaded.

That test data confuses people in the team.

This change makes loading of test data explicit, and comments it off by
default.

Change-Id: I89236064b6af32be7559bb6d36cbf0d42982085d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-26 09:23:12 +00:00
Alessandro Portale
aefc50f1de ExtensionManager: Prioritize plugin metadata data from service
This change enables the Qt Creator Extension service data to override
data of locally installed plugins (so far it was the other way around).
We might want to add more description text, links, images or tags to
plugins. And we want to be able do that independently of Qt Creator
releases.

This change also allows for substantial simplification of the "data
merging" code.

The parsing of extension plugin dependencies from the json data needed
to be fixed. See dependenciesFromJson()

Change-Id: Ia0433f0e0c7a0f13c43e0569c0915b7d08f7370a
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-26 09:23:05 +00:00
Alessandro Portale
c8e1af0292 ExtensionManager: Remove "Install..." button
Change-Id: I0b7a79a1182eca26d0dc97750db2fa84eb444cea
Reviewed-by: hjk <hjk@qt.io>
2024-06-25 15:16:43 +00:00
Alessandro Portale
81163b431e ExtensionManager: Implement Extension details design
This implements the design for the "right side" of the extension
manager.

The introduced "header" shows the extension icon in a slightly bigger
variant. The "Install..." button that starts downloading and installing
of a plugin moved to the newly desigend "header".

The previous HTML based prototype has been split up into separate items
in order to achieve specialized sections like the images and tags.

Images are loaded via TaskTree and displayed as static image or as
animation.

Change-Id: Ifaf4a46c0a4789e77e76f9a44c8a15ee74c5e8df
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-06-24 11:47:30 +00:00
Alessandro Portale
74e4e1053a ExtensionManager: Update ExtensionManager list items design
This updates the list delegate for ExtensionManager items to match the
latest Figma design.

Change-Id: I769026caa1e08feea4f71d901d1bda01d74ab0a2
Reviewed-by: hjk <hjk@qt.io>
2024-06-05 14:30:16 +00:00
Alessandro Portale
0ccfccd5c5 ExtensionManager: Some cleanups
Stuff you notice 10 Minutes after pushing the code you worked on for
days.

Change-Id: I24614b8129f80c8986ec11d5146c5631dae5d515
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-05-31 10:26:44 +00:00
Alessandro Portale
1a1d938170 ExtensionManager: Introduce extensions service response parser and model
This adds a parser for the JSON response of the extension rest API. The
data, combined with the PluginSpecs of local plugins, serve as data
model for the extension mode view.

A couple of "packs" are provided as test data.

Change-Id: I5ce961a9de9bf54ca745e5e5a5e584b1698e6ac6
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-05-30 16:32:48 +00:00
hjk
efae651924 Utils: Introduce a convenience function creatorColor()
... forwarding to creatorTheme()->color(...)

Change-Id: Iefaa043495127b3e500ed225584481d3ec0f8c1f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-29 13:49:25 +00:00
hjk
971938421c Use LayoutBuilder V2
This puts the implementation introduced in acf1ecb47f into use, after
significant simplifications in the class hierarchy. CRTP is not used
anymore, and the new tag based dispatch is also used for Layout::addItem,
effectively reducing the number of different code paths.

The Lua based settings access is disabled for now.

Change-Id: Idb6d1a25675378757c5267bdb630bcd4c1f52d34
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-05-27 12:38:48 +00:00
Alessandro Portale
6663f7c9bd ExtensionSystem: Introduce alias PluginSpecs
Change-Id: Ic7b87246cf91328c4291bbce5760a45dfa0b14e5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-05-13 13:46:53 +00:00
Alessandro Portale
4f30c2b4ed Welcome: Fix the hover background color
It used the wrong color token. With the correct one, the hover effect
is a bit less prominent.

Change-Id: I95a1f5a92f95d4055ae8bce703fdc633b122ac59
Reviewed-by: hjk <hjk@qt.io>
2024-02-29 17:02:21 +00:00
Alessandro Portale
903d01b934 Welcome: Implement new design
2024 redesign

Change-Id: I6629849921272d856f201693973a8e29c6465e94
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-02-27 16:42:10 +00:00
Alessandro Portale
f1787812e3 Core: Introduce WelcomePageHelpers::drawCardBackground
Pulled out of the ExtensionManager. It will also be used by
the Welcomescreen pages.

Change-Id: Ic5c67759e7f3af6a3b51968b7ae072c7058109b3
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-26 15:21:14 +00:00
Alessandro Portale
2c45a3ffe4 Theming: Update of color tokens
Token_Background_Hover is gone.
Token_Foreground_Default, Token_Foreground_Muted and
Token_Foreground_Subtle were added.

Existing token colors were changed.

Change-Id: I9505ee54dd02f78bd722c0dcfe42ee6ae4e48d13
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-01-26 14:08:00 +00:00
Christian Stenger
f663f22fa0 ExtensionManager: Minor fixes
* re-order some includes
* avoid using *tr.h inside header
* typo

Change-Id: Iba8d46384410ff06b184f55d66c4e7afca4ab666
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-08 11:08:32 +00:00
hjk
f97fd83fc9 Plugins: Add skeleton for new ExtensionManager plugin
This initial commit is merely a mockup of a ExtensionManager concept.

Change-Id: I19b2285667678a86097c043cc27a554545559eff
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2023-12-11 12:10:36 +00:00