Editing Task:Improving the Application manager

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
-
[[Image:Application manager icon.png|left]]As one of the foremost applications in a new user's experience of Maemo, Application manager needs to be one of the platform's best (perhaps only surpassed by the browser and email client). As it stands, though, it is still in need of improvement in a lot of areas. Some of these improvements are small changes (like allowing the repository list to be refreshed from the main view), and some of them are quite large (like the category view overhaul), but the end result should be a much better and more usable Application manager.
+
[[Image:Application manager icon.png|left]]As one of the foremost application's in a new user's experience of Maemo, Application manager needs to be one of the platform's best (perhaps only superceded by the browser and email client). As it stands, though, it is still in need of improvement in a lot of areas. Some of these improvements are small changes (like allowing the repository list to be refreshed from the main view), and some of them are quite large (like the category view overhaul), but the end result should be a much better and more usable Application manager.
-
 
+
-
 
+
-
 
+
-
== Goals for Fremantle ==
+
-
 
+
-
Until we get more specifics on the new UI for Fremantle, let's set out some general features we'd like to see implemented.
+
-
 
+
-
[[Image:Tag-search-mockup.png|thumb|250px|Mock-up of a search]]
+
-
=== Tracker and debtags ===
+
-
 
+
-
Tracker being included in Fremantle offers some interesting opportunities to use metadata. debtags were proposed as a potential solution to the [[Task:Package_categories|package categories]] issue, but they likely offer more potential by providing metadata to be indexed for searching with Tracker. Say I'm looking to find a web browser. Normally, I'd either know the list of available browsers for Maemo, know which one I wanted and go straight for it, or I'd tap on the "Internet & Network" and find them there. Unfortunately, things like Boingo, email clients, ftp clients and ssh are also going to be in that list, and picking names like "MicroB", "Fennec" or "Tear" out as web browsers without looking at the descriptions is impossible. With Tracker (and usefully complete and accurate tagging), I can simply type "web browser" into a search field to pull up a list of browsers.
+
-
 
+
-
[[Image:Rating-view-mockup.png|thumb|left|250px|Mock-up of the package view with ratings]]
+
-
=== Integrations with Downloads ===
+
-
 
