8476 Commits

Author SHA1 Message Date
Jelle Spijker
6514fdf9f2
Check the server if a package can be updated
The server is queried using the local packages_id and version to
determine if they can be updated. The Manage button state is set
accordingly. This is done in an async way to keep the UI responsive

A.t.m I'm not sure if I might need to move this logic out, since
we also need to make this query when check periodically for updates.
when the list is not shown. But that would also entail creating
the installed packages list before the Manage Packages tab is ever
created in the Marketplace.

Contributes to: CURA-8587
2021-12-03 13:25:43 +01:00
Jelle Spijker
eb156f114c
Introduce a ManageButton
The state and styling of this coupled with the available options.
Discussed with UX that primary state: Install, Enable, Update while
secondary states are: Uninstall, Disable

Each primary/secondary state also has a busy state, with the verb
and spinner.

Contributes to: CURA-8587
2021-12-03 13:25:38 +01:00
Ghostkeeper
02d74b4226
Make header of detail page depend on header of origin
It's the same as the list of packages you came from, now.

Contributes to issue CURA-8565.
2021-12-03 13:25:35 +01:00
Ghostkeeper
2b419a2379
Make package detail page scroll if details are too long
Some plug-ins could have very long descriptions now. We show all of it, but that could go off the screen in theory.

This makes the content scrollable if it goes off the screen.

Contributes to issue CURA-8565.
2021-12-03 13:25:29 +01:00
Ghostkeeper
0b1b4ec01b
Communicate to PackageCard whether it is a detailed card or not
If it is detailed, it currently hides the short description. That is not quite enough, but we'll expand that behaviour.

Contributes to issue CURA-8565.
2021-12-03 13:25:10 +01:00
Ghostkeeper
76e43759c7
Restore check for parent before getting its width
Delegates that are outside of the viewport may have no parent any more. Don't attempt to find their parents' width.

Contributes to issue CURA-8565.
2021-12-03 13:25:10 +01:00
Ghostkeeper
0069182c6b
Set position and width of card in details page
This means that the card itself shouldn't specify a width. It should get a width from how it's used.

Contributes to issue CURA-8565.
2021-12-03 13:25:10 +01:00
Ghostkeeper
5edd830210
Add package card to detail page
The card has the wrong layout, but it's a start. The data is communicated in any case.

Contributes to issue CURA-8565.
2021-12-03 13:25:10 +01:00
Ghostkeeper
d31079b7aa
Split page in header and contents
This requires a small refactor here.

Contributes to issue CURA-8565.
2021-12-03 13:25:09 +01:00
Ghostkeeper
cb7b9b3193
Increase size of icon to fit button exactly
Contributes to issue CURA-8565.
2021-12-03 13:25:09 +01:00
Ghostkeeper
0cd8798aff
Remove superfluous anchors.fill
This is already set by the StackView, which (logically) requires that the children fill the entire space taken by the StackView.

Contributes to issue CURA-8565.
2021-12-03 13:25:09 +01:00
Ghostkeeper
27d9118d17
Basis of header line
I think the icon on the button is too small, but that's not currently configurable. Will have to look into that.

Contributes to issue CURA-8565.
2021-12-03 13:25:09 +01:00
Ghostkeeper
26a39f0240
Add a StackView around Marketplace to allow extra pages on top
This allows a sort of full-screen pop-up to replace the entire Marketplace window contents, on top of the normal contents. The normal contents are kept as they are, but out of view.

Contributes to issue CURA-8565.
2021-12-03 13:25:09 +01:00
Jaime van Kessel
34911380d2
Change fonts to default
No idea why they were medium, but the design clearly shows that it should be the default font
2021-12-03 13:25:09 +01:00
Jaime van Kessel
a59307e10d
Also set correct size for package card title 2021-12-03 13:25:09 +01:00
Jelle Spijker
3c225f1a73
Fixed some layout issues with the Package Cards
Contributes to: CURA-8587
2021-12-03 13:25:08 +01:00
Jelle Spijker
5373e9a36d
More generic way of showing the manage buttons
Contributes to: CURA-8587
2021-12-03 13:25:08 +01:00
Remco Burema
813bbb30e4
Merge branch 'marketplace_redesign' into CURA-8585_marketplace_material_details 2021-12-01 14:08:20 +01:00
Remco Burema
518e59303d
Fix dashes in links.
part of CURA-8565 and/or CURA-8585
2021-12-01 14:01:41 +01:00
Remco Burema
c1298c6a5e
Hide search link when not needed. 2021-12-01 13:53:43 +01:00
Remco Burema
b5e06f6c67
Fix tooltip targetpoint. 2021-12-01 13:48:18 +01:00
Remco Burema
1a787e5df2
Solve layout warnings. 2021-12-01 13:22:50 +01:00
casper
bd9722654c Use FontMetrics component to calculate the line height
cura 8563
2021-12-01 11:45:30 +01:00
casper
bf168388dd Change styling of "Search in the browser" button in the marketplace
To comply with the UX design.

cura 8563
2021-12-01 10:29:21 +01:00
Ghostkeeper
d8e212581b
Show placeholder texts when compatibility lists are empty
When there are no compatible printers, we show that there is no information. After all, all materials should be compatible with some printer.
When there are no compatible support materials, we simply show 'None', because a material could be incompatible with all known support material types.

Contributes to issue CURA-8585.
2021-11-30 19:11:02 +01:00
Ghostkeeper
249a07269e
Specify spacing between external link buttons
Contributes to issue CURA-8585.
2021-11-30 19:02:27 +01:00
Ghostkeeper
58cefcb68c
Add additional buttons at the bottom for materials with links to data sheets
And where to buy it.

