DE69533568T2 - Virtuelles Desk-Top-System und Verfahren dafür - Google Patents

Virtuelles Desk-Top-System und Verfahren dafür Download PDF

Info

Publication number
DE69533568T2
DE69533568T2 DE69533568T DE69533568T DE69533568T2 DE 69533568 T2 DE69533568 T2 DE 69533568T2 DE 69533568 T DE69533568 T DE 69533568T DE 69533568 T DE69533568 T DE 69533568T DE 69533568 T2 DE69533568 T2 DE 69533568T2
Authority
DE
Germany
Prior art keywords
desktop
screen
coordinates
display areas
application 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.)
Expired - Lifetime
Application number
DE69533568T
Other languages
English (en)
Other versions
DE69533568D1 (de
Inventor
Kurt Randall Lexington Brown
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69533568D1 publication Critical patent/DE69533568D1/de
Publication of DE69533568T2 publication Critical patent/DE69533568T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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

Description

  • Gebiet der Erfindung
  • Diese Erfindung betrifft ein virtuelles Desktop-System und ein Verfahren zum Organisieren von in einem Computer ausgeführten offenen Anwendungen zur Anzeige.
  • Grundlagen der Erfindung
  • Eine Fensterumgebung ist eine Systemsoftware, die Interaktionen zwischen einem Benutzer und einem in einem Computer ausgeführten Anwendungsprogramm durch eine auf einem Bildschirm eines Monitors dargestellte grafische Anzeige verwaltet. Normalerweise ist die grafische Anzeige so angeordnet, dass sie der Oberfläche eines elektronischen "Arbeitsplatzes" (Desktop)ähnelt, und jedes im Computer ausgeführte Anwendungsprogramm wird als eines oder mehrere elektronische Blätter dargestellt, die in als "Fenster" bezeichneten rechteckigen Bereichen des Bildschirms angezeigt werden.
  • Auf dem Desktop können mehrere Fenster gleichzeitig vorhanden sein, wobei jedes Fenster Daten anzeigt, die von einem anderen Anwendungsprogramm erzeugt werden. Jedes Anwendungsprogramm zeigt dem Benutzer Daten in seinem Fenster durch die Darstellung vom Bildern, Grafiken oder Text im Fensterbereich. Der Benutzer seinerseits kommuniziert mit der Anwendung durch "Zeigen auf" Standardgrafikobjekte im Fenster mit Hilfe eines Zeigers, der von einer Zeigereinheit gesteuert wird, beispielsweise einer Maus, und anschließendes Auswählen der Objekte oder durch Eingeben von Daten auf einer mit dem Monitor verbundenen Tastatur. Die Auswahl der Objekte kann durch Betätigen der Maus zum Bewegen des Zeigers auf die oder in die Nähe der Objekte und Drücken und schnelles Loslassen, d. h. "Anklicken", einer Taste auf der Maus oder durch Steuern eines Cursors über die Tastatur ausgeführt werden.
  • Die normalerweise in jedem Fensterbereich enthaltenen grafischen Objekte sind Größenänderungsfelder, Schaltflächen und Schiebeleisten. Diese Objekte stellen Benutzerschnittstellenelemente dar, auf die der Benutzer zum Auswählen oder Bearbeiten mit dem Zeiger zeigen kann. Beispielsweise kann der Benutzer diese Elemente bearbeiten, um die Fenster auf dem Bildschirm zu bewegen und ihre Größen und Erscheinungsformen zu ändern, so dass der Desktop auf eine herkömmliche Weise angeordnet wird. Wenn die Elemente ausgewählt oder bearbeitet werden, wird das zugrundeliegende Anwendungsprogramm über die Fensterumgebung informiert, dass die Steuerung vom Benutzer übernommen wurde.
  • EP-A-0 250 157 beschreibt ein Datenanzeigesystem, in dem Anzeigeeinheiten mit einem Zentralprozessor verbunden sind und Benutzer im Zentralprozessor ausgeführte Anwendungsprogramme auswählen. Ein Anzeigeverwaltungssteuersystem und ein Fenstertechniksteuermechanismus (windowing control mechanism) ermöglichen die gleichzeitige Ausführung einer Vielzahl von Tasks und die Anzeige der Ergebnisse in Bereichen eines Bildschirms. Zum Fenstertechniksteuermechanismus gehört ein Taskverwaltungssteuerprogramm (task manager control program), das Folgendes enthält: ein Mittel zum Interagieren mit dem Bediener über die Anzeigeverwaltungseinrichtung, um die Einleitung von Anwendungen zu ermöglichen, ein Mittel zum Erzeugen von Tasks zur Steuerung der Verarbeitung der Anwendung auf eine solche Weise, dass die Anwendungen entsprechend einer verfügbaren Bedienereingabe ausgesetzt oder wiederaufgenommen werden können, und ein Mittel zur Kennzeichnung einer Koordinationssteuereinheit (coordination Controller) für die Anzeigeverwaltungseinrichtung, die diese aufrufen kann, um der Taskverwaltungseinrichtung das Aussetzen und Wiederaufnehmen von Anwendungen zu ermöglichen. Die Anzeigeverwaltungseinrichtung enthält ein Mittel zum Verknüpfen von Daten aus jeder Anwendung und zum Erstellen einer Anzeigedarstellung, die viele Fenster in den verschiedenen Anwendungen auf einem einzigen Bildschirm zeigt, und ein Mittel zum Aufrufen der von der Taskverwaltungsanwendung bezeichneten Koordinationssteuereinheit, so dass die Taskverwaltungseinrichtung auf eine Eingabe wartende Anwendungen aussetzen und Anwendungen mit einer verfügbaren Eingabe wiederaufnehmen kann, so dass sie fortgesetzt werden können.
  • Die US-Patentschrift 5 233 687 beschreibt ein System, das eine Anzeige und eine Vielzahl von Arbeitsbereichsdatenstrukturen umfasst, die sich jeweils auf einen entsprechenden Arbeitsbereich beziehen, der auf der Anzeige dargestellt werden kann. Die Arbeitsbereiche nutzen Fenster und andere Anzeigeobjekte gemeinsam. Die Datenstruktur jedes Arbeitsbereichs enthält für jedes Fenster in diesem Arbeitsbereich eine als Platzierung (placement) bezeichnete Verbindungsdatenstruktur, die eine Verbindung zu dem dieses Fenster bereitstellenden Anzeigesystemobjekt herstellt, das ein Anzeigesystemobjekt in einem bereits vorhandenen Fenstersystem sein kann. Die Platzierung enthält außerdem Anzeigeeigenschaften des Fensters, wenn es in diesem Arbeitsbereich angezeigt wird, beispielsweise die Position und die Größe. Daher kann ein Anzeigesystemobjekt durch eine Platzierung in jeder der Datenstrukturen des Arbeitsbereichs mit mehreren Arbeitsbereichen verbunden sein, und das für jeden dieser Arbeitsbereiche bereitgestellte Fenster kann eindeutige Anzeigeeigenschaften aufweisen. Das Anzeigesystemobjekt kann ungeachtet des Umschaltens zwischen einem Arbeitsbereich und einem anderen fortlaufend verwendet werden, und die Fenster, die es in aufeinanderfolgenden Arbeitsbereichen bereitstellt, können bestimmte Merkmale gemeinsam nutzen, so dass sie für den Benutzer als dasselbe Fenster oder Versionen desselben Fensters erscheinen. Infolgedessen scheinen die Arbeitsbereiche ein Fenster gemeinsam zu nutzen. Außerdem können Arbeitsbereiche anscheinend ein Fenster gemeinsam nutzen, falls die Datenstruktur jedes Arbeitsbereichs Daten enthält, die mit einer Platzierung in das gemeinsam genutzte Fenster eine Verbindung zu einem anderen Arbeitsbereich herstellen. In jedem der anderen Arbeitsbereiche ist automatisch ein spezieller Arbeitsbereich enthalten, so dass die Fenster in diesem Arbeitsbereich mit dem Benutzer in jeden anderen Arbeitsbereich gehen. Der Benutzer kann eine Umschaltung zwischen Arbeitsbereichen aufrufen, indem er ein als Tür bezeichnetes Anzeigeobjekt auswählt, und es wird automatisch eine Hintertür zum vorhergehenden Arbeitsbereich erzeugt, so dass der Benutzer nicht in einem Arbeitsbereich festsitzt.
  • Tesler L: "The Smalltalk environment", BYTE, AUGUST 1981, USA, Band 6, Nr. 8, ISSN 0360-5280, Seiten 90 bis 147, XP002044904, betrifft die Verwendung von mehreren Desktops.
  • Dialogfenster- und Aktionsfenstermenüs sind weitere Beispiele für Benutzerschnittstellenelemente, die einem Benutzer im Allgemeinen zur Verfügung stehende Befehlsauswahlen auflisten. Diese Menüs können aktiviert und Befehle durch einfaches Zeigen auf diese und Anklicken derselben mit dem mausgesteuerten Zeiger ausgewählt werden.
  • Eine Anzahl von verschiedenen handelsüblichen Fensterumgebungen verwenden die oben beschriebene Anordnung. Zu diesen Umgebungen gehört das von Apple Computer, Inc., entwickelte Betriebssystem System 7®, die von Microsoft Corporation entwickelte grafische Benutzeroberfläche Windows® und der von International Business Machines Corporation entwickelte OS/2 Presentation Manager®. Die vorliegende Erfindung kann auf alle solche Umgebungen angewandt werden und betrifft die Verwaltung von Anwendungen unter Verwendung einer Desktop-Metapher (desktop metaphor) zum Gruppieren der Anwendungen durch zusammengehörige Funktionen oder Tasks.
  • Im Allgemeinen fördert die Desktop-Metapher die Leistungsfähigkeit des Benutzers durch die Bereitstellung einer Umgebung, in der der Benutzer die zum Ausführen von Arbeitsgängen benötigten Anwendungen problemlos verwalten kann. Die oben beschriebenen Fensterumgebungen stellen normalerweise nur einen einzigen Desktop bereit, der Anwendungen in vordefinierte "Gruppen" von Anwendungen organisiert, wobei diese entsprechend ihrer Funktion zusammengesetzt sind. Jede dieser Anwendungen wird durch ein kleines als "Symbol" bezeichnetes Bild dargestellt. Obwohl der Benutzer die Symbole und ihre auf dem Desktop angezeigten zugeordneten Gruppen anordnen, erzeugen und löschen kann, werden die zugeordneten Anwendungen nicht ausgeführt oder "geöffnet"; das heißt, die oben beschriebenen Fensterumgebungen ermöglichen normalerweise nicht das Gruppieren von geöffneten Anwendungen.
  • Anwendungen können durch Auswählen ihrer zugeordneten Symbole aus einer vordefinierten Gruppe geöffnet werden, und diese offenen Anwendungen werden normalerweise in "Anwendungsfenstern" ausgeführt, die auf dem Desktop sichtbar sind. Wenn mehr als eine Anwendung gleichzeitig geöffnet werden, kann der Desktop ein unübersichtliches Erscheinungsbild annehmen. Um freien Platz auf dem Desktop zu schaffen, ohne die Anwendungen zu verlassen, können die offenen Anwendungsfenster minimiert werden, so dass sie als Symbole erscheinen, die im Allgemeinen dieselben Symbole wie die zum Darstellen der ungeöffneten Anwendung verwendeten Symbole sind. Obwohl ein geöffnetes Anwendungsprogramm durch ein Symbol dargestellt wird, ist dieses Symbol kein Teil der vordefinierten Gruppe mehr und erscheint auf dem Desktop zusammen mit anderen Symbolen, die geöffnete Anwendungen aus anderen Gruppen darstellen.
  • Dementsprechend stellt die vorliegende Erfindung ein Verfahren zum Organisieren von Anwendungsfenstern von in einem Computer ausgeführten offenen Anwendungen zur Anzeige auf einem Bildschirm bereit, der Bildschirmkoordinaten aufweist, die einen sichtbaren Bereich von Koordinaten beinhalten, die eine aktuell sichtbare Ansicht darstellen, wobei das Verfahren die folgenden Schritte umfasst: Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen; Positionieren von Anwendungsfenstern von offenen Anwendungen in jeden der Anzeigebereiche; und Einstellen der Bildschirmkoordinaten, so dass die Anwendungsfenster auf dem Bildschirm anzeigt werden; dadurch gekennzeichnet, dass: der Schritt des Zuordnens eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen das Zuordnen eines entsprechenden Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Desktop-Anzeigebereichen umfasst, so dass jeder Desktop-Anzeigebereich eine Breite hat, die größer als die Breite des Bildschirms ist; der Schritt des Positionierens von Anwendungsfenstern von offenen Anwendungen in jeden der Anzeigebereiche die Verwendung einer Desktop-Verwaltungseinrichtung umfasst, um Gruppen der Anwendungsfenster innerhalb des Bereichs von Anzeigekoordinaten der Desktop-Anzeigebereiche zur Zuordnung zu den Desktop-Anzeigebereichen zu positionieren, wobei die Funktionen, die von den offenen Anwendungen ausgeführt werden, Anwendungsfenster in der Gruppe haben, die einem Desktop-Anzeigebereich zugeordnet ist, der entsprechend der Benutzerauswahl durch Funktion oder Task zusammengesetzt ist; der Schritt des Einstellens der Bildschirmkoordinaten zum Anzeigen der Anwendungsfenster auf dem Bildschirm das Umschalten der Bildschirmkoordinaten eines ausgewählten Desktop-Anzeigebereichs auf den sichtbaren Bereich umfasst, um die Anwendungsfenster der dem Desktop-Anzeigebereich zugeordneten Gruppe zu bewegen; und der Bereich der jedem der Desktop-Anzeigebereiche zugeordneten Bildschirmkoordinaten so ist, dass Fenster, die keinem aktuell angezeigten Desktop- Anzeigebereich zugeordnet sind, auf dem Bildschirm nicht sichtbar sind.
  • Die Erfindung schafft die Voraussetzungen zum Organisieren von "offenen" Anwendungen eines Computers in Gruppen von Programmen, die allgemeine Funktionen oder Tasks ausführen. Die Gruppen von Programmen werden als "Desktops" bezeichnet, und das virtuelle Desktop-System stellt eine Desktop-Verwaltungseinrichtung zum Zuordnen von Bereichen von Bildschirmkoordinaten zu diesen Desktops vor der Zuordnung von offenen Anwendungen zu diesen bereit. Insbesondere ist die Desktop-Verwaltungseinrichtung ein Systemsoftwareprogramm, das eine Vielzahl von Desktop-Gruppen enthält und das eine Benutzerschnittstelle zum Erzeugen und anschließenden Verwalten der Anzeige von ausgewählten offenen Anwendungen und Desktops bereitstellt. Diese ausgewählten offenen Anwendungen werden in Anwendungsfenstern auf einem Bildschirm des Computers dargestellt, wenn zwischen Desktops im virtuellen Desktop-Systems hin- und hergeschaltet wird.
  • Außerdem stellt die vorliegende Erfindung vorteilhafterweise die Gruppierung von zusammengehörigen offenen Anwendungen in einer Anordnung bereit, die Gruppen von zusammengehörigen Anwendungen visuell voneinander trennt.
  • Unter einem Aspekt der vorliegenden Erfindung wird eine Anordnung bereitgestellt, durch die die Desktop-Verwaltungseinrichtung jedem Desktop Bereiche von Bildschirmkoordinaten zuordnet und anschließend Anwendungsfenster zur Zuordnung zu jenen Desktops in diesen Bereichen positioniert. In der hierin beschriebenen veranschaulichenden Ausführungsform ermöglicht das virtuelle Desktop-System eine Positionierung von Anwendungsfenstern bei Bildschirmkoordinaten im Bereich von z. B. minus 16.767 bis 16.768 Fenstereinheiten; jedoch ist zu jedem Zeitpunkt nur eine Teilmenge dieses Bereichs, die eine aktuelle Ansicht definiert, auf dem Bildschirm sichtbar.
  • Um die einem ausgewählten Desktop zugeordneten Anwendungen anzuzeigen, wird eine aktuell auf dem Bildschirm angezeigte Desktop- -Ansicht auf die dem ausgewählten Desktop zugeordneten Koordinaten umgeschaltet. Das Umschalten zwischen den Desktops wird vorzugsweise in Verbindung mit der Desktop-Verwaltungseinrichtung und einer herkömmlichen Fensteranwendungs-Programmierschnittstelle ausgeführt. Anwendungsfenster, die nicht dem ausgewählten Desktop zugeordnet sind, sind nicht sichtbar, da sie außerhalb des angezeigten Ansichtsbereichs positioniert werden, dessen Bildschirmkoordinaten vorzugsweise festgelegt sind.
  • In vielen Systemen kann sich die Breite eines Bildschirms in Fenstereinheiten mit der Bildauflösung ändern, und zu einem bestimmten Desktop gehörende Anwendungen können auf einen anderen Desktop "überhängen", wodurch Anwendungen, die nicht zur Anzeige auf dem Bildschirm vorgesehen sind, in den sichtbaren Bereich des Bildschirms verschoben werden. Dementsprechend ist der Bereich von jedem Desktop zugeordneten Fenstereinheiten vorzugsweise mindestens zweimal so groß wie die maximale Breite des Bildschirms. Eine Vergrößerung des Koordinatenbereichs jedes Desktops stellt sicher, dass Anwendungsfenster, die keinem aktuell angezeigten Desktop zugeordnet sind, auf dem Bildschirm nicht sichtbar sind.
  • Unter einem anderen Aspekt der Erfindung enthält jeder Desktop eine Datenstruktur zum Speichern einer Liste von allen seinen offenen Anwendungen zusammen mit den Größen und Fensterpositionen dieser Anwendungen. Die Liste wird verwendet, um die Position jedes Anwendungsfensters mit dem dem Desktop zugeordneten Koordinatenbereich zu vergleichen, so dass der Desktop feststellen kann, ob das Fenster zu ihm gehört; dies ist wichtig, um eine gemeinsame Nutzung von Anwendungen zu ermöglichen. Die gemeinsame Nutzung von Anwendungen unter Desktops kann erforderlich sein, da einige Anwendungen lediglich die Ausführung einer Kopie ihrer selbst zu einem bestimmten Zeitpunkt ermöglichen. Wie hierin beschrieben wird, ist die Desktop-Verwaltungseinrichtung für die Koordination der gemeinsamen Nutzung von Anwendungen zuständig.
  • Unter noch einem anderen Aspekt der Erfindung enthält die Desktop-Verwaltungseinrichtung außerdem eine Datenstruktur zum Speichern einer Liste von allen Desktops nach dem Namen/der Funktion und dem Bildschirmkoordinatenbereich. Der Inhalt dieser Datenstruktur wird von der Desktop-Verwaltungseinrichtung zur Feststellung verwendet, welche Anwendungen den Desktops zugeordnet sind; solche Informationen können bei der Lösung eines Konflikts bezüglich der gemeinsamen Nutzung von Anwendungen und beim Verlassen des virtuellen Desktopsystems nützlich sein.
  • Die gemeinsame Nutzung von Anwendungen kann beispielsweise geeignet sein, wenn ein Fenster außerhalb des aktuellen Ansichtsbereichs "aktiv" wird, wodurch angezeigt wird, dass ein anderer Desktop die aktive Anwendung enthält. Die Desktop-Verwaltungseinrichtung wartet auf dieses Ereignis und leitet, falls die Anwendung entliehen werden kann, eine gemeinsame Nutzung der Anwendung auf eine geeignete Weise ein, z. B. setzt sie die aktive Anwendung in den aktuellen Ansichtsbereich. Falls die Anwendung nicht zwischen Desktops entliehen werden kann, informiert die Desktop-Verwaltungseinrichtung den Benutzer, dass die aktive Anwendung nicht gezeigt werden kann. Wenn der Benutzer anschließend die virtuelle Desktop-Umgebung verlässt, überträgt die Desktop-Verwaltungseinrichtung Nachrichten an die Desktops, die diese auffordern, ihre zugeordneten Anwendungen zu zeigen. Dadurch wird sichergestellt, dass offene Anwendungen beim Verlassen des Desktop-Verwaltungsprogramms nicht verborgen bleiben.
  • Unter einem weiteren Aspekt wird ein virtuelles Desktop-System zum Organisieren von Anwendungsfenstern von in einem Computer ausgeführten offenen Anwendungen zur Anzeige auf einem Bildschirm bereitgestellt, der Bildschirmkoordinaten aufweist, die einen sichtbaren Bereich von Koordinaten beinhalten, die eine aktuell sichtbare Ansicht darstellen, wobei das virtuelle Desktop-System Folgendes umfasst: ein Mittel zum Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen; ein Mittel zum Positionieren von Anwendungsfenstern von offenen Anwendungen in jeden der Anzeigebereiche; und ein Mittel zum Einstellen der Bildschirmkoordinaten, so dass die Anwendungsfenster auf dem Bildschirm anzeigt werden; dadurch gekennzeichnet, dass: das Mittel zum Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen ein Mittel zum Zuordnen eines entsprechenden Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Desktop-Anzeigebereichen umfasst, so dass jeder Desktop-Anzeigebereich eine Breite hat, die größer als die Breite des Bildschirms ist; das Mittel zum Positionieren von Anwendungsfenstern von offenen Anwendungen in jeden der Anzeigebereiche eine Desktop-Verwaltungseinrichtung umfasst, die für das Positionieren von Gruppen der Anwendungsfenster innerhalb des Bereichs von Anzeigekoordinaten der Desktop-Anzeigebereiche zur Zuordnung zu den Desktop-Anzeigebereichen geeignet ist, wobei die Funktionen, die von den offenen Anwendungen ausgeführt werden, Anwendungsfenster in der Gruppe haben, die einem Desktop-Anzeigebereich zugeordnet ist, der entsprechend der Benutzerauswahl zusammengesetzt ist; das Mittel zum Einstellen der Bildschirmkoordinaten zum Anzeigen der Anwendungsfenster auf dem Bildschirm ein Mittel zum Umschalten der Bildschirmkoordinaten eines ausgewählten Desktop-Anzeigebereichs auf den sichtbaren Bereich umfasst, um die Anwendungsfenster der dem Desktop-Anzeigebereich zugeordneten Gruppe zu bewegen; und der Bereich der jedem der Desktop-Anzeigebereiche zugeordneten Bildschirmkoordinaten so ist, dass Fenster, die keinem aktuell angezeigten Desktop-Anzeigebereich zugeordnet sind, auf dem Bildschirm nicht sichtbar sind.
  • Nun werden Ausführungsformen der vorliegenden Erfindung lediglich beispielhaft mit Bezugnahme auf die begleitenden Zeichnungen beschrieben, in denen:
  • 1 ein schematisches Blockschaltbild eines Computersystems ist, beispielsweise eines Personal-Computer-Systems, in dem ein erfindungsgemäßes virtuelles Desktop-System vorteilhaft eingesetzt werden kann;
  • 2 eine Übersichtsdarstellung ist, die die Interaktionen zwischen einer Vielzahl von Anwendungsprogrammen und dem virtuellen Desktop-System gemäß der Erfindung zeigt;
  • 3 eine Übersichtsdarstellung des virtuellen Desktop-Systems von 2 ist, das ein neuartiges Desktop-Verwaltungsprogramm gemäß der Erfindung enthält;
  • 4 eine Übersichtsdarstellung eines neuartigen Desktop-Verwaltungsprogramms von zusammengehörigen offenen Anwendungen ist, das der Desktop-Verwaltungseinrichtung von 3 zugeordnet ist;
  • 5 eine schematische Darstellung ist, die die Zuordnung von Bildschirmkoordinaten und zugeordneter Fensterpositionen von offenen Anwendungen für die Desktop-Programme veranschaulicht, deren Breite zweimal so groß wie die Breite eines Computerbildschirms von 1 ist;
  • 6 ein Flussdiagramm ist, das die Folge von Schritten zur Zuordnung von Bildschirmkoordinaten und Fensterpositionen zu den Desktops und ihre zugeordneten Anwendungsfenster von 5 darstellt;
  • 7 ein Beispiel eines virtuellen Desktop-Systems veranschaulicht;
  • 8 ein Flussdiagramm ist, das das Umschalten zwischen Desktops gemäß der Ausführungsform von 5 darstellt;
  • 9 ein Flussdiagramm ist, das die gemeinsame Nutzung von Anwendungen gemäß der Erfindung darstellt; und
  • 10 ein Flussdiagramm ist, das die Folge von Schritten zum Verlassen des virtuellen Desktop-Systems der Erfindung darstellt.
  • 1 ist eine schematische Darstellung eines Computersystems 100, das eine Zentraleinheit (CPU) 110 umfasst, die durch bidirektionale Busse 112 und 116 zwischen einen Speicher 114 und eine Ein-/Ausgabe- (E/A-) Schaltungsanordnung 118 geschaltet ist. Der Speicher 114 umfasst normalerweise einen Arbeitsspeicher (RAM) zur zeitweiligen Speicherung von Daten, zu denen ein Anwendungsprogramm gehört, und einen Nur-Lese-Speicher (ROM) zur ständigen Speicherung der Konfiguration und der grundlegenden Betriebsbefehle des Computers, beispielsweise Teile eines Betriebssystems. Wie hierin später beschrieben wird, stehen das Anwendungsprogramm und das Betriebssystem miteinander in Wechselwirkung, um die Arbeitsgänge der CPU 110 und des Computersystems 100 zu steuern.
  • Die E/A-Schaltungsanordnung 118 ist ihrerseits über einen bidirektionalen Bus 122 mit einem Kommunikationsnetz 120, beispielsweise einer Telefonleitung, und mit Cursorsteuereinheiten verbunden, beispielsweise mit einer Tastatur 124 (über das Kabel 126) und einer Maus 130 (über das Kabel 128). Die Maus 130 enthält normalerweise mindestens eine Taste 134, die von einem Benutzer des Systems betätigt wird. Außerdem ist ein herkömmlicher Monitor 132 mit einem Bildschirm 135 über ein Kabel 138 mit der E/A- Schaltungsanordnung 118 verbunden. Auf dem Bildschirm 135 wird ein Zeiger (oder Cursor) 140 angezeigt, und seine Position kann über die Maus 130 oder die Tastatur 124 gesteuert werden, wie allgemein bekannt ist.
  • Insbesondere empfängt die E/A-Schaltungsanordnung 118 Daten, beispielsweise Steuer- und Datensignale, von der Maus 130 und der Tastatur 124 und übermittelt diese Daten zur CPU 110 zur Übertragung über das Netz 120 oder zur Anzeige auf dem Bildschirm 135. Es muss verstanden werden, dass die E/A-Schaltungsanordnung die zum Bilden einer Schnittstelle mit dem Netz, der Maus, der Tastatur und dem Anzeigemonitor benötigte Hardware und Software enthält, z. B. Puffer, Adapter und Protokolle.
  • Das Computersystem 100 ist vorzugsweise ein Personal Computer der von International Business Machines Corporation vertriebenen Computerreihe IBM PS/1®, obwohl die Erfindung auch in Verbindung mit jedem beliebigen Computer ausgeführt werden kann. Diese Computer weisen eine Betriebssystemsoftware auf, von der sie gesteuert und koordiniert werden, beispielsweise das IBM OS/2® Betriebssystem. Außerdem wird vorzugsweise eine Fensterumgebung, beispielsweise die grafische Benutzeroberfläche Windows®, als grafische Anzeige auf dem Bildschirm 135 angezeigt, um Interaktionen zwischen einem Benutzer und dem Computer 100 zu ermöglichen. Die grafische Anzeige ist normalerweise so angeordnet, dass sie einem einzigen Desktop 142 ähnelt, und jedes Anwendungsprogramm wird in einem Anwendungsfenster 144 des Bildschirms 135 ausgeführt. Normalerweise können mehrere andere Fenster 144 gleichzeitig auf dem Desktop vorhanden sein, wobei jedes Fenster Daten anzeigt, die von einer anderen Anwendung erzeugt werden.
  • Die Fensterumgebung ist im Allgemeinen ein Teil der Betriebssystemsoftware, zu der eine Gruppe von Dienstprogrammen zur Steuerung der Funktionsweise des Computersystems 100 gehört. Das Betriebssystem seinerseits steht in Wechselwirkung mit Anwendungsprogrammen, um eine Funktionalität auf höherer Ebene bereitzustellen, wozu eine direkte Schnittstelle mit dem Benutzer gehört. Insbesondere verwenden die Anwendungsprogramme Betriebssystemfunktionen durch die Ausgabe von Taskbefehlen an das Betriebssystem, das sodann die angeforderte Task ausführt. Beispielsweise kann ein Anwendungsprogramm anfordern, dass das Betriebssystem bestimmte Daten in den Fenstern 144 zur Darstellung für den Benutzer anzeigt.
  • Wie erwähnt wurde, organisiert die Fensterumgebung normalerweise Anwendungssymbole in vordefinierte Gruppen von Anwendungen, jedoch ermöglicht sie nicht die Gruppierung von Symbolen von offenen Anwendungen, die entsprechend ihrer Funktion oder Task zusammengehören. Das heißt, sobald eine Anwendung ausgeführt wird, ist ihr Fenster (oder ihr Symbol, falls sie minimiert wurde), kein Teil der vordefinierten Gruppe mehr. Ein Merkmal der vorliegenden Erfindung ist jedoch die Bereitstellung von zusätzlichen Dienstprogrammen, die bei Aufruf das Ausführen von Vorgängen veranlassen, die einem Benutzer die Organisation von offenen Anwendungen in Gruppen ermöglichen, die entsprechend ihrer Funktionen oder Tasks zusammengesetzt sind. Dieses neue Verhalten des Systems wird durch die Interaktion dieser neuen Dienstroutinen mit einer Reihe von vorhandenen, dem Betriebssystem zugeordneten Systemroutinen zustande gebracht. Zusammen stehen diese Systemsoftwareroutinen mit dem Anwendungsprogramm in Wechselwirkung, um ein neuartiges virtuelles Desktop-System zu erzeugen, wie es hierin beschreiben wird.
  • 2 ist eine schematische Darstellung der Interaktion einer Vielzahl von bei 202 und 216 gezeigten Anwendungsprogrammen und dem virtuellen Desktop-System 300. Das System 300 befindet sich in einem Betriebssystem 204, das gleichzeitig mit den Anwendungsprogrammen in einem Computersystem 200 ausgeführt werden kann. Jedes Programm 202 und 216 bildet eine Schnittstelle mit dem Betriebssystem 204, wie durch die Pfeile 206 und 220 schematisch dargestellt wird. Zum Anzeigen von Daten auf einem Computerbildschirm erzeugen und übertragen die Anwendungsprogramme 202 und 216 Anforderungen an das virtuelle Desktop-System, das seinerseits eine direkte Schnittstelle mit einem Bildschirmpuffer 210 bildet, wie durch den Pfeil 208 schematisch dargestellt wird. Der Inhalt des Bildschirmpuffers 210 wird über das Kabel 222 einem Computermonitor 224 zugeführt.
  • Das neuartige Desktop-System 300 stellt ein Mittel zum Organisieren von auf dem Bildschirm 135 ausgeführten "offenen" Anwendungen in Desktop-Gruppen bereit, die entsprechend allgemeinen Funktionen zusammengesetzt sind. Diese Desktop-Gruppen sind als Desktop-Anzeigebereiche auf dem Computerbildschirm erkennbar. 3 ist eine Übersichtsdarstellung des virtuellen Desktop-Systems 300, das eine Fensterverwaltungseinrichtung 310 und eine neuartige Desktop-Verwaltungseinrichtung 350 umfasst. Die Interaktion zwischen der Fensterverwaltungseinrichtung 310 und der Desktop-Verwaltungseinrichtung 350 wird teilweise unter Verwendung von Funktionsaufrufen einer herkömmlichen Windows® Anwendungsprogrammierschnittstelle (API) ausgeführt, wie durch den Pfeil 320 schematisch dargestellt wird.
  • Insbesondere ist die Fensterverwaltungseinrichtung 310 eine Systemsoftwareroutine, die im Allgemeinen für die Verwaltung der Fenster zuständig ist, die ein Benutzer während der Arbeitsgänge der Anwendungsprogramme des Computers sieht. Das heißt, die allgemeine Aufgabe der Fensterverwaltungseinrichtung besteht darin, die Position und die Größe der Fenster und der Fensterbereiche laufend zu verfolgen, die in Verbindung mit dem neuartigen virtuellen Desktop-System aufgeklappt und neu entworfen werden müssen. Zu diesem Zweck kommuniziert die Fensterverwaltungseinrichtung 310 mit allen Anwendungsprogrammen und koordiniert zwischen den Anwendungen, um sicherzustellen, dass Fensteranzeigen sich nicht gegenseitig überlappen. Die Fensterverwaltungseinrichtung ist allgemein bekannt und in handelsüblichen Fensterumgebungen enthalten.
  • Die Desktop-Verwaltungseinrichtung 350 ist außerdem ein Systemsoftwareprogramm, das eine Vielzahl von Desktop-Programmgruppen 400 umfasst. Wie hierin beschrieben wird, ordnet die Desktop-Verwaltungseinrichtung jedem Desktop 400 einen Bereich von nichtüberlappenden Bildschirmkoordinaten zu und ordnet diesen Desktops 400 anschließend offene Anwendungen durch die Anwendungsfensterposition zu. Die Zuordnung von Desktop-Bereichen und offenen Anwendungen wird vorzugsweise in Verbindung mit einer der Verwaltungseinrichtung 350 zugeordneten Datenstruktur 360 ausgeführt. Diese Datenstruktur 360 ist vorzugsweise eine Liste des Namens/der Funktion und der Bildschirmkoordinaten aller in der Desktop-Verwaltungseinrichtung 350 enthaltenen Desktops 400. In der veranschaulichenden Ausführungsform der Erfindung sind vorzugsweise vier (4) Desktops in der Desktop-Verwaltungseinrichtung 350 des virtuellen Desktop-Systems 300 enthalten; für Fachleute ist es jedoch klar, dass gemäß den Grundgedanken der Erfindung eine beliebige Anzahl von Desktops von der Desktop-Verwaltungseinrichtung 350 unterstützt werden kann.
  • Die Desktop-Verwaltungseinrichtung 350 stellt außerdem eine Schnittstelle für einen Benutzer zur Verwaltung der Anzeige von ausgewählten dieser offenen Anwendungen in Anwendungsfenstern 144 auf dem Bildschirm 135 bereit. Diese Desktop-Verwaltungseinrichtungs-Schnittstelle ähnelt im Allgemeinen der vom Programmverwaltungsdienstprogramm der grafischen Benutzeroberfläche Windows® bereitgestellten Benutzerschnittstelle. Dieses Merkmal der Erfindung ermöglicht einem Benutzer außerdem das Erzeugen und Anzeigen von beliebigen aus der Vielzahl von Desktops 400, von denen jeder eine Gruppe von offenen Anwendungen enthält, die entsprechend dem Namen oder der Task zusammengesetzt sind.
  • Der Benutzer kann beispielsweise einen Desktop 400 für Faxübertragung/-empfang erzeugen, der Software umfasst, die zum Erstellen und Übertragen eines Faxdokumentes vom Computer von 1 über das Netz 120 zu einem Ziel benötigt wird. 4 veranschaulicht einen solchen "Fax"-Desktop 400, der ein Textprozessoranwendungsprogramm 410, ein Anwendungsprogramm 420 vom Rotationskarteityp und ein Faxkommunikationsprogramm 430 umfasst. Hier ermöglicht das Textprozessorprogramm 410 dem Benutzer das Erstellen eines Textdokumentes, das für ein Ziel mit einer durch das Rotationskarteiprogramm 420 ermittelten Adresse vorgesehen ist. Das Kommunikationsprogramm 430 leitet sodann die Übertragung des Dokumentes über das Netz an diese Adresse ein.
  • Im Allgemeinen kann ein Desktop von einem Benutzer erzeugt werden, indem er ein Aktionsfenstermenü oder ein Dialogfenstermenü von der von der Desktop-Verwaltungseinrichtung 350 bereitgestellten Benutzerschnittstelle abruft. Die Aktionsfenster- und Dialogfenstermenüs sind Benutzerschnittstellenelemente, die u. a. eine Liste von Befehlsauswahlen zum Erzeugen und Auswählen von Desktops und zum verlassen des virtuellen Desktop-Systems bereitstellen. Anschließend können Anwendungen zu einem Desktop hinzugefügt werden, z. B. durch das Öffnen von Anwendungsfenstern auf diesem Desktop oder durch "Ziehen und Ablegen" (dragging and dropping) von Anwendungssymbolen auf einen Desktop mit der Maus 130, was auch durch ein Symbol auf dem Desktop-Verwaltungseinrichtungs-Bildschirm dargestellt werden kann. Ein Dialog- oder "Kind"-Fenster, das von einem Anwendungsprogramm in einem Desktop automatisch erzeugt werden kann, positioniert sich selbst in Bezug auf sein Elternfenster und wird diesem Desktop zugeordnet.
  • Der Desktop 400 enthält außerdem eine Datenstruktur 450 zum Speichern einer Liste aller diesem Desktop zugeordneten offenen Anwendungen zusammen mit den Größen und Fensterpositionen dieser Anwendungsfenster. Diese Liste kann beim Vergleich der Position eines Anwendungsfensters mit dem Bereich von diesem Desktop zugeordneten Fensterpositionskoordinaten nützlich sein, so dass der Desktop feststellen kann, ob ein bestimmtes Anwendungsfenster zu ihm gehört.
  • Insbesondere wird jedem Desktop 400 von der Desktop-Verwaltungseinrichtung 350 ein Bereich von Bildschirmkoordinaten zugeordnet, die sodann ausgewählte Anwendungsfenster zur Zuordnung zu diesem Desktop innerhalb dieser Bereiche positioniert. Das virtuelle Desktop-System 300, zu dem die Fensterverwaltungseinrichtung 310 gehört, unterstützt die Positionierung von Anwendungsfenstern bei Bildschirmkoordinaten im Bereich von z. B. minus 16.767 bis 16.768 Fenstereinheiten. Normalerweise ist nur eine als aktuelle Ansicht bezeichnete Teilmenge dieses Bereichs auf dem Bildschirm sichtbar. In der veranschaulichenden Ausführungsform der Erfindung beträgt die maximale Breite der Bildauflösung des Bildschirms 135 vorzugsweise 640 Fenstereinheiten; dementsprechend umfasst die aktuelle Ansicht vorzugsweise einen Bereich von 0 bis 640 Fenstereinheiten. Diese Auflösung kann jedoch von Bildschirm zu Bildschirm verschieden sein, wodurch bewirkt wird, dass Anwendungen, die zur Anzeige auf den Bildschirmen vorgesehen sind, außerhalb ihrer sichtbaren Bereiche verschoben werden.
  • Im Allgemeinen erhält die Desktop-Verwaltungseinrichtung 350 die Auflösung des Bildschirms durch Ausgeben von der herkömmlichen API zugeordneten Funktionsaufrufen. Beispielsweise kann die Desktop-Verwaltungseinrichtung eine Funktionsaufrufnachricht <GetSysMetrics> an die Fensterverwaltungseinrichtung 310 ausgeben, um die Bildauflösung des Bildschirms anzufordern. Auf diesen Funktionsaufruf hin rücküberträgt die Fensterverwaltungseinrichtung die angeforderten Daten, und die Desktop-Verwaltungseinrichtung ordnet jedem Desktop einen Bereich von Fenstereinheiten zu, der vorzugsweise mindestens zweimal so groß wie die maximale Breite des Bildschirms ist.
  • 5 zeigt die Breiten von Desktop-Anzeigebereichen 510 bis 530, die zweimal so groß wie die Breite eines Bildschirms sind. Jedem Desktop wird vorzugsweise ein Bereich von Bildschirmkoordinaten von 1280 Fenstereinheiten zugeordnet, und den offenen Anwendungen jedes Desktops werden Fensterpositionen innerhalb dieser Bereiche zugeordnet. Eine Vergrößerung des Koordinatenbereichs jedes Desktops stellt folglich sicher, dass Anwendungsfenster, die keinem aktuell angezeigten Desktop zugeordnet sind, auf dem Bildschirm nicht sichtbar sind.
  • Insbesondere werden dem Desktop 510 die Bildschirmkoordinaten 0 bis 1280, dem Desktop 520 die Koordinaten 1280 bis 2560 und dem Desktop 530 die Koordinaten 2560 bis 3840 zugeordnet.
  • Diese Koordinatenbereiche werden in der Datenstruktur 360 der Desktop-Verwaltungseinrichtung 350 entsprechend dem Namen und der Funktion des Desktops gespeichert. Wie erwähnt wurde, ordnet die Desktop-Verwaltungseinrichtung 350 außerdem jedem Desktop unter Verwendung der herkömmlichen API offene Anwendungsfenster entsprechend der Fensterposition zu; dieser Schnittstelle zugeordnete zusätzliche Funktionsaufrufe werden weiter unten in Verbindung mit den 6 und 8 bis 10 beschrieben. Insbesondere kommuniziert die Desktop-Verwaltungseinrichtung mit der Fensterverwaltungseinrichtung durch den Austausch von Funktionsaufrufnachrichten, die die Anwendungsfenster 512 und 514 im Desktop 510, das Anwendungsfenster 522 im Desktop 520 und die Anwendungsfenster 532 und 534 im Desktop 530 positionieren. Anschließend werden die Fensterpositionen aller offenen Anwendungsfenster in der Datenstruktur 450 gespeichert.
  • 6 ist ein Flussdiagramm, das die Folge von Schritten zum zuordnen von Bildschirmkoordinaten und Fensterpositionen zu den Desktops und ihre zugeordneten Anwendungsfenster darstellt. Die Routine beginnt im Schritt 600 und geht weiter zum Schritt 602, wo die Desktop-Verwaltungseinrichtung jedem vom Benutzer erzeugten Desktop Bildschirmkoordinatenbereiche zuordnet. Wie erwähnt wurde, wird jedem Desktop vorzugsweise ein Bereich von Bildschirmkoordinaten zugeordnet, der zweimal so groß wie die maximale Breite des Bildschirms ist, oder 1280 Fenstereinheiten in der veranschaulichenden Ausführungsform. Im Schritt 604 gibt der Benutzer einen Befehl an die Desktop-Verwaltungseinrichtung aus, der die Zuordnung einer Anwendung zu einem ausgewählten Desktop anfordert. Auf diese Anforderung hin gibt die Desktop-Verwaltungseinrichtung im Schritt 606 eine Funktionsaufrufnachricht <SetWindowPos> an die Fensterverwaltungseinrichtung 310 aus, um die Fensterposition der Anwendung in den ausgewählten Desktop zu setzen, und die Routine endet im Schritt 608.
  • Zum Anzeigen der einem ausgewählten Desktop zugeordneten offenen Anwendungen wird eine aktuell auf dem Bildschirm angezeigte Desktop-Ansicht verschoben, d. h. auf die dem ausgewählten Desktop zugeordneten Koordinaten umgeschaltet. Wie erwähnt wurde, hat der aktuell angezeigte Ansichtsbereich einen feststehenden Bildschirmkoordinatenbereich von 640 Fenstereinheiten. Anwendungsfenster, die nicht dem für die aktuelle Ansicht ausgewählten Desktop zugeordnet sind, sind nicht sichtbar, da sie außerhalb des sichtbaren Ansichtsbereichs positioniert werden. Das Umschalten zwischen den Desktops wird vorzugsweise unter Verwendung der herkömmlichen API ausgeführt, wie im folgenden Flussdiagramm von 8 beschrieben wird.
  • Hier beginnt die Umschaltroutine im Schritt 800 und geht weiter zum Schritt 802, wo der Benutzer einen Befehl an die Desktop-Verwaltungseinrichtung ausgibt, der die Anzeige eines ausgewählten Desktops anfordert, der sich aktuell nicht im Ansichtsbereich befindet. Die Anforderung des Benutzers wird normalerweise über die oben beschriebenen Aktionsfenster- oder Dialogfenstermenüs aufgerufen. Im Schritt 804 gibt die Desktop-Verwaltungseinrichtung eine Funktionsaufrufnachricht <ShowView> an den ausgewählten Desktop aus, wodurch angefordert wird, dass der Desktop seine zugeordneten Anwendungen entsprechend der Fensterposition zeigt. Der ausgewählte Desktop greift sodann auf seine Datenstruktur zu, um festzustellen, welche Anwendungsfenster einschließlich der Größen und Positionen dieser Fenster diesem zugeordnet sind, wie im Schritt 806 gezeigt wird, und rücküberträgt diese Daten an die Desktop-Verwaltungseinrichtung. Im Schritt 808 gibt die Desktop-Verwaltungseinrichtung eine Funktionsaufrufnachricht <SetWindowPos> an die Fensterverwaltungseinrichtung aus, um die Bildschirmkoordinaten des ausgewählten Desktops entsprechend den erhaltenen Daten auf die aktuelle Ansicht zu setzen. Dies wird vorzugsweise durch Verschieben jedes Anwendungsfensters auf die aktuelle Ansicht ausgeführt. Die Routine endet im Schritt 810.
  • Wie erwähnt wurde, ist die Desktop-Verwaltungseinrichtung 350 für die Koordination der gemeinsamen Nutzung von Anwendungen zwischen Desktops zuständig, wenn zu einem bestimmten Zeitpunkt nur eine Kopie einer Anwendung ausgeführt werden kann. Eine gemeinsame Nutzung von Anwendungen kann geeignet sein, wenn ein Fenster außerhalb des aktuellen Ansichtsbereichs "aktiv" wird, wodurch angezeigt wird, dass ein anderer Desktop die aktive Anwendung enthält. Der Prozess der Koordination einer solchen gemeinsamen Nutzung von Anwendungen wird im Flussdiagramm von 9 gezeigt.
  • Die Routine beginnt im Schritt 900 und geht weiter zum Schritt 902, wo die Desktop-Verwaltungseinrichtung ein Fenster "sucht", das außerhalb des aktuellen Ansichtsbereichs aktiv wird. Insbesondere überwacht die Desktop-Verwaltungseinrichtung Nachrichten zwischen der Fensterverwaltungseinrichtung und Anwendungsprogrammen, wobei sie im Schritt 904 nach einem Befehl ACTIVATE sucht. Auf die Ausgabe eines Befehls ACTIVATE hin stellt die Desktop-Verwaltungseinrichtung fest, welchem Desktop die aktive Anwendung zugeordnet ist, wie im Schritt 906 dargestellt wird, in dem sie eine Funktionsaufrufnachricht <ShowView> an die Desktops ausgibt. Im Schritt 908 stellt die Desktop-Verwaltungseinrichtung fest, ob die aktive Anwendung zwischen den Desktops entliehen werden kann, indem sie den Benutzer z. B. über ein Dialogfeld zur Eingabe auffordert, ob die Anwendung entliehen werden kann. Falls die Anwendung nicht entliehen werden kann, weil sie z. B. gesperrt oder passwortgeschützt ist, kehrt die Routine lediglich zur Wiederholung zurück zum Schritt 902. Falls der Benutzer jedoch das Entleihen der Anwendung gestattet, leitet die Desktop-Verwaltungseinrichtung auf eine entsprechende Weise eine gemeinsame Nutzung der Anwendung ein, z. B. indem sie die aktive Anwendung im aktuellen Anzeigebereich positioniert, wie im Schritt 910 gezeigt wird; dies wird durch das Ausgeben eines Funktionsaufrufs <SetWindowPos> von der Desktop- Verwaltungseinrichtung an die Fensterverwaltungseinrichtung ausgeführt. Anschließend kehrt die Routine zur Wiederholung zurück zum Schritt 902. Selbstverständlich endet die Routine, wenn das virtuelle Desktop-System verlassen wird oder falls der Computer ausgeschaltet wird.
  • Schließlich veranschaulicht das Flussdiagramm von 10 die Folge von Schritten, die verwendet werden, um das virtuelle Desktop-System auf eine Weise zu verlassen, die sicherstellt, dass alle offenen Anwendungen vor dem Verlassen der Programme des Systems geschlossen werden. Diese Routine ist besonders vorteilhaft für offene Anwendungsfenster, die im Hintergrund der Desktop-Umgebung ausgeführt werden und dem Benutzer beim Verlassen des Systems verborgen bleiben.
  • Die Routine beginnt im Schritt 1000 und geht weiter zum Schritt 1002, wo der Benutzer einen Befehl zum Verlassen des virtuellen Desktop-Systems an die Desktop-Verwaltungseinrichtung ausgibt. Dies kann durch Auswählen eines Ende-Befehls aus den Menüs der Desktop-Verwaltungseinrichtungs-Schnittstelle ausgeführt werden. Im Schritt 1004 gibt die Desktop-Verwaltungseinrichtung Funktionsaufrufnachrichten <ShowView> an die Desktops aus, wodurch diese aufgefordert werden, ihre zugeordneten Anwendungen zu zeigen. Im Schritt 1006 greift jeder Desktop auf seine Datenstruktur zu, um festzustellen, welche Anwendungen diesem zugeordnet sind, und rücküberträgt die angeforderten Daten an die Desktop-Verwaltungseinrichtung. Im Schritt 1008 gibt die Desktop-Verwaltungseinrichtung Funktionsaufrufnachrichten <SetWindowPos> an die Fensterverwaltungseinrichtung aus, um die Bildschirmkoordinaten jedes Desktops entsprechend den erhaltenen Daten auf die aktuelle Ansicht zu setzen, und die Routine endet im Schritt 1010.

Claims (4)

  1. Verfahren zum Organisieren von Anwendungsfenstern von in einem Computer (100) ausgeführten offenen Anwendungen (202, 216), zur Anzeige auf einem Bildschirm (135), der Bildschirmkoordinaten aufweist, die einen sichtbaren Bereich von Koordinaten beinhalten, die eine aktuell sichtbare Ansicht darstellen, wobei das Verfahren die folgenden Schritte umfasst: Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen (400); Positionieren von Anwendungsfenstern von offenen Anwendungen (202, 216) in jeden der Anzeigebereiche (400); und Einstellen der Bildschirmkoordinaten, so dass die Anwendungsfenster auf dem Bildschirm anzeigt werden; dadurch gekennzeichnet, dass: der Schritt des Zuordnens eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen (400) das Zuordnen eines entsprechenden Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Desktop-Anzeigebereichen (400) umfasst, so dass jeder Desktop-Anzeigebereich (400) eine Breite hat, die größer als die Breite des Bildschirms (135) ist; der Schritt des Positionierens von Anwendungsfenstern von offenen Anwendungen (202, 216) in jeden der Anzeigebereiche (400) die Verwendung einer Desktop-Verwaltungseinrichtung (350) umfasst, um Gruppen der Anwendungsfenster innerhalb des Bereichs von Anzeigekoordinaten der Desktop-Anzeigebereiche zur Zuordnung zu den Desktop-Anzeigebereichen (400) zu positionieren, wobei die Funktionen, die von den offenen Anwendungen ausgeführt werden, Anwendungsfenster in der Gruppe haben, die einem Desktop-Anzeigebereich (400) zugeordnet sind, der entsprechend der Benutzerauswahl zusammengesetzt ist; der Schritt des Einstellens der Bildschirmkoordinaten zum Anzeigen der Anwendungsfenster auf dem Bildschirm (135) das Umschalten der Bildschirmkoordinaten eines ausgewählten Desktop-Anzeigebereichs (400) auf den sichtbaren Bereich umfasst, um die Anwendungsfenster der dem Desktop-Anzeigebereich (400) zugeordneten Gruppe zu bewegen; und der Bereich der jedem der Desktop-Anzeigebereiche (400) zugeordneten Bildschirmkoordinaten so ist, dass Fenster, die keinem aktuell angezeigten Desktop-Anzeigebereich (400) zugeordnet sind, auf dem Bildschirm (135) nicht sichtbar sind.
  2. Verfahren nach Anspruch 1, das außerdem den Schritt des Speicherns von Listen der Gruppen von Anwendungsfenstern von offenen Anwendungen (202, 216) in Datenstrukturen umfasst, die den Desktop-Anzeigebereichen (400) zugeordnet werden.
  3. Verfahren nach Anspruch 1 oder 2, wobei der Schritt des Zuordnens außerdem das Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem der Desktop-Anzeigebereiche (400) umfasst, der zweimal so groß wie der sichtbare Bereich von Koordinaten ist.
  4. Virtuelles Desktop-System zum Organisieren von Anwendungsfenstern von in einem Computer (100) ausgeführten offenen Anwendungen (202, 216), zur Anzeige auf einem Bildschirm (135), der Bildschirmkoordinaten aufweist, die einen sichtbaren Bereich von Koordinaten beinhalten, die eine aktuell sichtbare Ansicht darstellen, wobei das virtuelle Desktop-System Folgendes umfasst: ein Mittel zum Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen (400); ein Mittel zum Positionieren von Anwendungsfenstern von offenen Anwendungen (202, 216) in jeden der Anzeigebereiche (400); und ein Mittel zum Einstellen der Bildschirmkoordinaten, so dass die Anwendungsfenster auf dem Bildschirm (135) anzeigt werden; dadurch gekennzeichnet, dass: das Mittel zum Zuordnen eines Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Anzeigebereichen (400) ein Mittel zum Zuordnen eines entsprechenden Bereichs von Bildschirmkoordinaten zu jedem aus einer Vielzahl von Desktop-Anzeigebereichen (400) umfasst, so dass jeder Desktop-Anzeigebereich (400) eine Breite hat, die größer als die Breite des Bildschirms (135) ist; das Mittel zum Positionieren von Anwendungsfenstern von offenen Anwendungen (202, 216) in jeden der Anzeigebereiche (400) eine Desktop-Verwaltungseinrichtung (350) umfasst, die für das Positionieren von Gruppen der Anwendungsfenster innerhalb des Bereichs von Anzeigekoordinaten der Desktop-Anzeigebereiche zur Zuordnung zu den Desktop-Anzeigebereichen (400) geeignet ist, wobei die Funktionen, die von den offenen Anwendungen ausgeführt werden, Anwendungsfenster in der Gruppe haben, die einem Desktop-Anzeigebereich (400) zugeordnet sind, der entsprechend der Benutzerauswahl zusammengesetzt ist; das Mittel zum Einstellen der Bildschirmkoordinaten zum Anzeigen der Anwendungsfenster auf dem Bildschirm (135) ein Mittel zum Umschalten der Bildschirmkoordinaten eines ausgewählten Desktop-Anzeigebereichs (400) auf den sichtbaren Bereich umfasst, um die Anwendungsfenster der dem Desktop-Anzeigebereich (400) zugeordneten Gruppe zu bewegen; und der Bereich der jedem der Desktop-Anzeigebereiche (400) zugeordneten Bildschirmkoordinaten so ist, dass Fenster, die keinem aktuell angezeigten Desktop-Anzeigebereich (400) zugeordnet sind, auf dem Bildschirm (135) nicht sichtbar sind.
DE69533568T 1994-08-01 1995-07-31 Virtuelles Desk-Top-System und Verfahren dafür Expired - Lifetime DE69533568T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/284,013 US5564002A (en) 1994-08-01 1994-08-01 Method and apparatus for implementing a virtual desktop through window positioning
US284013 2002-10-29

Publications (2)

Publication Number Publication Date
DE69533568D1 DE69533568D1 (de) 2004-11-04
DE69533568T2 true DE69533568T2 (de) 2005-10-13

Family

ID=23088525

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69533568T Expired - Lifetime DE69533568T2 (de) 1994-08-01 1995-07-31 Virtuelles Desk-Top-System und Verfahren dafür

Country Status (4)

Country Link
US (1) US5564002A (de)
EP (1) EP0697691B1 (de)
JP (1) JPH0855002A (de)
DE (1) DE69533568T2 (de)

Families Citing this family (152)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694561A (en) * 1994-12-12 1997-12-02 Microsoft Corporation Method and system for grouping and manipulating windows
JP3517301B2 (ja) * 1995-03-28 2004-04-12 富士通株式会社 仮想画面表示処理システム
GB2301757B (en) * 1995-06-01 2000-02-02 Ibm Graphical user interface
US5897635A (en) * 1995-06-07 1999-04-27 International Business Machines Corp. Single access to common user/application information
JPH096582A (ja) * 1995-06-20 1997-01-10 Fujitsu Ltd アプリケーション・グルーピング方法及び装置
US6389177B1 (en) * 1996-07-02 2002-05-14 Apple Computer, Inc. System and method using edge processing to remove blocking artifacts from decompressed images
US5841435A (en) * 1996-07-26 1998-11-24 International Business Machines Corporation Virtual windows desktop
US5969632A (en) * 1996-11-22 1999-10-19 Diamant; Erez Information security method and apparatus
US6202153B1 (en) 1996-11-22 2001-03-13 Voltaire Advanced Data Security Ltd. Security switching device
US6018340A (en) * 1997-01-27 2000-01-25 Microsoft Corporation Robust display management in a multiple monitor environment
WO1998043194A2 (en) * 1997-03-26 1998-10-01 Yigal Brandman Apparatus and methods for moving a cursor on a computer display and specifying parameters
WO1999005666A1 (en) 1997-07-25 1999-02-04 Apple Computer, Inc. System and method for generating high-luminance windows on a computer display device
DE19818819A1 (de) * 1997-11-20 1999-05-27 Mitsubishi Electric Corp Schirm-Erstellungseditor mit Schirmübergangs-Editierfunktion
US6313823B1 (en) 1998-01-20 2001-11-06 Apple Computer, Inc. System and method for measuring the color output of a computer monitor
US6259443B1 (en) * 1998-02-06 2001-07-10 Henry R. Williams, Jr. Method and apparatus for enabling multiple users to concurrently access a remote server using set-top boxes
US6710790B1 (en) * 1998-08-13 2004-03-23 Symantec Corporation Methods and apparatus for tracking the active window of a host computer in a remote computer display window
US6463459B1 (en) * 1999-01-22 2002-10-08 Wall Data Incorporated System and method for executing commands associated with specific virtual desktop
WO2001026321A2 (en) * 1999-10-01 2001-04-12 Accenture L.L.P. Communication service architectures for netcentric computing systems
US7020697B1 (en) 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US6988249B1 (en) 1999-10-01 2006-01-17 Accenture Llp Presentation service architectures for netcentric computing systems
US6654036B1 (en) * 2000-06-05 2003-11-25 International Business Machines Corporation Method, article of manufacture and apparatus for controlling relative positioning of objects in a windows environment
CA2349649A1 (en) * 2000-07-31 2002-01-31 International Business Machines Corporation Switching between virtual desktops
US7840691B1 (en) 2000-09-07 2010-11-23 Zamora Radio, Llc Personal broadcast server system for providing a customized broadcast
US7359949B2 (en) * 2000-12-29 2008-04-15 Intel Corporation Remotely controlling a UNIX-based system
US7962482B2 (en) 2001-05-16 2011-06-14 Pandora Media, Inc. Methods and systems for utilizing contextual feedback to generate and modify playlists
US20020198965A1 (en) * 2001-06-26 2002-12-26 Kraft Matthew J. Method and apparatus to facilitate establishing a distributed internet application platform
US7171468B2 (en) * 2001-11-10 2007-01-30 Kabushiki Kaisha Toshiba System and method for accessing a document management repository
US7047500B2 (en) * 2001-11-16 2006-05-16 Koninklijke Philips Electronics N.V. Dynamically configurable virtual window manager
JP3883459B2 (ja) * 2002-03-25 2007-02-21 三菱電機株式会社 画像信号発生装置、画像信号発生方法、この方法を実行させるプログラム、及びこのプログラムを記録した記録媒体
US7010755B2 (en) * 2002-04-05 2006-03-07 Microsoft Corporation Virtual desktop manager
US7343566B1 (en) 2002-07-10 2008-03-11 Apple Inc. Method and apparatus for displaying a window for a user interface
US7171622B2 (en) * 2002-07-18 2007-01-30 International Business Machines Corporation Method, apparatus and computer program product for projecting objects in a display unit
CN1260642C (zh) * 2002-11-18 2006-06-21 深圳市朗科科技有限公司 一种向移动存储装置发送命令和数据的方法
US7117448B2 (en) * 2002-12-17 2006-10-03 International Business Machines Corporation System and method for determining desktop functionality based on workstation and user roles
US7243336B2 (en) * 2002-12-17 2007-07-10 International Business Machines Corporation System and method of extending application types in a centrally managed desktop environment
US7203905B2 (en) 2002-12-17 2007-04-10 International Business Machines Corporation System and method for platform independent desktop lockdown
US20040113950A1 (en) * 2002-12-17 2004-06-17 International Business Machines Corporation System and method for centrally managed self-contained desktops
US7111245B2 (en) * 2002-12-17 2006-09-19 International Business Machines Corporation System and method for smart graphical components
US7310775B2 (en) * 2002-12-17 2007-12-18 International Business Machines Corporation System and method for restoring desktop components using distributed desktop packages
US9182937B2 (en) * 2010-10-01 2015-11-10 Z124 Desktop reveal by moving a logical display stack with gestures
US9207717B2 (en) * 2010-10-01 2015-12-08 Z124 Dragging an application to a screen using the application manager
DE10326811A1 (de) * 2003-06-13 2005-01-20 Siemens Ag Verfahren zur Darstellung von Grafikobjekten und Kommunikationsgerät
DE10328853A1 (de) * 2003-06-26 2005-02-10 Siemens Ag Verfahren und Einrichtung zur Darstellung von Bildschirminhalten
US20050097506A1 (en) * 2003-10-31 2005-05-05 Hewlett-Packard Development Company, L.P. Virtual desktops and project-time tracking
US20050125739A1 (en) * 2003-11-20 2005-06-09 Thompson Jeffrey W. Virtual desktop manager system and method
US7266726B1 (en) 2003-11-24 2007-09-04 Time Warner Cable Inc. Methods and apparatus for event logging in an information network
US8302111B2 (en) 2003-11-24 2012-10-30 Time Warner Cable Inc. Methods and apparatus for hardware registration in a network device
US20050132305A1 (en) * 2003-12-12 2005-06-16 Guichard Robert D. Electronic information access systems, methods for creation and related commercial models
JP4494002B2 (ja) * 2003-12-19 2010-06-30 富士通コンポーネント株式会社 切替器および切替器の切替方法
US8001479B2 (en) * 2004-02-03 2011-08-16 Ronald Mark Katsuranis System and methods to access computer files and position and control application window(s) on a graphical user interface
US9213538B1 (en) 2004-02-06 2015-12-15 Time Warner Cable Enterprises Llc Methods and apparatus for display element management in an information network
US8276095B2 (en) * 2004-02-20 2012-09-25 Advanced Intellectual Property Group, Llc System for and method of generating and navigating within a workspace of a computer application
US7460134B2 (en) * 2004-03-02 2008-12-02 Microsoft Corporation System and method for moving computer displayable content into a preferred user interactive focus area
US8028247B2 (en) * 2004-03-05 2011-09-27 International Business Machines Corporation System and method for window navigation in GUI environment
US8276096B2 (en) * 2004-04-02 2012-09-25 International Business Machines Corporation Multicast file viewing and editing
JP4589308B2 (ja) * 2004-04-05 2010-12-01 パナソニック株式会社 表示画面管理装置
US20050235223A1 (en) * 2004-04-15 2005-10-20 Udo Arend User interface adaptable by an end user
US7490295B2 (en) 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
US8566732B2 (en) 2004-06-25 2013-10-22 Apple Inc. Synchronization of widgets and dashboards
US8453065B2 (en) 2004-06-25 2013-05-28 Apple Inc. Preview and installation of user interface elements in a display environment
US8302020B2 (en) 2004-06-25 2012-10-30 Apple Inc. Widget authoring and editing environment
KR20060015397A (ko) * 2004-08-14 2006-02-17 삼성전자주식회사 Gui 운영 체제에서의 바탕 화면 변경 장치 및 방법
JP4738805B2 (ja) * 2004-12-16 2011-08-03 株式会社リコー 画面共有システム、画面共有方法、画面共有プログラム
US20060168537A1 (en) * 2004-12-22 2006-07-27 Hochmuth Roland M Computer display control system and method
US8631342B2 (en) * 2004-12-22 2014-01-14 Hewlett-Packard Development Company, L.P. Computer display control system and method
US8743019B1 (en) 2005-05-17 2014-06-03 Nvidia Corporation System and method for abstracting computer displays across a host-client network
US8543931B2 (en) * 2005-06-07 2013-09-24 Apple Inc. Preview including theme based installation of user interface elements in a display environment
US7954064B2 (en) * 2005-10-27 2011-05-31 Apple Inc. Multiple dashboards
US9104294B2 (en) 2005-10-27 2015-08-11 Apple Inc. Linked widgets
US7743336B2 (en) 2005-10-27 2010-06-22 Apple Inc. Widget security
US7752556B2 (en) 2005-10-27 2010-07-06 Apple Inc. Workflow widgets
US8543824B2 (en) 2005-10-27 2013-09-24 Apple Inc. Safe distribution and use of content
US7707514B2 (en) 2005-11-18 2010-04-27 Apple Inc. Management of user interface elements in a display environment
US8381127B2 (en) * 2006-02-02 2013-02-19 Scenera Technologies, Llc Methods, systems, and computer program products for displaying windows on a graphical user interface based on relative priorities associated with the windows
JP2007286332A (ja) * 2006-04-17 2007-11-01 Tangtake Technology Co Ltd オブジェクトの表示方法
US20070260995A1 (en) * 2006-05-08 2007-11-08 Sap Ag. Systems and methods for relating data to a task
US8869027B2 (en) 2006-08-04 2014-10-21 Apple Inc. Management and generation of dashboards
US10503342B2 (en) * 2006-08-04 2019-12-10 Apple Inc. User interface spaces
US20080111822A1 (en) * 2006-09-22 2008-05-15 Yahoo, Inc.! Method and system for presenting video
US8516393B2 (en) * 2006-12-18 2013-08-20 Robert Pedersen, II Apparatus, system, and method for presenting images in a multiple display environment
US20080168368A1 (en) * 2007-01-07 2008-07-10 Louch John O Dashboards, Widgets and Devices
US20080270910A1 (en) * 2007-04-30 2008-10-30 Lukasik Derek J User selection of a remote session
US8839142B2 (en) 2007-06-08 2014-09-16 Apple Inc. Desktop system object removal
US8954871B2 (en) 2007-07-18 2015-02-10 Apple Inc. User-centric widgets and dashboards
US8667415B2 (en) 2007-08-06 2014-03-04 Apple Inc. Web widgets
TW200907813A (en) * 2007-08-10 2009-02-16 Asustek Comp Inc Method for operating computer and operating system thereof
US8156467B2 (en) 2007-08-27 2012-04-10 Adobe Systems Incorporated Reusing components in a running application
US11126321B2 (en) * 2007-09-04 2021-09-21 Apple Inc. Application menu user interface
US8850351B2 (en) * 2007-09-25 2014-09-30 Ati Technologies Ulc Method and tool for virtual desktop management
US8176466B2 (en) 2007-10-01 2012-05-08 Adobe Systems Incorporated System and method for generating an application fragment
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
US20090113353A1 (en) * 2007-10-31 2009-04-30 Ravi Prakash Bansal Cursor locator
CA2711451C (en) * 2008-01-07 2016-11-08 Smart Technologies Ulc Method of managing applications in a multi-monitor computer system and multi-monitor computer system employing the method
JP5266809B2 (ja) * 2008-03-11 2013-08-21 日本電気株式会社 表示モード切替方法
US20090249219A1 (en) * 2008-03-31 2009-10-01 Best Steven F Providing a Shared Desktop Interface of Multiple Computer Terminals
US8266550B1 (en) * 2008-05-28 2012-09-11 Google Inc. Parallax panning of mobile device desktop
JP2010009534A (ja) * 2008-06-30 2010-01-14 Fujitsu Ltd 電子装置及び表示方法
US8543935B2 (en) * 2008-08-20 2013-09-24 Red Hat, Inc. Full-screen heterogeneous desktop display and control
US20100115471A1 (en) * 2008-11-04 2010-05-06 Apple Inc. Multidimensional widgets
US8799425B2 (en) * 2008-11-24 2014-08-05 Nvidia Corporation Configuring display properties of display units on remote systems
US20100164839A1 (en) * 2008-12-31 2010-07-01 Lyons Kenton M Peer-to-peer dynamically appendable logical displays
JP4676011B2 (ja) 2009-05-15 2011-04-27 株式会社東芝 情報処理装置、表示制御方法およびプログラム
US8612883B2 (en) * 2009-06-08 2013-12-17 Apple Inc. User interface for managing the display of multiple display regions
US20110004839A1 (en) * 2009-07-02 2011-01-06 Derek Cha User-customized computer display method
TWI464599B (zh) * 2009-08-05 2014-12-11 Aten Int Co Ltd 遠端管理系統及方法
US9733665B2 (en) * 2010-10-01 2017-08-15 Z124 Windows position control for phone applications
WO2012044714A1 (en) 2010-10-01 2012-04-05 Imerj LLC Pinch gesture to swap windows
US20120220340A1 (en) * 2010-10-01 2012-08-30 Sanjiv Sirpal Windows position control for phone applications
US20120218202A1 (en) 2010-10-01 2012-08-30 Sanjiv Sirpal Windows position control for phone applications
US20120084737A1 (en) * 2010-10-01 2012-04-05 Flextronics Id, Llc Gesture controls for multi-screen hierarchical applications
US9001149B2 (en) 2010-10-01 2015-04-07 Z124 Max mode
US9436217B2 (en) 2010-10-01 2016-09-06 Z124 Windows position control for phone applications
US9430122B2 (en) 2010-10-01 2016-08-30 Z124 Secondary single screen mode activation through off-screen gesture area activation
US20120225693A1 (en) 2010-10-01 2012-09-06 Sanjiv Sirpal Windows position control for phone applications
US20120225694A1 (en) 2010-10-01 2012-09-06 Sanjiv Sirpal Windows position control for phone applications
US9588545B2 (en) 2010-10-01 2017-03-07 Z124 Windows position control for phone applications
US9189018B2 (en) 2010-10-01 2015-11-17 Z124 Windows position control for phone applications
US9292196B2 (en) 2010-10-19 2016-03-22 Apple Inc. Modifying the presentation of clustered application windows in a user interface
US9542202B2 (en) * 2010-10-19 2017-01-10 Apple Inc. Displaying and updating workspaces in a user interface
US10740117B2 (en) * 2010-10-19 2020-08-11 Apple Inc. Grouping windows into clusters in one or more workspaces in a user interface
US9658732B2 (en) 2010-10-19 2017-05-23 Apple Inc. Changing a virtual workspace based on user interaction with an application window in a user interface
US9069577B2 (en) * 2010-11-23 2015-06-30 Apple Inc. Grouping and browsing open windows
US10152192B2 (en) 2011-02-21 2018-12-11 Apple Inc. Scaling application windows in one or more workspaces in a user interface
US10242341B2 (en) * 2011-03-03 2019-03-26 Lenovo (Singapore) Pte. Ltd. Automatic taskbar grouping by user tasks
US9843665B2 (en) * 2011-05-27 2017-12-12 Microsoft Technology Licensing, Llc Display of immersive and desktop shells
US8924885B2 (en) 2011-05-27 2014-12-30 Microsoft Corporation Desktop as immersive application
US10417018B2 (en) * 2011-05-27 2019-09-17 Microsoft Technology Licensing, Llc Navigation of immersive and desktop shells
US20130076654A1 (en) 2011-09-27 2013-03-28 Imerj LLC Handset states and state diagrams: open, closed transitional and easel
US9645733B2 (en) 2011-12-06 2017-05-09 Google Inc. Mechanism for switching between document viewing windows
US9395869B2 (en) 2012-02-02 2016-07-19 Apple Inc. Global z-order for windows
US9384711B2 (en) 2012-02-15 2016-07-05 Microsoft Technology Licensing, Llc Speculative render ahead and caching in multiple passes
US9286122B2 (en) 2012-05-31 2016-03-15 Microsoft Technology Licensing, Llc Display techniques using virtual surface allocation
US9177533B2 (en) * 2012-05-31 2015-11-03 Microsoft Technology Licensing, Llc Virtual surface compaction
US9230517B2 (en) 2012-05-31 2016-01-05 Microsoft Technology Licensing, Llc Virtual surface gutters
US9235925B2 (en) 2012-05-31 2016-01-12 Microsoft Technology Licensing, Llc Virtual surface rendering
US9696879B2 (en) 2012-09-07 2017-07-04 Google Inc. Tab scrubbing using navigation gestures
US20140157183A1 (en) * 2012-11-30 2014-06-05 John Gordon Dorsay System and method for the selection, layout, and control of one or more hosted interactive computer application programs using a lightweight supervisor computer application program
CN103037079A (zh) * 2012-12-06 2013-04-10 广东欧珀移动通信有限公司 一种移动终端的锁屏系统及其实现方法
US8671352B1 (en) 2013-05-07 2014-03-11 Axure Software Solutions, Inc. Variable dimension version editing for graphical designs
US9307007B2 (en) 2013-06-14 2016-04-05 Microsoft Technology Licensing, Llc Content pre-render and pre-fetch techniques
US9842532B2 (en) 2013-09-09 2017-12-12 Nvidia Corporation Remote display rendering for electronic devices
TWI604375B (zh) * 2014-06-23 2017-11-01 緯創資通股份有限公司 螢幕分享方法以及使用該方法的裝置
US20160077685A1 (en) * 2014-09-15 2016-03-17 Microsoft Technology Licensing, Llc Operating System Virtual Desktop Techniques
JP2016110401A (ja) * 2014-12-05 2016-06-20 株式会社デジタル 画像表示制御装置
US20160306531A1 (en) * 2015-04-16 2016-10-20 Microsoft Technology Licensing, Llc Dynamic Launch Behavior Based on Context Information
AU2017100667A4 (en) 2016-06-11 2017-07-06 Apple Inc. Activity and workout updates
US11716558B2 (en) 2018-04-16 2023-08-01 Charter Communications Operating, Llc Apparatus and methods for integrated high-capacity data and wireless network services
US10592589B1 (en) 2018-08-21 2020-03-17 Axure Software Solutions, Inc. Multi-view masters for graphical designs
EP3864917A4 (de) 2018-10-12 2022-07-06 Charter Communications Operating, LLC Vorrichtung und verfahren zur identifizierung von zellen in drahtlosen netzwerken
US11129171B2 (en) 2019-02-27 2021-09-21 Charter Communications Operating, Llc Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system
US11026205B2 (en) 2019-10-23 2021-06-01 Charter Communications Operating, Llc Methods and apparatus for device registration in a quasi-licensed wireless system
US11048462B1 (en) 2020-02-14 2021-06-29 Lenovo (Singapore) Pte. Ltd. Associating a selector with plural applications for presenting the plural applications on respective plural monitors

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2191918B (en) * 1986-06-16 1990-09-05 Ibm Data display system
US5155836A (en) * 1987-01-27 1992-10-13 Jordan Dale A Block diagram system and method for controlling electronic instruments with simulated graphic display
US5233687A (en) * 1987-03-25 1993-08-03 Xerox Corporation User interface with multiple workspaces for sharing display system objects
US5157783A (en) * 1988-02-26 1992-10-20 Wang Laboratories, Inc. Data base system which maintains project query list, desktop list and status of multiple ongoing research projects
US5241680A (en) * 1989-06-12 1993-08-31 Grid Systems Corporation Low-power, standby mode computer
US5218607A (en) * 1989-06-23 1993-06-08 Kabushiki Kaisha Toshiba Computer having a resume function and operable on an internal power source
US5255211A (en) * 1990-02-22 1993-10-19 Redmond Productions, Inc. Methods and apparatus for generating and processing synthetic and absolute real time environments
US5241625A (en) * 1990-11-27 1993-08-31 Farallon Computing, Inc. Screen image sharing among heterogeneous computers
US5442759A (en) * 1992-03-26 1995-08-15 International Business Machines Corporation Interactive online tutorial system with user assistance function for software products

Also Published As

Publication number Publication date
DE69533568D1 (de) 2004-11-04
JPH0855002A (ja) 1996-02-27
EP0697691A3 (de) 1998-01-07
EP0697691B1 (de) 2004-09-29
US5564002A (en) 1996-10-08
EP0697691A2 (de) 1996-02-21

Similar Documents

Publication Publication Date Title
DE69533568T2 (de) Virtuelles Desk-Top-System und Verfahren dafür
DE69817158T2 (de) Benutzerschnittstellen-Mechanismus zur Manipulierung von Kontexten in Computerverwaltungsapplikationen
DE69726167T2 (de) Verfahren zur verwaltung der darstellung von bildschirmanzeigen in einer multifenster-rechnungsumgebung
DE69526634T2 (de) Verschiebungs- und Entladungsoperation in einer graphischen Benutzerschnittstelle
DE10005812B4 (de) Vom Benutzer ausgewählte Anzeige von zweidimensionalem Fenster in drei Dimensionen auf einem Rechnerbildschirm
DE60003246T2 (de) Software Schnittstelle
DE69838233T2 (de) Bildsystem und Verfahren für virtuelle Realität
DE69726168T2 (de) Verfahren zum kategorisieren von anzeigen in einer anzeige mit mehreren bildfenstern
DE69920217T2 (de) Verfahren zur dynamischen darstellung der kommandos eines toolbars in abhängigkeit von deren benutzung
DE60319229T2 (de) Verfahren und system zur erweiterung der api eines dateisystems
US5767852A (en) Priority selection on a graphical interface
DE69828994T2 (de) Sekundärbenutzerschnittstelle
DE60205750T2 (de) Lenkung der aufmerksamkeit des benutzers auf bestimmte icons, denen sich ein zeiger nähert, in interaktiven benutzerschnittstellen
DE10324652B4 (de) Multivisions-System und Verfahren zum Steuern dieses Systems
DE69732547T2 (de) Verfahren und Gerät zum Zusammenklappen und zur Ausdehnung auserwählter Bereiche von Arbeitsräumen auf einem von einem Rechner kontrollierten Anzeigesystem
DE69635337T2 (de) Erweiterbares und austauschbares system von netzwerkkomponenten
DE19522185A1 (de) Ein Verfahren und System zur dynamischen Übersetzung zwischen verschiedenen grafischen Benutzeroberflächen-Systemen
DE10101345A1 (de) Kombination aus aufgaben- und dateiorientierter Benutzerschnittstelle
US6016146A (en) Method and apparatus for enhancing template creation and manipulation in a graphical user interface
DE19636923A1 (de) Verfahren und Vorrichtung zur gemeinsamen Benutzung von Eingabevorrichtungen durch mehrere unabhängige Graphik-Anzeigevorrichtungen
EP1272921A2 (de) Verfahren zum navigieren zwischen ausschnitten in einem darstellungsraum
DE4417588A1 (de) Verfahren und Vorrichtung zum Erfassen und Weiterleiten von Fensterereignissen zu einer Mehrzahl von bestehenden Anwendungen zur gleichzeitigen Ausführung
DE202015009266U1 (de) Benutzerschnittsstelle für ein Speichersystem mit unverankerter Dateisammlung
DE102016202694A1 (de) Benutzerschnittstelle mit mehreren Anzeigen und Verfahren zur Positionierung von Inhalten auf mehreren Anzeigen
DE112016001140T5 (de) Interaktives Mehrbenutzer-Anzeigesystem und Verfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)