US20100017748A1 - Display container cell modification in a cell based eui - Google Patents

Display container cell modification in a cell based eui Download PDF

Info

Publication number
US20100017748A1
US20100017748A1 US12/469,551 US46955109A US2010017748A1 US 20100017748 A1 US20100017748 A1 US 20100017748A1 US 46955109 A US46955109 A US 46955109A US 2010017748 A1 US2010017748 A1 US 2010017748A1
Authority
US
United States
Prior art keywords
display
cell
cells
container
windows
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/469,551
Inventor
Steve D. Taylor
Axel M. Koenig
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BROADBAND GRAPHICS - A WASHINGTON LLC LLC
Original Assignee
Broadband Graphics LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=27569592&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US20100017748(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Broadband Graphics LLC filed Critical Broadband Graphics LLC
Priority to US12/469,551 priority Critical patent/US20100017748A1/en
Publication of US20100017748A1 publication Critical patent/US20100017748A1/en
Assigned to BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY reassignment BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY MERGER (SEE DOCUMENT FOR DETAILS). Assignors: BROADBAND GRAPHICS, LLC - A CALIFORNIA LIMITED LIABILITY COMPANY, BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY
Assigned to BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY reassignment BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY MERGER (SEE DOCUMENT FOR DETAILS). Assignors: BROADBAND GRAPHICS, LLC - A CALIFORNIA LIMITED LIABILITY COMPANY, BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/027Arrangements and methods specific for the display of internet documents

Definitions

  • the present invention relates to the field of data processing. More specifically, the present invention relates to end user interfaces.
  • an end user of a properly equipped television set or a computing device may receive and consume a variety of multi-media contents or programming via a number of different delivery channels.
  • the end user may e.g. receive and consume television programming delivered through conventional network broadcast, cable or satellite.
  • the end user may also receive and consume various multi-media contents or programming delivered from various recorded media players, such as VCR tape players, CDROM or DVD players.
  • the end user may also receive and consume various streaming multi-media contents or programming delivered through the Internet or other high-speed digital channel.
  • EUI end user interfaces
  • the end user interfaces (EUI) employed in these multi-media content or programming deliveries are typically limited in their functionalities and ease-of-use. In particular, they are typically fixed or inflexible, i.e. non-responsive or lack interactivity with the user.
  • EUI end user interfaces
  • In the case of television programming typically only a single view of a program (chosen by a director) is provided to the end user (even though multiple views are available from the multitude of cameras employed to cover an event or performance). Even at times, when multiple views of a program are provided, the user is unable to change the size, and/or placements of the different display windows within which the views are displayed.
  • the different windows are usually not easily interchangeable.
  • associated controls such as “minimize”, “maximize”, or task bars, are typically not relocatable from one window associated with one application to another window associated with another application.
  • different views of the same program delivered through multiple windows are generally not interchangeable, whereas different programs delivered through different windows, such as a primary view and a “picture-in-picture” (PIP) view, are swappable, provided the end user separately changes the channels associated with the two windows.
  • PIP picture-in-picture
  • control facilities associated with windows of an application such as “minimize”, “maximize” or task bars, are typically fixed with the corresponding windows and/or the application, and may not be moved and be associated with another window and/or another application.
  • FIG. 1 illustrates an end user view of an EUI implemented in accordance with the present invention
  • FIGS. 2-3 illustrates the anatomy of a cell based hierarchy for implementing the EUI of FIG. 1 , including the universal region cell, region cells, sub-region cells and zone cells, in accordance with one embodiment;
  • FIGS. 4-5 illustrate selected aspects of the composition of a “container” cell, including a region cell and a zone cell, in accordance with one embodiment
  • FIG. 6 illustrates selected aspects of the composition of an “action” cell, in particular, an icon cell, in accordance with one embodiment
  • FIG. 7 enumerates selected methods associated with the various implementation cells to support the practice of the present invention, in accordance with one embodiment
  • FIG. 8 illustrates certain novel end user interface interactions supported under the present invention, by virtual of the architectural design of the hierarchical cell based EUI, in accordance with one embodiment
  • FIG. 9 illustrates the operational flow of the relevant aspects of an implementor of the present invention, such as an application, a cell manager or a window manager, in support of the novel end user interactions of FIG. 8 , in accordance with one embodiment;
  • FIG. 10 illustrates the notion of a current view, and the generation of a next view under the present invention, in accordance with one embodiment
  • FIGS. 11-12 illustrate the operational flow of the relevant aspects of an implementor of the present invention, such as an application, a cell manager or a window manager, in support of automatic relative re-sizing or re-placement of region cells or zone cells, in accordance with one embodiment;
  • FIGS. 13-14 further illustrate automatic relative re-sizing or re-placement of region cells and zone cells, in accordance with one embodiment
  • FIG. 15 illustrates the operational flow of the relevant aspects of an implementor of the present invention, such as an application, a cell manager or a window manager, in support of an optimized algorithm for efficiently modifying contiguous region or zone cells, in accordance with one embodiment;
  • FIG. 16 further illustrates the optimized efficient modification of region or zone cells of FIG. 15 , in accordance with one embodiment
  • FIGS. 17 a - 17 b illustrate two embodiments for practicing the present invention
  • FIG. 18 illustrate an exemplary computing system or device suitable for practicing the present invention.
  • FIG. 19 illustrates an exemplary network environment suitable for practicing the present invention.
  • the present invention includes a hierarchical cell based end user interface, having hierarchically organized display cells (hereinafter, simply cells).
  • the present invention also includes processes for the end users to interact with the interface, having particular application to the delivery of multi-media programming and/or content, as well as processes for automatically re-sizing and/or repositioning cells of the EUI.
  • display cell refers to the logical elements or items employed to collectively implement the various aspects of the EUI.
  • the logical elements/items or cells are typed and include attributes defining them, including their manifestation and behaviors.
  • cells may be “nested” within one another.
  • cells may be hierarchically related to each other.
  • computer system includes general purpose as well as special purpose data processing machines, systems, and the like, that are standalone, adjunct or embedded.
  • Section headings are merely employed to improve readability, and they are not to be construed to restrict or narrow the present invention.
  • FIG. 1 illustrates an external end user view of an exemplary end user interface 102 , implemented in accordance with one embodiment of the present invention.
  • exemplary end user interface (EUI) 102 from the end user's perspective, includes multiple display windows 104 a - 104 k, control facilities 106 a - 106 b and icons 108 a - 108 j.
  • EUI 102 may be employed to facilitate delivery of multi-media contents or programming for an end user.
  • An example of such content/programming includes, but are not limited to, presentation of one or more performance or live events, such as sporting events, where the multiple windows are employed to present different views of each performance or event to the end user.
  • control facilities 106 a - 106 b and a handful of icons 108 a - 108 j are illustrated with windows 104 a - 104 k.
  • the present invention may be practiced with more or less of these elements.
  • EUI 102 is implemented internally via a hierarchy of display cells (or cells for short).
  • the cells are typed and nested. Further, they have attributes, and certain attributes may be inherited in one direction, while others in the other direction, i.e. from a higher level cell or from a lower level cell.
  • the cells are implemented as data objects with associated methods to facilitate manipulation of their data.
  • one of the benefits is that the views or windows 104 a - 104 k are readily controllable by the end user.
  • An end user may select any one of windows 104 a - 104 k, express a desired modification or change to the size, placement, and/or other related aspects of the windows (such as sound).
  • the implementation logic of the present invention e.g. a cell manager, or alternatively, a window manager or an application itself (not shown), will resize, re-position or otherwise modify the selected windows, as well as all other impacted elements (cells) of EUI 102 accordingly and automatically.
  • Resizing may be expansion of a selected element or cell of EUI 102 , or contraction of a selected element or cell of EUI 102 .
  • Repositioning of a cell may be within the existing immediately higher-level cell or to another cell of EUI 102 .
  • control facilities 106 a - 106 b are provided for the various windows 104 * to facilitate a user in resizing, re-positioning or otherwise modifying the various aspects of the windows 104 *.
  • each window 104 * may be automatically scaled, preserving “full” visibility of the contents. That is, the contents of the various windows 104 * remain in full view, scaled, but not truncated or otherwise eclipsed. However, in alternate embodiments, one or more windows 104 * may have their contents truncated or eclipsed instead.
  • one or more of “windows” 104 a - 104 k may be employed to present a “pool” of icons, each corresponding to an additional displayable or launch-able cell having contents, and/or action that may be performed on the content or the attributes of an associated cell.
  • the former is referred to as an “image icon”, and the cell implementing the “image icon” is an image-icon cell, whereas the latter is referred to as a “button icon”, and the cell implementing the “button-icon” is a button-icon cell.
  • asterisk at the end of a reference number denotes a “wild card”, representing any of the trailing suffixes of the reference numbers employed in a figure.
  • 104 * stands for 104 a, 104 b or any one of the other 104 references of FIG. 1 .
  • FIGS. 2-3 illustrate the relevant aspects of the internal hierarchical cell based implementation of EUI 102 to provide the desired improved features and behaviors, in accordance with one embodiment.
  • end user interface 102 is cell based, and the constituting cells are nested ( FIG. 2 ), and the data objects implementing the cells are hierarchically organized ( FIG. 3 ).
  • cells are typed, and have attributes defining their manifestation and behaviors.
  • cells may be “nested” within each other.
  • cells may be hierarchically related to each other. The attributes may be inherited in either direction, from the higher level cells or from the lower level cells (organizationally speaking).
  • each EUI 102 is comprised of a number of nested “container” cells and a number “action” cells.
  • the “outer most” (from a nesting perspective) or the highest-level (from a hierarchy perspective) “container” cell that is the cell corresponding to the totality of display space available, within which all other cells are nested, is referred to as the universal or root region cell 202 .
  • Nested within universal region 202 may be one or more nested “container” cells.
  • the “container” cells all have visual manifestations that are rectangular in shape, and share borders. These “container” cells are referred to as regions cells 204 a - 204 c.
  • Selected one or ones of the region “container” cells may further include one or more nested “container” cells.
  • these nested “container” cells except for ones disposed at the “inner most” nesting or “lowest” level (counting only “container” cells), are referred to as sub-region “container” cells 205 a - 205 b.
  • the “container” cells disposed at the “inner most” nesting or “lowest” level (counting only “container” cells) are referred to as zone “container” cells 206 a - 206 k.
  • “Action” cells such as those implementing control facilities 208 a - 208 b, and icons 210 a - 210 j, whether they are representing other displayable or launch-able cells or merely representing actions to be performed, i.e. image icons or button icons, may be nested within (visually speaking) or descend from (organizationally speaking)) any of the “container” cells, i.e.
  • the universal region cell 202 such as control facilities cells 208 a - 208 b and icon cells 210 a - 210 d, region and sub-region cells 204 a - 204 c and 205 a - 205 b, none shown, or zone “container” cells, such as icon cells 210 e - 210 j.
  • control facilities may include facilities for facilitating minimizing or maximizing an “action” cell, and an icon “action” cell may be an image or a button icon “action” cell.
  • an icon “action” cell may be an image or a button icon “action” cell.
  • the “container” cell within which another “container” or “action” cell is nested or from which the other “container” or “action” cell is descended, is also referred to as a “host” cell.
  • the data such as attribute data (described more fully below), associated with each cell, 202 and 204 *- 210 *, whether “container” or “action”, are organized and implemented as an hierarchy of data objects 302 and 304 *- 306 *, with data object 302 corresponding to universal region cell 202 being the root object of the hierarchy, data objects 304 * corresponding to region cells 204 * being descendant data objects of root object 302 , data objects 305 * corresponding to sub-region cells 205 * being descendant data objects of the data objects 304 *- 305 * of their “host” region/sub-region cells 204 */ 205 *, and data objects 306 * corresponding to zones cells 206 * being descendant data objects of the data objects 302 and 304 *- 305 * of their host universal/region/sub-region cells 202 and 204 - 205 .
  • Contents to be presented in various windows 104 * such as video 308 a - 308 e, graphics 310 a - 310 b and texts 312 a - 312 c are effectuated by associating the data objects of these contents with data objects 306 * of the zone “container” cells 206 * corresponding to windows 104 *.
  • Data objects 314 a - 314 h and 316 a - 316 b implementing icons 210 a - 210 j and control facilities 208 a - 208 b are descendant data objects of the data objects of their respective host universal/regions/sub-regions/zones 202 and 204 *- 206 *.
  • the novel architecture and data organization enable contents provided through different display windows 104 * to be easily swappable, by swapping the association of the contents' data objects with the “host” zone cell 206 *.
  • the associations of “action” cells 208 * and 210 * with the different cells 202 and 204 *- 206 * may also be easily changed, by changing the association between data objects 314 *- 316 * with data objects 302 and 304 *- 306 * of cells 202 and 204 *- 206 *.
  • zone “container” cell 206 a and limited number of “action” cells 208 a and 210 a - 210 b are illustrated as being directly nested in universal region 202 , only one region “container” cell 304 b as having sub-region-“container” cells 254 *, and only one zone “container” cell 206 i is deployed as an icon pool in FIG. 2-3 .
  • the present invention contemplates multiple nesting of multiple “container” and “action” cells, e.g.
  • region/zone “container” cells as well as “action” cells may be nested in universal region 202
  • more third level sub-region “container” cells and/or “action” cells may be nested within region “container” cells of the second level.
  • FIGS. 4-5 illustrate the composition of “container” cells, in particular, a region “container” cell and a zone “container” cell, in accordance with one embodiment.
  • the earlier described universal region cell 202 , region “container” cell 204 *, and sub-region “container” cells 205 * are merely different variants the region “container” cell to be described. Accordingly, the composition descriptions to follow apply equally to universal region-cell 202 , region “container” cell 204 *, and sub-region “container” cells 205 *.
  • each region/zone “container” cell 202 and 204 *- 206 * associated with the definition of each region/zone “container” cell 202 and 204 *- 206 *, and stored inside corresponding data objects 302 and 304 *- 306 * are attributes defining whether a “container” cell 204 *- 206 * is dynamic or fixed (i.e. created on an as needed basis, or always present), whether the “container” cell's position is movable or stationery, its relative priority to other “container” cells 204 *- 206 *, a center position, a base, a height and a maximum size of the region/zone “container” cells 204 *- 206 *:
  • each region/zone “container” cell 202 and 204 *- 206 * associated with the definition of each region/zone “container” cell 202 and 204 *- 206 *, and stored inside corresponding data objects 302 and 304 *- 306 * are attributes defining a kernel 402 / 502 of the region/zone “container” cell 204 *- 206 *.
  • a kernel of a region/zone “container” cell 204 *- 206 * refers to the smallest manifestation of the region/zone “container” cell 204 *- 206 *.
  • the kernel related attributes include attributes defining a region/zone “container” cell's kernel's size, base and height.
  • each region/zone “container” cell 202 and 204 *- 206 * associated with the definition of each region/zone “container” cell 202 and 204 *- 206 *, and stored inside corresponding data objects 302 and 304 *- 306 * are attributes defining a boundary 406 / 506 of the region/zone “container” cell 204 *- 206 *.
  • the boundary related attributes include attributes defining a thickness and a color of the boundary of the region/zone “container” cell 204 *- 206 *.
  • the region/zone “container” cell automatically inherits the “boundary” attributes of the nearest “ancestor” region “container” cells, where such attributes are specified.
  • an inheriting region/zone “container” cell takes on the characteristics of the bequeathing “ancestor” region “container” cell.
  • each region/zone “container” cell 202 and 204 *- 206 * Associated with the definition of each region/zone “container” cell 202 and 204 *- 206 *, and stored inside corresponding data objects 302 and 304 *- 306 * are also attributes defining a border 404 / 504 of the region/zone “container” cell 204 *- 206 *.
  • the border related attributes include attributes defining a thickness, a color, a texture, a shading, a blinking and a transparency attribute of the border of the region/zone “container” cell 204 *- 206 *.
  • the region/zone “container” cell also automatically inherits the “border” attributes of the nearest “ancestor” region “container” cell, where such attributes are specified.
  • the attributes may further include attributes defining how many zone “container” cells it may have, their names and their default alignments (e.g. center, top, bottom, right, left and so forth), whereas for a zone “container” cell 206 *, the attributes may further include an attribute defining its “host” region “container” cell 202 and 204 */ 205 *.
  • the attributes may further include attributes defining its content types, video, data, image, text, and so forth, and an external buffer 508 . External buffer 508 defines the minimum inter-zone “container” cell spacing between immediately adjacent zone “container” cells 206 *.
  • region/zone “container” cells are merely illustrative. In alternate embodiments, the present invention may be practiced with more or less region/zone “container” cell attributes. For example, the present invention may be practiced with additional attributes defining
  • FIG. 6 illustrates the composition of an “action” cell, more specifically, an image icon “action” cell in further detail, in accordance with one embodiment.
  • an image icon “action” cell is an iconic representation of another displayable or launch-able cell with content, control facilities and so forth.
  • “action” cells may also include cells defining control facilities, and cells defining “button” icon, which provide control facilities for a region/zone “container” cell and action to be performed within a region/zone “container” cell respectively.
  • the description to follow for an image icon “action” cell may be likewise adopted to implement button icon “action” cells and/or control facilities cells.
  • each image icon “action” cell 208 *- 210 * and stored inside a corresponding data object 314 *- 316 * are attributes defining the bit map of the image icon “action” cell, the center position of the image icon “action” cell, a region/zone “container” cell with which the image icon “action” cell is associated, and a buffer 602 .
  • Buffer 602 defines the minimum space required to display the image icon “action” cell.
  • each of the respective “action” cells may include one or more attributes in identifying the binaries to be executed responsive to various types of user actions, e.g. “mouse over,” “single click,” “double clicks,” and so forth.
  • region/zone “container” cells, “action” cells, and data are implemented in an object oriented manner, with corresponding data objects 302 and 304 *- 316 *.
  • various methods 700 are associated with the data objects 302 and 304 *- 316 *.
  • these methods include in particular a clear, a contract, an expand, a remove, and a set attribute method, 702 - 710 , associated with the root data object 302 , and inherited by the descendant data objects 304 *- 316 * of the nested region/zone “container” cells 204 *- 206 *, as well as the descendant data objects 314 *- 318 * of the nested “action” cells 208 *- 210 *.
  • Clear method 702 when invoked against universal region “container” cell's data object 302 clears the EUI 102 , i.e. removing all nested region/zone “container” cells 204 *- 206 *, including their contents, as well as any nested “action” cells 208 *- 210 *.
  • the universal region “container” cell clearing is efficiently achieved by clearing or deleting all descendant data objects 304 *- 316 *.
  • Inner invocation against a region/zone “container” cell 204 *- 206 * clears the nested regions/zones “container” cells 204 */ 206 * within the target region/zone “container” cell 204 * including their contents, and any nested “action” cells 208 *- 210 *.
  • the clearing is efficiently achieved by clearing or deleting the applicable descendant data objects 304 *- 316 *.
  • Expand and contract methods 704 - 706 are employed to expand and contract a region/zone “container” cell 204 *- 206 * respectively.
  • Remove method 708 facilitates removal of individual cells of the EUI 102 , i.e. one or more regions/zone “container” cells 204 *- 206 * or “action” cells 208 *- 210 * without clearing all cells. Removal is achieved in like manner as clear method 702 , except the operation is applied to selected ones of the descendant data objects, as opposed to all descendant data objects.
  • Set Attribute method 710 facilitates setting of the earlier described region/zone “container” cell and “action” cell attributes associated with region/zone “container” cells 202 and 204 *- 206 *, and “action” cells respectively.
  • region/zone cells 204 *- 206 * and “action” cells 208 *- 210 * their corresponding data objects 304 *- 306 * and 314 *- 316 * further include the association of a create, and a delete, a move and a place method 712 - 718 .
  • Create and delete methods 712 - 714 as their names suggest, facilitate creation and delete of the various descendant data objects 304 *- 306 * and 314 *- 316 * for the nested region/zone “container” cells and “action” cells 204 *- 206 * and 208 *- 210 *.
  • Move and place methods 716 - 718 facilitate movement and relocation of the various region/zone “container” cells and “action” cells 204 *- 206 * by modifying e.g. the position attributes of the corresponding data objects 304 *- 306 * and 314 *- 316 *.
  • data objects 314 *- 316 * for “action” cells 208 *- 210 * further include the association of a launch method 720 for launching a displayable region/zone cell 204 *- 206 * represented by image icon “action” cells 210 *.
  • FIGS. 8-9 illustrate two novel interactions with EUI 102 , otherwise not available under the prior art, and the relevant operation flow of an implementor, such as an application, a cell manager or a window manager, incorporated with the teachings of the present invention.
  • contents presented through two different zone “container” cells 206 * may be easily interchanged or swapped, as denoted by arrow 802 .
  • the swapping operation may be initiated through any one of a number of user key sequences, e.g. user key sequences similar to a conventional drag and drop operation.
  • the swapping may be efficiently accomplished by switching association of the applicable data objects 308 *- 316 * and their region/zone “container” cells 204 *- 206 *.
  • “action” cells 314 *- 316 * may be easily relocated to any region/zone “container” cell 204 *- 206 * as denoted by arrow 804 .
  • an implementor determines if the sequence of user inputs denotes a drag and drop of content from one region/zone “container” cell 204 *- 206 * to another, block 902 . If so, the implementor effectuates the content swapping, by switching the data objects' association with their region/zone “container” cells 204 *- 206 *, as earlier described, block 904 .
  • the implementor further determines if the sequence of user inputs denotes an “action” cell drag and drop, block 906 . If so, the implementor effectuates the “action” cell movement and placement by similarly switching the “action” cell's association with region/zone “container” cells 204 *- 206 *, optionally launching the represented region/zone “container” cell 204 *- 206 * and its contents (if so requested by the sequence of user inputs), block 908 .
  • the denoted prior art request may then be processed as in the prior art.
  • the sequence of user inputs denoting the earlier described content and “action” cell drag and drop may be practiced through any key sequences, e.g. by clicking on the content or icon, using a cursor control device, and keeping the applicable click button of the cursor control device held down, until the target region/zone “container” cell 206 * is reached. At such time, the click button of the cursor control device may be returned to its normal position.
  • the present invention may be practiced with other key sequences instead.
  • FIG. 10 illustrates an overview of the operation of EUI 102 .
  • the current state of EUI 102 as defined by the current states of the corresponding data objects 302 - 316 * of the constituting cells 202 - 210 * of EUI 102 , as illustrated, is referred to as the current view of EUI 102 .
  • the implementor of the present invention e.g. an application, a cell manager or a window manager, performs a series of responsive calculations, and generate the next view of EUI 102 .
  • FIG. 11 illustrates the operational flow of the relevant aspects of an implementor, e.g. an application, a cell manager or a window manager, for responding to a request to add a region/zone “container” cell or an “action” cell to a region/zone “container” cell, or expand a region/zone “container” cell (hereinafter, for the description of FIG. 11 , simply the “add/expand” request), in accordance with one embodiment.
  • the implementor first determines if the requested addition or expansion fits in the current available space of the host region/zone “container” cell, block 1102 .
  • the required space to accommodate the requested addition/expansion may e.g. be determined from the attribute values of the “new” or expanded region/zone “container” cell. If the requested addition or expansion fits in the current available space of the host region “container” cell, the requested addition or expansion is performed accordingly, block 1104 .
  • the implementor successively undertakes one or more space creation actions, until either sufficient amount of available space has been created or until all possible space creation actions have been exhausted, blocks 1102 - 1108 . As soon as sufficient available space has been created, operation continues at block 1104 as earlier described.
  • available space creation actions include shifting existing region/zone “container” cells within the host region/zone “container” cell the add/expand request is to be performed, and reducing the existing region/zone “container” cells if necessary.
  • shifting of existing region/zone “container” cells includes shifting the existing regions/zone “container” cells to a predetermined corner of the host region/zone “container” cell, e.g. the lower left corner, the upper left corner, the upper right corner or the lower right corner.
  • shifting of existing region/zone “container” cell to a corner is performed by aligning the region/zone “container” cells along one or the other boundary forming the corner.
  • shifting of existing region/zone “container” cells to a corner is performed by alternating in aligning the regions/zone “container” cells along the boundaries forming the corner.
  • reducing the existing region/zone “container” cells is performed in an incremental manner. In another embodiment, reducing the existing region/zone “container” cells is performed in accordance with the relative priorities of the existing region/zone “container” cells. In one embodiment, reduction is performed in an incremental manner as well as in view of the relative priorities of the existing region/zone “container” cells. In one embodiment, the lowest priority region/zone “container” cell is first successively reduced to its kernel before the next higher priority region/zone “container” cell is successively reduced towards its kernel. In another embodiment, the reduction is successively performed in a round robin manner.
  • reduction of existing region or zone “container” cells further includes reducing one or more of the existing region/zone “container” cells to their icon “action” cell representations.
  • the reduction to iconic representation is performed in view of the relative priorities of the existing region/zone “container” cells.
  • reduction of required space action includes successively reducing the size of the region/zone “container” cell to be added, or to be expanded to.
  • the implementor determines if any post addition/expansion operations need to be performed. If so, the post addition/expansion operations are performed, block 1118 . If not, the process terminates.
  • Post addition/expansion operations may be required, as existing region/zone “container” cells may have been shifted to one corner of the host region/zone “container” cell or reduced, even to their kernel, in the course of accommodating the addition/expansion request. Accordingly, for the embodiment, upon accommodating the addition/expansion, attempts are made to at least partially restore the shifted and/or reduced region/zone “container” cells back to the pre-request state. Similarly, the post addition/expansion operations may include successively expanding reduced existing region/zone “container” cells, which may also be performed in view of the relative priorities, re-shifting shifted region/zone “container” cells (e.g.
  • “Balance” may be measured e.g. by the average space gap between the boundaries of the various region/zone “container” cells.
  • FIG. 13 illustrates an exemplary addition of a new region/zone “container” cell into a region “container” cell having two existing region/zone “container” cells, in accordance with the above described process.
  • the two existing region/zone “container” cells are first shifted to the lower left corner, with the two existing region/zone “container” cells aligned along the left boundary forming the lower left corner (illustrations A & B).
  • the two existing region/zone “container” cells are successively reduced, eventually to their kernels, first the lower priority region/zone “container” cell, then the higher priority region/zone “container” cell (illustrations C-D).
  • the new region/zone “container” cell is then added to the newly created space in the opposite upper right corner (Illustration E). Further, the reduced region/zone “container” cells are shifted back out from the lower right corner and aligned in the bottom portion of the host region/zone “container” cell (illustration F & G).
  • FIG. 14 illustrates another exemplary addition of a new region/zone “container” cell into a region/zone “container” cell having three existing region/zone “container” cells, in accordance with the above described process. Except in this illustration, the existing region/zone “container” cells are first shifted to the upper left corner, and then shifted out along the top portion of the host region/zone “container” cell instead. Further, the new region/zone “container” cell is reduced to reduce its space requirement before it is added to the host region/zone “container” cell.
  • FIG. 12 illustrates the operational flow of the relevant aspects of an implementor, e.g. an application, a cell-cell manager or a window manager, for responding to a request to remove a region/zone “container” cell from a region “container” cell, or an “action” cell from a region/zone “container” cell (hereinafter, for the description of FIG. 12 , simply the “remove/contract” request), in accordance with one embodiment. As illustrated, for the embodiment, the implementor removes or contracts the region/zone “container” cell, or the “action“cell as requested, block 1202 .
  • an implementor e.g. an application, a cell-cell manager or a window manager, for responding to a request to remove a region/zone “container” cell from a region “container” cell, or an “action” cell from a region/zone “container” cell (hereinafter, for the description of FIG. 12 , simply the “remove/contract” request),
  • the implementor determines if the there are iconized region/zone “container” cells of the host region/zone “container” cell that can be restored into the newly increased available space of the host region/zone “container” cell, block 1204 . If so, the implementor restores one or more of the eligible iconized region/zone “container” cells, subject to the available space, block 1206 . In one embodiment, the restoration is performed in accordance with the relative priorities of the iconized region/zone “container” cells.
  • the implementor determines if there are any reduced region/zone “container” cells that can be grown towards their maximum sizes, block 1208 . If so, the implementor successively grows one or more of the reduced region/zone “container” cells, subject to the available space, block 1210 . In one embodiment, the successive growth is also performed in accordance with the relative priorities of the reduced region/zone “container” cells.
  • the implementor determines if any post restoration or growth actions need to be performed, block 1212 . If so, the implementor performs the post restoration or growth actions, such as shifting and aligning to “re-balance” the region/zone “container” cells of the host region/zone “container” cell, block 1214 . As before, “balance” may be measured e.g. by the average space gap between the boundaries of the various region/zone “container” cells
  • FIG. 15 illustrates the operational flow of the relevant aspects of an implementor, e.g. an application, a cell manager or a window manager for responding to a request to expand a region “container” cell (hereinafter, for the description of FIG. 15 , simply the “add/expand” request), in accordance with another embodiment.
  • region “container” cells are nested within a host region “container” cell in a contiguous manner, i.e. without available space gap between their boundaries.
  • the implementor in response to a request to grow a region “container” cell by an amount, the implementor first generates extended boundaries for the growth region “container” cell (see FIG. 16 ), block 1502 . Next, the implementor determines growth impact for up to n levels removed in all directions, using the extended boundaries.
  • growth impact of the center region “container” cell may be determined using its extended boundaries, based on their intersections with other boundaries.
  • the impacts on region “container” cells up to 2 degrees removed from the center region “container” cell may be summarized as follows:
  • the implementor iteratively expands the region “container” cell in the various directions, adjusting the impacted region “container” cell to accommodate the growth, block 1506 .
  • the process continues until the desired amount of growth is achieved. If the desired growth is not achievable, for the embodiment, an “error”, such as “growth unachievable”, is returned, block 1508 .
  • the present invention may be practiced e.g. by endowing an application itself, a cell manager or a window manager with the teachings of the present invention.
  • a cell/window manager implementor may be effectuated in at least two manners, FIG. 17 a and FIG. 17 b.
  • cell manager 1704 is equipped with teachings of the present invention interfaces and interacts with applications 1702 using its services, and display device driver 1706 as in the prior art.
  • the universal region “container” cell 202 is the entire display space of a display device.
  • the cell manager implementor operates as an “auxiliary” cell manager 1703 to a conventional window manager 1704 .
  • Applications 1702 may interact with conventional window manager 1704 directly or indirectly through auxiliary cell manager 1703 (equipped with the teachings of the present invention).
  • universal region “container” cell 202 may be a window of a conventional window approach, except within that window, the EUI is implemented and practiced as earlier described, in accordance with the present invention.
  • auxiliary cell manager 1703 may be integrally incorporated as part of window manager 1704 .
  • FIG. 18 illustrates an exemplary computer system or device suitable for practicing the present invention, in accordance with one embodiment.
  • computer system/device 1800 includes one or more processors 1802 and system memory 1804 .
  • device 1800 includes mass storage devices 1806 (such as diskette, hard drive, CDROM and so forth), input/output devices 1808 (such as keyboard, cursor control and so forth) and communication interfaces 1810 (such as network interface cards, modems and so forth).
  • the elements are coupled to each other via system bus 1812 , which represents one or more buses. In the case of multiple buses, they are bridged by one or more bus bridges (not shown). Each of these elements performs its conventional functions known in the art.
  • system memory 1804 and mass storage 1806 are employed to store a working copy and a permanent copy of the programming instructions implementing the implementor of the present invention, e.g. an application, a cell manager or a window manager.
  • the permanent copy of the programming instructions may be loaded into mass storage 1806 in the factory, or in the field, through a distribution medium (not shown) or through communication interface 1810 (from a distribution server (not shown)).
  • the constitution of these elements 1802 - 1812 are known, and accordingly will not be further described.
  • FIG. 19 shows an exemplary network environment suitable for practicing the present invention, in accordance with one embodiment.
  • contents are presented for user of client device 1902 to enjoy, employing the hierarchical cell based EUI 102 of the present invention.
  • display device 1904 a on which EUI 102 is rendered is an integral of client device 1902 .
  • display device 1904 b on which EUI 102 is rendered is an separate and distinct “peripheral” of client device 1902 .
  • the implementor of the present invention may be executing on client device 1902 itself.
  • the implementor may be executing on server 1906 instead.
  • Examples of the former case may be a personal computer, an enhanced integrated television set, and a set-top box. Examples of the latter case may be a content streaming server or a cable programming broadcasting device.
  • Client device 1902 and server 1906 are coupled to each other via one or more private and/or public networks, including e.g. the Internet, employing Digital Subscriber Lines (DSL) (or other variants xDSL), Cable Network, Integrated Digital Service Network (ISDN), Asynchronous Transfer Mode (ATM), Frame Relay, or other high performance communication links/connections of like kind.
  • DSL Digital Subscriber Lines
  • ISDN Integrated Digital Service Network
  • ATM Asynchronous Transfer Mode
  • Frame Relay or other high performance communication links/connections of like kind.
  • Communications between client device 1902 and server 1906 may be accomplished via any one of a number of communication protocols known in the art, including but are not limited to the TCP/IP protocol.
  • Examples of content may include one or more of the following content or program types

Abstract

In a cell based EUI, existing display container cells nested within a “host” display container cell are automatically shifted and/or downsized, if necessary, to increase available space to facilitate the creation of another display container cell nested within the “host” display container cell, in response to a request to perform the creation. Similar shifting and/or downsizing are performed to facilitate expansion of one of the nested display container cells; and shifting and upsizing are performed to facilitate contraction of one of the nested display container cells. In one embodiment, shifting and/or downsizing/upsizing are performed in view re-sizing priorities of the display container cells and attributes of a host display container cell governing placement and/or alignment of immediately nested display container cells. In one embodiment, an efficient extended boundary method is employed.

Description

    RELATED APPLICATIONS
  • This application is a continuation of prior Application No. 10/136,679, filed Apr. 30, 2002, priority from the date of which is hereby claimed under 35 U.S.C. §120.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to the field of data processing. More specifically, the present invention relates to end user interfaces.
  • 2. Background Information
  • With advances in integrated circuit, microprocessor, networking and communication technologies, an end user of a properly equipped television set or a computing device may receive and consume a variety of multi-media contents or programming via a number of different delivery channels. The end user may e.g. receive and consume television programming delivered through conventional network broadcast, cable or satellite. The end user may also receive and consume various multi-media contents or programming delivered from various recorded media players, such as VCR tape players, CDROM or DVD players. Alternatively, the end user may also receive and consume various streaming multi-media contents or programming delivered through the Internet or other high-speed digital channel.
  • The end user interfaces (EUI) employed in these multi-media content or programming deliveries are typically limited in their functionalities and ease-of-use. In particular, they are typically fixed or inflexible, i.e. non-responsive or lack interactivity with the user. For example, in the case of television programming, typically only a single view of a program (chosen by a director) is provided to the end user (even though multiple views are available from the multitude of cameras employed to cover an event or performance). Even at times, when multiple views of a program are provided, the user is unable to change the size, and/or placements of the different display windows within which the views are displayed. Where modifications of the size and/or placement of the display windows are supported (hereinafter, simply windows), typically, automatic relative re-sizing and/or placement of the windows are not supported. That is, expansion of a window will often result in the blocking of another window (unless the expanding window is a “transparent” window), and contraction of a window will often result in excess unconsumed space (unless the end user takes overt action to enlarge another window). Similar limitations exist in the delivery of multi-media contents or programming from recorded media or streaming through the Internet.
  • Further, the different windows (whether it is of the same program or of different programs) are usually not easily interchangeable. In particular, associated controls, such as “minimize”, “maximize”, or task bars, are typically not relocatable from one window associated with one application to another window associated with another application. For example, in the case of television programming, different views of the same program delivered through multiple windows are generally not interchangeable, whereas different programs delivered through different windows, such as a primary view and a “picture-in-picture” (PIP) view, are swappable, provided the end user separately changes the channels associated with the two windows. In the case of windowed applications, control facilities associated with windows of an application, such as “minimize”, “maximize” or task bars, are typically fixed with the corresponding windows and/or the application, and may not be moved and be associated with another window and/or another application.
  • Thus, an improved end user interface for content or programming delivery is desired.
  • BRIEF DESCRIPTION OF DRAWINGS
  • The present invention will be described by way of exemplary embodiments, but not limitations, illustrated in the accompanying drawings in which like references denote similar elements, and in which:
  • FIG. 1 illustrates an end user view of an EUI implemented in accordance with the present invention;
  • FIGS. 2-3 illustrates the anatomy of a cell based hierarchy for implementing the EUI of FIG. 1, including the universal region cell, region cells, sub-region cells and zone cells, in accordance with one embodiment;
  • FIGS. 4-5 illustrate selected aspects of the composition of a “container” cell, including a region cell and a zone cell, in accordance with one embodiment;
  • FIG. 6 illustrates selected aspects of the composition of an “action” cell, in particular, an icon cell, in accordance with one embodiment;
  • FIG. 7 enumerates selected methods associated with the various implementation cells to support the practice of the present invention, in accordance with one embodiment;
  • FIG. 8 illustrates certain novel end user interface interactions supported under the present invention, by virtual of the architectural design of the hierarchical cell based EUI, in accordance with one embodiment;
  • FIG. 9 illustrates the operational flow of the relevant aspects of an implementor of the present invention, such as an application, a cell manager or a window manager, in support of the novel end user interactions of FIG. 8, in accordance with one embodiment;
  • FIG. 10 illustrates the notion of a current view, and the generation of a next view under the present invention, in accordance with one embodiment;
  • FIGS. 11-12 illustrate the operational flow of the relevant aspects of an implementor of the present invention, such as an application, a cell manager or a window manager, in support of automatic relative re-sizing or re-placement of region cells or zone cells, in accordance with one embodiment;
  • FIGS. 13-14 further illustrate automatic relative re-sizing or re-placement of region cells and zone cells, in accordance with one embodiment;
  • FIG. 15 illustrates the operational flow of the relevant aspects of an implementor of the present invention, such as an application, a cell manager or a window manager, in support of an optimized algorithm for efficiently modifying contiguous region or zone cells, in accordance with one embodiment;
  • FIG. 16 further illustrates the optimized efficient modification of region or zone cells of FIG. 15, in accordance with one embodiment;
  • FIGS. 17 a-17 b illustrate two embodiments for practicing the present invention;
  • FIG. 18 illustrate an exemplary computing system or device suitable for practicing the present invention; and
  • FIG. 19 illustrates an exemplary network environment suitable for practicing the present invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • The present invention includes a hierarchical cell based end user interface, having hierarchically organized display cells (hereinafter, simply cells). The present invention also includes processes for the end users to interact with the interface, having particular application to the delivery of multi-media programming and/or content, as well as processes for automatically re-sizing and/or repositioning cells of the EUI.
  • In the following description, various aspects of the present invention will be described. However, the present invention may be practiced with only some or all aspects of the present invention. For purposes of explanation, specific numbers, materials and configurations are set forth in order to provide a thorough understanding of the present invention. However, the present invention may be practiced without the specific details. In other instances, well-known features are omitted or simplified in order not to obscure the present invention.
  • Terminology
  • Parts of the description will be presented in data processing terms, such as data, variables, methods, requests, returns, and so forth, consistent with the manner commonly employed by those skilled in the art to convey the substance of their work to others skilled in the art. As well understood by those skilled in the art, these quantities take the form of electrical, magnetic, or optical signals capable of being stored, transferred, combined, and otherwise manipulated through mechanical, electrical and/or optical components of a computer system.
  • The term “display cell” (or “cell” for short) as used herein refers to the logical elements or items employed to collectively implement the various aspects of the EUI. The logical elements/items or cells, as will be described more fully below, are typed and include attributes defining them, including their manifestation and behaviors. Visually, cells may be “nested” within one another. Organizationally, cells may be hierarchically related to each other.
  • The term “computer system” as used herein includes general purpose as well as special purpose data processing machines, systems, and the like, that are standalone, adjunct or embedded.
  • Section Headings, Order of Descriptions and Embodiments
  • Section headings are merely employed to improve readability, and they are not to be construed to restrict or narrow the present invention.
  • Various operations will be described as multiple discrete steps in turn, in a manner that is most helpful in understanding the present invention, however, the order of description should not be construed as to imply that these operations are necessarily order dependent. In particular, these operations need not be performed in the order of presentation.
  • The phrase “in one embodiment” is used repeatedly. The phrase generally does not refer to the same embodiment, however, it may.
  • End User View
  • FIG. 1 illustrates an external end user view of an exemplary end user interface 102, implemented in accordance with one embodiment of the present invention. As illustrated, exemplary end user interface (EUI) 102, from the end user's perspective, includes multiple display windows 104 a-104 k, control facilities 106 a-106 b and icons 108 a-108 j. EUI 102 may be employed to facilitate delivery of multi-media contents or programming for an end user. An example of such content/programming includes, but are not limited to, presentation of one or more performance or live events, such as sporting events, where the multiple windows are employed to present different views of each performance or event to the end user.
  • For ease of understanding, only a couple of control facilities 106 a-106 b and a handful of icons 108 a-108 j are illustrated with windows 104 a-104 k. As will be readily apparent to those skilled in the art, based on the descriptions to follow, the present invention may be practiced with more or less of these elements.
  • More importantly, as will be described in more detail below, EUI 102 is implemented internally via a hierarchy of display cells (or cells for short). The cells are typed and nested. Further, they have attributes, and certain attributes may be inherited in one direction, while others in the other direction, i.e. from a higher level cell or from a lower level cell. The cells are implemented as data objects with associated methods to facilitate manipulation of their data.
  • Resultantly, one of the benefits is that the views or windows 104 a-104 k are readily controllable by the end user. An end user may select any one of windows 104 a-104 k, express a desired modification or change to the size, placement, and/or other related aspects of the windows (such as sound). In response, the implementation logic of the present invention, e.g. a cell manager, or alternatively, a window manager or an application itself (not shown), will resize, re-position or otherwise modify the selected windows, as well as all other impacted elements (cells) of EUI 102 accordingly and automatically.
  • Resizing may be expansion of a selected element or cell of EUI 102, or contraction of a selected element or cell of EUI 102. Repositioning of a cell may be within the existing immediately higher-level cell or to another cell of EUI 102. In various embodiments, control facilities 106 a-106 b are provided for the various windows 104* to facilitate a user in resizing, re-positioning or otherwise modifying the various aspects of the windows 104*.
  • In one embodiment, as the selected and/or impacted windows 104* are re-sized, the content of each window 104* may be automatically scaled, preserving “full” visibility of the contents. That is, the contents of the various windows 104* remain in full view, scaled, but not truncated or otherwise eclipsed. However, in alternate embodiments, one or more windows 104* may have their contents truncated or eclipsed instead.
  • In one embodiment, in addition to being employed for the delivery of multi-media content or programming, one or more of “windows” 104 a-104 k may be employed to present a “pool” of icons, each corresponding to an additional displayable or launch-able cell having contents, and/or action that may be performed on the content or the attributes of an associated cell. The former is referred to as an “image icon”, and the cell implementing the “image icon” is an image-icon cell, whereas the latter is referred to as a “button icon”, and the cell implementing the “button-icon” is a button-icon cell.
  • These and other aspects of the present invention will be described more fully below. The asterisk at the end of a reference number denotes a “wild card”, representing any of the trailing suffixes of the reference numbers employed in a figure. For example, 104* stands for 104 a, 104 b or any one of the other 104 references of FIG. 1.
  • Anatomy of the End User Interface
  • FIGS. 2-3 illustrate the relevant aspects of the internal hierarchical cell based implementation of EUI 102 to provide the desired improved features and behaviors, in accordance with one embodiment. As illustrated, in accordance with the present invention, end user interface 102 is cell based, and the constituting cells are nested (FIG. 2), and the data objects implementing the cells are hierarchically organized (FIG. 3).
  • As alluded to earlier, cells are typed, and have attributes defining their manifestation and behaviors. Visually, cells may be “nested” within each other. Organizationally, cells may be hierarchically related to each other. The attributes may be inherited in either direction, from the higher level cells or from the lower level cells (organizationally speaking).
  • More specifically, for the embodiment, each EUI 102 is comprised of a number of nested “container” cells and a number “action” cells. For ease of understanding, the “outer most” (from a nesting perspective) or the highest-level (from a hierarchy perspective) “container” cell, that is the cell corresponding to the totality of display space available, within which all other cells are nested, is referred to as the universal or root region cell 202. Nested within universal region 202 may be one or more nested “container” cells. In particular, at the next highest-level, for the embodiment, for ease of operation, the “container” cells all have visual manifestations that are rectangular in shape, and share borders. These “container” cells are referred to as regions cells 204 a-204 c.
  • Selected one or ones of the region “container” cells may further include one or more nested “container” cells. For ease of understanding, these nested “container” cells, except for ones disposed at the “inner most” nesting or “lowest” level (counting only “container” cells), are referred to as sub-region “container” cells 205 a-205 b. The “container” cells disposed at the “inner most” nesting or “lowest” level (counting only “container” cells) are referred to as zone “container” cells 206 a-206 k. A zone “container” cell 206* dedicated to the holding of icon “action” cells (to be described more fully later), such as zone “container” cell 206 i, is also referred to as an “icon pool”.
  • “Action” cells, such as those implementing control facilities 208 a-208 b, and icons 210 a-210 j, whether they are representing other displayable or launch-able cells or merely representing actions to be performed, i.e. image icons or button icons, may be nested within (visually speaking) or descend from (organizationally speaking)) any of the “container” cells, i.e. the universal region cell 202, such as control facilities cells 208 a-208 b and icon cells 210 a-210 d, region and sub-region cells 204 a-204 c and 205 a-205 b, none shown, or zone “container” cells, such as icon cells 210 e-210 j.
  • As described earlier, control facilities may include facilities for facilitating minimizing or maximizing an “action” cell, and an icon “action” cell may be an image or a button icon “action” cell. The “container” cell within which another “container” or “action” cell is nested or from which the other “container” or “action” cell is descended, is also referred to as a “host” cell.
  • Hereinafter, the description will be given with the relationship between the various cells simply be referred to as either being “nested” in another cell or “descended” from another cell, depending on which characterization is more meaningful in view of the context. However, the reference expressed from one perspective (visual or organizational) is an expression in both perspectives, even expression in the other perspective is not explicitly stated.
  • Continuing now with the description and referring in particular to FIG. 3, for the embodiment, the data, such as attribute data (described more fully below), associated with each cell, 202 and 204*-210*, whether “container” or “action”, are organized and implemented as an hierarchy of data objects 302 and 304*-306*, with data object 302 corresponding to universal region cell 202 being the root object of the hierarchy, data objects 304* corresponding to region cells 204* being descendant data objects of root object 302, data objects 305* corresponding to sub-region cells 205* being descendant data objects of the data objects 304*-305* of their “host” region/sub-region cells 204*/205*, and data objects 306* corresponding to zones cells 206* being descendant data objects of the data objects 302 and 304*-305* of their host universal/region/sub-region cells 202 and 204-205.
  • Contents to be presented in various windows 104*, such as video 308 a-308 e, graphics 310 a-310 b and texts 312 a-312 c are effectuated by associating the data objects of these contents with data objects 306* of the zone “container” cells 206* corresponding to windows 104*. Data objects 314 a-314 h and 316 a-316 b implementing icons 210 a-210 j and control facilities 208 a-208 b are descendant data objects of the data objects of their respective host universal/regions/sub-regions/zones 202 and 204*-206*.
  • Resultantly, the novel architecture and data organization enable contents provided through different display windows 104* to be easily swappable, by swapping the association of the contents' data objects with the “host” zone cell 206*. Similarly, the associations of “action” cells 208* and 210* with the different cells 202 and 204*-206* may also be easily changed, by changing the association between data objects 314*-316* with data objects 302 and 304*-306* of cells 202 and 204*-206*.
  • For ease of understanding, only one zone “container” cell 206 a and limited number of “action” cells 208 a and 210 a-210 b are illustrated as being directly nested in universal region 202, only one region “container” cell 304 b as having sub-region-“container” cells 254*, and only one zone “container” cell 206 i is deployed as an icon pool in FIG. 2-3. However, the present invention contemplates multiple nesting of multiple “container” and “action” cells, e.g. more region/zone “container” cells as well as “action” cells may be nested in universal region 202, more third level sub-region “container” cells and/or “action” cells may be nested within region “container” cells of the second level. From the description thus far and the ones to follow, those skilled in the art will be able to practice the present invention in such multi-level manner, should that be desired.
  • Anatomy of “Container” Cells
  • FIGS. 4-5 illustrate the composition of “container” cells, in particular, a region “container” cell and a zone “container” cell, in accordance with one embodiment. From the processing or computation perspective, the earlier described universal region cell 202, region “container” cell 204*, and sub-region “container” cells 205* are merely different variants the region “container” cell to be described. Accordingly, the composition descriptions to follow apply equally to universal region-cell 202, region “container” cell 204*, and sub-region “container” cells 205*.
  • As illustrated, for the embodiment, associated with the definition of each region/zone “container” cell 202 and 204*-206*, and stored inside corresponding data objects 302 and 304*-306* are attributes defining whether a “container” cell 204*-206* is dynamic or fixed (i.e. created on an as needed basis, or always present), whether the “container” cell's position is movable or stationery, its relative priority to other “container” cells 204*-206*, a center position, a base, a height and a maximum size of the region/zone “container” cells 204*-206*:
  • region “container” cell zone “container” cell
    region_type = [dynamic, fixed] zone_type = [dynamic, fixed]
    region_position = [stationary, zone_position = [stationary,
    movable] movable]
    region_priority = [1, 2, 3 . . . ] zone_priority = [1, 2, 3 . . . ]
    region_center_position zone_center_position
    region_base zone_base
    region_height zone_height
    region_maximum_size zone_maximum_size
  • Additionally, for the embodiment, associated with the definition of each region/zone “container” cell 202 and 204*-206*, and stored inside corresponding data objects 302 and 304*-306* are attributes defining a kernel 402/502 of the region/zone “container” cell 204*-206*. A kernel of a region/zone “container” cell 204*-206* refers to the smallest manifestation of the region/zone “container” cell 204*-206*. That is, when the available space within a host “container” cell 202-205* falls below the space required by the kernel of a region/zone “container” cell 204*-206*, the “container” cell 204*-206* is to be “reduced” to an icon cell. For the embodiment, the kernel related attributes include attributes defining a region/zone “container” cell's kernel's size, base and height.
  • region-cell zone-cell
    region_kernel_area zone_kernel_area
    region_kernel_base zone_kernel_base
    region_kernel_height zone_kernel_height
  • Further, for the embodiment, associated with the definition of each region/zone “container” cell 202 and 204*-206*, and stored inside corresponding data objects 302 and 304*-306* are attributes defining a boundary 406/506 of the region/zone “container” cell 204*-206*. The boundary related attributes include attributes defining a thickness and a color of the boundary of the region/zone “container” cell 204*-206*.
  • region-cell zone-cell
    region_boundary_thickness zone_boundary_thickness
    region_boundary_color zone_boundary_color
  • In one embodiment, if the “boundary” attributes are not specified for a region/zone “container” cell, the region/zone “container” cell automatically inherits the “boundary” attributes of the nearest “ancestor” region “container” cells, where such attributes are specified. In other words, an inheriting region/zone “container” cell takes on the characteristics of the bequeathing “ancestor” region “container” cell.
  • Associated with the definition of each region/zone “container” cell 202 and 204*-206*, and stored inside corresponding data objects 302 and 304*-306* are also attributes defining a border 404/504 of the region/zone “container” cell 204*-206*. The border related attributes include attributes defining a thickness, a color, a texture, a shading, a blinking and a transparency attribute of the border of the region/zone “container” cell 204*-206*.
  • region-cell zone-cell
    region_border_thickness zone_border_thickness
    region_border_color zone_border_color
    region_border_texture zone_border_texture
    region_border_shading zone_border_shading
    region_border_blinking zone_border_blinking
    region_border_transparent zone_border_transparent
  • In one embodiment, if the “border” attributes are not specified for a region/zone “container” cell, the region/zone “container” cell also automatically inherits the “border” attributes of the nearest “ancestor” region “container” cell, where such attributes are specified.
  • In various embodiments, for a region “container” cell 204*-205*, the attributes may further include attributes defining how many zone “container” cells it may have, their names and their default alignments (e.g. center, top, bottom, right, left and so forth), whereas for a zone “container” cell 206*, the attributes may further include an attribute defining its “host” region “container” cell 202 and 204*/205*. For a zone “container” cell 206*, the attributes may further include attributes defining its content types, video, data, image, text, and so forth, and an external buffer 508. External buffer 508 defines the minimum inter-zone “container” cell spacing between immediately adjacent zone “container” cells 206*.
  • region-cell zone-cell
    region_zone_list = [zone-cell zone_region_association
    ames]
    region_zone_alignment = [center, zone_video, zone_data,
    top, bottom, right, left] zone_image, zone_text
    region_max_allowable_zones =
    [number]
  • The above described attributes for region/zone “container” cells are merely illustrative. In alternate embodiments, the present invention may be practiced with more or less region/zone “container” cell attributes. For example, the present invention may be practiced with additional attributes defining
  • a) the control facilities associated with the region/zone “container” attributes,
  • b) the behavior when certain areas of a region/zone “container” cell is “mouse over”, and
  • c) forced bequeathing of certain attributes to the more inner or lower level region/zone “container” cells.
  • Anatomy of an “Action” Cell
  • FIG. 6 illustrates the composition of an “action” cell, more specifically, an image icon “action” cell in further detail, in accordance with one embodiment. As described earlier, an image icon “action” cell is an iconic representation of another displayable or launch-able cell with content, control facilities and so forth. Further, “action” cells may also include cells defining control facilities, and cells defining “button” icon, which provide control facilities for a region/zone “container” cell and action to be performed within a region/zone “container” cell respectively. The description to follow for an image icon “action” cell may be likewise adopted to implement button icon “action” cells and/or control facilities cells.
  • As illustrated, for the embodiment, associated with the definition of each image icon “action” cell 208*-210* and stored inside a corresponding data object 314*-316* are attributes defining the bit map of the image icon “action” cell, the center position of the image icon “action” cell, a region/zone “container” cell with which the image icon “action” cell is associated, and a buffer 602. Buffer 602 defines the minimum space required to display the image icon “action” cell.
  • Icon-cell
    image_icon_association = [region/zone-cell name]
    image_icon_center_position = [x, y]
    image_icon_actual = [bit_map_name]
    image_icon_buffer_base = [ ]
    image_icon_buffer_height = [ ]
    image_icon_upper_left_vertex_position = [x, y]
  • Similarly, in alternate embodiments, the present invention may be practiced with more or less attributes defining the various “action” cells, as well as the contents to be rendered (i.e. video, graphics, texts, and so forth). In particular, for button icon “action” cells and control facility “action” cells, each of the respective “action” cells may include one or more attributes in identifying the binaries to be executed responsive to various types of user actions, e.g. “mouse over,” “single click,” “double clicks,” and so forth.
  • Implementation Methods of “Container” and “Action” Cells
  • Referring briefly to FIG. 3 again, as described earlier, for the illustrated embodiment, region/zone “container” cells, “action” cells, and data (include video, graphics, text and so forth) are implemented in an object oriented manner, with corresponding data objects 302 and 304*-316*. In one embodiment, as illustrated in FIG. 7, various methods 700 are associated with the data objects 302 and 304*-316*. For the embodiment, these methods include in particular a clear, a contract, an expand, a remove, and a set attribute method, 702-710, associated with the root data object 302, and inherited by the descendant data objects 304*-316* of the nested region/zone “container” cells 204*-206*, as well as the descendant data objects 314*-318* of the nested “action” cells 208*-210*.
  • Clear method 702, when invoked against universal region “container” cell's data object 302 clears the EUI 102, i.e. removing all nested region/zone “container” cells 204*-206*, including their contents, as well as any nested “action” cells 208*-210*. In one embodiment, the universal region “container” cell clearing is efficiently achieved by clearing or deleting all descendant data objects 304*-316*. Inner invocation against a region/zone “container” cell 204*-206* clears the nested regions/zones “container” cells 204*/206* within the target region/zone “container” cell 204* including their contents, and any nested “action” cells 208*-210*. In like manner, the clearing is efficiently achieved by clearing or deleting the applicable descendant data objects 304*-316*.
  • Expand and contract methods 704-706 are employed to expand and contract a region/zone “container” cell 204*-206* respectively. Remove method 708 facilitates removal of individual cells of the EUI 102, i.e. one or more regions/zone “container” cells 204*-206* or “action” cells 208*-210* without clearing all cells. Removal is achieved in like manner as clear method 702, except the operation is applied to selected ones of the descendant data objects, as opposed to all descendant data objects. Set Attribute method 710 facilitates setting of the earlier described region/zone “container” cell and “action” cell attributes associated with region/zone “container” cells 202 and 204*-206*, and “action” cells respectively.
  • For region/zone cells 204*-206* and “action” cells 208*-210*, their corresponding data objects 304*-306* and 314*-316* further include the association of a create, and a delete, a move and a place method 712-718. Create and delete methods 712-714, as their names suggest, facilitate creation and delete of the various descendant data objects 304*-306* and 314*-316* for the nested region/zone “container” cells and “action” cells 204*-206* and 208*-210*. Move and place methods 716-718, as their names suggest, facilitate movement and relocation of the various region/zone “container” cells and “action” cells 204*-206* by modifying e.g. the position attributes of the corresponding data objects 304*-306* and 314*-316*.
  • For the embodiment, data objects 314*-316* for “action” cells 208*-210* further include the association of a launch method 720 for launching a displayable region/zone cell 204*-206* represented by image icon “action” cells 210*.
  • With the exception of the handling of the impact that flows from the creation, deletion, expansion and contraction of a region/zone “container” cell 204*-206*, implementation of the above described methods are within the ability of those ordinarily skilled in the art, accordingly will not be further described. Handling of the impact that flows from the creation, deletion, expansion and contraction of a region/zone “container” cell 204*-206* will be described in more detail below, referencing FIGS. 11-16.
  • Interacting with EUI
  • FIGS. 8-9 illustrate two novel interactions with EUI 102, otherwise not available under the prior art, and the relevant operation flow of an implementor, such as an application, a cell manager or a window manager, incorporated with the teachings of the present invention. As illustrated, by virtue of the earlier described novel architecture and data organization, contents presented through two different zone “container” cells 206* may be easily interchanged or swapped, as denoted by arrow 802. The swapping operation may be initiated through any one of a number of user key sequences, e.g. user key sequences similar to a conventional drag and drop operation. The swapping may be efficiently accomplished by switching association of the applicable data objects 308*-316* and their region/zone “container” cells 204*-206*. Further, “action” cells 314*-316* may be easily relocated to any region/zone “container” cell 204*-206* as denoted by arrow 804.
  • As illustrated in FIG. 9, in response to a non-region/zone “container” cell impacted user interaction, an implementor (such as an application, a cell manager or a window manager incorporated with the teachings of the present invention) determines if the sequence of user inputs denotes a drag and drop of content from one region/zone “container” cell 204*-206* to another, block 902. If so, the implementor effectuates the content swapping, by switching the data objects' association with their region/zone “container” cells 204*-206*, as earlier described, block 904.
  • If the sequence of user inputs does not denote a drag and drop of content, for the embodiment, the implementor further determines if the sequence of user inputs denotes an “action” cell drag and drop, block 906. If so, the implementor effectuates the “action” cell movement and placement by similarly switching the “action” cell's association with region/zone “container” cells 204*-206*, optionally launching the represented region/zone “container” cell 204*-206* and its contents (if so requested by the sequence of user inputs), block 908.
  • If the sequence of user inputs does not denote either one of these novel interactions supported, the denoted prior art request may then be processed as in the prior art.
  • The sequence of user inputs denoting the earlier described content and “action” cell drag and drop may be practiced through any key sequences, e.g. by clicking on the content or icon, using a cursor control device, and keeping the applicable click button of the cursor control device held down, until the target region/zone “container” cell 206* is reached. At such time, the click button of the cursor control device may be returned to its normal position. In alternate embodiments, the present invention may be practiced with other key sequences instead.
  • Transition from a Current View to a Next View
  • FIG. 10 illustrates an overview of the operation of EUI 102. The current state of EUI 102 as defined by the current states of the corresponding data objects 302-316* of the constituting cells 202-210* of EUI 102, as illustrated, is referred to as the current view of EUI 102. In response to user interactions, such as a request to add or remove a region/zone “container” cell 204*-206*, or a request to expand or contract a region/zone “container” cell 204*-206*, the implementor of the present invention, e.g. an application, a cell manager or a window manager, performs a series of responsive calculations, and generate the next view of EUI 102.
  • The operational flow of the relevant aspects of the implementor, in response to the various user interactions of interest, will be described in turn below.
  • Addition/Expansion of a Region/Zone “Container” Cell
  • FIG. 11 illustrates the operational flow of the relevant aspects of an implementor, e.g. an application, a cell manager or a window manager, for responding to a request to add a region/zone “container” cell or an “action” cell to a region/zone “container” cell, or expand a region/zone “container” cell (hereinafter, for the description of FIG. 11, simply the “add/expand” request), in accordance with one embodiment. As illustrated, for the embodiment, the implementor first determines if the requested addition or expansion fits in the current available space of the host region/zone “container” cell, block 1102. The required space to accommodate the requested addition/expansion may e.g. be determined from the attribute values of the “new” or expanded region/zone “container” cell. If the requested addition or expansion fits in the current available space of the host region “container” cell, the requested addition or expansion is performed accordingly, block 1104.
  • However, if the requested addition or expansion does not fit in the current available space of the host region/zone “container” cell, the implementor successively undertakes one or more space creation actions, until either sufficient amount of available space has been created or until all possible space creation actions have been exhausted, blocks 1102-1108. As soon as sufficient available space has been created, operation continues at block 1104 as earlier described.
  • However, if all possible space creation actions have been exhausted and the amount of space required to accommodate the requested addition or expansion remains insufficient, the implementor successively undertakes one or more space requirement reduction actions, until either the required space has been reduced below the amount of available space or until all possible space reduction actions have been exhausted, blocks 1110-1112. Similarly, as soon as the required space to satisfy the addition or expansion request is reduced below the available space, operation continues at block 1104 as earlier described.
  • If likewise, all possible required space reduction actions are exhausted, and the amount of space required to accommodate the add/expand request remains above the available space, an “error”, such as “unable to add/expand”, is returned in response to the request.
  • In one embodiment, available space creation actions include shifting existing region/zone “container” cells within the host region/zone “container” cell the add/expand request is to be performed, and reducing the existing region/zone “container” cells if necessary. In one embodiment, shifting of existing region/zone “container” cells includes shifting the existing regions/zone “container” cells to a predetermined corner of the host region/zone “container” cell, e.g. the lower left corner, the upper left corner, the upper right corner or the lower right corner. In one embodiment, shifting of existing region/zone “container” cell to a corner is performed by aligning the region/zone “container” cells along one or the other boundary forming the corner. In another embodiment, shifting of existing region/zone “container” cells to a corner is performed by alternating in aligning the regions/zone “container” cells along the boundaries forming the corner.
  • In one embodiment, reducing the existing region/zone “container” cells is performed in an incremental manner. In another embodiment, reducing the existing region/zone “container” cells is performed in accordance with the relative priorities of the existing region/zone “container” cells. In one embodiment, reduction is performed in an incremental manner as well as in view of the relative priorities of the existing region/zone “container” cells. In one embodiment, the lowest priority region/zone “container” cell is first successively reduced to its kernel before the next higher priority region/zone “container” cell is successively reduced towards its kernel. In another embodiment, the reduction is successively performed in a round robin manner. In yet another embodiment, reduction of existing region or zone “container” cells further includes reducing one or more of the existing region/zone “container” cells to their icon “action” cell representations. Again, in one embodiment, the reduction to iconic representation is performed in view of the relative priorities of the existing region/zone “container” cells.
  • In one embodiment, reduction of required space action includes successively reducing the size of the region/zone “container” cell to be added, or to be expanded to.
  • Still referring to FIG. 11, back at block 1104, upon performing the requested addition/expansion, the implementor determines if any post addition/expansion operations need to be performed. If so, the post addition/expansion operations are performed, block 1118. If not, the process terminates.
  • Post addition/expansion operations may be required, as existing region/zone “container” cells may have been shifted to one corner of the host region/zone “container” cell or reduced, even to their kernel, in the course of accommodating the addition/expansion request. Accordingly, for the embodiment, upon accommodating the addition/expansion, attempts are made to at least partially restore the shifted and/or reduced region/zone “container” cells back to the pre-request state. Similarly, the post addition/expansion operations may include successively expanding reduced existing region/zone “container” cells, which may also be performed in view of the relative priorities, re-shifting shifted region/zone “container” cells (e.g. out from the coalesce corner) to achieve a more balance alignment of the nested region/zone “container” cells within the host region “container” cell. “Balance” may be measured e.g. by the average space gap between the boundaries of the various region/zone “container” cells.
  • FIG. 13 illustrates an exemplary addition of a new region/zone “container” cell into a region “container” cell having two existing region/zone “container” cells, in accordance with the above described process. As illustrated, the two existing region/zone “container” cells are first shifted to the lower left corner, with the two existing region/zone “container” cells aligned along the left boundary forming the lower left corner (illustrations A & B). Since there isn't enough available space to add the requested new region/zone “container” cell, the two existing region/zone “container” cells are successively reduced, eventually to their kernels, first the lower priority region/zone “container” cell, then the higher priority region/zone “container” cell (illustrations C-D). The new region/zone “container” cell is then added to the newly created space in the opposite upper right corner (Illustration E). Further, the reduced region/zone “container” cells are shifted back out from the lower right corner and aligned in the bottom portion of the host region/zone “container” cell (illustration F & G).
  • FIG. 14 illustrates another exemplary addition of a new region/zone “container” cell into a region/zone “container” cell having three existing region/zone “container” cells, in accordance with the above described process. Except in this illustration, the existing region/zone “container” cells are first shifted to the upper left corner, and then shifted out along the top portion of the host region/zone “container” cell instead. Further, the new region/zone “container” cell is reduced to reduce its space requirement before it is added to the host region/zone “container” cell.
  • Removal/Contraction of a Region/Zone “Container” Cell
  • FIG. 12 illustrates the operational flow of the relevant aspects of an implementor, e.g. an application, a cell-cell manager or a window manager, for responding to a request to remove a region/zone “container” cell from a region “container” cell, or an “action” cell from a region/zone “container” cell (hereinafter, for the description of FIG. 12, simply the “remove/contract” request), in accordance with one embodiment. As illustrated, for the embodiment, the implementor removes or contracts the region/zone “container” cell, or the “action“cell as requested, block 1202. Thereafter, the implementor determines if the there are iconized region/zone “container” cells of the host region/zone “container” cell that can be restored into the newly increased available space of the host region/zone “container” cell, block 1204. If so, the implementor restores one or more of the eligible iconized region/zone “container” cells, subject to the available space, block 1206. In one embodiment, the restoration is performed in accordance with the relative priorities of the iconized region/zone “container” cells.
  • Upon exhausting the possibility of restoring iconized region/zone “container” cells (either because there are none left or there isn't enough space), the implementor determines if there are any reduced region/zone “container” cells that can be grown towards their maximum sizes, block 1208. If so, the implementor successively grows one or more of the reduced region/zone “container” cells, subject to the available space, block 1210. In one embodiment, the successive growth is also performed in accordance with the relative priorities of the reduced region/zone “container” cells.
  • Next, similar to the process of adding or expanding a region/zone “container” cell, upon restoring or growing the iconized or reduced region/zone “container” cells, the implementor determines if any post restoration or growth actions need to be performed, block 1212. If so, the implementor performs the post restoration or growth actions, such as shifting and aligning to “re-balance” the region/zone “container” cells of the host region/zone “container” cell, block 1214. As before, “balance” may be measured e.g. by the average space gap between the boundaries of the various region/zone “container” cells
  • Alternate Embodiment—Extended Boundary Method
  • FIG. 15 illustrates the operational flow of the relevant aspects of an implementor, e.g. an application, a cell manager or a window manager for responding to a request to expand a region “container” cell (hereinafter, for the description of FIG. 15, simply the “add/expand” request), in accordance with another embodiment. In this embodiment, for efficiency of operation, region “container” cells are nested within a host region “container” cell in a contiguous manner, i.e. without available space gap between their boundaries.
  • As illustrated, in response to a request to grow a region “container” cell by an amount, the implementor first generates extended boundaries for the growth region “container” cell (see FIG. 16), block 1502. Next, the implementor determines growth impact for up to n levels removed in all directions, using the extended boundaries.
  • For example, for the exemplary growth request illustrated in FIG. 16, growth impact of the center region “container” cell may be determined using its extended boundaries, based on their intersections with other boundaries. The impacts on region “container” cells up to 2 degrees removed from the center region “container” cell may be summarized as follows:
  • up down left right
    Neighbor region A, B 1) F, E H, G C, D
    “container” cell
    affected
    Second level none none special case L, K, J
    region
    “container” cell
    affected
    Side Effects H, C D F none
  • Thereafter, for the embodiment, the implementor iteratively expands the region “container” cell in the various directions, adjusting the impacted region “container” cell to accommodate the growth, block 1506. The process continues until the desired amount of growth is achieved. If the desired growth is not achievable, for the embodiment, an “error”, such as “growth unachievable”, is returned, block 1508.
  • Implementor
  • As alluded to earlier, the present invention may be practiced e.g. by endowing an application itself, a cell manager or a window manager with the teachings of the present invention. In the latter cases, a cell/window manager implementor may be effectuated in at least two manners, FIG. 17 a and FIG. 17 b. In the embodiment of FIG. 17 a, cell manager 1704 is equipped with teachings of the present invention interfaces and interacts with applications 1702 using its services, and display device driver 1706 as in the prior art. Accordingly, under this embodiment, typically, the universal region “container” cell 202 is the entire display space of a display device.
  • In the alternate embodiment of FIG. 17 b, the cell manager implementor operates as an “auxiliary” cell manager 1703 to a conventional window manager 1704. Applications 1702 may interact with conventional window manager 1704 directly or indirectly through auxiliary cell manager 1703 (equipped with the teachings of the present invention). Accordingly, universal region “container” cell 202 may be a window of a conventional window approach, except within that window, the EUI is implemented and practiced as earlier described, in accordance with the present invention.
  • In yet other alternate embodiments, auxiliary cell manager 1703 may be integrally incorporated as part of window manager 1704.
  • Example Computer System
  • FIG. 18 illustrates an exemplary computer system or device suitable for practicing the present invention, in accordance with one embodiment. As shown, computer system/device 1800 (hereinafter simply “device”) includes one or more processors 1802 and system memory 1804. Additionally, device 1800 includes mass storage devices 1806 (such as diskette, hard drive, CDROM and so forth), input/output devices 1808 (such as keyboard, cursor control and so forth) and communication interfaces 1810 (such as network interface cards, modems and so forth). The elements are coupled to each other via system bus 1812, which represents one or more buses. In the case of multiple buses, they are bridged by one or more bus bridges (not shown). Each of these elements performs its conventional functions known in the art. In particular, system memory 1804 and mass storage 1806 are employed to store a working copy and a permanent copy of the programming instructions implementing the implementor of the present invention, e.g. an application, a cell manager or a window manager. The permanent copy of the programming instructions may be loaded into mass storage 1806 in the factory, or in the field, through a distribution medium (not shown) or through communication interface 1810 (from a distribution server (not shown)). The constitution of these elements 1802-1812 are known, and accordingly will not be further described.
  • Example Network Environment
  • FIG. 19 shows an exemplary network environment suitable for practicing the present invention, in accordance with one embodiment. In this embodiment, contents are presented for user of client device 1902 to enjoy, employing the hierarchical cell based EUI 102 of the present invention. In one embodiment, display device 1904 a on which EUI 102 is rendered, is an integral of client device 1902. In another embodiment, display device 1904 b on which EUI 102 is rendered, is an separate and distinct “peripheral” of client device 1902.
  • In various embodiments, the implementor of the present invention, e.g. an application, a cell manager or a window manager, may be executing on client device 1902 itself. In other embodiments, the implementor may be executing on server 1906 instead. Examples of the former case may be a personal computer, an enhanced integrated television set, and a set-top box. Examples of the latter case may be a content streaming server or a cable programming broadcasting device.
  • Client device 1902 and server 1906 are coupled to each other via one or more private and/or public networks, including e.g. the Internet, employing Digital Subscriber Lines (DSL) (or other variants xDSL), Cable Network, Integrated Digital Service Network (ISDN), Asynchronous Transfer Mode (ATM), Frame Relay, or other high performance communication links/connections of like kind. Communications between client device 1902 and server 1906 may be accomplished via any one of a number of communication protocols known in the art, including but are not limited to the TCP/IP protocol.
  • Examples of content may include one or more of the following content or program types
  • Special
    Events a) News b) TV c) Sports
    Concerts Live Reality Golf
    Produced
    Olympics Shows Network Football
    Political
    Rallies Syndication Racing
    Amusement Children's TV Football
    Plays Treasure Hunts Soccer
  • Conclusion & Epilog
  • Thus, a novel EUI method and apparatus has been described. While the present invention has been described with the foregoing embodiments, the present invention is not so limited. The present invention may be practiced with modifications and extensions to the earlier described embodiments. The full scope of the present invention is defined by the claims to follow.

