DE202011108527U1 - Computer für das Übersetzen von Eingabe-Ereignissen - Google Patents

Computer für das Übersetzen von Eingabe-Ereignissen Download PDF

Info

Publication number
DE202011108527U1
DE202011108527U1 DE202011108527U DE202011108527U DE202011108527U1 DE 202011108527 U1 DE202011108527 U1 DE 202011108527U1 DE 202011108527 U DE202011108527 U DE 202011108527U DE 202011108527 U DE202011108527 U DE 202011108527U DE 202011108527 U1 DE202011108527 U1 DE 202011108527U1
Authority
DE
Germany
Prior art keywords
type
input event
computer
event
input
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
DE202011108527U
Other languages
English (en)
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.)
Google LLC
Original Assignee
Google 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
Priority claimed from US13/073,676 external-priority patent/US8392935B2/en
Application filed by Google LLC filed Critical Google LLC
Publication of DE202011108527U1 publication Critical patent/DE202011108527U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Computer für das Übersetzen eines ersten Typs eines Eingabe-Ereignisses auf einen zweiten Typ eines Eingabe-Ereignisses, wobei der Computer aufweist:
ein nicht-transitorisches bzw. nicht vorübergehendes, von einem Computer lesbares Speichermedium, welches einen von einem Computer ausführbaren Programmcode speichert, welches aufweist:
ein Empfangs- bzw. Aufnahmemodul für das Empfangen eines Eingabe-Ereignisses, welches auf ein Objekt einer Anwendung gerichtet ist, welche auf einem Computer ausgeführt wird, wobei das Eingabe-Ereignis in Antwort auf eine Benutzer-Interaktivität mit einer Eingabeeinrichtung des Computers erzeugt ist;
ein Übersetzungsmodul für das Übersetzen, in Antwort auf das Eingabe-Ereignis, welches vom ersten Typ ist, des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs;
ein Filtermodul für das selektive Filtern des Eingabe-Ereignisses des zweiten Typs; und
ein Versendemodul für das Absenden des Eingabe-Ereignisses des zweiten Typs an das Objekt der Anwendung, in Antwort auf das Filtern; und
einen Prozessor für das Ausführen des Computerprogrammcodes.