Contributes to issue CURA-8585.
2021-11-30 19:00:08 +01:00
Ghostkeeper
39f540ff52
Add information on compatibilities with air manager
Similar to the Material Station.

Contributes to issue CURA-8585.
2021-11-30 18:25:24 +01:00
Ghostkeeper
aba3e755f4
Show compatibility with material station
Contributes to issue CURA-8585.
2021-11-30 18:22:55 +01:00
Ghostkeeper
b854025daa
Fix name of compatibility category
I had the nesting wrong. 'compatibilities' is the nested sub-dict in each of these compatibility entries.

Contributes to issue CURA-8585.
2021-11-30 18:22:34 +01:00
Ghostkeeper
cfdb01caaf
Show list of compatible support materials
Contributes to issue CURA-8585.
2021-11-30 18:13:06 +01:00
Ghostkeeper
fd026e472f
Show compatible printers for materials
Contributes to issue CURA-8585.
2021-11-30 18:08:42 +01:00
Ghostkeeper
9c51d620b2
Use QStringList rather than QVariantList
We know that they are strings after all.

Contributes to issue CURA-8585.
2021-11-30 18:07:13 +01:00
Ghostkeeper
1418bb072c
Parse compatibility information of air manager and material station
The union vs. intersection here is a guess. I'm guessing the online Marketplace displays compatibility if ANY materials/combinations are compatible, not requiring that ALL materials/combinations are compatible. We'll have to review that.

Contributes to issue CURA-8585.
2021-11-30 17:50:39 +01:00
Ghostkeeper
02c1e01788
Parse list of compatible support materials
This one is quite complex because the support material names are in their profiles, so we need to consult the profiles, if present.

Contributes to issue CURA-8585.
2021-11-30 17:42:29 +01:00
Ghostkeeper
4ffca8da98
Implement getting the compatible printers of a package
Again, only really applicable to materials for now. But it's simple to keep this class generic.

Contributes to issue CURA-8585.
2021-11-30 17:29:28 +01:00
Ghostkeeper
b4020614d5
Add material links to package model
They will not be initialised for plug-ins.

Contributes to issue CURA-8585.
2021-11-30 17:17:50 +01:00
Ghostkeeper
d6143103d0
Merge branch 'marketplace_redesign' into CURA-8565_marketplace_plugin_details
Conflicts:
	plugins/Marketplace/resources/qml/Marketplace.qml -> Whole layout changed, while the onboarding banner got added. I re-added the onboarding banner item and the new search link at locations where I thought it was appropriate.
	plugins/Marketplace/resources/qml/Packages.qml -> A small conflict where new properties got added while I moved the width property up a bit for consistency. Easy enough to fix.
2021-11-30 16:16:20 +01:00
Ghostkeeper
cd09af885d
Fix resetting when Marketplace is closed and re-opened
Previously, this would cause the Marketplace to freeze. We're still not entirely sure why. It seems to be a bug in Qt, but it's rather hard to deal with.

This new solution is nicer in some ways but not as neat in others.
- We're no longer clearing the content of the loader, so the QML and the package data remains in memory while the Marketplace is closed. We deem this to not be a problem, because the memory usage of this package data is only a couple of kB, nothing compared to the memory used by the slicer when it loads a model.
- On the other hand, it's now possible to programmatically change the tab there, instead of manually having to click the buttons.
- Fixes a bug where the highlighted tab of of the tab bar doesn't update when closing and re-opening the Marketplace. And a bug where there was a search bar for the manage page while it didn't work.

Contributes to issue CURA-8565.
2021-11-30 15:59:30 +01:00
Ghostkeeper
02cf4ac440
Fix newline rendering in extended display
Rich Text is rendered a bit like HTML, where all of the whitespace gets changed into a single space. This is normally not so bad, but with newlines it's annoying. This preserves the newlines from the description.

Contributes to issue CURA-8565.
2021-11-30 15:01:39 +01:00
Ghostkeeper
c48c449354
Show hover colour when hovering a card
This signals to the user they can select one.

Contributes to issue CURA-8565.
2021-11-30 14:50:45 +01:00
Ghostkeeper
7529483cb0
Don't show download count for bundled plug-ins
I considered rewriting the section title property to be QML-only and translate it from the QML, but this is a bit simpler in the end, even though there is data duplication now.

Contributes to issue CURA-8565.
2021-11-30 14:42:12 +01:00
casper
a0dce47d54 Merge branch 'CURA-8564_Add_onboarding_banners_with_link_to_explain_Cura_MP' into marketplace_redesign 2021-11-30 14:27:41 +01:00
Jaime van Kessel
b0275cfba9 Add campaign links
CURA-8563
2021-11-30 14:17:40 +01:00
casper
97ba4489ff Remove unneeded margin from search bar
Cura 8563
2021-11-30 13:01:45 +01:00
casper
c62b21ad44 Revert "Decrease margin sizes"
This reverts commit 49db5be3aa731f8c9be6fe39f77ccbb8ee26f622.
2021-11-30 12:57:22 +01:00
casper
d291ea85a2 Place the on boarding banners in the correct place in the marketplace
To comply with the UX design

CURA-8564
2021-11-30 12:20:21 +01:00
casper
5a148e459f Decrease size of the icons in the marketplace onboarding banners
CURA-8564
2021-11-30 12:19:32 +01:00
casper
8e6210fb2c Change margins of read more button in marketplace onboarding banner
To comply with UX design

CURA-8564
2021-11-30 12:11:32 +01:00
casper
ca60206728 Always show read more button in on boarding banner
Even if there is no link

CURA-8564
2021-11-30 12:10:55 +01:00