Claims (21)

1-14. (canceled)
15. In a computing environment having a processor, a memory, and a display device, a method of operation comprising:
rendering on the display device, by an application or a display driver operated by the processor, a plurality of display windows in a non-overlapping manner, unaligned horizontally and vertically, using computationally an hierarchy of display container cells created and stored in the memory, wherein the hierarchy of display container cells comprises at least two levels of display container cells; and
receiving by the application or display driver, a request to expand, contract or remove a selected one of the display windows;
expanding, contracting or removing the selected one of the display window, by modifying one or more of the display container cells, including modifying the one or more display container cells to achieve at least one of
shifting or repositioning one or more of the other display windows to coalesce available space between the display windows, or
downsizing or upsizing one or more of the other display windows to increase or decrease available space between the display windows.
16. The method of claim 15, wherein modifying one or more of the display container cells comprises modifying the one or more of the display container cells to the display windows to a corner of an area of the display device.
17. The method of claim 15, wherein modifying one or more of the display container cells comprises successively modifying the one or more of the display container cells to successively downsize the display windows.
18. The method of claim 17, wherein successively modifying the one or more of the display container cells to successively downsize the display windows comprises successively modifying the display container cells in order of their relative priorities.
19. The method of claim 15, wherein successively modifying the one or more of the display container cells to successively downsize the display windows comprises modifying one or more display containers to transform one or more of the display windows to their kernel forms.
20. The method of claim 15, wherein successively modifying the one or more of the display container cells to successively downsize the display windows comprises modifying one or more display containers to transform the one or more display windows to one or more image icons.
21. The method of claim 15, wherein the method further comprises upon modifying the display container cells to accommodate a request to accommodate a request to expand a selected one of the display windows, re-modifying one or more of the display container cells to achieve at least one of
upsizing one or more downsized display windows, and
back-shifting one or more shifted display windows.
22. The method of claim 21, wherein re-modifying one or more of the display container cells to achieve upsizing of one or more downsized display windows comprises successively re-modifying the one or more of the display container cells to upsize the downsized display windows.
23. The method of claim 21, where re-modifying one or more of the display container cells to back-shift one or more shifted display windows comprises re-modifying one or more of the display container cells to successively back-shift the shifted display windows.
24. The method of claim 15, further comprising upon modifying one or more display container cells to downsize one or more display windows, down scaling one or more content of one or more downsized display windows to enable the one more contents to remain fully visible within the downsized windows.
25. The method of claim 15, further comprising upon modifying one or more display container cells to upsize one or more display windows, upscaling one or more content of one or more upsized display windows to enable the one more contents to fully utilize all space within the upsized windows.
26. The method of claim 15, wherein rendering comprises the application or display driver using an hierarchy of display container cells including a host display container cell created and stored in the memory, and wherein the method further comprises the application or display driver coupling at last some of the plurality of display container cells to the host display container cell as children display container cells of the host display container cells, with each of the display container cell logically inheriting at least an attribute or a method of the host display container cell.
27. The method of claim 15, wherein rendering comprises the application or display driver using an hierarchy of display container cells including a number of display container cells greater than a number of the plurality display windows, and wherein the method further comprises the application or display driver coupling at least a first of the display container cell as a child display container cell of a second display container cell, with the first display container cell logically inheriting at least an attribute or a method of the second display container cell.
28. The method of claim 27, wherein coupling at least a first of the display container cell as a child display container cell of a second display container cell, comprises the application or display driver coupling at least a first of the display container cell with associated content as a child display container cell of a second display container cell without associated content.
29. The method of claim 15, wherein rendering comprises the application or display driver using an hierarchy of display container cells including a number of display container cells that are typed, with each of at lease some display container cells having one or more attributes, including a priority attribute, and wherein the application or display driver modifying the one or more display containers based at least in part on the priority attribute(s) of the one or more display containers.
30. A method for operating a computing device, the method comprising:
rendering on a display device of the computing device, by an application or a display driver operated by a processor of the computing device, an end user interface having a plurality of windows with corresponding contents, using computationally a plurality of display container cells created and stored in a memory of the computing device, wherein each display container cell has one or more associated attributes, including a priority attribute;
receiving by the application or display driver a request to expand, contract or remove one of the display windows;
expanding, contracting or removing the one display window, by the application or display driver, including at least one of expanding, contracting, shifting or repositioning one or more of other ones of the plurality of display windows, by modifying one or more of the display container cells, including modifying one or more of the display container cells based at least in part on the priority attributes of the one or more display container cells.
31. The method of claim 30, wherein rendering comprises rendering by the application or device driver the plurality of windows in a non-overlapping configuration, unaligned horizontally and unaligned vertically.
32. The method of claim 30 further comprising:
receiving by the application or display driver a request to add to the end user interface another display window having another corresponding content, wherein the second display window is implemented computationally using another display container cell; and
adding to the end user interface the another display window, by the application or display driver, including at least one of expanding, contracting, shifting or repositioning one or more of the plurality of display windows, by modifying one or more of the corresponding display container cells of the one or more of the plurality of display windows, based at least in part on the priority attributes of the one or more corresponding display container cells.
33. The method of claim 30, further comprising upon modifying one or more display container cells to downsize one or more display windows, down scaling one or more content of one or more downsized display windows to enable the one more contents to remain fully visible within the downsized windows.
34. The method of claim 30, further comprising upon modifying one or more display container cells to upsize one or more display windows, upscaling one or more content of one or more upsized display windows to enable the one more contents to fully utilize all space within the upsized windows.
US12/469,551 2001-04-30 2009-05-20 Display container cell modification in a cell based eui Abandoned US20100017748A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/469,551 US20100017748A1 (en) 2001-04-30 2009-05-20 Display container cell modification in a cell based eui

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US28793301P 2001-04-30 2001-04-30
US28793201P 2001-04-30 2001-04-30
US28797201P 2001-04-30 2001-04-30
US28766301P 2001-04-30 2001-04-30
US28794301P 2001-04-30 2001-04-30
US28798001P 2001-04-30 2001-04-30
US28797701P 2001-04-30 2001-04-30
US10/136,679 US7013432B2 (en) 2001-04-30 2002-04-30 Display container cell modification in a cell based EUI
US11/355,236 US7539947B2 (en) 2001-04-30 2006-02-14 Display container cell modification in a cell based EUI
US12/469,551 US20100017748A1 (en) 2001-04-30 2009-05-20 Display container cell modification in a cell based eui

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/355,236 Continuation US7539947B2 (en) 2001-04-30 2006-02-14 Display container cell modification in a cell based EUI

