Bug 390464 - Improve app source selection UI when there's more than one source available
Summary: Improve app source selection UI when there's more than one source available
Status: RESOLVED FIXED
Alias: None
Product: Discover
Classification: Applications
Component: discover (show other bugs)
Version: 5.12.1
Platform: Neon Linux
: NOR wishlist
Target Milestone: ---
Assignee: Aleix Pol
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-02-14 17:04 UTC by Andrew Crouthamel
Modified: 2018-03-15 17:46 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Crouthamel 2018-02-14 17:04:03 UTC
The current package source selection method involves clicking on what looks like a hyperlink, at the bottom of an application's description, and selecting a drop-down menu that appears.

I believe this could be improved, as for example, I had no idea this feature existed (for apps that have matching AppStream IDs) until I saw the animated Gif Nate posted here: https://pointieststick.wordpress.com/2018/01/14/how-you-can-help-drive-flatpak-adoption/

I'd like to suggest a few improvements to make package source selection a bit more visible to users:

1. Remove the current hyperlink method of selecting a Source, as users expect a hyperlink to link to a webpage URL, as the License link does directly below it.

2. Either change this to a visible drop-down box, or a button.

3. Move the Source box or button up. If it is a button, it could be next to Install for example. Having it at the bottom of a description can push the Source information below the screen, and require scrolling to check. New users won't know to check. On my laptop this happens with apps with long descriptions such as GIMP.

4. Add icons for each package type to make it more visible and pleasing. Such as the Flatpak icon (https://en.wikipedia.org/wiki/Flatpak#/media/File:Flatpak.png) and a package icon (http://pc-freak.net/images/how-to-fix-unfixable-broken-package-dependency-on-debian-ubuntu-linux-icon.png). Obviously the latter would need to be platform independent as one could be using RPM, DEB, etc. This icon could be displayed in the top corner of an app page, near the source selection box/button, to make it more obvious what type of package is being installed.

I believe these changes could help with Flatpak/Snap adoption, especially for new Linux users, and those new to Discover.
Comment 1 Nate Graham 2018-02-14 17:38:22 UTC
> Either change this to a visible drop-down box

That sounds familiar, Aleix... ;)

And the icon approach was Andres' idea.
Comment 2 Aleix Pol 2018-02-22 19:36:00 UTC
Git commit a2550b7ceac8c7e13bf0fa94e63c1b4972bd9eff by Aleix Pol.
Committed on 22/02/2018 at 19:35.
Pushed by apol into branch 'master'.

Include API to provide an icon for the backend

M  +2    -0    libdiscover/backends/DummyBackend/DummyResource.h
M  +1    -0    libdiscover/backends/FlatpakBackend/FlatpakResource.h
M  +1    -0    libdiscover/backends/KNSBackend/KNSResource.h
M  +5    -0    libdiscover/backends/PackageKitBackend/PackageKitResource.cpp
M  +2    -0    libdiscover/backends/PackageKitBackend/PackageKitResource.h
M  +1    -0    libdiscover/backends/SnapBackend/SnapResource.h
M  +2    -0    libdiscover/resources/AbstractResource.h
M  +1    -0    libdiscover/resources/ResourcesProxyModel.cpp
M  +2    -1    libdiscover/resources/ResourcesProxyModel.h

https://commits.kde.org/discover/a2550b7ceac8c7e13bf0fa94e63c1b4972bd9eff
Comment 3 Aleix Pol 2018-02-22 19:38:25 UTC
Possible solution:
https://phabricator.kde.org/D10753
Comment 4 Aleix Pol 2018-03-15 16:53:55 UTC
Git commit af5058de7f9aec39660de7477da94d6574dfae05 by Aleix Pol.
Committed on 15/03/2018 at 16:53.
Pushed by apol into branch 'master'.

Provide the source selection as a contextual action

Summary:
Instead of the dreaded link button.

Reviewers: ngraham

Reviewed By: ngraham

Subscribers: cfeck, ngraham, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10753

M  +16   -37   discover/qml/ApplicationPage.qml
M  +4    -0    libdiscover/resources/ResourcesProxyModel.cpp
M  +2    -0    libdiscover/resources/ResourcesProxyModel.h

https://commits.kde.org/discover/af5058de7f9aec39660de7477da94d6574dfae05
Comment 5 Andrew Crouthamel 2018-03-15 17:46:43 UTC
Thanks Alex!