+
-
[http://downloads.maemo.org Downloads] offers a great place to get more detailed information about packages (including detailed descriptions, change logs, and screenshots), and to comment and provide feedback. Users should be able to enter their maemo.org credentials into the Application Manager, then comment on and rate packages directly from the it. This will both increase the amount of feedback received by packages in Downloads and increase the amount of data available to users browsing for packages.
+
-
 
+
-
Data from Downloads should be used to provide "Fresh", "Popular", and "Highest rated" lists on the main view.
+
-
 
+
-
[[Image:Application-view-mockup.png|thumb|250px|Mock-up of the application view]]
+
-
=== Revised application info panel ===
+
-
 
+
-
The package info dialog is too limited in the current Application Manager, a fullscreen view should be added that includes several tabs containing a description, screenshots, comments and ratings, as well as maintainer, section, repository, version, size, and dependency information.
+
-
 
+
-
=== Find as you type ===
+
-
 
+
-
Most modern operating systems support find as you type. When presented with a list of items, a user can begin typing the name of the item they want and it will jump right to it. This wasn't feasible in Maemo before the N810's hardware keyboard, but with the hardware keyboard it's something that many users expect.
+
== Main view ==
== Main view ==
Line 33: Line 6:
[[Image:Main-view-mockup.png|thumb|250px|Mock-up of the main view]]
[[Image:Main-view-mockup.png|thumb|250px|Mock-up of the main view]]
=== New buttons ===
=== New buttons ===
-
One way to make the view more interesting is to add a few buttons over on the right hand side (where the big Application manager icon is right now). Something like, Featured applications (taken from Downloads), Popular applications (also from Downloads), and New applications (since last repository refresh, or maybe new in the last week—the specifics of this one will need consideration). As most of the Featured and Popular applications will reside in Extras (and Extras ships disabled), this would serve as a nice way to introduce new users to Extras by offering to enable it for them when they go to install an application from these lists.  
+
One way to do this is add a few buttons over on the right hand side (where the big Application manager icon is right now). Something like, Featured applications (taken from Downloads), Popular applications (also from Downloads), and New applications (since last repository refresh, or maybe new in the last week—the specifics of this one will need consideration). As most of the Featured and Popular applications will reside in Extras (and Extras ships disabled), this would serve as a nice way to introduce new users to Extras by offering to enable it for them when they go to install an application from these lists.  
:* [https://bugs.maemo.org/show_bug.cgi?id=3279 Bug #3279] - Streamlining user access to the Extras repository
:* [https://bugs.maemo.org/show_bug.cgi?id=3279 Bug #3279] - Streamlining user access to the Extras repository
 +
 +
 +
[[Image:Tag-search-mockup.png|thumb|left|250px|Mock-up of a search]]
=== Button bar ===
=== Button bar ===
Line 60: Line 36:
== Application list ==
== Application list ==
The application list is where most of the user's time will be spent—browsing and installing/removing/updating applications and packages—and is arguably the most important area of the Application manager. As it stands, most of what's wrong with the application list is either technical (e.g., the irritating list refresh) or related to the various dialogs related to the list (e.g., the info dialog), and the basic UI of the application list is really quite fine.
The application list is where most of the user's time will be spent—browsing and installing/removing/updating applications and packages—and is arguably the most important area of the Application manager. As it stands, most of what's wrong with the application list is either technical (e.g., the irritating list refresh) or related to the various dialogs related to the list (e.g., the info dialog), and the basic UI of the application list is really quite fine.
-
* Change to Modest's nice, big, thumbable scroll bars. Another option would be to do away with scroll bars and have kinetic thumb-scrolling.
+
* Change to Modest's nice, big, thumbable scroll bars. Another option would be to do away with scroll bars and have kinetic thumb-scolling.
* Columns should be sortable by tapping their names, as well as from the menu. It should also be possible to resize them.
* Columns should be sortable by tapping their names, as well as from the menu. It should also be possible to resize them.
* List refresh needs to be somehow sped up on completely eliminated. This is much better in Diablo, as it doesn't refresh whenever you look at it funny, but still a problem.
* List refresh needs to be somehow sped up on completely eliminated. This is much better in Diablo, as it doesn't refresh whenever you look at it funny, but still a problem.
** Destroying and redrawing the list is annoying, even if it does now remember your current location. I'd prefer individual rows to be removed (need to see how slow this would be).
** Destroying and redrawing the list is annoying, even if it does now remember your current location. I'd prefer individual rows to be removed (need to see how slow this would be).
* Pressing a key (N810) should jump the list to the first item named with that letter (e.g. press "v" jumps/scrolls the list to the first package called "v.....")
* Pressing a key (N810) should jump the list to the first item named with that letter (e.g. press "v" jumps/scrolls the list to the first package called "v.....")
-
* We should look at the possibility of allow multiple install/removes. I.e. we could create a "Mark for Installation" button on the highlighted row, then use the "Install" button in the toolbar as "Install Marked Packages". Likewise for removing packages. This would save quite a lot of time for people who want to install/remove more than one thing.
 
-
* If there are problems with the installation (e.g. unmet dependencies), visually indicate it instead of letting the user attempt only to be told he can't two dialogs later.  Have a validate button if this will take time to figure out.
 
-
* If the package is not going to be backed up (e.g. non-user in red-pill), or might involve other differences from how a normal user package is installed and metadata stored, indicate that on this screen or the install ok/cancel dialog.
 
-
* (Install/Upgrade) Have a way of downloading the debs to the memory card and don't delete them when cleaning (for restore purposes, e.g. reflash to avoid downloading everything again).
 
-
* (Install/Upgrade) For batch upgrades or installs, have a "continue on any error" option instead of having to say continue on every package.  Perhaps have something to indicate it will prompt and install all non-prompting first.
 
=== Info dialog ===
=== Info dialog ===
Line 84: Line 55:
[[Image:Application manager description mock-up.png|thumb|left|250px|Mock-up of the description tab]]
[[Image:Application manager description mock-up.png|thumb|left|250px|Mock-up of the description tab]]
==== Description ====
==== Description ====
-
The description field also needs soft-wrapping to make some descriptions fit. The problem here is that many descriptions are already hard-wrapped, which might result in ugly half-soft/half-hard–wrapped text. Some simple de-wrapping (e.g. just removing all newlines that aren't followed by a blank line) may already result in a pleasing line wrap. This may need to be addressed [https://maemo.org/forrest-images/pdf/maemo-policy.pdf packaging-side].
+
The description field also needs soft-wrapping to make some descriptions fit. The problem here is that many descriptions are already hard-wrapped, which might result in ugly half-soft/half-hard–wrapped text. This may need to be addressed [https://maemo.org/forrest-images/pdf/maemo-policy.pdf packaging-side].
[[Image:Application manager installing mock-up.png|thumb|250px|Mock-up of the installing tab]]
[[Image:Application manager installing mock-up.png|thumb|250px|Mock-up of the installing tab]]
-
 
==== Installing/Uninstalling/Upgrading/Problems ====
==== Installing/Uninstalling/Upgrading/Problems ====
This tab is a particularly bad offender, as the content is a known value—we know the type of information that appears here and we can predict how it will be formatted. The first and simplest solution is to take all of the packages under each heading and aligned them with the left side of the dialog. Most of the problems crop up from having such a huge amount of whitespace to the left of the package lists, so bringing these lists down a line and over to the left would eliminate a lot of horizontal scrolling. The headings (e.g., "Application packages missing:") will need to be offset from the text somehow, too.
This tab is a particularly bad offender, as the content is a known value—we know the type of information that appears here and we can predict how it will be formatted. The first and simplest solution is to take all of the packages under each heading and aligned them with the left side of the dialog. Most of the problems crop up from having such a huge amount of whitespace to the left of the package lists, so bringing these lists down a line and over to the left would eliminate a lot of horizontal scrolling. The headings (e.g., "Application packages missing:") will need to be offset from the text somehow, too.
-
[[Category:Community]]
 
-
[[Category:Development]]
 

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)