Description

  • BEREICH DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf den Bereich des Berechnens mit Computer, und spezieller ausgedrückt auf das Verarbeiten von Eingabe-Ereignissen in Computereinrichtungen, wie z. B. in Mobiltelefonen und Tafelrechnern.
  • HINTERGRUND DER ERFINDUNG
  • Webseiten werden erzeugt, indem eine Markup-Sprache bzw. Auszeichnungssprache benutzt wird, welche die Struktur der Information in der Seite beschreibt und welche interaktive Formen, eingebettete Bilder und andere Objekte beinhalten kann. Die Markup-Sprache bzw. Auszeichnungssprache kann eingebettete Scripts (z. B. JAVASCRIPT-Code) beinhalten, welche das Verhalten der Objekte auf der Seite beeinflussen bzw. beeinträchtigen kann. JAVASCRIPT beispielsweise liefert Entwicklern die Fähigkeit, Ereignis-Handler bzw. -Bedienprogramme für spezifische Objekte in einer Webseite hinzuzufügen, welche auf bestimmte Arten von Eingabe-Ereignissen ansprechen. Häufig benutzen die Entwickler die Scripts, um Event-Handler bzw. Ereignis-Handler für Maus-Ereignisse zu schaffen, wie z. B. Maus-nach-unten- oder Maus-nach-oben-Ereignisse, welche anzeigen, wenn eine Maustaste gedrückt wird oder freigegeben wird. Demnach kann ein Benutzer einer elektronische Einrichtung eine Maus nutzen, um mit der Webseite wechselzuwirken bzw. interaktiv zu sein.
  • Viele neue Arten von elektronischen Einrichtungen beruhen auf berührungsempfindlichen Displays bzw. Anzeigen für die Benutzereingabe anstatt einer Maus. Der Benutzer benutzt einen Finger, einen Stift oder ein anderes Objekt, um mit der Webseite interaktiv zu sein. Typischerweise wird die elektronische Einrichtung diese Interaktivitäten an einen Web-Browser als Berühr-Ereignisse senden. Wenn die Scripts innerhalb einer Webseite, welche durch den Browser wiedergegeben wird, so konfiguriert sind, um nur Maus-Ereignisse zu empfangen, werden die Scripts die Berühr-Ereignisse nicht verarbeiten.
  • Um dieses Problem zu beseitigen, wandeln einige elektronische Einrichtungen Berühr-Ereignisse in Maus-Ereignisse und senden beide Typen der Ereignisse an den Browser. Berühr-Ereignisse müssen jedoch nicht notwendigerweise mit Maus-Ereignissen korrelieren, und diese Art der einfachen Übersetzung kann unbeabsichtigte Folgen haben. Bestimmte Handbewegungen, wie z. B. das Doppel-Antippen, um die Seite zu zoomen, verzögern das Senden der Maus-Ereignisse an den Browser, da Maus-Ereignisse in dem Fall des Zoomens der Seite nicht erzeugt werden. Folglich sendet der Browser entsprechend zu dem ersten Antippen keine Maus-Ereignisse, bis er identifiziert, dass das Antippen nicht ein Teil eines Doppel-Antippens ist. Der Browser erreicht dies, indem er auf ein zweites Antippen in einem Doppel-Antippen wartet. Eine derartige Erwartung eines zweiten Antippens in einem Doppel-Antippen erzeugt typischerweise eine Verzögerungszeit zwischen der Eingabe des Benutzers und dem Ausführen einer Aktion in der Webseite. Das Warten kann auch zu vielen Maus-Ereignissen führen, welche an den Browser in einer raschen Aufeinanderfolge gesendet werden, sobald die Einrichtung das Berühr-Ereignis identifiziert. Als ein Ergebnis können sich die Interaktivitäten des Benutzers mit der Webseite schwerfällig oder nicht reagierend anfühlen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Ausführungsformen der vorliegenden Veröffentlichung beinhalten ein Verfahren (und einen entsprechenden Computer und ein von einem Computer lesbare Medium) für das Übersetzen eines ersten Typs eines Eingabe-Ereignisses in einen zweiten Typ eines Eingabe-Ereignisses. Das Verfahren weist das Empfangen eines Eingabe-Ereignisses auf, welches auf ein Objekt einer Anwendung gerichtet ist, welche auf einem Computer ausgeführt wird. Das Eingabe-Ereignis wird in Antwort auf die Interaktivität eines Benutzers mit einer Eingabe-Einrichtung des Computers erzeugt. In Antwort auf das Eingabe-Ereignis, welches eines von dem ersten Typ ist, wird das Eingabe-Ereignis in ein Eingabe-Ereignis des zweiten Typs übersetzt. Das Eingabe-Ereignis des zweiten Typs wird selektiv gefiltert und an das Objekt der Anwendung, welche für das Filtern ansprechbar ist, gesendet.
  • Ausführungsformen des Computers weisen ein nicht-transitorisches, von einem Computer lesbares Speichermedium auf, welches den ausführbaren Computerprogrammcode speichert, welcher ein Aufnahmemodul für das Empfangen eines Eingabe-Ereignisses aufweist, welches sich auf ein Objekt einer Anwendung, welche auf einem Computer ausgeführt wird, bezieht. Das Eingabe-Ereignis wird in Antwort auf die Interaktivität eines Benutzers mit einer Eingabeeinrichtung des Computers erzeugt. Der Computerprogrammcode weist ferner ein Übersetzungsmodul für die Übersetzung, reagierend auf das Eingabe-Ereignis, welches vom ersten Typ ist, das Eingabe-Ereignis des ersten Typs auf ein Eingabe-Ereignis des zweiten Typs auf. Der Computerprogrammcode weist zusätzlich ein Filtermodul für das selektive Filtern des Eingabe-Ereignisses des zweiten Typs und ein Versendemodul für das Absenden des Eingabe-Ereignisses des zweiten Typs an das Objekt der Anwendung, welche auf das Filtern reagiert, auf.
  • Der Computer weist auch einen Prozessor für das Ausführen des Computerprogrammcodes auf.
  • Ausführungsformen des von einem Computer lesbaren Mediums speichern den ausführbaren Computerprogrammcode, welcher ein Aufnahmemodul aufweist, um ein Eingabe-Ereignis zu empfangen, welches sich auf ein Objekt einer Anwendung bezieht, welche auf einem Computer ausgeführt wird. Das Eingabe-Ereignis wird in Antwort auf eine Benutzer-Interaktivität mit einer Eingabeeinrichtung des Computers erzeugt. Der Computerprogrammcode weist ferner ein Übersetzungsmodul für die Übersetzung, in Antwort auf das Eingabe-Ereignis, welches von ersten Typ ist, das Eingabe-Ereignis des ersten Typs auf ein Eingabe-Ereignis des zweiten Typs auf. Der Computerprogrammcode weist zusätzlich ein Filtermodul für das selektive Filtern des Eingabe-Ereignisses des zweiten Typs und ein Versendemodul für das Absenden des Eingabe-Ereignisses des zweiten Typs an das Objekt der Anwendung, welche auf das Filtern reagiert, auf. Der Computer weist auch einen Prozessor für das Ausführen des Computerprogrammcodes auf.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Hoch-Ebene-Blockdiagramm eines Computers, welcher gebraucht wird, um vom Benutzer Eingabe-Ereignisse entsprechend einer Ausführungsform der vorliegenden Erfindung zu übersetzen.
  • 2 ist ein Hoch-Ebene-Blockdiagramm, welches ein Beispiel eines Computers entsprechend einer Ausführungsform der vorliegenden Erfindung darstellt.
  • 3 ist ein Hoch-Ebene-Blockdiagramm, welches Module innerhalb des Erfassungsmoduls entsprechend einer Ausführungsform der vorliegenden Erfindung darstellt.
  • 4 ist ein Ablaufdiagramm, welches den Betrieb des Erfassungsmoduls entsprechend einer Ausführungsform der vorliegenden Veröffentlichung darstellt.
  • Die Figuren (FIGS.) und die folgende Beschreibung beschreibt bestimmte Ausführungsformen nur im Hinblick auf die Erläuterung. Ein Fachmann wird schließlich aus der folgenden Beschreibung erkennen, dass alternative Ausführungsformen der Strukturen und Verfahren, welche hier dargestellt sind, angewendet werden können, ohne von den Prinzipien, die hier beschrieben sind, abzuweichen. Bezug wird nun im Detail auf verschiedene Ausführungsformen genommen, von denen Beispiele in den beigefügten Figuren dargestellt sind. Es ist zu beachten, dass, wo immer praktikabel, ähnliche oder gleiche Referenzzahlen in den Figuren benutzt werden können, und sie können ähnliche oder gleiche Funktionalität anzeigen.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • 1 ist ein Hoch-Ebene-Blockdiagramm, welches einen Computer 102 darstellt, welcher angewendet wird, um vom Benutzer Eingabe-Ereignisse entsprechend einer Ausführungsform der vorliegenden Veröffentlichung zu übersetzen. Wie gezeigt wird, beinhaltet der Computer 102: eine berührungsempfindliche Eingabeeinrichtung 104, ein Betriebssystem 106, einen Browser 108, eine Webseite 109, welche durch den Browser erbracht wird, und ein Erfassungsmodul 110, und das Dokument-Objektmodell (DOM) 112 innerhalb der Webseite.
  • Der Computer 102 ist eine elektronische Einrichtung, welche von einem Benutzer benutzt wird, um Aufgaben auszuführen, wie z. B. das Abfragen und Betrachten von Webseiten, welche über ein Netz bereitgestellt werden, Musik zu spielen, etc. Beispielsweise kann der Computer ein Mobiltelefon, ein Tafelcomputer, ein Laptop-Computer oder ein Desktop- bzw. Tischcomputer sein. Demnach, wie er hier gebraucht wird, umfasst der Term ”Computer” eine große Vielzahl von rechnenden Einheiten.
  • Der Computer 102 beinhaltet eine berührungsempfindliche Eingabeeinrichtung 104, welche Berühr-Ereignisse 105 erzeugt, welche auf Benutzereingaben reagieren. Eine berührungsempfindliche Eingabeeinrichtung 104 ist ein elektronisches Eingabesystem, in welchem ein Benutzer seine oder ihre Finger, einen Stift und/oder ein anderes Objekt nutzen kann, um Benutzereingaben zu liefern. In einer Ausführungsform beinhaltet die Eingabeeinrichtung 104 einen berührungsempfindlichen Anzeigeschirm, auf welchem ein Benutzer Eingaben durch direktes Berühren des berührungsempfindlichen Anzeigeschirms liefern kann. Die Eingabeeinrichtung erzeugt Berühr-Ereignisse 105, basierend auf den Berührungseingaben, welche von dem Benutzer empfangen wurden.
  • Die Berühr-Ereignisse 105 beschreiben Benutzereingaben, welche durch den Benutzer durch Benutzen der berührungsempfindlichen Eingabeeinrichtung 104 geliefert werden. Beispiele von Berührungseingabe-Ereignissen, welche durch die berührungsempfindliche Eingabeeinrichtung 104 erzeugt sind, beinhalten Berührungsstart, Berührungsbewegung, Berührungsende, Berührungskanal, etc. In einer Ausführungsform sendet der Computer 102 die Berühr-Ereignisse 105 an das Betriebssystem 106, welches auf dem Computer 102 ausgeführt wird.
  • Das Betriebssystem 106 empfängt die Berühr-Ereignisse 105 und sendet die Berühr-Ereignisse 105 an geeignete Anwendungen, welche auf dem Computer 102 ausgeführt werden. Das Betriebssystem 106 managt die Computerressourcen und liefert allgemeine Dienste, welche eine effiziente Ausführung der Anwendung auf dem Computer 102 ermöglichen. Beispiele des Betriebssystems 106 beinhalten Varianten von GOOGLE ANDROID, APPLE IOS, MICROSOFT WINDOWS und LINUX. Wenn der Browser 108 im Blickfeld liegt, wenn ein Berühr-Ereignis 105 empfangen wird, führt das Betriebssystem 106 das Berühr-Ereignis zu dem Browser.
  • Der Browser 108 ist eine Anwendung, welche auf einem Computer 102 ausgeführt wird, und wird typischerweise für das Abrufen und Präsentieren von Ressourcen benutzt, auf welche über ein Netz zugegriffen wird. In einer Ausführungsform ist der Browser 108 ein Web-Browser, welcher eine Webseite 109 anzeigt, welche von einem Web-Server über ein Netz erhalten wird. Beispiele des Browsers 108 beinhalten beispielsweise GOOGLE CHROME, MOZILLA FIREFOX, APPLE SAFARI und MICROSOFT INTERNET EXPLORER.
  • Der Browser 108 erbringt eine Webseite 109. Die Webseite ist ein Dokument, welches durch einen Browser 108 über ein Netz und/oder von einer lokalen Quelle, welche typischerweise Information dem Benutzer des Computers 102 anzeigt, abgerufen wird. In einer Ausführungsform beinhaltet die Webseite 109 ein oder mehrere Objekte, welche entsprechend einem Dokument-Objektmodell (DOM) 112 repräsentiert werden und interaktiv behandelt werden. Der Browser 108 leitet Berühr-Ereignisse, welche von dem Betriebssystem 106 empfangen werden, entsprechend dem DOM 112 zu Objekten in der Webseite 109. Der Browser 10 kann auch Maus-Ereignisse erzeugen, basierend auf den Berühr-Ereignissen, und kann auch diese Maus-Ereignisse entsprechend dem DOM 112 an die Webseiten-Objekte laufen lassen.
  • Die Objekte auf der Webseite 109 können beispielsweise die gesamte Seite und Tasten, Bilder und Textfelder innerhalb der Seite beinhalten. Die Objekte können zugehörige Scripts (z. B. JAVASCRIPT-Scripts) besitzen, welche der Browser 108 ausführt, wenn die Webseite 109 übergeben wird. Die Scripts implementieren Ereignis-Handler, welche zu den Objekten weitergeleitet wurden. Demnach empfangen die Scripts die Ereignisse der aufgelisteten Arten, welche zu ihren zugehörigen Objekten gesandt werden. Man nehme zum Zwecke der Diskussion an, dass die Scripts der Webseiten-Objekte Ereignis-Handler für Maus-Ereignisse implementieren, jedoch nicht für Berühr-Ereignisse.
  • Die Webseite 109 beinhaltet ein Erfassungsmodul 110, welches Ereignisse 105 abschneidet, welche durch den Browser 110 empfangen wurden, und übersetzt empfangene Berühr-Ereignisse in Maus-Ereignisse 111. In einer Ausführungsform wird das Erfassungsmodul 110 in JAVASCRIPT oder in einer anderen Script-Sprache geschrieben und wird demnach automatisch durch den Browser 108 ausgeführt, wenn die Webseite 109 übergeben wird. Andere Ausführungsformen des Erfassungsmoduls 110 können unter Benutzung unterschiedlicher Arten von Sprachen geschrieben werden und in den Browser 108, das Betriebssystem 106 oder eine andere Komponente des Computers 102 integriert werden.
  • Das Erfassungsmodul 110 listet Ereignis-Handler auf der ”Dokumenten”-Ebene des DOM auf. Dies ist die höchste Ebene, und die Ereignis-Handler des Erfassungsmoduls empfangen damit Ereignisse vor den Ereignissen, welche durch irgendwelche andere Eingabe-Handler des Objektes empfangen werden. Bei dem Empfangen eines Berühr-Ereignisses stoppt das Erfassungsmodul 110 das Ausbreiten des Berühr-Ereignisses 105 zu dem DOM 112. Zusätzlich übersetzt das Erfassungsmodul 110 das Berühr-Ereignis (oder -Ereignisse) in ein äquivalentes Maus-Ereignis. Das Erfassungsmodul 110 sendet übersetzte Maus-Ereignisse, entsprechend zu dem DOM 112, an die Webseite 109. Eine Ausführungsform des Erfassungsmoduls 110 empfängt auch Maus-Ereignisse, welche durch den Browser 108 erzeugt sind, und filtert selektiv diese Maus-Ereignisse.
  • Das Erfassungsmodul 110 liefert damit verbesserten Betrieb der Webseiten, welche Objekte besitzen, welche für Maus-basierte Interaktivitäten auf den Computern 102 gestaltet sind, welche berührungsempfindliche Eingabeeinrichtungen 104 besitzen. Das Erfassungsmodul 110 wird über die Computer 102 als Teil der Web-Seiten verteilt, und deshalb gestattet das Erfassungsmodul eine gleichmäßige Ereignisbehandlung über eine Vielzahl von Computern hinweg, welche unterschiedliche Typen von Eingabeeinrichtungen besitzen. Darüber hinaus, da das Erfassungsmodul 110 zu einer speziellen Webseite oder Gruppe von Webseiten gehört, kann es das Wissen von typischen Interaktivitäten des Benutzers mit der Web-Seite benutzen, um den Übersetzungsprozess zu informieren. Das Erfassungsmodul 110 verbessert entsprechend die Interaktivitäten des Benutzers mit der Webseite, relativ zu den Browsern 108, welche kein Erfassungsmodul besitzen.
  • 2 ist ein Hoch-Ebene-Blockdiagramm, welches ein Beispiel eines Computers 102 entsprechend einer Ausführungsform der vorliegenden Erfindung darstellt. Dargestellt werden wenigstens ein Prozessor 202, welcher an einen Chipsatz 204 gekoppelt ist. Der Chipsatz 204 beinhaltet ein Speicher-Steuerglied-Hub 250 und ein Eingangs/Ausgangs-(I/O- bzw. E/A-)Steuerglied-Hub 255. Ein Speicher 206 und ein graphisches Adaptierglied 213 sind an das Speicher-Steuerglied-Hub 250 gekoppelt, und eine Anzeigeeinrichtung 218 ist an das graphische Adaptierglied 213 und das I/O-Steuerglied-Hub 255 gekoppelt. Eine Speichereinrichtung 208, ein Keyboard bzw. Tastenfeld 210 und ein Netz-Adaptierglied 216 sind auch an das I/O-Steuerglied-Hub 255 gekoppelt. Andere Ausführungsformen des Computers 102 besitzen unterschiedliche Architekturen.
  • Die Speichereinrichtung 208 ist ein nicht-transitorisches, von einem Computer lesbares Speichermedium, wie z. B. eine Festplatte, Compact-Disk-Nur-Lese-Speicher (CD-ROM), DVD oder eine Festkörper-Speichereinrichtung. Der Speicher 206 hält Instruktionen und Daten, welche durch den Prozessor 202 benutzt werden. In einigen Ausführungsformen ist die Anzeigeeinrichtung 218 eine berührungsempfindliche Anzeige. Die Anzeigeeinrichtung 218 kann alleine oder in Kombination mit dem Keyboard benutzt werden, um Daten an den Computer 102 einzugeben. Das graphische Adaptierglied 213 zeigt Bilder und andere Information auf der Anzeigeeinrichtung 218 an. Das Netz-Adaptierglied 216 koppelt den Computer 102 an ein Netz. Einige Ausführungsformen des Computers 102 besitzen unterschiedliche und/andere Komponenten als jene, welche in 2 gezeigt sind.
  • Der Computer 102 ist geeignet, um Computerprogramm-Module für das Liefern der Funktionalität, welche hier beschrieben ist, auszuführen. Wie es hier benutzt wird, bezieht sich der Term ”Modul” auf Computerprogramm-Instruktionen und/oder andere Logik, welche benutzt wird, um die spezifizierte Funktionalität zu liefern. Demnach kann ein Modul in Hardware, Firmware und/oder Software implementiert sein. In einer Ausführungsform werden Programm-Module, welche aus ausführbaren Computerprogramm-Instruktionen gebildet sind, auf der Speichereinrichtung 208 gespeichert, in den Speicher 206 geladen und durch den Prozessor 202 ausgeführt.
  • 3 ist ein Hoch-Ebene-Blockdiagramm, welches Module innerhalb des Erfassungsmoduls 110 darstellt, entsprechend einer Ausführungsform der vorliegenden Veröffentlichung. Fachleute werden erkennen, dass andere Ausführungsformen unterschiedliche und/andere Module als jene besitzen können, welche hier beschrieben sind, und dass die Funktionalitäten der Module in einer unterschiedlichen Weise verteilt sein können. Wie in 3 gezeigt wird, beinhaltet das Erfassungsmodul 110 ein Unterbrechungsmodul 203, ein Übersetzungsmodul 304, ein Filtermodul 306 und ein Weiterleitmodul 308.
  • Das Unterbrechungsmodul 302 unterbricht Ereignisse, welche an die Webseite 209 durch den Browser 108 geliefert werden. Diese Ereignisse beinhalten Berühr-Ereignisse 105, welche an den Browser 108 durch das Betriebssystem 106 gesendet wurden, Maus-Ereignisse, welche an die Web-Seite 109 durch den Browser gesendet wurden, basierend auf den Berühr-Ereignissen, und übersetzte Ereignisse, welche durch das Sendemodul 308 als Teil des Betriebes des Erfassungsmoduls 110 versendet wurden. In einer Ausführungsform listet das Unterbrechungsmodul 302 Berührungs- und Maus-Ereignis-Handler auf der höchsten Stufe des DOM 112, der Dokumentenstufe, auf. Die Registrierung auf der Dokumentenstufe gestattet den Ereignis-Handlern des Unterbrechungsmoduls, die Ereignisse vor den Ereignissen zu empfangen, welche durch die Event-Handler empfangen werden, welche durch andere Objekte auf der Web-Seite 109 aufgelistet sind.
  • Außerdem sind die Ereignis-Handler konfiguriert, um die Ausbreitung der empfangenen Ereignisse zu stoppen. Speziell stoppen die Event-Handler die Ereignisse von dem Ausbreiten durch das DOM 112 für die Webseite. Demnach kann das Unterbrechungsmodul 302 vorzugsweise die einzige Entität auf der Webseite 109 sein, welche Ereignisse von dem Browser 108 empfängt.
  • Das Unterbrechungsmodul 302 sendet die unterbrochenen Ereignisse an andere Module innerhalb des Erfassungsmoduls 110. In einer Ausführungsform sendet das Unterbrechungsmodul 302 unterbrochene Berühr-Ereignisse an das Übersetzungsmodul 304. Das Unterbrechungsmodul 302 sendet unterbrochene Maus-Ereignisse im Gegensatz dazu an das Filtermodul 306.
  • Das Übersetzungsmodul 304 empfängt unterbrochene Berühr-Ereignisse 105 von dem Unterbrechungsmodul 302 und übersetzt die Berühr-Ereignisse in Maus-Ereignisse. Im Allgemeinen erzeugt das Übersetzungsmodul 304 Maus-Ereignisse, äquivalent zu den unterbrochenen Berühr-Ereignissen 105. Beispielsweise werden in einer Ausführungsform das Berühr-Ereignis, die Berührungsbewegungs- und die Berührungsende-Ereignisse in Maus-nach-unten-, Mausbewegungs- bzw. Maus-nach-oben-Ereignisse übersetzt. Die speziellen Übersetzungen, welche durch das Übersetzungsmodul 304 durchgeführt werden, können konfiguriert sein, um die Benutzer-Interaktivitäten mit der Webseite 109 zu optimieren, wobei die berührungsempfindliche Eingabeeinrichtung 104 benutzt wird. Außerdem können die Arten der Übersetzungen in verschiedenen Ausführungsformen variieren, basierend beispielsweise auf Charakteristika des Computers 102 und/oder der Eingabeeinrichtung 104, dem Browser 108 und der Webseite 109.
  • In einer Ausführungsform analysiert das Übersetzungsmodul 304 die Charakteristika einer Kombination von Berühr-Ereignissen und stellt ein oder mehrere Maus-Ereignisse basierend auf der Kombination der Berühr-Ereignisse her. Demnach muss die Übersetzung zwischen den Berühr-Ereignissen 105 und den Maus-Ereignissen nicht eine Eins-zu-eins-Abbildung sein; viele Berühr-Ereignisse können in ein Maus-Ereignis übersetzt werden und umgekehrt. Beispielsweise wenn das Übersetzungsmodul 304 aufeinanderfolgende Berührungsstart- und Berührungsende-Ereignisse detektiert, welche eine Doppel-Antipp-Handbewegung anzeigen, kann das Übersetzungsmodul 304 ein einzelnes Maus-Ereignis anzeigen, welches einen ”Zoom-in”- bzw. ”Hinein-Zoom”-Befehl anzeigt. In einem andere Fall, wenn das Übersetzungsmodul 304 ein Berührungsstart-Ereignis detektiert, auf welches nicht ein Berührungsende-Ereignis folgt, innerhalb einer vorher festgelegten Zeitperiode, wobei eine Berührungs-Halte-Handbewegung angezeigt wird, kann das Übersetzungsmodul 304 ein Rechtsklick-Maus-Ereignis oder ein äquivalentes Maus-Ereignis für das Erzeugen eines Kontextmenüs erzeugen.
  • Das Übersetzungsmodul 304 markiert die Maus-Ereignisse, welche es erzeugt, um anzuzeigen, dass die Maus-Ereignisse auf übersetzten Berühr-Ereignissen basieren. Dieses Markieren dient dazu, um Maus-Ereignisse zu unterscheiden, welche durch das Übersetzungsmodul 304 von ”ursprünglichen” Maus-Ereignissen durch den Browser 108 und/oder andere Quellen erzeugt wurden. In einer Ausführungsform markiert das Übersetzungsmodul 304 die erzeugten Maus-Ereignisse durch Einstellen einer Eigenschaft der Maus-Ereignisse, um zu reflektieren, dass die Maus-Ereignisse aus der Übersetzung resultierten. Beispielsweise kann eine ”Ereignis.übersetzt”-Eigenschaft gleich zu bzw. im Sinne von ”wahr” eingestellt sein.
  • Das Übersetzungsmodul 304 sendet die übersetzten Maus-Ereignisse an die Webseite 109. Als ein Ergebnis werden die Maus-Ereignisse durch das Erfassungsmodul 110 erfasst. Wie oben diskutiert, unterbricht das Unterbrechungsmodul 302 die übersetzten Maus-Ereignisse 203. Das Unterbrechungsmodul 302 sendet die übersetzten Maus-Ereignisse an das Filtermodul 306, zusammen mit irgendwelchen anderen unterbrochenen Maus-Ereignissen.
  • Das Filtermodul 306 filtert selektiv die Maus-Ereignisse und löscht (stoppt die Ausbreitung) alle gefilterten Maus-Ereignisse (d. h. Maus-Ereignisse, welche nicht durch das Filter laufen). In einer Ausführungsform lässt das Filtermodul 306 alle Maus-Ereignisse, welche als ”übersetzt” gekennzeichnet sind, durch das Filter laufen. Für ursprüngliche (d. h. nicht übersetzte) Maus-Ereignisse analysiert das Filtermodul 306 Charakteristika der Maus-Ereignisse, um zu bestimmen, ob sie durch das Filter laufen zu lassen sind.
  • Das Filtermodul 306 bestimmt, ob ursprüngliche Maus-Ereignisse zu filtern sind, basierend auf den Webseiten-Objekten, welche durch die Maus-Ereignisse bestimmt sind. In einer Ausführungsform filtert das Filtermodul 308 nicht die Maus-Ereignisse, welche auf bestimmte Typen der Objekte gerichtet sind, wobei Textfeld-, Combobox- und Submit-Button- bzw. Vorlage-Taste-Objekte beinhaltet sind. Diese Arten von Objekten besitzen standardisierte Verhaltensweisen, und deshalb dürfen ursprüngliche Maus-Ereignisse, welche beispielsweise durch den Browser 108 erzeugt sind, durch das Filtermodul 306 laufen. Beispielsweise, kann das Drücken des Benutzers der ”Enter”-Taste auf einem Keyboard bzw. Tastenfeld oder einer anderen Benutzerschnittstelle dazu führen, dass der Browser 108 ein Mausklick-Ereignis zu einer Vorlage-Taste schickt, und es ist nicht wünschenswert, diese Art von Ereignis zu filtern. Zusätzlich erzeugen gewisse Aktionen keine Berühr-Ereignisse. In derartigen Fällen filtert das Filtermodul 306 nicht die ursprünglichen Maus-Ereignisse, weil keine übersetzten Maus-Ereignisse erzeugt werden. Das Filtermodul 306 filtert ursprüngliche Maus-Ereignisse, welche nicht auf diese Arten von Objekten gerichtet sind und/oder welche auf andere Weise Charakteristika besitzen, welche anzeigen, dass die Ereignisse gefiltert werden sollten.
  • Das Versendemodul 308 empfängt die Maus-Ereignisse, welche durch das Filtermodul 306 laufen, und sendet sie an die Webseite 109. In einer Ausführungsform beinhaltet das Versenden der Maus-Ereignisse das Gestatten, dass die Maus-Ereignisse, welche durch das Filtermodul 306 laufen gelassen werden, sich weiterhin durch die Webseite ununterbrochen ausbreiten. Wie oben diskutiert, beinhalten diese Maus-Ereignisse übersetzte Maus-Ereignisse, welche durch das Übersetzungsmodul 304 erzeugt sind, und ursprüngliche Maus-Ereignisse, welche bestimmte Charakteristika besitzen, welche gestatten, dass die Maus-Ereignisse durch das Filtermodul 306 laufen gelassen werden. Das Versendemodul 308 sendet die Maus-Ereignisse an die geeigneten Objekte auf der Webseite 109. Damit empfangen die Ereignis-Handler, welche für das Objekt registriert sind, das Maus-Ereignis und können entsprechend reagieren.
  • 4 ist ein Ablaufdiagramm, welches den Betrieb des Erfassungsmoduls 110 entsprechend einer Ausführungsform der vorliegenden Veröffentlichung darstellt. In einer Ausführungsform unterbricht 402 das Erfassungsmodul 110 ein Eingabe-Ereignis, welches durch den Browser 108 an das DOM 112 der Webseite gesendet wurde. Das Eingabe-Ereignis kann beispielsweise ein Berühr-Ereignis sein, welches seinen Ursprung an einer Eingabeeinrichtung 104 des Computers 102 hat. Das Eingabe-Ereignis kann auch ein ursprüngliches Maus-Ereignis sein, welches durch den Browser 108 basierend auf einem Berühr-Ereignis geschaffen wurde. Zusätzlich kann das Eingabe-Ereignis ein übersetztes Maus-Ereignis sein, welches durch das Erfassungsmodul 110 basierend auf einem oder auf mehreren vorherigen Berühr-Ereignissen erzeugt ist.
  • Das Erfassungsmodul 110 identifiziert 404 den Typ des Ereignisses, welchen es unterbrochen hat. D. h., das Erfassungsmodul 110 analysiert das unterbrochene Eingabe-Ereignis 402, um zu bestimmen, ob es ein Berühr-Ereignis oder ein Maus-Ereignis ist. Wenn das Erfassungsmodul 110 das Eingabe-Ereignis als ein Berühr-Ereignis identifiziert 404, übersetzt es 406 das Berühr-Ereignis in ein übersetztes Maus-Ereignis. Das Erfassungsmodul 110 sendet 408 das übersetzte Ereignis an das DOM 112 der Webseite 109, wo es wieder durch das Erfassungsmodul unterbrochen wird.
  • Wenn das Erfassungsmodul 110 das Eingabe-Ereignis als ein Maus-Ereignis identifiziert 404, filtert 410 das Erfassungsmodul selektiv das Maus-Ereignis, basierend auf den Charakteristika des Ereignisses. Wenn das Maus-Ereignis ein Maus-Ereignis ist, welche von einem Erfassungsereignis durch das Erfassungsmodul übersetzt ist, lässt das Erfassungsmodul das Maus-Ereignis durch das Filter laufen. Zusätzlich, wenn das Maus-Ereignis ein ursprüngliches (nicht übersetztes) Maus-Ereignis ist, lässt das Erfassungsmodul 110 das Ereignis durch das Filter laufen, wenn es auf bestimmte Typen der Webseiten-Objekte gerichtet ist, wie z. B. ein Textfeld, eine Combobox, oder eine Vorlagetaste. Anderenfalls filtert das Erfassungsmodul das Maus-Ereignis aus (löscht es).
  • Das Erfassungsmodul 110 sendet 412 die Maus-Ereignisse, welche durch das Filter laufen, an die Webseiten-Objekte, auf welche die Ereignisse ursprünglich gerichtet waren. Wie in der Spezifikation oben beschrieben, beinhaltet das Versenden 412 der Maus-Ereignisse das Zulassen, dass die Maus-Ereignisse weiterhin zu einem Objekt laufen. Demnach wechselwirken die Maus-Ereignisse mit den Objekten, welche in der Webseite 109 eingebettet sind. Entsprechend liefert das Erfassungsmodul 110 optimierte berührungsbasierte Benutzer-Interaktivität mit den Webseiten, welche Objekte besitzen, welche für Maus-basierte Interaktivitäten gestaltet sind.
  • Während die oben beschriebenen Techniken auf die Übersetzung von über Berührung eingegebene Ereignissen in über von Maus eingegebene Ereignisse gerichtet sind, können die Techniken benutzt werden, um irgendeinen Typ von Eingabe-Ereignis in irgendeinen anderen Typ von Ereignis zu übersetzen. Demnach können ein oder mehrere Eingabe-Ereignisse des ersten Typs in ein oder mehrere Ereignisse eines zweiten Typs übersetzt werden. Zusätzlich können die oben beschrieben Techniken benutzt werden, Ereignisse für Anwendungen anders als die Web-Browser zu übersetzen.
  • In der obigen Beschreibung ist beinhaltet, den Betrieb von bestimmten Ausführungsformen darzustellen, und sie sollen den Umfang der Erfindung nicht begrenzen. Aus der obigen Diskussion werden viele Varianten für einen Fachmann in dieser Technik offensichtlich sein, welche jetzt durch den Geist und Umfang der Erfindung umfasst werden.

