Clean Up View Menus


    Document In Development

    Please use the discussion wiki page for feedback about this document.

    Contents

    Introduction

    The View menu is getting more and more complex as it is asked to support Feathers switching, View switching, and display pane content selection. Let's take a pass at simplifying the menu with specific use cases we want to - and don't want to - support in mind.

    Purpose of This Document

    This document captures a proposal for View menu simplification that is the outcome of a few conversations between Daniel and Keisuke.

    Goals

    Simplify the View menu.

    Wireframes

    Current and proposed view menus

    view-menu.png

    Content for empty display panes

    display-pane-content.png

    Stories

    Feather Switching

    ID Cost Title Story
    [1] 1

    rm 3rd level menu for feather switching from view menu

    rm 3rd level menu for feather switching from "Switch feather" button

    rm the label that shows the selected feather

    The 3rd level menu is the one that shows the available layout(s) for the selected feather.

    [2] 3

    Add ability for feather developers to define a default layout + observe it during feather switching

    Default layouts for a given feather is used for when feather switching occurs.

    Given the following

    • feather A
      • layout A (default)
      • layout B
    • feather B
      • layout A (default)
      • layout B
    • feather C
      • layout X
      • layout Y (default)
    Case 1 (default layout is overridden with user selection)

    1. Current feather+layout = feather A + layout B
    2. Feather selected from the view menu = feather B
    3. New feather+layout = feather A + layout B
    Case 2 (default layout is used when the new feather does not have the user selected layout)

    1. Current feather+layout = feather A + layout A
    2. Feather selected from the view menu = feather C
    3. New feather+layout = feather C + layout Y


    If no default is defined then the first layout in alphabetical order is set as default.

    Eng Note:

    • Cost 3 since this requires manager, unit test, and documentation changes
    [3] 1 Add hotkeys for switching layouts within feathers

    Hotkey combination pending

    Remember that a feather can have n layouts. This means that having keys for previous/next layout is more scalable than command+1, command+2, command+3, for example.

    Eng Note:

    • This will require moving code out of the feathers toggle binding and into some shared location. The feathers manager perhaps?

    View Switching

    ID Cost Title Story
    RM: Change Of Spec
    Update label for View switching

    The following should be the disabled menu item that acts as the label for the section of the menu:

    View ($media-list-display-label): $selected-view-display-label
    
    Eg: View (Keisuke Omi's Playlist): List
    

    $media-list-display-label should be cropped at 32 characters.

    [4] 1 List available Views a level deeper + reuse in "Switch View" button

    All available Views for the selected media list should be listed in a menu that becomes visible when the "Switch View" menu item is selected.

    This new menu should be reused for the "Switch View" button found to the right of the search box.

    Display Pane Content Selection

    ID Cost Title Story
    [5] 1 Hide menu items when no add-ons that use display panes are installed

    If user has not installed any add-ons that take advantage of display panes then the 3 menu items in the view menu associated with display panes should be hidden. As soon as the user installs an add-on that displays something in a display pane then the menu items should appear.

    Note: This unclutters the menu but decreases discoverability of display panes. It's not that big of a deal because we can address this elsewhere - and users are going to say "I want to fill this rectangle with stuff" anyway.

    Note: Can we see how this behavior looks like before making a decision on it? Prototype?

    NEW [6]
    Display static content for empty display panes

    If the user choses to show a display pane with no extension assigned to it then display content that:

    • Tells user that extensions can be selected from the drop down menu in the display pane title bar
    • Tells user that extensions can be found on the add-on site

    If this functionality is implemented as an extension then it should not appear in the drop down with the other extensions.

    Engineering Notes

    Production Notes

    • Asset list
      • None
    • Visual design
      • None

    Additional Engineering Notes

    Engineering Tasks

    Known Risks

    Looks like we are breaking convention a little by showing/hiding sections of the menu depending on context. It looks the the standard thing to do is to enable/disable items. Eh.

    Interdependencies

    Future

    References

    Comments

    Komi 17:09, 25 February 2008 (PST) Seeded document

    Komi 11:12, 18 March 2008 (PDT) Updated doc with comments from Rob, Chris, and Daniel from a while ago

    Komi 13:54, 18 March 2008 (PDT) Reviewed doc with John and Nick


    Tag page
    You must login to post a comment.
    Powered by MindTouch Core
    Real Time Web Analytics