Publications (1)

Publication Number Publication Date
US20100017748A1 true US20100017748A1 (en) 2010-01-21

Family

ID=27569592

Family Applications (5)

Application Number Title Priority Date Filing Date
US10/136,669 Expired - Fee Related US7165228B2 (en) 2001-04-30 2002-04-30 Cell based end user interface
US10/136,679 Expired - Fee Related US7013432B2 (en) 2001-04-30 2002-04-30 Display container cell modification in a cell based EUI
US10/136,638 Expired - Fee Related US7013431B2 (en) 2001-04-30 2002-04-30 Cell based EUI methods and apparatus
US11/355,236 Expired - Fee Related US7539947B2 (en) 2001-04-30 2006-02-14 Display container cell modification in a cell based EUI
US12/469,551 Abandoned US20100017748A1 (en) 2001-04-30 2009-05-20 Display container cell modification in a cell based eui

Family Applications Before (4)

Application Number Title Priority Date Filing Date
US10/136,669 Expired - Fee Related US7165228B2 (en) 2001-04-30 2002-04-30 Cell based end user interface
US10/136,679 Expired - Fee Related US7013432B2 (en) 2001-04-30 2002-04-30 Display container cell modification in a cell based EUI
US10/136,638 Expired - Fee Related US7013431B2 (en) 2001-04-30 2002-04-30 Cell based EUI methods and apparatus
US11/355,236 Expired - Fee Related US7539947B2 (en) 2001-04-30 2006-02-14 Display container cell modification in a cell based EUI

