The present invention relates to user interface techniques for computer processing systems and, in particular, techniques for navigating between sets of toolbar buttons on a display screen.
Display screens of electronic processing systems often include one or more toolbars that allow a user to initiate actions by activating toolbar buttons. Toolbar button activation can be via a pointing device, such as a mouse and a mouse click. Alternatively, touch screens allow button activation with the touch of a user's finger to the button.
The number of toolbar buttons that can be displayed simultaneously to a user is limited by the display screen space allocated to the toolbar and the size of a button. Screen “real estate” is particularly limited on some devices, such as smartphones. Devices with touch screens, in particular, must maintain a minimum button size which is dictated by a user's fingertip size. Effective ways are needed to present more toolbar buttons to a user than can be displayed at one time in the screen space allocated to toolbars.
In preferred embodiments of the invention, a method is provided for navigating a collection of toolbar items that are displayed on an electronic display screen. The toolbar items, such as buttons, are organized into an ordered set of toolbar pages. Each toolbar page contains a fixed number of toolbar items. One toolbar page from the set is displayed at a time in a fixed display area, e.g., a tile, on the screen. User input causes the currently displayed toolbar page to be replaced by another toolbar page in the ordered set. The user input, such as a continuous swipe gesture across the toolbar display tile, determines the direction of navigation through toolbar pages in the ordered set and the speed of the toolbar page navigation. A user input, such as a tap of the finger, can select the desired replacement toolbar page when it is displayed.
In other embodiments of the invention, the position of the currently displayed toolbar page within the ordered set of toolbar pages is shown on the toolbar tile. The direction of navigation of toolbar pages within the ordered set of pages may also be displayed on the toolbar tile.
In various embodiments, user gestures, such as swiping a finger across the toolbar display tile or moving a mouse pointer across the toolbar display tile, cause navigation through the ordered set of toolbar pages. Toolbar items can change with animated transitions during toolbar page navigation to show toolbar page replacement.
In another preferred embodiment of the invention, a virtual touchpad is provided as part of the toolbar display tile. Toolbar page navigation is accomplished in a continuous gesture on the virtual touch pad by moving the user's finger. The system recognizes small movements of the user's finger from side-to-side or up-and-down on the virtual touch pad. These finger movements cause the toolbar tile to preview each successive toolbar page, cycling forward or backward through the ordered set of toolbar pages depending on the direction of the user's finger movement. The user can then select a previewed page to replace the currently displayed toolbar page.
In embodiments of the invention, the system determines the number of toolbar items presented on each toolbar page in the ordered set of toolbar pages based on the size of the display area devoted to the toolbar tile in the particular implementation. In other embodiments of the invention, the system orders the toolbar items within a toolbar page so that toolbar items are presented in the order of frequency of use.
In another preferred embodiment of the invention, access to hierarchical submenus is provided via a user gesture. A toolbar page is displayed with a hierarchical toolbar item that includes a hierarchical visual indicator. To access additional items in the hierarchy, the user activates the hierarchical toolbar item. The system then replaces the existing toolbar page in the toolbar tile with a submenu toolbar page. The user can then activate the desired item in the submenu toolbar page. After the submenu item selection occurs, the original toolbar page reappears in the toolbar tile with the selected item from the submenu replacing the hierarchical toolbar item.
The features of embodiments will be more readily understood by reference to the following detailed description, taken with reference to the accompanying drawings, in which:
In various embodiments of the invention, a method is provided for navigating a collection of toolbar items that are displayed on an electronic display screen. The toolbar items, such as buttons, are organized into an ordered set of toolbar pages. Each toolbar page contains a fixed number of toolbar items. One toolbar page from the set is displayed at a time in a fixed display area, e.g., a tile, on the screen. User input causes the currently displayed toolbar page to be replaced by another toolbar page in the ordered set. The user input, such as a continuous swipe gesture across the toolbar display tile, determines the direction of navigation through pages in the ordered set and the speed of the page navigation. The toolbar display area shows the position of the currently displayed toolbar in the ordered set and animated transitions between toolbar items may be displayed to signal toolbar page replacements. A user input, such as a tap of the finger, can select the replacement toolbar page when it is displayed. This method of toolbar navigation allows a large number of toolbar items to be available to the user while avoiding the use of drop-down panels that can obscure other areas of the display screen. Further, this approach can avoid some of the difficulties of scrolling toolbars, in that it may be more difficult to appreciate visually the items scrolled into and out of the toolbar display area, than with toolbar items presented as a toolbar page.
In a preferred embodiment of the invention, as shown in
The display screen 210 shows the position of the currently displayed toolbar page within the ordered set—in the embodiment of
User input 310, 320, 330 to request a toolbar page replacement may take a variety of forms in various embodiments of the invention. For example,
The toolbar items 217 underneath the user's finger can change with an animated transition to show toolbar page replacement. Various animated transitions can be used to display new pages of toolbar items during a user's input gesture. For example, as shown in
In another preferred embodiment of the invention, a different animation of toolbar items 500 is used to show toolbar page replacement, as shown in
Note that these user gestures and animations are described for purposes of illustration, not for purposes of limiting the gestures and animations that may be used in various embodiments of the invention.
In another embodiment of the invention, a toolbar tile 615 with a virtual touch pad for page navigation is provided 600 on the display screen 210 of
In some embodiments of the invention, the system determines the number of toolbar items presented on each toolbar page in the ordered set of toolbar pages based on the size of the display area devoted to the toolbar tile in the particular implementation. For example, a page of related toolbar items, numbering “N” items, may be presented in the toolbar tile 115 on a display screen such as the screen 110 of
In another embodiment of the invention, the system orders the toolbar items within a toolbar page so that toolbar items are presented in the order of frequency of use. For example, the system may present toolbar items in a page so that the most frequently used toolbar item is presented in the left-most toolbar item position in the toolbar tile, the second most frequently used item is presented to the immediate right of the first toolbar item, and so forth, for the remaining items in the toolbar page. In various specific embodiments of the invention, toolbar items may be grouped into pages by toolbar item category with similar toolbar items grouped together. In other specific embodiments, within these toolbar item categories, the order of presentation of items in a toolbar page in the toolbar display tile can be set according to frequency of toolbar item use: toolbar items are presented from one end of the toolbar tile to the other end in order of decreasing frequency of use. In further embodiments, the system can collect information on a particular user's frequency of use for each toolbar item and use this information to determine the order of presentation of toolbar items within a displayed toolbar page for that user.
In another preferred embodiment of the invention, access to hierarchical submenus is provided via a user gesture, as shown in
Various aspects of the present invention may be embodied in many different forms, including, but in no way limited to, computer program logic for use with a processor (e.g., a microprocessor, microcontroller, digital signal processor, or general purpose computer), programmable logic for use with a programmable logic device (e.g., a Field Programmable Gate Array (FPGA) or other PLD), discrete components, integrated circuitry (e.g., an Application Specific Integrated Circuit (ASIC)), or any other means including any combination thereof. Computer program logic implementing some or all of the described functionality is typically implemented as a set of computer program instructions that is converted into a computer executable form, stored as such in a computer readable medium, and executed by a microprocessor under the control of an operating system. Hardware-based logic implementing some or all of the described functionality may be implemented using one or more appropriately configured FPGAs.
Computer program logic implementing all or part of the functionality previously described herein may be embodied in various forms, including, but in no way limited to, a source code form, a computer executable form, and various intermediate forms (e.g., forms generated by an assembler, compiler, linker, or locator). Source code may include a series of computer program instructions implemented in any of various programming languages (e.g., an object code, an assembly language, or a high-level language such as FORTRAN, C, C++, JAVA, or HTML) for use with various operating systems or operating environments. The source code may define and use various data structures and communication messages. The source code may be in a computer executable form (e.g., via an interpreter), or the source code may be converted (e.g., via a translator, assembler, or compiler) into a computer executable form.
The computer program may be fixed in any form (e.g., source code form, computer executable form, or an intermediate form) either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), a PC card (e.g., PCMCIA card), or other memory device. The computer program may be fixed in any form in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies. The computer program may be distributed in any form as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web).
Hardware logic (including programmable logic for use with a programmable logic device) implementing all or part of the functionality previously described herein may be designed using traditional manual methods, or may be designed, captured, simulated, or documented electronically using various tools, such as Computer Aided Design (CAD), a hardware description language (e.g., VHDL or AHDL), or a PLD programming language (e.g., PALASM, ABEL, or CUPL).
Programmable logic may be fixed either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), or other memory device. The programmable logic may be fixed in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies. The programmable logic may be distributed as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web). Of course, some embodiments of the invention may be implemented as a combination of both software (e.g., a computer program product) and hardware. Still other embodiments of the invention are implemented as entirely hardware, or entirely software.
The embodiments of the invention described above are intended to be merely exemplary: numerous variations and modifications will be apparent to those skilled in the art. For example, while the toolbar tiles have been shown in the figures oriented horizontally on display screens, toolbar tiles with other orientations, such as oriented vertically on the screen, may be employed in various embodiments of the invention, with the user gestures modified accordingly. Further, description of directions as “left,” “right,” “upward,” “downward,” etc. are for illustration only and are not meant to limit the scope of the invention. All such variations and modifications are intended to be within the scope of the present invention as defined in any appended claims.
This patent application claims priority to U.S. Provisional Patent Application No. 61/777,039, filed Mar. 12, 2013, the disclosure of which application is incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5748185 | Stephan et al. | May 1998 | A |
5943052 | Allen et al. | Aug 1999 | A |
6154194 | Singh | Nov 2000 | A |
6211856 | Choi et al. | Apr 2001 | B1 |
6757002 | Oross et al. | Jun 2004 | B1 |
6828992 | Freeman et al. | Dec 2004 | B1 |
6907365 | Salant et al. | Jun 2005 | B2 |
7138980 | Kao et al. | Nov 2006 | B2 |
7565625 | Mullins, II et al. | Jul 2009 | B2 |
7627826 | Pry | Dec 2009 | B2 |
7681142 | Jarrett et al. | Mar 2010 | B2 |
7730401 | Gillespie et al. | Jun 2010 | B2 |
7958455 | Doar | Jun 2011 | B2 |
8091041 | Karstens | Jan 2012 | B2 |
8091042 | Chen et al. | Jan 2012 | B2 |
8194099 | Ubillos et al. | Jun 2012 | B2 |
8225225 | Jetha et al. | Jul 2012 | B2 |
8261205 | Lee | Sep 2012 | B2 |
8276095 | Cutler et al. | Sep 2012 | B2 |
8314789 | Fitzmaurice et al. | Nov 2012 | B2 |
8601389 | Schulz | Dec 2013 | B2 |
20060136834 | Cao et al. | Jun 2006 | A1 |
20070013708 | Barcklay et al. | Jan 2007 | A1 |
20090150810 | Burroughs et al. | Jun 2009 | A1 |
20090265657 | Bamford et al. | Oct 2009 | A1 |
20100281374 | Schulz et al. | Nov 2010 | A1 |
20100281430 | Safar | Nov 2010 | A1 |
20100299614 | Hangas et al. | Nov 2010 | A1 |
20110041092 | Zhang | Feb 2011 | A1 |
20110145737 | Laugwitz et al. | Jun 2011 | A1 |
20120304111 | Queru | Nov 2012 | A1 |
20120311498 | Kluttz et al. | Dec 2012 | A1 |
20150177933 | Cueto | Jun 2015 | A1 |
Number | Date | Country |
---|---|---|
0 919 907 | Jun 1999 | EP |
10-2009-0111764 | Oct 2009 | KR |
10-2012-0023722 | Mar 2012 | KR |
WO 0146790 | Jun 2001 | WO |
WO 2005111854 | Nov 2005 | WO |
WO 2008021670 | Feb 2008 | WO |
WO 2010126782 | Nov 2010 | WO |
WO 2011100112 | Aug 2011 | WO |
Entry |
---|
International Searching Authority, International Search Report—International Application No. PCT/US2014/011805, dated May 13, 2014, together with the Written Opinion of the International Searching Authority, 10 pages. |
Korean Patent Office, Office Action pertaining to Appl. No. 1-02015-7025051, 6 pages, dated Mar. 29, 2016. |
Darae Law & IP Firm, English translation of Office Action pertaining to Appl. No. 1-02015-7025051, 9 pages, dated Mar. 29, 2016. |
Simin Baharlou, International Preliminary Report on Patentability, International application No. PCT/2014/01185. |
European Patent Office, Communication pursuant to Rules 161(1) and 162 EPC, Application No. 14704423.4, Oct. 20, 2015, 2 pages. |
Christoph Gyaja, Response to Communication pursuant to Rules 161(1) and 162 EPC, Application No. 14704423.4, Apr. 12, 2016, 12 pages. |
Number | Date | Country | |
---|---|---|---|
20140282151 A1 | Sep 2014 | US |
Number | Date | Country | |
---|---|---|---|
61777039 | Mar 2013 | US |