As first noted by "Patently Apple" (http://www.patentlyapple.com), a new European patent filing (publication number WO2010126782) has emerged that describes a new system of "scrollable menus and toolbars" -- apparently for both Mac OS X and iOS
Some embodiments of the invention provide a method that defines several menu items having a particular order. The method provides a display area for displaying a portion of the menu items in the particular order. The method provides a selection window in the display area for indicating that a menu item is presently selectable.
The display area is also for receiving input to (i) scroll the menu items through the selection window in the particular order and (ii) select a particular menu item when the particular menu item is displayed in the selection window. In some embodiments, the display area is a linear display area, while in some embodiments it is a semi-circular display area or other shape. The inventors are Egan Schulz and Tom Langmacher.
Here's Apple's background and summary of the invention: "User interfaces of computer applications often provide numerous commands or user interface tools for a user to choose from. For instance, many applications include drop-down menus. Such menus often include lists of commands. There are standard commands such as opening a file, printing a document, saving a document, etc., as well as more application-specific commands such as inserting a page break (for a word-processing application), formatting cells (for a spreadsheet application), etc.
"Many applications also include toolbars or tool palettes. For instance, many computing applications have one or more rows of toolbars at the top of their user interface. The toolbars include various types of tools. Drawing applications have drawing tools, video editing applications have video-editing tools, etc. Some applications also have floating tool palettes. For instance, some video-editing applications include a floating trim tool palette that allows a user to select between various different trim tools for video-editing.
"Such toolbars, tool palettes and drop-down menus can take up valuable real estate in the graphical user interface. Furthermore, the number of items in such menus and toolbars is limited by screen space. For example, a user does not want a floating tool palette that takes up too much of the screen.
"As more options are added to a tool palette, the tool palette must get larger or the size of the options must get smaller. Just as the tool palettes can only increase in size to a certain point, the size of the options can only decrease to a certain point before they become indistinguishable. As such, a need exists for ways to display toolbars or menus that do not take up significant amounts of screen space while keeping the options at a visually recognizable size.
"Some embodiments of the invention provide a novel method for presenting a menu in a graphical user interface. The menu includes several selectable menu items that are assigned a particular order for scrolling through a selection window based on user input. In some embodiments, each of the menu items is associated with a command. When a menu item is in the selection window, a user can select the menu item in order to perform the command associated with the menu item.
The menu items may be displayed as standard text items in some embodiments (e.g., File, Save, Print, etc.) or may be displayed as icons (e.g., icons representing various tools, such as drawing tools, video editing tools, etc.). The menu items are ordered within the menu (e.g., a first menu item is assigned to be one menu item left of a second menu item). Different embodiments use different techniques to determine this order. For instance, in some embodiments, the order can be defined by a user, by a random process, and/or by a developer of the program or operating system that uses the menu. In some embodiments, the order can also change based on use statistics, favoring menu items that are more regularly selected.
"The selection window is an indicator (e.g., a highlight, box, etc.) that indicates that a particular menu item can be presently selected. In some embodiments, the selection window is static or nearly static as the menu items scroll through. In the menu, the order of the menu items is the order in which they scroll through the selection window in response to user input. However, when the menu is initially presented, the menu item that is initially displayed in the selection window need not be the first menu item in the order (i.e., the leftmost, topmost, etc.). As the menu items can scroll in two directions (e.g., left and right, up and down), some embodiments initially display the menu item in the middle of the order in the selection window.
"The nature of the scrolling can be in two different forms in some embodiments, depending on how the items are ordered. In some cases, the menu items cannot scroll past the first and last items in the order. In other cases, however, the items can be continuously scrolled in a loop as the ordering of the menu items is only defined relative to one another, and there is only a first item to the extent that there is an item that is initially displayed in the selection window.
"In either of these cases, some embodiments scroll the menu items through the selection window in such a fashion that the number of menu items is not limited by space in the graphical user interface. For instance, some embodiments only display the menu item that is presently in the selection window and a portion of the menu items on either side of the selection window. Some embodiments display a small number of menu items on either side of the selection window, with the items that are not actually in the selection window displayed as partially faded. As the menu items scroll through the selection window, new items appear in the display as previously displayed items disappear.
"The shape of the displayed menu is also different in different embodiments. Some embodiments display the menu in linear form, with the menu items scrolling in one dimension (e.g., horizontally or vertically). Other embodiments display the menu as a semi-circle, with the menu items scrolling along the semicircle. Other non-linear configurations of menu items are also possible.
"The menu also might be presented differently in different embodiments in that some embodiments display the menu constantly at a set location, whereas other embodiments require user input to invoke the display of the menu. For example, the menu might be a toolbar in a media-editing application that occupies a particular location in the user interface of the application, or a menu in an operating system that is invoked by a keystroke.
"Different embodiments provide different schemes for navigating through the menu items. In some embodiments, users can click over the displayed items on either side of the selection window in order to cause the next item in the menu order to move into the selection window.
"Alternatively or conjunctively, in some embodiments, users can scroll the menu items by using various forms of sliding or swiping input (e.g., dragging a mouse). In some cases, the menu items are displayed as moving in large, discernible steps, while in other cases the items are displayed as moving in small steps that make the movement appear smooth.
"When a selectable menu item is aligned in the selection window, a user can select the menu item in order to cause instructions associated with the selected menu item to be performed. In some embodiments, the instructions can activate a particular tool (e.g., if the menu is a group of video-editing tools), can cause a command (e.g., save a file, print a document, etc.) to be performed, or can open a submenu. Submenus are opened perpendicular to the previous menu in some embodiments. For instance, when the menu items in an initial menu scroll horizontally through the selection window, some embodiments open a submenu such that the menu items in the submenu scroll vertically through the selection window.
"Different embodiments enable users to select a menu item that is in the selection window in different ways. In some embodiments, a user clicks or double-clicks over the menu item in the selection window. In other embodiments, the user selects an item by simply releasing a mouse button while the menu item is scrolling through the selection window. For menu items that open submenus, some embodiments automatically open the submenu when the menu item enters the selection window."