Claims (18)

  1. Computer für das Übersetzen eines ersten Typs eines Eingabe-Ereignisses auf einen zweiten Typ eines Eingabe-Ereignisses, wobei der Computer aufweist: ein nicht-transitorisches bzw. nicht vorübergehendes, von einem Computer lesbares Speichermedium, welches einen von einem Computer ausführbaren Programmcode speichert, welches aufweist: ein Empfangs- bzw. Aufnahmemodul für das Empfangen eines Eingabe-Ereignisses, welches auf ein Objekt einer Anwendung gerichtet ist, welche auf einem Computer ausgeführt wird, wobei das Eingabe-Ereignis in Antwort auf eine Benutzer-Interaktivität mit einer Eingabeeinrichtung des Computers erzeugt ist; ein Übersetzungsmodul für das Übersetzen, in Antwort auf das Eingabe-Ereignis, welches vom ersten Typ ist, des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs; ein Filtermodul für das selektive Filtern des Eingabe-Ereignisses des zweiten Typs; und ein Versendemodul für das Absenden des Eingabe-Ereignisses des zweiten Typs an das Objekt der Anwendung, in Antwort auf das Filtern; und einen Prozessor für das Ausführen des Computerprogrammcodes.
  2. Computer nach Anspruch 1, wobei der erste Typ des Eingabe-Ereignisses ein über Berührung eingegebenes Ereignis und der zweite Typ des Eingabe-Ereignisses ein über Maus eingegebenes Ereignis ist.
  3. Computer nach Anspruch 1, wobei die Anwendung ein Browser bzw. Navigator ist und wobei das Aufnahmemodul geeignet ist, ein Eingabe-Ereignis, welches auf ein Dokumentobjektmodell einer Webseite gerichtet ist, welches durch den Browser erbracht wird, zu empfangen.
  4. Computer nach Anspruch 3, wobei das Aufnahmemodul ferner geeignet ist, die Ausbreitung des Eingabe-Ereignisses des ersten Typs zu dem Dokument-Objektmodell der ersten Webseite in Antwort auf das Eingabe-Ereignis, welches von dem ersten Typ ist, zu stoppen.
  5. Computer nach Anspruch 1, wobei das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein äquivalentes Eingabe-Ereignis des zweiten Typs aufweist.
  6. Computer nach Anspruch 1, wobei das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs aufweist: Analysieren der Charakteristika einer Vielzahl von Eingabe-Ereignissen des ersten Typs; und Übersetzen der Vielzahl von Eingabe-Ereignissen des ersten Typs in eines oder mehrere Eingabe-Ereignisse des zweiten Typs, in Antwort auf die Charakteristika.
  7. Computer nach Anspruch 1, wobei das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs aufweist: Markieren des Eingabe-Ereignisses des zweiten Typs als ein übersetztes Ereignis, wobei das Filtermodul die Ereignisse des zweiten Typs, markiert bzw. gekennzeichnet als übersetzt, durch ein Filter, laufen lässt.
  8. Computer nach Anspruch 1, wobei das selektive Filtern des Eingabe-Ereignisses des zweiten Typs aufweist: Bestimmen, ob das Eingabe-Ereignis des zweiten Typs, in Antwort auf das Objekt der Anwendung, auf welche das Eingabe-Ereignis des zweiten Typs gerichtet ist, zu löschen ist; wobei ein gelöschtes Eingabe-Ereignis nicht an das Objekt abgesendet wird.
  9. Computer nach Anspruch 8, wobei das Eingabe-Ereignis des zweiten Typs nicht gelöscht wird und sich zu dem Objekt ausbreitet, in Antwort auf das Eingabe-Ereignis des zweiten Typs, welches auf ein Textfeldobjekt, ein Combobox- bzw. Kombinationsfeld-Objekt oder ein Submit-Button- bzw. Vorlage-Taste-Objekt gerichtet ist.
  10. Nicht-transitorisches, von einem Computer lesbares Medium, welches ausführbare Computerprogramm-Instruktionen speichert, um einen ersten Typ des Eingabe-Ereignisses in einen zweiten Typ des Eingabe-Ereignisses zu übersetzen, wobei das Computerprogramm Instruktionen aufweist: ein Aufnahmemodul für das Empfangen eines Eingabe-Ereignisses, welches auf ein Objekt einer Anwendung gerichtet ist, welche auf einem Computer ausgeführt wird, wobei das Eingabe-Ereignis in Antwort auf eine Benutzer-Interaktivität mit einer Eingabeeinrichtung des Computers erzeugt wird; ein Übersetzungsmodul für das Übersetzen, in Antwort auf das Eingabe-Ereignis, welches von dem ersten Typ ist, des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs; ein Filtermodul für das selektive Filtern des Eingabe-Ereignisses des zweiten Typs; und ein Versendemodul für das Absenden des Eingabe-Ereignisses des zweiten Typs an das Objekt der Anwendung, in Antwort auf das Filtern.
  11. Von einem Computer lesbares Medium nach Anspruch 10, wobei der erste Typ des Eingabe-Ereignisses ein über Berührung eingegebenes Ereignis und der zweite Typ des Eingabe-Ereignisses ein über Maus eingegebenes Ereignis ist.
  12. Von einem Computer lesbares Medium nach Anspruch 10, wobei die Anwendung ein Browser ist und wobei das Aufnahmemodul geeignet ist, um ein Eingabe-Ereignis, welches auf ein Dokument-Objektmodell einer Webseite gerichtet ist, welche durch den Browser erbracht ist, zu empfangen.
  13. Von einem Computer lesbares Medium nach Anspruch 10, wobei das Aufnahmemodul ferner geeignet ist, die Ausbreitung des Eingabe-Ereignisses des ersten Typs zu dem Dokument-Objektmodell der Webseite in Antwort auf das Eingabe-Ereignis, welches vom ersten Typ ist, zu stoppen.
  14. Von einem Computer lesbares Medium nach Anspruch 10, wobei das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein äquivalentes Eingabe-Ereignis des zweiten Typs aufweist.
  15. Von einem Computer lesbares Medium nach Anspruch 10, wobei das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs aufweist: Analysieren der Charakteristika einer Vielzahl von Eingabe-Ereignissen des ersten Typs; und Übersetzen der Vielzahl der Eingabe-Ereignisse des ersten Typs in ein oder mehrere Eingabe-Ereignisse des zweiten Typs, in Antwort auf die Charakteristika.
  16. Von einem Computer lesbares Medium nach Anspruch 10, wobei das Übersetzen des Eingabe-Ereignisses des ersten Typs in ein Eingabe-Ereignis des zweiten Typs aufweist: Markieren des Eingabe-Ereignisses des zweiten Typs als ein übersetztes Ereignis, wobei das Filtermodul die Ereignisse des zweiten Typs, welche als übersetzt markiert sind, durch ein Filter laufen lässt.
  17. Von einem Computer lesbares Medium nach Anspruch 10, wobei das selektive Filtern des Eingabe-Ereignisses des zweiten Typs aufweist: Bestimmen, ob das Eingabe-Ereignis des zweiten Typs, in Antwort auf das Objekt der Anwendung, an welche das Eingabe-Ereignis des zweiten Typs gerichtet ist, zu löschen ist; und wobei ein gelöschtes Eingabe-Ereignis nicht an das Objekt abgesendet wird.
  18. Von einem Computer lesbares Medium nach Anspruch 10, wobei das Eingabe-Ereignis des zweiten Typs nicht gelöscht wird und sich zu dem Objekt ausbreitet, in Antwort auf das Eingabe-Ereignis des zweiten Typs, welches auf ein Textfeld-Objekt, ein Combobox-Objekt oder ein Submit-Button-Objekt gerichtet ist.
