Workspaces
Requires https://github.com/MerginMaps/mergin-py-client/pull/150
Changes in classes class MerginGroupItem(QgsDataCollectionItem): and class MerginRootItem(QgsDataCollectionItem): are easier to review side-by-side before and after, the diff is messy.
If server is old and does not support workspaces, the groups in browser are reduced to two: My projects and Shared with me:

If server is CE, there are no groups and the global namespace appears in brackets:

If server is EE, the active workspace is displayed in brackets and an option to switch workspace is offered:

Switching between old/ce/ee servers should be transparent to the user:

When there are no workspaces the user gets a warning with a link to mergin:

~Realized while taking screenshots:~ Fixed
- [x] ~Apparently, when switching back to EE server, the last used workspace is not preserved, will investigate.~
- [x] ~Mergin Maps [None] looks ugly, should probably remove brackets when there is no workspace~
- [x] ~Create new project should not be available when there is no workspace~
👏 can you please add some screenshots/gifs?
clap can you please add some screenshots/gifs?
Done (and found a couple of bugs while doing so)
Task linked: CU-24g3jrv Adapt plugin to workspaces

Non writable workspaces show an error message


@varmar05 you have unresolved review comments here. Can you check them, please?