Country Status (2)

Country Link
US (5) US7165228B2 (en)
WO (1) WO2002089108A1 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100011316A1 (en) * 2008-01-17 2010-01-14 Can Sar System for intelligent automated layout and management of interactive windows
US20100251176A1 (en) * 2009-03-24 2010-09-30 Microsoft Corporation Virtual keyboard with slider buttons
US20120102385A1 (en) * 2010-10-25 2012-04-26 Konica Minolta Systems Laboratory Inc. Determining heights of table cells
USD665414S1 (en) * 2011-09-12 2012-08-14 Microsoft Corporation Display screen with animated graphical user interface
WO2014130990A1 (en) * 2013-02-25 2014-08-28 Savant Systems, Llc Video tiling
US20180096173A1 (en) * 2015-09-25 2018-04-05 International Business Machines Corporation Overlapping, discrete tamper-respondent sensors
US10272294B2 (en) 2016-06-11 2019-04-30 Apple Inc. Activity and workout updates
US10409483B2 (en) 2015-03-07 2019-09-10 Apple Inc. Activity based thresholds for providing haptic feedback
US10496259B2 (en) 2012-05-09 2019-12-03 Apple Inc. Context-specific user interfaces
US10649622B2 (en) 2012-05-09 2020-05-12 Apple Inc. Electronic message user interface
US10771606B2 (en) 2014-09-02 2020-09-08 Apple Inc. Phone user interface
US10872318B2 (en) 2014-06-27 2020-12-22 Apple Inc. Reduced size user interface
US11216119B2 (en) 2016-06-12 2022-01-04 Apple Inc. Displaying a predetermined view of an application
US11402968B2 (en) 2014-09-02 2022-08-02 Apple Inc. Reduced size user in interface
US11435830B2 (en) 2018-09-11 2022-09-06 Apple Inc. Content-based tactile outputs
US11474626B2 (en) 2014-09-02 2022-10-18 Apple Inc. Button functionality
US11604571B2 (en) 2014-07-21 2023-03-14 Apple Inc. Remote user interface
US11656751B2 (en) 2013-09-03 2023-05-23 Apple Inc. User interface for manipulating user interface objects with magnetic properties
US11743221B2 (en) 2014-09-02 2023-08-29 Apple Inc. Electronic message user interface
US11829576B2 (en) 2013-09-03 2023-11-28 Apple Inc. User interface object manipulations in a user interface
US11893212B2 (en) 2021-06-06 2024-02-06 Apple Inc. User interfaces for managing application widgets

