Source: https://patents.google.com/patent/US9933911B2/en
Timestamp: 2019-09-15 18:28:05
Document Index: 541547148

Matched Legal Cases: ['Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 2003', 'Application No. 10', 'Application No. 03022845', 'Application No. 03022845', 'application No. 03022845']

US9933911B2 - System and method for managing software applications in a graphical user interface - Google Patents
US9933911B2
US9933911B2 US13/069,015 US201113069015A US9933911B2 US 9933911 B2 US9933911 B2 US 9933911B2 US 201113069015 A US201113069015 A US 201113069015A US 9933911 B2 US9933911 B2 US 9933911B2
US13/069,015
US20110173556A1 (en
US20180074656A9 (en
2003-10-07 Priority to KR10-2003-0069662 priority
2003-10-07 Priority to KR20030069662A priority patent/KR100972722B1/en
2003-10-07 Priority to KR10-2003-69662 priority
2003-10-08 Priority to JP2003-350054 priority
2003-10-08 Priority to JP2003350054A priority patent/JP4541676B2/en
2011-03-22 Priority to US13/069,015 priority patent/US9933911B2/en
2011-03-22 Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
2011-07-14 Publication of US20110173556A1 publication Critical patent/US20110173556A1/en
2018-03-15 Publication of US20180074656A9 publication Critical patent/US20180074656A9/en
2018-04-03 Publication of US9933911B2 publication Critical patent/US9933911B2/en
This application claims the benefit of U.S. Provisional Application No. 60/417,066, entitled PROJECT ORGANIZATION USER INTERFACE, filed on Oct. 8, 2002, U.S. Provisional Application No. 60/450,588, entitled WINDOWS GROUP ORGANIZATION USER INTERFACE, filed on Feb. 26, 2003, U.S. Provisional Application No. 60/472,511, entitled SMARTCUTS AND THE CASE FOR PRESERVING WINDOW STATE, filed May 22, 2003, and is a continuation application of U.S. patent application Ser. No. 10/679,796 filed Oct. 6, 2003, now issued U.S. Pat. No. 7,913,183. This application also claims the priority of foreign applications Japan Application No. 2003-350054, filed Oct. 8, 2003, and Korean Application No. 10-2003-69662, filed Oct. 7, 2013. All prior applications are incorporated herein by reference in thier entirety.
Generally described, users can utilize computers for a variety of purposes. In a typical computing environment, a user can access a variety of software application programs (“applications” or “programs”) to address a specific task and/or fulfill a particular goal. For example, an accountant might make regular and extensive use of a word processing program, an e-mail program, a spreadsheet program, and a personal information manager. In a graphical operating system environment, users can instantiate multiple programs at the same time, such that each program is represented as one or more graphical windows on the display area. For example, a computer may instantiate a word processing program and a spreadsheet program at the same time. Additionally, each program can in turn generate a graphical window for each file (e.g., document or spreadsheet) opened by a user.
Some operating environments allow users to customize program layout that keeps a program at a particular location when it is instantiated. Such customization allows users to reduce constant arrangement of program windows. However, this approach does not provide advanced program location management that would allow programs to be grouped and managed. Other operating environments allow windows to be organized into “virtual desktops” that can be stored, recalled or otherwise manipulated. However, the virtual desktop approach requires windows to be strictly partitioned so that only a single pre-defined set of graphical window layouts is readily accessible at one time. Because the number of uses for a computer by a single user may change or because multiple users may be associated with a single computer, the single set virtual desktop approach can become inefficient.
In accordance with another aspect of the present invention, a method for managing a plurality of software applications is provided. The method may be implemented in a computer system including a display and a plurality of software applications. The display includes a desktop for displaying graphical windows and taskbar for controlling the software applications. The plurality of software applications are represented as graphical windows on a desktop portion of the display and as control tiles on a taskbar portion of the display when instantiated on the computer system. In accordance with the method, an operating environment obtains an indication to group a first control tile corresponding to a first software application and a second control tile corresponding to a second software application. The operating environment groups the first and second control tiles on the taskbar portion of the display. Additionally, the operating environment displays the first and second control tiles as a group within the taskbar portion of the display.
In accordance with another aspect of the present invention, control tile groups 126 may be organized into a specific type of group, referred to as a project, that corresponds to organization criteria defined by the operating environment and/or computer users. Generally described, a project group includes one or more control tiles corresponding to instantiated software programs organized according to some organization criteria. A project grouping is a group, such as group 126 (FIGS. 2A-5) and accordingly maintains the functionality described above for groups. As an illustrative example, a project organized as an “accounting” project could include all the programs typically used to accomplish accounting tasks. Accordingly, by utilizing an accounting project, a user can organize and control necessary software applications without having to individually instantiate and manipulate each software application.
The taskbar 114 can include any number of project groups at one time. Further, in an illustrative embodiment of the present invention, the taskbar 114 always includes a “desktop” project group in which control tiles from all the instantiated programs must reside. A particular control tile for a software application may reside in more than one project group without requiring multiple instantiations of the software application. For example, a word processing software application may belong to a desktop project group, a business project group, and a correspondence project group. By associating particular control tiles to a project, users are able to access all the graphic windows associated with customizable functions. In an illustrative embodiment of the present invention, project groups may be saved for subsequent access. Further, project templates may be created that include pre-defined projects, such as a generic word processing project group, that can be modified by individual users. Further, project groups may be generated by utilizing search capabilities with a network or with the operating environment for all software applications, files or data that satisfy search criteria.
1. A method for managing at least two software applications in a computer system including a display, the method comprising:
organizing a first graphic control corresponding to a first software application of the at least two software applications, the first software application being represented as a first graphical window in a first portion of the display;
organizing a second graphic control corresponding to a second software application of the at least two software applications, the second software application being represented as a second graphic window in the first portion of the display;
associating the first graphic control and second graphic control with a group graphic control;
displaying the group graphic control within a second portion of the display, the group graphic control representing the first and second graphic controls in a collapsed manner;
receiving a selection of the group graphic control;
providing, on the first portion of the display, a preview of the first graphical window and the second graphical window, the preview comprising respective snapshots of the first graphical window and the second graphical window at a particular time; and
restoring, based at least in part on receiving a selection corresponding to the group graphic control, at least one of the first graphical window or the second graphical window on the first portion of the display.
2. The method as recited in claim 1, wherein organizing the first graphic control and organizing the second graphic control includes receiving, via a user interface, an input representing at least a partial graphically drawn shape around the first and second graphic controls.
3. The method as recited in claim 1, wherein organizing the first graphic control and organizing the second graphic control includes receiving, via a user interface, an input to cause encompassing, at least partially, the first and second graphic controls by a geometric selection tool.
receiving a single user action to act upon the first and second graphic controls in the group; and
performing, upon the receiving, the single user action to the at least two software applications substantially simultaneously.
arranging the first graphic window and the second graphic window in a predefined layout based on the single user action, the predefined layout including one of cascading, tiling, single window centralizing, or equal division of open windows.
generating a record of a layout of the first graphical window and the second graphical window;
storing the record of the layout of the first graphical window and the second graphical window;
generating a preview of the record of the layout of the first graphical window and the second graphical window in the first portion of the display; and
specifying a location for restoration of the first graphical window and the second graphical window.
7. A method for managing a plurality of software applications executed on a computer system including a display, wherein the plurality of software applications are represented as graphical windows on a desktop portion of the display and as control tiles on a taskbar portion of the display, the method comprising:
grouping a first control tile corresponding to a first software application of the plurality of software applications and a second control tile corresponding to a second software application of the plurality of software applications, the first control tile and the second control tile being associated with first and second graphical windows, respectively;
associating the first control tile and the second control tile with a control tile group;
displaying the first and second control tiles as the control tile group within the taskbar portion of the display;
receiving an indication of a selection of the control tile group;
providing, on the desktop portion of the display, a preview of the first and second graphical windows, the preview comprising respective snapshots of the first and second graphical windows at a particular time; and
restoring, based at least in part on receiving a selection corresponding to the control tile group, at least one of the first or second graphical windows.
8. The method as recited in claim 7, further comprising collapsing the control tile group based on available display space on the taskbar or based on available space on the desktop portion of the display.
9. The method as recited in claim 7, further comprising collapsing the control tile group based on a frequency of access of the first or second control tiles or based on a user defined collapsing priority.
10. The method as recited in claim 9, wherein the collapsing comprises collapsing the control tile group when the frequency of access of the control tile group is below a preset threshold or when the control tile group has been accessed fewer times than other control tile groups.
generating a record of a layout of the first and second graphical windows;
storing the record of the layout of the first and second graphical windows;
generating a preview of the first and second graphical in the desktop portion of the display; and
manipulating the preview to specify dimensions of the first and second graphical windows.
12. The method as recited in claim 7, further comprising
storing the record of the layout of the first and second graphical windows; and
generating a preview of the first and second graphical windows in the desktop portion of the display, wherein displaying the preview of the first and second graphical windows in the desktop portion of the display includes displaying one of a reduced size representation, a full size representation, or a semi-transparent representation of the first and second graphical windows on the desktop portion of the display.
13. A tangible computer-readable storage medium having computer-executable instructions stored thereon for performing the method recited in Claim 7.
14. A computer system for managing a plurality of software applications, the system comprising:
displaying, based at least in part on two or more software applications being instantiated on the computer system, the two or more software applications as respective graphical windows;
displaying, based at least in part on two or more software applications being instantiated on the computer system, two or more control tiles corresponding to the two or more respective software applications, wherein at least two control tiles of the two or more control tiles correspond to a single software application of the two or more software applications;
receiving an indication to associate the two or more control tiles as a group control tile corresponding to the single software application;
displaying, based at least in part on receiving the indication, the group control tile, wherein the group control tile represents the two or more control tiles as a group; and
executing a single user action on a subset of the group, wherein the single user action comprises toggling a first group of software applications with a second group of software applications between a minimized state and a restored state, the first group of software applications being in the minimized state when the second group of software applications are in the restored state, and the first group of software applications being in the restored state when the second group of software applications are in the minimized state.
15. The system as recited in claim 14, the acts further comprising forming a software application group comprising a plurality of software applications by creating the group control tile comprising a plurality of control tiles of the two or more control tiles, each of the plurality of control tiles in the control tile group corresponding to a respective one of the plurality of software applications in the software application group.
16. The system as recited in claim 14, the acts further comprising executing another single user action upon another subset of the group, the another single user action being performed to each of one or more software applications in a corresponding software application group substantially simultaneously based on the subset of the group.
17. The system as recited in claim 14, wherein displaying the two or more control tiles as the group includes displaying the two or more control tiles as a project for toggling the two or more software applications corresponding to the two or more control tiles between the minimized state and the restored state.
18. The system as recited in claim 14, the acts further comprising storing state information corresponding to the two or more software applications and displaying, restoring, and previewing a time-dependent representation of the project, wherein the state information includes at least one of user information, version information, and contextual information.
19. The system as recited in claim 14, the acts further comprising:
obtaining an indication to collapse the two or more control tiles into the group control tile;
displaying the group solely as a group control tile;
obtaining an indication to remove two or more control tiles from the group; and
displaying the two or more control tiles removed from the group as separate control tiles.
20. The method as recited in claim 1, wherein restoring at least one of the first graphical window or the secon dgraphical window includes:
restoring the first graphical window to a first predetermined location within the first portion of the display; and
restoring the second graphical window to a second predetermined location within the first portion of the display.
US13/069,015 2002-10-08 2011-03-22 System and method for managing software applications in a graphical user interface Active US9933911B2 (en)
KR10-2003-0069662 2003-10-07
KR20030069662A KR100972722B1 (en) 2002-10-08 2003-10-07 System and method for managing software applications in a graphical user interface
KR10-2003-69662 2003-10-07
JP2003350054A JP4541676B2 (en) 2002-10-08 2003-10-08 System and method for managing software applications in a graphical user interface
JP2003-350054 2003-10-08
US10/679,796 Continuation US7913183B2 (en) 2002-10-08 2003-10-06 System and method for managing software applications in a graphical user interface
US20110173556A1 US20110173556A1 (en) 2011-07-14
US20180074656A9 US20180074656A9 (en) 2018-03-15
US9933911B2 true US9933911B2 (en) 2018-04-03
ID=44259484
US13/069,015 Active US9933911B2 (en) 2002-10-08 2011-03-22 System and method for managing software applications in a graphical user interface
US (1) US9933911B2 (en)
US20150346965A1 (en) * 2014-05-29 2015-12-03 Intergraph Corporation Apparatus and method of displaying objects in configurable window groups
US20160132192A1 (en) * 2014-11-12 2016-05-12 Here Global B.V. Active Menu with Surfacing Notifications
JPH08314679A (en) 1995-05-18 1996-11-29 Hitachi Ltd Application management control method
JPH08335106A (en) 1995-06-06 1996-12-17 Okuma Mach Works Ltd Numerical controller having multiwindow display function
US20060115822A1 (en) 2004-11-30 2006-06-01 Webb Peter G Systems and methods for probe design
US20060277499A1 (en) 2005-06-07 2006-12-07 Britt Clinton D Enhanced speed interface method and system
US20070016607A1 (en) 2004-11-23 2007-01-18 Yu Jay J Using an Instantiated Model to Generate an Application-Specific Document
2011-03-22 US US13/069,015 patent/US9933911B2/en active Active
"Sorting algorithm", retrieved on Jul. 29, 2008 at <<http://en.wikipedia.org/wiki/Sorting_algorithm>>, 5 pages.
Angelo, "The Linux (Multiple) Virtual Desktops Unleashed-Part I: Overview", p. 1, retrieved on Jul. 19, 2006 at <<http://www.mozillaquest.com/Linux4Windows/Linux4Windows08/Linux4Windows_04_08_Story-01.html>>, MozillaQuest.com, May 7, 2004, 20 pages.
Angelo, "The Linux (Multiple) Virtual Desktops Unleashed-Part I: Overview", p. 2, retrieved on Jul. 19, 006 at <<http://www.mozillaquest.com/Linux4Windows/Linux4Windows08/Linux4Windows_04_08_Story-01.html>>, MozillaQuest.com, May 7, 2004, 20 pages.
Angelo, "The Linux (Multiple) Virtual Desktops Unleashed—Part I: Overview", p. 1, retrieved on Jul. 19, 2006 at <<http://www.mozillaquest.com/Linux4Windows/Linux4Windows08/Linux4Windows_04_08_Story-01.html>>, MozillaQuest.com, May 7, 2004, 20 pages.
Angelo, "The Linux (Multiple) Virtual Desktops Unleashed—Part I: Overview", p. 2, retrieved on Jul. 19, 006 at <<http://www.mozillaquest.com/Linux4Windows/Linux4Windows08/Linux4Windows_04_08_Story-01.html>>, MozillaQuest.com, May 7, 2004, 20 pages.
Ceri, et al., "Web Modeling Language (WebML): a modeling language for designing Web sites", Computer Networks, vol. 33, Issues 1-6, Jun. 2000, pp. 137-157.
Czerwinski, et al., "A Diary Study of Task Switching and Interruptions", CHI 2004, Vienna Austria, ACM, vol. 6, No. 1, Apr. 24-29, 2004, pp. 175-182.
Dances With Crows, "Re: How Do I Configure X to be One Screen/One Window (like Window$)-with Window$ Look and Feel?", retrieved on Aug. 21, 2006 at <<http://groups.google.de/group/comp.os.linux.x/msg/4a405e4fa65bc94b?dmode=source&h1=fr&output=gplain>>, Online Newsgroup: comp.os.linux.x, Sep. 23, 2002, 3 pages.
Dances With Crows, "Re: How Do I Configure X to be One Screen/One Window (like Window$)—with Window$ Look and Feel?", retrieved on Aug. 21, 2006 at <<http://groups.google.de/group/comp.os.linux.x/msg/4a405e4fa65bc94b?dmode=source&h1=fr&output=gplain>>, Online Newsgroup: comp.os.linux.x, Sep. 23, 2002, 3 pages.
EP Office Action dated Jun. 16, 2016 for European Patent Application No. 03022845.6, a counterpart foreign application of U.S. Pat. No. 7,913,183, 5 pages.
EP Office Action issued in European Application No. 03022845.6, dated Sep. 22, 2015, 5 pages.
European Office Action dated Mar. 27, 2017 for European patent application No. 03022845.6, a counterpart foreign application of U.S. Pat. No. 7,913,183, 9 pages.
European Office Action in Application 03022845.6, dated Oct. 1, 2007, 4 pages.
European Search Report in Application 03022845.6, dated Aug. 4, 2006, 4 pages.
Hiner, "DragThing v4.3", retrieved on Apr. 6, 2007 at <<http://www.applelinks.com/reviews/ dragthing-v4.shtml>>, Jun. 14, 2002, 4 pages.
Japanese Notice of Allowance in Application 2003-350054, dated Jun. 18, 2010, 6 pages.
Japanese Office Action in Application 2003-350054, dated Aug. 26, 2008, 4 pages.
Japanese Office Action in Application 2003-350054, dated Feb. 27, 2009, 2 pages.
Keme, et al., "A Recombinant Information Space", University of Teeside (UK), School of Computing and Mathematics, Virtual Environment Group, Sep. 2003, pp. 1-10.
Nation, "Fvwm Version 1.21c X-11 Window Manager is Available", retrieved on Jul. 20, 2006 at <<http://groups.google.de/group/comp.windows.x.i386unix/msg/7855f990bc68302?dmode=source&h1=fr&output=gplain>>, Online Newsgroup: comp.windows.x.i386unix, Mar. 10, 1994, 2 pages.
Prescod, "Addressing the Enterprise: Why the Web needs Groves", retrieved on Dec. 12, 2008 at <<http://xml.coverpages.org/prescod/Groves199606.html>>, ISOGEN Consulting Engineer, Jul. 1999, pp. 1-16.
Thomson, "DragThing v4.3", retrieved on Apr. 6, 2007 at <<http://web.archive.org/web/ 20020524155927/http://www.dragthing.com>>, Apr. 19, 2002 (DT1), 17 pages.
Thomson, DragThing version history v4.3 and below, retrieved on Apr. 6, 2007 at <<http://web.archive.org/web/20020409150945/www.dragthing.com/english/history.html>>, Apr. 9, 2002, pp. 4-20.
U.S. Appl. No. 10/679,796, Advisory Action dated Apr. 14, 2008, 3 pages.
U.S. Appl. No. 10/679,796, Amendment and Response dated Apr. 26, 2010, 33 pages.
U.S. Appl. No. 10/679,796, Amendment and Response dated Jun. 23, 2009, 29 pages.
U.S. Appl. No. 10/679,796, Amendment and Response dated Mar. 25, 2008, 27 pages.
U.S. Appl. No. 10/679,796, Amendment and Response dated Nov. 4, 2009, 30 pages.
U.S. Appl. No. 10/679,796, Amendment and Response dated Oct. 29, 2008, 29 pages.
U.S. Appl. No. 10/679,796, Amendment and Response dated Oct. 8, 2007, 21 pages.
U.S. Appl. No. 10/679,796, Notice of Allowance dated Nov. 15, 2010, 9 pages.
U.S. Appl. No. 10/679,796, Office Action dated Apr. 6, 2007, 21 pages.
U.S. Appl. No. 10/679,796, Office Action dated Apr. 6, 2007, Dec. 27, 2007, 21 pages.
U.S. Appl. No. 10/679,796, Office Action dated Jan. 23, 2009, 25 pages.
U.S. Appl. No. 10/679,796, Office Action dated Jan. 25, 2010, 26 pages.
U.S. Appl. No. 10/679,796, Office Action dated Jul. 29, 2008, 23 pages.
U.S. Appl. No. 10/679,796, Office Action dated Sep. 3, 2009, 24 pages.
US20110173556A1 (en) 2011-07-14
US20180074656A9 (en) 2018-03-15