DE202011108527U 2011-03-28 2011-11-30 Computer für das Übersetzen von Eingabe-Ereignissen Expired - Lifetime DE202011108527U1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/073,676 2011-03-28
US13/073,676 US8392935B2 (en) 2011-03-28 2011-03-28 Uniform event handling across multiple computing devices
US13/245,825 2011-09-26
US13/245,825 US8151279B1 (en) 2011-03-28 2011-09-26 Uniform event handling across multiple computing devices

Publications (1)

Publication Number Publication Date
DE202011108527U1 true DE202011108527U1 (de) 2012-03-23

Family

ID=45444957

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202011108527U Expired - Lifetime DE202011108527U1 (de) 2011-03-28 2011-11-30 Computer für das Übersetzen von Eingabe-Ereignissen

Country Status (4)

Country Link
US (1) US8151279B1 (de)
AU (1) AU2011101528B4 (de)
DE (1) DE202011108527U1 (de)
NL (1) NL2007880C2 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8392935B2 (en) * 2011-03-28 2013-03-05 Google Inc. Uniform event handling across multiple computing devices
US8843858B2 (en) * 2012-05-31 2014-09-23 Microsoft Corporation Optimization schemes for controlling user interfaces through gesture or touch
US20150138089A1 (en) * 2013-11-15 2015-05-21 TabiTop, LLC Input devices and methods
US10956658B2 (en) * 2018-06-21 2021-03-23 Adobe Inc. Digital content editing of a document object model (DOM) based on object model comparison

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157384A (en) * 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface
US5491495A (en) * 1990-11-13 1996-02-13 Wang Laboratories, Inc. User interface having simulated devices
US8062134B2 (en) * 1996-11-14 2011-11-22 Bally Gaming, Inc. Browser manager for a networked gaming system and method
US6654955B1 (en) * 1996-12-19 2003-11-25 International Business Machines Corporation Adding speech recognition libraries to an existing program at runtime
US20020084991A1 (en) * 2001-01-04 2002-07-04 Harrison Edward R. Simulating mouse events with touch screen displays
US8552984B2 (en) * 2005-01-13 2013-10-08 602531 British Columbia Ltd. Method, system, apparatus and computer-readable media for directing input associated with keyboard-type device
US7928964B2 (en) * 2005-04-22 2011-04-19 Microsoft Corporation Touch input data handling
US20060267958A1 (en) * 2005-04-22 2006-11-30 Microsoft Corporation Touch Input Programmatical Interfaces
US7600194B2 (en) * 2005-12-02 2009-10-06 Microsoft Corporation Start menu operation for computer user interface
US20090235281A1 (en) * 2008-03-12 2009-09-17 Inventec Corporation Handheld electronic device, input device and method thereof, and display device and method thereof
US20100138780A1 (en) * 2008-05-20 2010-06-03 Adam Marano Methods and systems for using external display devices with a mobile computing device
US8754855B2 (en) * 2008-06-27 2014-06-17 Microsoft Corporation Virtual touchpad
MX2011001722A (es) * 2008-08-12 2011-07-29 Keyless Systems Ltd Sistema mejorado de introducción de datos.
US20100060571A1 (en) * 2008-09-10 2010-03-11 Aten International Co., Ltd. Kvm switch using a touch screen
US8448094B2 (en) * 2009-01-30 2013-05-21 Microsoft Corporation Mapping a natural input device to a legacy system
US8355007B2 (en) * 2009-05-11 2013-01-15 Adobe Systems Incorporated Methods for use with multi-touch displays for determining when a touch is processed as a mouse event
US9241062B2 (en) * 2009-05-20 2016-01-19 Citrix Systems, Inc. Methods and systems for using external display devices with a mobile computing device

