Amarok/Development/CardSortingPlaylistContextMenu

From KDE Community Wiki

As most of you already know, Lydia and i conducted a little bit of card sorting regarding our horrendous playlist context menu. With the Last.fm service plugin enabled, you have 11 (eleven!) entries in the menu, which of course is entirely unacceptable.

We sat down with a bunch of little sheets of paper on them, with each entry in the menu we have now written on it, and a good lump of other bits of paper and a pen for the participants to write any new ideas they might come up with while sorting the existing items around and such. With no further ado, here are the results of the test, after going through the great amount of data we got out of it. Ten participants took part, most Amarok developers (which of course skews the data fairly nastily), and two non-developers (Wendy and Nuno).

The Sorted Menus

The following are the ten menus that people came up with:

1. Queue Track

  Stop Playing After This Track
  Remove From Playlist
  Edit Track Details...

2. Stop Playing After This Track

  Queue Track
  Show Under Various Artists
  Remove From Playlist
  Service Actions (submenu)
  Edit Track Details...

3. Remove From Playlist

  Stop Playing After This Track
  Play After Current Track

4. Show Context For This Track

  Queue Track
  Remove From Playlist
  Edit Track Details... / Fetch Cover
     (meaning fetching cover is done in dialogue)

5. Queue Track

  Play After Current Track
  Show in Collection Browser
  Show Context
  Remove From Playlist
  Stop Playing After This

6. Queue Track

  Stop Playing After This Track
  Edit Track Details...
  Remove From Playlist
  Service Actions (submenu)

7. Remove From Playlist

  Queue Track
  Stop Playing After Track
  Show in Collection Browser
  Last.fm: Love

8. Remove From Playlist

  Service Actions (submenu)
  Show Context
  Play After Current Track
  Show in Collection Browser
  Edit Track Details...

9. Remove From Playlist

  Edit Track Details...
  Show Context
  Cover (submenu)
  Show Under Various Artists

10.Show Context

  Last.fm: Love
  Remove From Playlist
  Copy To Collection (submenu)
  Edit Track Details...

Pseudo-statistics

The columns in the table below are:

  1. The number of people who put the item in their menu
  2. The number of the person to come up with the item (in the case of a new item)
  3. The menu item title
6 n/a Queue Track
5 n/a Stop After This Track
10 n/a Remove From Playlist
7 n/a Edit Track Details...
2 n/a Show Under Various Artists
3 2 Service Actions (submenu)
3 3 Play After Current Track
5 4 Show Context
3 5 Show In Collection Browser
2 n/a Last.fm: Love
1 2 Cover (submenu)
1 10 Copy to Collection

A note on the second to last item. While number 2 came up with the item, only number 9 used it in their menu.

Comments

The following are rationalisations taken from comments from the participants during the test, and some conclusions that can be drawn from the suggested menus themselves:

  • "Edit Track Details..." is often found at the end
  • "Queue Track" is often at the top
  • "Remove From Playlist" is often towards the top
  • Many mentioned "Show Under Various Artists" as perceived as being collection management or should be in the Edit Track Details dialogue
  • Cover items often mentioned as either collection management, something which should happen in the cover manager or in the Edit Track Information dialogue
  • "Stop After This Track" is often towards the top, except for one person who has it at the end. (Less obviously towards the top than Remove From Playlist...")
  • "Play After Current Track" superseded by the "Insert As Next" PUD action
  • "Show Context" shows up half way through the test, and then most like it and feature it at the middle or towards the top.
  • "Show In Collection Browser" is argued as a way of reaching editing things, but many others liked it and kept both it and "Edit Track Details..."
  • The "Cover" submenu was created very early in the test, but was discarded by nearly all participants.
  • "Copy To Collection" shows up last, but has very valid use cases for tracks not already in the collection (and arguably also for tracks in the collection, though here it can be considered a pendant to "Show In Collection Browser" for tracks that are not in the collection already - in short, copy to the chosen collection and then show in the collection browser where the track now resides)

The Three New Menus

All of this leads to three new menus. The reason we have three is that certain changes to the eventual final version either conflict with our current string freeze, or depend on features that are not available in Amarok 2.1 but will be in 2.2.

The menus below require certain things to happen in Amarok - specifically the Edit Track Details dialogue will have the additional feature of handling covers there. This does not add any new strings, since the same strings can be used to do this as are used in the context menu currently (Fetch Cover, Display Cover and so on). Furthermore, any place the cover is present should be an element where you can interact with the cover (click to display full size, right-click to manage). This can be postponed, though new strings will also not be required for this (same reasoning as before).

The menus for 2.1.1 and 2.2 include an item called "Service Actions *" - this item covers the concept of a conditional submenu. What this means is, if you have more than two items to show from services (Last.fm: Love, Last.fm: Ban, Libre.fm: Love, Libre.fm: Ban, for example), the itemsare put into a submenu called Service Actions. The same is applied here, if a service provides more than two actions, those actions are put into a submenu carrying the service's name. The reason this is not done already in 2.1.0 is that it requires a new string.

And now, the menus:

2.1.0 menu

  • Queue Track
  • Stop After This Track
  • Remove From Playlist
  • Last.fm: Love (and any other service actions)
  • Edit Track Details...

2.1.1 menu

  • Queue Track
  • Stop After This Track
  • Remove From Playlist
  • Service Actions *
  • Show In Collection Browser / Copy To Collection (submenu)
  • Tags & Information...

2.2 menu

  • Stop After This Track
  • Remove From Playlist
  • Service Actions *
  • Show Context
  • Show In Collection Browser / Copy To Collection (submenu)
  • Tags & Information...