User:P.A./Panel-based Download Manager: Difference between revisions

Jump to navigation Jump to search
Update Downloads Panel design based on feedback and meetings
mNo edit summary
(Update Downloads Panel design based on feedback and meetings)
Line 43: Line 43:
* '''Any other improvement already defined as [[User:P.A./Download_user_experience_improvements|download user experience improvements]].'''
* '''Any other improvement already defined as [[User:P.A./Download_user_experience_improvements|download user experience improvements]].'''
** ''For example, streamlining the entire download process.''
** ''For example, streamlining the entire download process.''
|Feature ux design=We'll reach the stated goals by moving the interface for handling current downloads in a panel, anchored to a status indicator in the main browser window, and adding a new '''Downloads''' predefined folder to the Library window.
|Feature ux design=We'll reach the stated goals by adding a panel for handling the most recent downloads, anchored to a status indicator in the main browser window, and moving the interface for handling all downloads to a new '''Downloads''' predefined folder in the Library window.


In the following sections, entries are marked with these indicators:
In the following sections, entries are marked with these indicators:
Line 54: Line 54:
Provides a status overview, visible during normal browsing when there are download notifications.
Provides a status overview, visible during normal browsing when there are download notifications.


* {{done|Always visible, located on the navigation bar by default.}}
* {{ok|Always visible by default, located on the navigation bar, between the search bar and the home button.}}
** <span style="color: orange; font-size: 80%; font-weight: bold">[INPUT]</span> Maybe, only shown when there are download items in the panel, either active or completed.
** <span style="color: orange; font-size: 80%; font-weight: bold">[INPUT]</span> Maybe, also shown after the last download is removed from the panel, giving access to downloads history only.
* {{done|When there are no active downloads, shows the classic button icon (downwards arrow).}}
* {{done|When there are no active downloads, shows the classic button icon (downwards arrow).}}
* {{done|When there are active downloads, shows a progress bar and a compact indication of the remaining time, if known.}}
* {{done|When there are active downloads, shows a progress bar and a compact indication of the remaining time, if known.}}
Line 64: Line 62:
* {{done|New downloads are notified with a brief animation near the indicator.}}
* {{done|New downloads are notified with a brief animation near the indicator.}}
* {{done|Finished or failed downloads make the indicator glow until the panel is displayed.}}
* {{done|Finished or failed downloads make the indicator glow until the panel is displayed.}}
* {{done|If the indicator is removed from the toolbars, or moved to an invisible toolbar, the usual screen-level notification is shown when all downloads are completed.}}
* {{done|The usual screen-level notification is shown when all downloads are completed.}}
** Note that, even when the indicator is visible, the screen-level notification is still shown in addition to the indicator notification.
** Note that this is shown even when the indicator is visible.


Provides the anchor for the panel.
Provides the anchor for the panel.


* {{done|Located in the navigation bar by default.}}
* {{ok|If the indicator is removed from the toolbars, or is located in an invisible toolbar, the panel will never be displayed.}}
* {{done|If the indicator is removed from the toolbars, or is located in an invisible toolbar, we show it temporarily in the default position or in the tab bar when the panel is opened, until the panel is closed.}}
* {{ok|User-initiated requests to show downloads will always open the Downloads view in the Library window, regardless of indicator visibility.}}
* If we need to show the panel and both the tab bar and the navigation bar are invisible, then:
** {{done|For user-initiated requests (like the Downloads menu item), show the panel without the anchor, near the default anchor position.}}
** {{done|For user-initiated requests, if there is no browser window open (like clicking a screen-level notification, or the Downloads menu item on OSX), open a new browser window and show the panel there.}}
** {{done|For background-initiated requests, do nothing.}}


=== Downloads panel ===
=== Downloads panel ===
Line 82: Line 76:
The panel works as follows:
The panel works as follows:


* {{done|The panel should be shown automatically for the first download of the browsing session.}}
* {{ok|The panel should be shown automatically for the first few downloads after the feature is enabled, for discoverability.}}
** <span style="color: orange; font-size: 80%; font-weight: bold">[INPUT]</span> Maybe show the panel automatically only for the first few sessions, not for the first download of every session.
* {{ok|Only a few recent downloads are shown in the panel, thus not all the current downloads can be managed from the panel.}}
* {{done|The panel can be fixed-width.}}
** This must ensure that the panel does not expand to the full screen height when opened in a maximized window.
* {{done|Notifications are sorted by start time, most recent first.}}
** It's consistent with notification sorting in other platforms, and the order doesn't change unexpectedly while the panel is open.
* {{done|The panel contains a link to the full list of downloads.}}
* {{done|The panel is fixed-width.}}
** Resizeability is not as much of an issue with the downloads panel as it is with the bookmarks panel, because the downloads panel is less of a "management" interface. The full title of a download is shown in a tooltip.
** Resizeability is not as much of an issue with the downloads panel as it is with the bookmarks panel, because the downloads panel is less of a "management" interface. The full title of a download is shown in a tooltip.
* {{done|When there are no download items, the panel's width can be smaller.}}
* {{done|When there are no download items, the panel's width can be smaller.}}
* {{done|Notifications are sorted by start time, most recent first.}}
** It's consistent with notification sorting in other platforms, and the order doesn't change unexpectedly while the panel is open.
** Another option is to show first the items on which an action is more likely, i.e. completed downloads first, then failed, then running downloads.
* {{done|The height of the panel should be limited in order for the panel not to expand to the full screen height.}}
* {{ok|The panel should not to expand to the full screen height.}}
* {{done|When there are more items than the panel's height allows, a scrollbar should be visible for accessing all the downloads.}}


Individual notifications have the following behavior:
Individual notifications have the following behavior:
Line 98: Line 90:
* Notifications should disappear as soon as the user is done with them. We can't know the exact moment, so we use a set of heuristics.
* Notifications should disappear as soon as the user is done with them. We can't know the exact moment, so we use a set of heuristics.
** {{done|Completed downloads are removed from the list when the last browser window is closed.}}
** {{done|Completed downloads are removed from the list when the last browser window is closed.}}
*** Active downloads have no session boundary. When the browser is closed and reopened, they're paused and resumed automatically whenever possible.
*** Active downloads are never removed from the list automatically, though they can be hidden by most recent downloads.
*** Completed downloads are not restored if the previous session is restored. They can still be accessed from the Library window.
*** Completed downloads are not restored if the previous session is restored. They can still be accessed from the Downloads view in the Library window.
** <span style="color: orange; font-size: 80%; font-weight: bold">[INPUT]</span> Maybe, remove completed downloads after some time, even if a browser window is still open.
** {{done|Canceling a running download does not make the notification disappear.}}
** {{done|Canceling a running download does not make the notification disappear.}}
** {{done|Manually removing a download from the list is possible, but not a top-level interaction.}}
** {{done|Manually removing a download from the list is possible, but not a top-level interaction.}}
Line 121: Line 114:
* When the download has finished:
* When the download has finished:
** {{done|Clicking the main area opens the file.}}
** {{done|Clicking the main area opens the file.}}
*** {{ok|If the target file is missing, the main area should not be clickable. The existence detection should happen in the background.}}
** {{done|The button opens the containing folder.}}
** {{done|The button opens the containing folder.}}
** {{done|The context menu has commands to remove from list, go to download page, copy download link.}}
** {{done|The context menu has commands to remove from list, go to download page, copy download link.}}
Confirmed users
183

edits

Navigation menu