Families Citing this family (169)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20010817A (en) * 2001-04-20 2003-02-14 Nokia Corp A method for displaying information on an electronic device display and an electronic device
US9405459B2 (en) 2011-08-24 2016-08-02 Z124 Unified desktop laptop dock software operation
US20130104062A1 (en) * 2011-09-27 2013-04-25 Z124 Unified desktop input segregation in an application manager
US9715252B2 (en) 2011-08-24 2017-07-25 Z124 Unified desktop docking behavior for window stickiness
US9268518B2 (en) 2011-09-27 2016-02-23 Z124 Unified desktop docking rules
US20040119751A1 (en) * 2002-08-07 2004-06-24 Minolta Co., Ltd. Data input device, image processing device, data input method and computer readable recording medium on which data input program is recorded
JP2004280655A (en) * 2003-03-18 2004-10-07 Brother Ind Ltd Display control device and program
US7295852B1 (en) * 2003-05-01 2007-11-13 Palm, Inc. Automated telephone conferencing method and system
US7417644B2 (en) * 2003-05-12 2008-08-26 Microsoft Corporation Dynamic pluggable user interface layout
EP1477894A3 (en) * 2003-05-16 2006-10-25 Sap Ag System, method, computer program product and article of manufacture for manipulating a graphical user interface
JP4193629B2 (en) * 2003-07-25 2008-12-10 ソニー株式会社 Screen display device, program, and screen display method
US8065627B2 (en) * 2003-09-30 2011-11-22 Hewlett-Packard Development Company, L.P. Single pass automatic photo album page layout
US8056013B2 (en) 2005-05-13 2011-11-08 Hewlett-Packard Development Company, L.P. Method for arranging graphic assemblies
US7743322B2 (en) * 2003-09-30 2010-06-22 Hewlett-Packard Development Company, L.P. Automatic photo album page layout
US7555730B2 (en) * 2005-05-12 2009-06-30 Hewlett-Packard Development Company, L.P. Method for arranging graphic assemblies
US20050081155A1 (en) * 2003-10-02 2005-04-14 Geoffrey Martin Virtual player capable of handling dissimilar content
US7370284B2 (en) * 2003-11-18 2008-05-06 Laszlo Systems, Inc. User interface for displaying multiple applications
US7441204B2 (en) * 2004-02-06 2008-10-21 Microsoft Corporation Method and system for automatically displaying content of a window on a display that has changed orientation
US7899802B2 (en) * 2004-04-28 2011-03-01 Hewlett-Packard Development Company, L.P. Moveable interface to a search engine that remains visible on the desktop
US7487443B2 (en) * 2004-04-30 2009-02-03 International Business Machines Corporation Portal page view layout based on weights
US9330187B2 (en) * 2004-06-22 2016-05-03 International Business Machines Corporation Persuasive portlets
US8365083B2 (en) * 2004-06-25 2013-01-29 Hewlett-Packard Development Company, L.P. Customizable, categorically organized graphical user interface for utilizing online and local content
US7721197B2 (en) * 2004-08-12 2010-05-18 Microsoft Corporation System and method of displaying content on small screen computing devices
US7656543B2 (en) * 2004-11-12 2010-02-02 Hewlett-Packard Development Company, L.P. Albuming images
US8418075B2 (en) 2004-11-16 2013-04-09 Open Text Inc. Spatially driven content presentation in a cellular environment
US8001476B2 (en) 2004-11-16 2011-08-16 Open Text Inc. Cellular user interface
US8161377B2 (en) * 2005-03-01 2012-04-17 Hewlett-Packard Development Company, L.P. Arranging images on pages of an album
US7730418B2 (en) * 2005-05-04 2010-06-01 Workman Nydegger Size to content windows for computer graphics
US7760956B2 (en) 2005-05-12 2010-07-20 Hewlett-Packard Development Company, L.P. System and method for producing a page using frames of a video stream
US7644356B2 (en) * 2005-06-10 2010-01-05 Hewlett-Packard Development Company, L.P. Constraint-based albuming of graphic elements
US20070055685A1 (en) * 2005-08-18 2007-03-08 Avaya Technology Corp. Telecommunications terminal with multiple display modes
US8225231B2 (en) 2005-08-30 2012-07-17 Microsoft Corporation Aggregation of PC settings
KR100735235B1 (en) * 2005-10-12 2007-07-03 삼성전자주식회사 Different Service Providing Method By Using PIP Function In T-DMB Terminal
GB0605587D0 (en) * 2006-03-20 2006-04-26 British Broadcasting Corp Graphical user interface methods and systems
JP4933129B2 (en) * 2006-04-04 2012-05-16 クラリオン株式会社 Information terminal and simplified-detailed information display method
US20070265929A1 (en) * 2006-04-26 2007-11-15 Michael Danninger Portal page personalization offering a direct manipulative window arrangement functionality
KR101282251B1 (en) * 2006-05-23 2013-07-10 삼성전자주식회사 Display apparatus, image processing apparatus and control method thereof
US8028243B1 (en) 2006-06-29 2011-09-27 Cadence Design Systems, Inc. Abstraction-aware distributed window configurations in complex graphical user interfaces
US8527907B2 (en) * 2006-07-31 2013-09-03 Adobe Systems Incorporated Screen relayout
KR100843077B1 (en) * 2006-09-28 2008-07-02 삼성전자주식회사 Apparatus and method for displaying grouped display information by variable size on touch screen
US8056014B2 (en) * 2006-10-04 2011-11-08 International Business Machines Corporation Web portal page interactive user interfaces with maximum accessibility to user selected portlets
US8375302B2 (en) 2006-11-17 2013-02-12 Microsoft Corporation Example based video editing
US8887087B2 (en) * 2007-03-28 2014-11-11 Sap Se Column layout
US20090037827A1 (en) * 2007-07-31 2009-02-05 Christopher Lee Bennetts Video conferencing system and method
JP2009183592A (en) * 2008-02-08 2009-08-20 Ge Medical Systems Global Technology Co Llc Operation information input device and ultrasonic imaging device
US20100107100A1 (en) 2008-10-23 2010-04-29 Schneekloth Jason S Mobile Device Style Abstraction
US8386954B2 (en) * 2008-11-21 2013-02-26 Microsoft Corporation Interactive media portal
KR20100070146A (en) * 2008-12-17 2010-06-25 삼성전자주식회사 Display method and photographing apparatus and display apparatus using the same
US20100208082A1 (en) * 2008-12-18 2010-08-19 Band Crashers, Llc Media systems and methods for providing synchronized multiple streaming camera signals of an event
US9152292B2 (en) 2009-02-05 2015-10-06 Hewlett-Packard Development Company, L.P. Image collage authoring
US8238876B2 (en) 2009-03-30 2012-08-07 Microsoft Corporation Notifications
US8175653B2 (en) 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US8707156B2 (en) * 2009-04-02 2014-04-22 Business Objects, S.A. Render engine for spreadsheet
US8291314B2 (en) * 2009-04-23 2012-10-16 Hewlett-Packard Development Company, L.P. Arranging graphic objects on a page
US8161384B2 (en) * 2009-04-23 2012-04-17 Hewlett-Packard Development Company, L.P. Arranging graphic objects on a page with text
US20100287492A1 (en) * 2009-05-05 2010-11-11 Emblaze Mobile Ltd Apparatus and method for displaying menu items
US8836648B2 (en) 2009-05-27 2014-09-16 Microsoft Corporation Touch pull-in gesture
JP5795582B2 (en) * 2009-07-31 2015-10-14 サムスン エレクトロニクス カンパニー リミテッド Integrated user interface generation method and apparatus for performing the same
FR2953590B1 (en) * 2009-12-03 2012-08-03 Mobile Devices Ingenierie INFORMATION DEVICE FOR VEHICLE DRIVER AND METHOD FOR CONTROLLING SUCH A DEVICE.
US8954838B2 (en) * 2009-12-04 2015-02-10 Synopsys, Inc. Presenting data in a tabular format
US9785342B2 (en) * 2009-12-31 2017-10-10 International Business Machines Corporation Enhanced graphical display for hand-held devices
KR101761612B1 (en) * 2010-07-16 2017-07-27 엘지전자 주식회사 Mobile terminal and Method for organizing menu screen thereof
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US20120159383A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Customization of an immersive environment
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US20120304132A1 (en) 2011-05-27 2012-11-29 Chaitanya Dev Sareen Switching back to a previously-interacted-with application
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US8687023B2 (en) 2011-08-02 2014-04-01 Microsoft Corporation Cross-slide gesture to select and rearrange
US20130055165A1 (en) * 2011-08-23 2013-02-28 Paul R. Ganichot Depth Adaptive Modular Graphical User Interface
US20130104051A1 (en) 2011-09-27 2013-04-25 Z124 Unified desktop big brother application pools
US20160124698A1 (en) 2011-08-24 2016-05-05 Z124 Unified desktop triad control user interface for an application launcher
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US8922575B2 (en) 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US10353566B2 (en) 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US11416131B2 (en) * 2011-09-27 2022-08-16 Z124 Unified desktop input segregation in an application manager
US9495012B2 (en) 2011-09-27 2016-11-15 Z124 Secondary single screen mode activation through user interface activation
US20130080899A1 (en) 2011-09-27 2013-03-28 Paul E. Reeves Unified desktop big brother applications
USD728578S1 (en) * 2011-11-17 2015-05-05 Jtekt Corporation Control board device with graphical user interface
US9164544B2 (en) 2011-12-09 2015-10-20 Z124 Unified desktop: laptop dock, hardware configuration
KR20130071908A (en) * 2011-12-21 2013-07-01 삼성전자주식회사 Device and method for editing screen in wireless terminal
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
US9696880B2 (en) * 2011-12-26 2017-07-04 Inadev Corporation Screen management system
JP5762570B2 (en) * 2011-12-27 2015-08-12 パナソニックヘルスケアホールディングス株式会社 Biological sample measuring device
US9128605B2 (en) 2012-02-16 2015-09-08 Microsoft Technology Licensing, Llc Thumbnail-image selection of applications
USD722608S1 (en) 2012-03-23 2015-02-17 Microsoft Corporation Display screen with graphical user interface
US9256349B2 (en) * 2012-05-09 2016-02-09 Microsoft Technology Licensing, Llc User-resizable icons
KR101868352B1 (en) * 2012-05-14 2018-06-19 엘지전자 주식회사 Mobile terminal and control method thereof
US20140013271A1 (en) * 2012-07-05 2014-01-09 Research In Motion Limited Prioritization of multitasking applications in a mobile device interface
US20140055495A1 (en) * 2012-08-22 2014-02-27 Lg Cns Co., Ltd. Responsive user interface engine for display devices
USD736233S1 (en) * 2012-11-16 2015-08-11 The Yokohama Rubber Co., Ltd. Display device for tire pressure monitoring system with graphical user interface
USD736234S1 (en) * 2012-11-16 2015-08-11 The Yokohama Rubber Co., Ltd. Display device for tire pressure monitoring system with graphical user interface
USD737293S1 (en) * 2012-11-16 2015-08-25 The Yokohama Rubber Co., Ltd. Display device for tire pressure monitoring system with graphical user interface
USD735743S1 (en) * 2012-11-16 2015-08-04 The Yokohama Rubber Co., Ltd. Display device for tire pressure monitoring system with graphical user interface
USD736807S1 (en) * 2012-11-26 2015-08-18 Lg Electronics Inc. Display of a multimedia terminal with transitional graphic image
USD736237S1 (en) * 2012-11-26 2015-08-11 Lg Electronics Inc. Display of a multimedia terminal with transitional graphic image
USD736236S1 (en) * 2012-11-26 2015-08-11 Lg Electronics Inc. Display of a multimedia terminal with transitional graphic image
USD752105S1 (en) * 2012-11-30 2016-03-22 Lg Electronics Inc. Multimedia terminal having transitional graphical user interface
USD752104S1 (en) * 2012-11-30 2016-03-22 Lg Electronics Inc. Multimedia terminal having transitional graphic user interface
USD733171S1 (en) * 2013-02-05 2015-06-30 Tastebud Technologies, Inc. Display screen with graphical user interface
CL2013001373S1 (en) * 2013-02-22 2013-12-20 Samsung Electronics Co Ltd Industrial drawing of ornamental image settings applied to a screen display
USD745543S1 (en) * 2013-02-22 2015-12-15 Samsung Electronics Co., Ltd. Display screen with animated user interface
USD745024S1 (en) * 2013-02-22 2015-12-08 Samsung Electronics Co., Ltd. Display screen or a portion thereof with graphic user interface
USD737297S1 (en) * 2013-02-23 2015-08-25 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
AU349903S (en) * 2013-02-23 2013-07-26 Samsung Electronics Co Ltd Display screen for an electronic device
AU349902S (en) * 2013-02-23 2013-07-26 Samsung Electronics Co Ltd Display screen for an electronic device
USD737835S1 (en) * 2013-02-23 2015-09-01 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD737296S1 (en) * 2013-02-23 2015-08-25 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
AU349900S (en) * 2013-02-23 2013-07-26 Samsung Electronics Co Ltd Display screen for an electronic device
USD735229S1 (en) * 2013-02-23 2015-07-28 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD735228S1 (en) * 2013-02-23 2015-07-28 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
AU349939S (en) * 2013-02-23 2013-07-29 Samsung Electronics Co Ltd Display screen for an electronic device
USD737298S1 (en) * 2013-02-23 2015-08-25 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD737295S1 (en) * 2013-02-23 2015-08-25 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD736809S1 (en) * 2013-02-23 2015-08-18 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US20140282139A1 (en) * 2013-03-13 2014-09-18 Outright, Inc. System for mobile content management
USD740306S1 (en) * 2013-03-14 2015-10-06 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US20140282207A1 (en) * 2013-03-15 2014-09-18 Rita H. Wouhaybi Integration for applications and containers
USD755212S1 (en) * 2013-04-24 2016-05-03 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD749608S1 (en) * 2013-04-24 2016-02-16 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD751097S1 (en) 2013-05-14 2016-03-08 Google Inc. Display screen with graphical user interface
WO2014197354A1 (en) 2013-06-05 2014-12-11 Snakt, Inc. Methods and systems for creating, combining, and sharing time-constrained videos
USD753158S1 (en) * 2013-06-06 2016-04-05 Caresource Portion on a display screen with transitional user interface
USD738394S1 (en) 2013-06-09 2015-09-08 Apple Inc. Display screen or portion thereof with animated graphical user interface
USD741350S1 (en) 2013-06-10 2015-10-20 Apple Inc. Display screen or portion thereof with animated graphical user interface
USD756387S1 (en) * 2013-09-03 2016-05-17 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD772278S1 (en) 2013-12-18 2016-11-22 Apple Inc. Display screen or portion thereof with animated graphical user interface
USD754698S1 (en) * 2014-01-27 2016-04-26 Quatius Limited Display screen with graphical user interface
USD754696S1 (en) * 2014-01-27 2016-04-26 Nortek Security & Control Llc Computer screen display panel with graphical user interface
USD761826S1 (en) * 2014-01-27 2016-07-19 Quatius Limited Display screen or portion thereof with graphical user interface
USD754697S1 (en) * 2014-01-27 2016-04-26 Nortek Security & Control Llc Computer screen display panel with graphical user interface
USD776142S1 (en) * 2014-01-29 2017-01-10 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD776141S1 (en) * 2014-01-29 2017-01-10 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US9933922B2 (en) * 2014-03-27 2018-04-03 Sybase, Inc. Child container control of parent container of a user interface
KR102298602B1 (en) 2014-04-04 2021-09-03 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Expandable application representation
EP3129846A4 (en) 2014-04-10 2017-05-03 Microsoft Technology Licensing, LLC Collapsible shell cover for computing device
EP3129847A4 (en) 2014-04-10 2017-04-19 Microsoft Technology Licensing, LLC Slider cover for computing device
US9703445B2 (en) 2014-05-07 2017-07-11 International Business Machines Corporation Dynamic, optimized placement of computer-based windows
USD769892S1 (en) 2014-05-30 2016-10-25 Apple Inc. Display screen or portion thereof with graphical user interface
US11092269B2 (en) 2014-05-30 2021-08-17 Oetiker Ny, Inc. Fluid connector with full insertion assurance cap with secondary latches
TR201820184T4 (en) 2014-05-30 2019-02-21 Oetiker Ny Inc Fluid Coupling with Secondary Clamps with Full Seat Safety Cap
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
CN106662891B (en) 2014-10-30 2019-10-11 微软技术许可有限责任公司 Multi-configuration input equipment
USD766928S1 (en) 2015-02-12 2016-09-20 Snakt, Inc. Video viewing display screen with transitional graphical user interface
USD766929S1 (en) * 2015-02-13 2016-09-20 Snakt, Inc. Video viewing display screen with graphical user interface
US10719220B2 (en) * 2015-03-31 2020-07-21 Autodesk, Inc. Dynamic scrolling
USD765699S1 (en) 2015-06-06 2016-09-06 Apple Inc. Display screen or portion thereof with graphical user interface
WO2017094800A1 (en) * 2015-11-30 2017-06-08 株式会社ニコン Display device, display program, and display method
CN107015721A (en) * 2016-10-20 2017-08-04 阿里巴巴集团控股有限公司 The management method and device of a kind of application interface
USD846587S1 (en) 2017-06-04 2019-04-23 Apple Inc. Display screen or portion thereof with animated graphical user interface
USD861704S1 (en) 2017-09-11 2019-10-01 Apple Inc. Electronic device with graphical user interface
US10942632B1 (en) * 2017-11-06 2021-03-09 Zocomotion Ltd. Self-clustering rearrangeable stacks of visible information and active in situ link portals in an infinitely zoomable space on a graphical computing device
USD877175S1 (en) 2018-06-04 2020-03-03 Apple Inc. Electronic device with graphical user interface
USD883319S1 (en) 2018-10-29 2020-05-05 Apple Inc. Electronic device with graphical user interface
CN110704146A (en) * 2019-08-30 2020-01-17 华为技术有限公司 Focus management method applied to electronic equipment and electronic equipment
CN110795194B (en) * 2019-10-31 2021-09-07 北京字节跳动网络技术有限公司 Desktop display control method, device, terminal and storage medium