Also Published As

Publication number Publication date
US8151279B1 (en) 2012-04-03
NL2007880C2 (en) 2012-10-01
AU2011101528B4 (en) 2014-12-18
AU2011101528A4 (en) 2012-01-12

Similar Documents

Publication Publication Date Title
US9355081B2 (en) Transforming HTML forms into mobile native forms
AU2016286308B2 (en) Robotic process automation
US9235640B2 (en) Logging browser data
US8392935B2 (en) Uniform event handling across multiple computing devices
US20190303269A1 (en) Methods and systems for testing visual aspects of a web page
DE112011105933T5 (de) Verfahren und Vorrichtungen zum dynamischen Anpassen einer virtuellen Tastatur
US8914813B1 (en) Interfaces to enable cross-browser extensions and applications thereof
DE102018007060A1 (de) Hervorheben von Schlüsselabschnitten eines Texts innerhalb eines Dokuments
DE102012213795A1 (de) Durch einen Computer implementiertes Verfahren, das es einer Web-Anwendung ermöglicht, mindestens eine native Funktion einer mobilen Einheit aufzurufen
US20170212965A1 (en) Web-browser based state repository
TWI545450B (zh) 瀏覽器顯示子頁面的處理方法及瀏覽器
US9648139B2 (en) Inserting server-side breakpoints requested by remote development clients
US10248543B2 (en) Software functional testing
US9285964B2 (en) Automatically recovering and maintaining focus
DE202013012491U1 (de) Quer-Erweiterungsnachrichtenübermittlung unter Verwendung eines Browsers als Intermediär
CN106874271A (zh) 一种将pc网页转换为移动终端网页的方法及系统
DE102016205009A1 (de) Intelligente interaktive Bildschirmaufnahme
DE202011108527U1 (de) Computer für das Übersetzen von Eingabe-Ereignissen
DE112015003612T5 (de) Zusammenfassungsansichten für E-Books
US9772986B2 (en) Transforming HTML forms into mobile native forms
US20130067314A1 (en) Batch Document Formatting and Layout on Display Refresh
EP3080692B1 (de) Rahmen für benutzeroberfläche
KR101730070B1 (ko) SaaS 환경에서의 웹페이지 서비스 방법, 이를 위한 컴퓨터 프로그램, 그 기록매체
US20190265989A1 (en) Machine Learning Techniques for Adaptation of Initial Workspace
DE102016204692A1 (de) Steuerung der Mehrfachauswahl auf berührungsempfindlichen Flächen

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20120516

R150 Utility model maintained after payment of first maintenance fee after three years
R150 Utility model maintained after payment of first maintenance fee after three years

Effective date: 20141212

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R151 Utility model maintained after payment of second maintenance fee after six years
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE, INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R152 Utility model maintained after payment of third maintenance fee after eight years
R071 Expiry of right