Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
design:thunar:shortcuts-pane [2011/06/06 17:14] – [Summarized Requirements List] ochosi | design:thunar:shortcuts-pane [2011/09/07 02:02] – [Summarized Requirements List and Implementation Status] jannis | ||
---|---|---|---|
Line 71: | Line 71: | ||
* This is an implementation using three expanders and a custom container widget for rendering a single row. The row and the action button can be focused/ | * This is an implementation using three expanders and a custom container widget for rendering a single row. The row and the action button can be focused/ | ||
- | ==== Summarized Requirements List ==== | + | ==== Summarized Requirements List and Implementation Status |
The following criteria were identified as necessary and/or desirable for the new design of the shortcuts pane. The IDs are prefixed with //A// for // | The following criteria were identified as necessary and/or desirable for the new design of the shortcuts pane. The IDs are prefixed with //A// for // | ||
- | | **ID** | **Description** | **Ready in custom-view** | **Ready in Thunar** | | + | The status cells are color coded: |
- | | A01 | Categories have a down array and can be expanded | @palegreen: Yes | -- | | + | |
- | | A02 | Items are left-aligned with category titles | -- (only fixed indentation at the moment) | -- | | + | * a //white// background means the feature is not implemented yet, |
- | | A03 | Items have an icon, an ellipsized title and an action area with a button | Yes | -- | | + | * a //green// background means the feature is supported, |
- | | A04 | Items have uniform size (height in particular) | Yes | -- | | + | * a //orange// background means the feature is being worked on, |
- | | A05 | Items are highlighted on hover | Yes | -- | | + | * a //grey// background means the feature is partially working but is not developed any further. |
- | | A06 | Items and action buttons are highlighted independently depending on the mouse position | Yes | + | |
+ | | **ID** | **Description** | Mockup | ||
+ | | A01 | Categories have a down array and can be expanded | @palegreen: Yes | @palegreen: Yes | | ||
+ | | A02 | Items are left-aligned with category titles | -- (only fixed indentation at the moment) | -- (only fixed indentation at the moment) | ||
+ | | A03 | Items have an icon, an ellipsized title and an action area with a button | @palegreen: | ||
+ | | A04 | Items have uniform size (height in particular) | @palegreen: | ||
+ | | A05 | Items are highlighted on hover | @palegreen: | ||
+ | | A06 | Items and action buttons are highlighted independently depending on the mouse position | @palegreen: | ||
| A07 | The padding of the view can be configured by the theme | -- | -- | | | A07 | The padding of the view can be configured by the theme | -- | -- | | ||
- | | A08 | The background color of the view can be configured by the theme | Yes | -- | | + | | A08 | The background color of the view can be configured by the theme | @palegreen: |
- | | B01 | Categories can be expanded with mouse and keyboard | Yes | -- | | + | | B01 | Categories can be expanded with mouse and keyboard | @palegreen: |
- | | B02 | Categories are not selected/ | + | | B02 | Categories are not selected/ |
- | | B03 | Categories can be cycled through with the keyboard | Yes (tab key) | -- | | + | | B03 | Categories can be cycled through with the keyboard | @palegreen: |
- | | B04 | Categories are expanded with a single click | Yes | -- | | + | | B04 | Categories are expanded with a single click | @palegreen: |
- | | B05 | Items can be navigated with keyboard and mouse | Yes (arrow keys) | -- | | + | | B05 | Items can be navigated with keyboard and mouse | @palegreen: |
- | | B06 | Items and action buttons can be focused/ | + | | B06 | Items and action buttons can be focused/ |
- | | B07 | Items and action buttons are selected/ | + | | B07 | Items and action buttons are selected/ |
- | | B08 | Activating an item replaces its action button icon with a spinner until it is mounted and loaded | -- | -- | | + | | B08 | Activating an item replaces its action button icon with a spinner until it is mounted and loaded | -- | @palegreen: Yes | |
- | | B09 | Activating an action button replaces its icon with a spinner until the eject operation is finished | Yes | -- | | + | | B09 | Activating an action button replaces its icon with a spinner until the eject operation is finished | @palegreen: |
- | | B10 | Dragging a URI to empty area or a category title opens a free spot in the category it belongs to | Partly | -- | | + | | B10 | Dragging a URI to empty area or a category title opens a free spot in the category it belongs to | @lightgrey: |
| B11 | Dragging a URI to an item works just like with dragging to folders in Thunar | -- | -- | | | B11 | Dragging a URI to an item works just like with dragging to folders in Thunar | -- | -- | | ||
| B12 | Dropping a URI on empty area or a category title creates a bookmark in the correct category | -- | -- | | | B12 | Dropping a URI on empty area or a category title creates a bookmark in the correct category | -- | -- | | ||
| B13 | Dropping a URI on an item copies/ | | B13 | Dropping a URI on an item copies/ | ||
- | | B14 | Categories/ | + | | B14 | Categories/ |
| B15 | Right-clicking the empty area displays a context menu | -- | -- | | | B15 | Right-clicking the empty area displays a context menu | -- | -- | | ||
| B16 | The empty area context menu has an item to edit the items in the shortcuts pane | -- | -- | | | B16 | The empty area context menu has an item to edit the items in the shortcuts pane | -- | -- | | ||
| B16 | Right-clicking a category title displays a context menu | -- | -- | | | B16 | Right-clicking a category title displays a context menu | -- | -- | | ||
| B17 | The category context menu has an item to hide the category | -- | -- | | | B17 | The category context menu has an item to hide the category | -- | -- | | ||
- | | B18 | The category context menu has an item to edit the items in the side pane | -- | -- | | + | | B18 | The category context menu has an visibility check box item for each item available |
- | | B19 | Right-clicking an item displays a context menu | -- | -- | | + | | B19 | Right-clicking an item displays a context menu | -- | @palegreen: Yes | |
- | | B20 | The item context menu has an item to hide the item | -- | -- | | + | | B20 | The item context menu has an item to mount the item if not mounted yet | -- | @palegreen: Yes | |
- | | B21 | The item context menu has an item to mount the item if not mounted yet | -- | -- | | + | | B21 | The item context menu has an item to unmount |
- | | B22 | The item context menu has an item to eject the item if mounted | -- | -- | | + | | B22 | The item context menu has an item to safely remove |
- | | B23 | The item context menu has an item to safely remove the corresponding device if there is one | -- | -- | | + | | B23 | If a new mount or volume becomes available |
- | | B24 | If a new device is plugged in and the devices section | + | | B24 | Dragging a URI to the empty area or a category title displays a context menu where the user can choose between a temporary and permanent bookmark | -- | -- | |
- | | B25 | Dragging a URI to the empty area or a category title displays a context menu where the user can choose between a temporary and permanent bookmark | -- | -- | | + | | B25 | Dragging an item to a different location reorders the items in a category | -- | -- | |
- | | B26 | Dragging an item to a different location reorders the items in a category | -- | -- | | + | | B26 | The DEVICES category displays system volumes (hidden by default), removable volumes and mounted archives | -- | @orange: Yes (system volumes not hidden yet) | |
- | | B27 | The DEVICES category displays system volumes (hidden by default), removable volumes and mounted archives | -- | -- | | + | | B27 | The PLACES category displays the home, desktop and trash directories plus XDG user dirs plus local URIs from '' |
- | | B28 | The PLACES category displays the home, desktop and trash directories plus XDG user dirs plus local URIs from '' | + | | B28 | The NETWORK category displays all remote URIs from '' |
- | | B29 | The NETWORK category displays all remote URIs from '' | + | | B29 | Items are selected whenever the corresponding folder is opened in folder view | -- | @palegreen: Yes | |
- | | I01 | Categories and items are stored in an implementation of GtkTreeModel | -- | -- | | + | | I01 | Categories and items are stored in an implementation of GtkTreeModel | -- | @palegreen: Yes | |
- | | I02 | Expanders and a custom row widget are used instead of a GtkTreeView | Yes | -- | | + | | I02 | Expanders and a custom row widget are used instead of a GtkTreeView | @palegreen: |
=== Comments === | === Comments === | ||
+ | |||
* **B20:** Firstly, this would pollute the context-menu. Secondly (and more importantly) this is not a very good option for a context-menu, | * **B20:** Firstly, this would pollute the context-menu. Secondly (and more importantly) this is not a very good option for a context-menu, | ||
+ | * True, I removed it from the list (so B20 now refers to something else). --- // | ||
+ | |||
+ | === Implementation Notes === | ||
+ | |||
+ | * We need to distinguish various types of files, mounts and volumes: | ||
+ | * **local (or // | ||
+ | * **remote files** that are **optionally associated with a mount** (this is the case with remote bookmarks; as soon as they are mounted, a mount will be created and we need to attach it to the shortcut) | ||
+ | * **mounts** that are **not associated with a volume** (this is the case with mounts of remote bookmarks, mounted archives and samba shares; mounts of remote bookmarks need to be attachd to remote bookmark shortcuts, others need to be displayed as a stand-alone shortcut either in the devices or network category) | ||
+ | * **mounts** that are **associated with a volume** (these should be ignored) | ||
+ | * **volumes** that have a mount and **for which pressing eject should only unmount/ | ||
+ | * **volumes** that have a mount and **for which pressing eject should eject the entire device** (these are CD drives etc.) | ||
===== References ===== | ===== References ===== | ||