Citations (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2185799A (en) * 1938-12-08 1940-01-02 Kenneth R Blake Liquid cooling means and container therefor
US4208229A (en) * 1978-12-15 1980-06-17 Giardini Dante S System for repairing panes of glass
US4712191A (en) * 1982-08-11 1987-12-08 U.S. Philips Corporation Display system with nested information display
US4890098A (en) * 1987-10-20 1989-12-26 International Business Machines Corporation Flexible window management on a computer display
US4908248A (en) * 1988-05-19 1990-03-13 Mitsuyoshi Nakashima Cooling device for cooling parts in the proximity thereof
US5404441A (en) * 1992-06-23 1995-04-04 Hitachi, Ltd. Method and apparatus for automatically generating a graphical user interface control program
US5513342A (en) * 1993-12-28 1996-04-30 International Business Machines Corporation Display window layout system that automatically accommodates changes in display resolution, font size and national language
US5561757A (en) * 1994-04-06 1996-10-01 Altera Corporation Computer user interface having tiled and overlapped window areas
US5600346A (en) * 1990-06-19 1997-02-04 Fujitsu Limited Multiwindow display control method and apparatus
US5621904A (en) * 1995-01-24 1997-04-15 Intel Corporation Method and apparatus for avoiding overlapped windows and a gutter space
US5712995A (en) * 1995-09-20 1998-01-27 Galileo Frames, Inc. Non-overlapping tiling apparatus and method for multiple window displays
US5819055A (en) * 1994-12-13 1998-10-06 Microsoft Corporation Method and apparatus for docking re-sizeable interface boxes
US5838318A (en) * 1995-11-10 1998-11-17 Intel Corporation Method and apparatus for automatically and intelligently arranging windows on a display device
US5850548A (en) * 1994-11-14 1998-12-15 Borland International, Inc. System and methods for visual programming based on a high-level hierarchical data flow model
US5874962A (en) * 1996-03-08 1999-02-23 International Business Machines System and method for arranging windows displayed by a graphical user interface
US5886694A (en) * 1997-07-14 1999-03-23 Microsoft Corporation Method for automatically laying out controls in a dialog window
US5887437A (en) * 1997-09-30 1999-03-30 Beekley Corporation Self-adhering cold pack
US5903466A (en) * 1995-12-29 1999-05-11 Synopsys, Inc. Constraint driven insertion of scan logic for implementing design for test within an integrated circuit design
US5977973A (en) * 1997-05-14 1999-11-02 Microsoft Corporation Window linking
US6008809A (en) * 1997-09-22 1999-12-28 International Business Machines Corporation Apparatus and method for viewing multiple windows within a dynamic window
US6252589B1 (en) * 1998-08-14 2001-06-26 Microsoft Corporation Multilingual user interface for an operating system
US6269654B1 (en) * 1998-05-15 2001-08-07 Thermal Products, Inc. Porous laminated, super absorbent, hydratable, temperature control pack system
US6281876B1 (en) * 1999-03-03 2001-08-28 Intel Corporation Method and apparatus for text image stretching
US6339941B1 (en) * 1997-09-19 2002-01-22 Saint-Gobain Glass France Device for cooling glass volumes
US20020080170A1 (en) * 2000-03-13 2002-06-27 Goldberg Elisha Y. Information management system
US6448985B1 (en) * 1999-08-05 2002-09-10 International Business Machines Corporation Directory tree user interface having scrollable subsections
US6476833B1 (en) * 1999-03-30 2002-11-05 Koninklijke Philips Electronics N.V. Method and apparatus for controlling browser functionality in the context of an application
US6589836B1 (en) * 2002-10-03 2003-07-08 Taiwan Semiconductor Manufacturing Company One step dual salicide formation for ultra shallow junction applications
US6690401B1 (en) * 1999-07-22 2004-02-10 At&T Corp. Method and apparatus for cell scrolling a data structure
US6765592B1 (en) * 1999-04-30 2004-07-20 Microsoft Corporation Undockable sub-windows
US7249325B1 (en) * 2000-05-11 2007-07-24 Palmsource, Inc. Automatically centered scrolling in a tab-based user interface

Patent Citations (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2185799A (en) * 1938-12-08 1940-01-02 Kenneth R Blake Liquid cooling means and container therefor
US4208229A (en) * 1978-12-15 1980-06-17 Giardini Dante S System for repairing panes of glass
US4712191A (en) * 1982-08-11 1987-12-08 U.S. Philips Corporation Display system with nested information display
US4890098A (en) * 1987-10-20 1989-12-26 International Business Machines Corporation Flexible window management on a computer display
US4908248A (en) * 1988-05-19 1990-03-13 Mitsuyoshi Nakashima Cooling device for cooling parts in the proximity thereof
US5600346A (en) * 1990-06-19 1997-02-04 Fujitsu Limited Multiwindow display control method and apparatus
US5404441A (en) * 1992-06-23 1995-04-04 Hitachi, Ltd. Method and apparatus for automatically generating a graphical user interface control program
US5513342A (en) * 1993-12-28 1996-04-30 International Business Machines Corporation Display window layout system that automatically accommodates changes in display resolution, font size and national language
US5561757A (en) * 1994-04-06 1996-10-01 Altera Corporation Computer user interface having tiled and overlapped window areas
US5850548A (en) * 1994-11-14 1998-12-15 Borland International, Inc. System and methods for visual programming based on a high-level hierarchical data flow model
US5819055A (en) * 1994-12-13 1998-10-06 Microsoft Corporation Method and apparatus for docking re-sizeable interface boxes
US5621904A (en) * 1995-01-24 1997-04-15 Intel Corporation Method and apparatus for avoiding overlapped windows and a gutter space
US5712995A (en) * 1995-09-20 1998-01-27 Galileo Frames, Inc. Non-overlapping tiling apparatus and method for multiple window displays
US5838318A (en) * 1995-11-10 1998-11-17 Intel Corporation Method and apparatus for automatically and intelligently arranging windows on a display device
US5903466A (en) * 1995-12-29 1999-05-11 Synopsys, Inc. Constraint driven insertion of scan logic for implementing design for test within an integrated circuit design
US5874962A (en) * 1996-03-08 1999-02-23 International Business Machines System and method for arranging windows displayed by a graphical user interface
US5977973A (en) * 1997-05-14 1999-11-02 Microsoft Corporation Window linking
US5886694A (en) * 1997-07-14 1999-03-23 Microsoft Corporation Method for automatically laying out controls in a dialog window
US6339941B1 (en) * 1997-09-19 2002-01-22 Saint-Gobain Glass France Device for cooling glass volumes
US6008809A (en) * 1997-09-22 1999-12-28 International Business Machines Corporation Apparatus and method for viewing multiple windows within a dynamic window
US5887437A (en) * 1997-09-30 1999-03-30 Beekley Corporation Self-adhering cold pack
US6269654B1 (en) * 1998-05-15 2001-08-07 Thermal Products, Inc. Porous laminated, super absorbent, hydratable, temperature control pack system
US6252589B1 (en) * 1998-08-14 2001-06-26 Microsoft Corporation Multilingual user interface for an operating system
US6281876B1 (en) * 1999-03-03 2001-08-28 Intel Corporation Method and apparatus for text image stretching
US6476833B1 (en) * 1999-03-30 2002-11-05 Koninklijke Philips Electronics N.V. Method and apparatus for controlling browser functionality in the context of an application
US6765592B1 (en) * 1999-04-30 2004-07-20 Microsoft Corporation Undockable sub-windows
US6690401B1 (en) * 1999-07-22 2004-02-10 At&T Corp. Method and apparatus for cell scrolling a data structure
US6448985B1 (en) * 1999-08-05 2002-09-10 International Business Machines Corporation Directory tree user interface having scrollable subsections
US20020080170A1 (en) * 2000-03-13 2002-06-27 Goldberg Elisha Y. Information management system
US7249325B1 (en) * 2000-05-11 2007-07-24 Palmsource, Inc. Automatically centered scrolling in a tab-based user interface
US6589836B1 (en) * 2002-10-03 2003-07-08 Taiwan Semiconductor Manufacturing Company One step dual salicide formation for ultra shallow junction applications

Cited By (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8555193B2 (en) * 2008-01-17 2013-10-08 Google Inc. System for intelligent automated layout and management of interactive windows
US20100011316A1 (en) * 2008-01-17 2010-01-14 Can Sar System for intelligent automated layout and management of interactive windows
US20100251176A1 (en) * 2009-03-24 2010-09-30 Microsoft Corporation Virtual keyboard with slider buttons
US20120102385A1 (en) * 2010-10-25 2012-04-26 Konica Minolta Systems Laboratory Inc. Determining heights of table cells
JP2012099098A (en) * 2010-10-25 2012-05-24 Konica Minolta Laboratory Usa Inc Method of determining height of cell of table, computer-readable medium, and system
USD665414S1 (en) * 2011-09-12 2012-08-14 Microsoft Corporation Display screen with animated graphical user interface
US10496259B2 (en) 2012-05-09 2019-12-03 Apple Inc. Context-specific user interfaces
US11740776B2 (en) 2012-05-09 2023-08-29 Apple Inc. Context-specific user interfaces
US10649622B2 (en) 2012-05-09 2020-05-12 Apple Inc. Electronic message user interface
EP3835935A1 (en) * 2013-02-25 2021-06-16 Savant Systems, Inc. Video tiling
US20140245148A1 (en) * 2013-02-25 2014-08-28 Savant Systems, Llc Video tiling
US10387007B2 (en) * 2013-02-25 2019-08-20 Savant Systems, Llc Video tiling
WO2014130990A1 (en) * 2013-02-25 2014-08-28 Savant Systems, Llc Video tiling
AU2014218565B2 (en) * 2013-02-25 2017-07-06 Savant Systems, Inc. Video tiling
CN105165017A (en) * 2013-02-25 2015-12-16 萨万特系统有限责任公司 Video tiling
US11829576B2 (en) 2013-09-03 2023-11-28 Apple Inc. User interface object manipulations in a user interface
US11656751B2 (en) 2013-09-03 2023-05-23 Apple Inc. User interface for manipulating user interface objects with magnetic properties
US11720861B2 (en) 2014-06-27 2023-08-08 Apple Inc. Reduced size user interface
US11250385B2 (en) 2014-06-27 2022-02-15 Apple Inc. Reduced size user interface
US10872318B2 (en) 2014-06-27 2020-12-22 Apple Inc. Reduced size user interface
US11604571B2 (en) 2014-07-21 2023-03-14 Apple Inc. Remote user interface
US10771606B2 (en) 2014-09-02 2020-09-08 Apple Inc. Phone user interface
US11700326B2 (en) 2014-09-02 2023-07-11 Apple Inc. Phone user interface
US11402968B2 (en) 2014-09-02 2022-08-02 Apple Inc. Reduced size user in interface
US11941191B2 (en) 2014-09-02 2024-03-26 Apple Inc. Button functionality
US11474626B2 (en) 2014-09-02 2022-10-18 Apple Inc. Button functionality
US11743221B2 (en) 2014-09-02 2023-08-29 Apple Inc. Electronic message user interface
US11644911B2 (en) 2014-09-02 2023-05-09 Apple Inc. Button functionality
US10409483B2 (en) 2015-03-07 2019-09-10 Apple Inc. Activity based thresholds for providing haptic feedback
US20180096173A1 (en) * 2015-09-25 2018-04-05 International Business Machines Corporation Overlapping, discrete tamper-respondent sensors
US11161010B2 (en) 2016-06-11 2021-11-02 Apple Inc. Activity and workout updates
US11660503B2 (en) 2016-06-11 2023-05-30 Apple Inc. Activity and workout updates
US11148007B2 (en) 2016-06-11 2021-10-19 Apple Inc. Activity and workout updates
US10272294B2 (en) 2016-06-11 2019-04-30 Apple Inc. Activity and workout updates
US11918857B2 (en) 2016-06-11 2024-03-05 Apple Inc. Activity and workout updates
US11216119B2 (en) 2016-06-12 2022-01-04 Apple Inc. Displaying a predetermined view of an application
US11921926B2 (en) 2018-09-11 2024-03-05 Apple Inc. Content-based tactile outputs
US11435830B2 (en) 2018-09-11 2022-09-06 Apple Inc. Content-based tactile outputs
US11893212B2 (en) 2021-06-06 2024-02-06 Apple Inc. User interfaces for managing application widgets

Also Published As

Publication number Publication date
US7013431B2 (en) 2006-03-14
US20020196286A1 (en) 2002-12-26
US7539947B2 (en) 2009-05-26
WO2002089108A1 (en) 2002-11-07
US20020180800A1 (en) 2002-12-05
US7165228B2 (en) 2007-01-16
US7013432B2 (en) 2006-03-14
US20020196287A1 (en) 2002-12-26
US20080189653A1 (en) 2008-08-07

Similar Documents

Publication Publication Date Title
US7539947B2 (en) Display container cell modification in a cell based EUI
US7313765B2 (en) Cell based EUI methods & apparatuses
US20100281420A1 (en) Cell based end user interface having action cells
US9411487B2 (en) User interface presentation of information in reconfigured or overlapping containers
US6377285B1 (en) Zooming space-grid for graphical user interface
US6008809A (en) Apparatus and method for viewing multiple windows within a dynamic window
EP2464093B1 (en) Image file generation device, image processing device, image file generation method, and image processing method
US7362324B2 (en) Stereo image display apparatus and method, and storage medium
US7064754B2 (en) Stereoscopic-image display apparatus
EP2330587B1 (en) Image processing device and image processing method
US20130057588A1 (en) Arranging tiles
US20130152017A1 (en) Apparatus and method for providing graphic user interface
US7119811B2 (en) Image display system
US20140267436A1 (en) Collage display of image projects
JP4742051B2 (en) Spatial and temporal motion blur effect generation method
WO2002091346A1 (en) Methodology for viewing large strategies via a computer workstation
EP0605347B1 (en) Method and system for manipulating a full motion video presentation in a data processing system
US7952591B2 (en) Navigating programming content via multi-dimensional surfaces
CN105427235B (en) A kind of image browsing method and system
WO2004092896A2 (en) A cell based end user interface having action cells
JP2002095014A (en) Stereo image displaying device, stereo image display method and storage medium
CN111158566A (en) Event processing method, device, equipment and storage medium
CN116648903A (en) Processing of extended dimension light field images
JP2001215947A (en) Device and method for displaying stereoscopic image, and storage medium
WO1996006395A1 (en) Data representation and access method

Legal Events

Date Code Title Description
AS Assignment

Owner name: BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIA

Free format text: MERGER;ASSIGNORS:BROADBAND GRAPHICS, LLC - A CALIFORNIA LIMITED LIABILITY COMPANY;BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY;REEL/FRAME:024244/0355

Effective date: 20100412

Owner name: BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIA

Free format text: MERGER;ASSIGNORS:BROADBAND GRAPHICS, LLC - A CALIFORNIA LIMITED LIABILITY COMPANY;BROADBAND GRAPHICS, LLC - A WASHINGTON LIMITED LIABILITY COMPANY;REEL/FRAME:024244/0367

Effective date: 20100412

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION