Zum Hauptinhalt springen

Geltungsbereich und Ausweichregeln

Diese Seite beschreibt genau, wie Input.Observer die Aktion für eine Geste auswählt: welches Fenster maßgeblich ist, welcher Gruppe es gehört, wann die Gruppe Global übernimmt und welche Aktion gewinnt, wenn mehrere ausgeführt werden könnten. Hotkeys und Texterweiterung folgen denselben Gruppenregeln; die Unterschiede stehen am Ende.

Begriffe​

  • Geltungsbereich: die App-Gruppe, deren Aktionen für eine Geste versucht werden. Eine Geste hat einen Geltungsbereich, dazu „Global“ als möglichen Rückfall.
  • Besitzende Gruppe: die eine App-Gruppe, zu der ein Fenster gehört. Siehe App-Gruppen.
  • Auf „Global“ zurückgreifen: die Aktionen der Gruppe „Global“ versuchen, wenn die besitzende Gruppe nichts hat. Zwei Schalter steuern das, und beide müssen eingeschaltet sein:
    • Auf „Global“ zurückgreifen auf der Seite Allgemein, Karte Wenn eine Geste erkannt wird: für alle Gruppen gemeinsam (standardmäßig ein);
    • Auf „Global“ zurückgreifen auf der Karte Was in diesen Fenstern geschieht jeder App-Gruppe: für diese Gruppe (standardmäßig ein).

Das maßgebliche Fenster​

Bei einer Geste ist das Fenster der obersten Ebene unter dem Mauszeiger im Moment des Drückens der Zeichentaste maßgeblich:

  • Wohin der Strich danach führt, spielt keine Rolle. Ein Strich, der über dem Editor beginnt und über einem Browser endet, ist eine Editor-Geste.
  • Ein Steuerelement in einem Fenster (ein Textfeld, eine Browserseite) zählt als sein ganzes Programmfenster.
  • Die besitzende Gruppe, die Profilprüfung und die Bereichszelle werden alle einmal, beim Drücken, festgelegt. Ein Fenstertitel, der sich beim Zeichnen ändert, oder ein Profilwechsel während der Geste ändert das Ergebnis dieser Geste nicht.

Die Entscheidung Schritt für Schritt​

Beim Drücken​

  1. Die besitzende Gruppe finden. Die Gruppen werden in dieser Reihenfolge geprüft, bis zur ersten, deren Regeln auf das Fenster passen:

    1. jede Ignorier-Gruppe, von oben nach unten auf der Seite Ignorier-Gruppen;
    2. jede App-Gruppe, von oben nach unten auf der Seite App-Gruppen.

    Übersprungen, als gäbe es sie nicht: eine Gruppe, die nicht Aktiviert ist, eine Gruppe ohne Regeln und eine Ignorier-Gruppe mit Nur solange das Fenster im Vollbildmodus ist, deren Fenster gerade nicht im Vollbildmodus ist.

  2. Eine Ignorier-Gruppe besitzt es: Der Tastendruck geht direkt durch. Sonst wird nichts geprüft: kein Rückgriff auf „Global“, keine Geste, und auch kein Hotkey und keine Texterweiterung wird für dieses Fenster ausgeführt. Siehe Ignorier-Gruppen.

  3. Eine App-Gruppe besitzt es: Ihr Geltungsbereich ist diese Gruppe, wenn Gesten funktionieren hier eingeschaltet ist und sie im aktiven Profil gilt (siehe Profile). Wenn nicht, ist der Geltungsbereich „Global“, aber nur, wenn beide Schalter Auf „Global“ zurückgreifen eingeschaltet sind; sonst geht der Tastendruck direkt durch.

  4. Keine Gruppe besitzt es: Der Geltungsbereich ist „Global“. Die Schalter Auf „Global“ zurückgreifen spielen hier keine Rolle: „Global“ ist die eigene Gruppe dieses Fensters.

  5. „Global“ als Geltungsbereich funktioniert nur, wenn die Gruppe Aktiviert ist, ihr Gesten funktionieren hier eingeschaltet ist und sie im aktiven Profil gilt. Sonst geht der Tastendruck direkt durch.

  6. Ausschlusszonen werden geprüft, für alle Fenster und für die Gruppe des Geltungsbereichs. Ein Tastendruck innerhalb einer Zone geht zurück an das Fenster. Siehe Ausschlusszonen.

  7. Die Aufnahme beginnt. Die Bereichszelle wird jetzt ermittelt, für die Gruppe des Geltungsbereichs und getrennt davon für „Global“ (siehe Bereiche).

Ein Tastendruck, der in den Schritten 2 bis 6 durchgeht, wird unverändert und ohne Verzögerung weitergegeben und zeichnet keine Spur.

Beim Loslassen​

  1. Die Form. Der Strich wird mit den Formen bewertet, die die Auslöser der Gruppe des Geltungsbereichs verwenden, plus denen aus „Global“, wenn die Gruppe darauf zurückgreifen kann. Der beste Wert ab der Erkennungsschwelle gewinnt; sonst passt nichts. Siehe Wie ein Strich erkannt wird.

  2. Die Aktionen der Gruppe des Geltungsbereichs. Ihre Aktionen werden in Listenreihenfolge durchgegangen, und die Auslöser jeder Aktion der Reihe nach. Ein Auslöser passt, wenn:

    • er ein Gestenauslöser für die gewinnende Form ist,
    • seine Aktion eingeschaltet ist,
    • seine Aktion im aktiven Profil gilt,
    • die gedrückten Zusatztasten genau die sind, die er verlangt (siehe Zusatztasten und Zeitpunkt),
    • er die verwendete Zeichentaste akzeptiert,
    • er, wenn die Gruppe Bereiche eingeschaltet hat, die Bereichszelle abdeckt, in der Sie gedrückt haben.

    Ohne Bereiche gewinnt der erste passende Auslöser. Mit Bereichen gewinnt der passende Auslöser mit den wenigsten Zellen, bei gleicher Anzahl der erste.

  3. Auf „Global“ zurückgreifen, wenn in Schritt 9 nichts passt und alles Folgende zutrifft: Die Gruppe des Geltungsbereichs ist nicht selbst „Global“, beide Schalter Auf „Global“ zurückgreifen sind eingeschaltet, und „Global“ ist aktiviert, hat Gesten funktionieren hier eingeschaltet und gilt im aktiven Profil. Die Aktionen aus „Global“ werden dann genau wie in Schritt 9 geprüft, mit der eigenen Bereichszelle von „Global“.

  4. Ausführen der gewinnenden Aktion, innerhalb der Vorher- und Nachher-Aktionen der passenden Gruppe. Siehe Vorher- und Nachher-Aktionen.

  5. Nichts passt: Es wird nichts ausgeführt, der Tastendruck wird nicht zurückgegeben, und das globale Ereignis Keine Übereinstimmung wird ausgeführt, sofern eingerichtet.

Was in welcher Reihenfolge gewinnt​

FrageRegel
Die Regeln zweier Gruppen passen auf das FensterDie Ignorier-Gruppe gewinnt gegen jede App-Gruppe; sonst die weiter oben in ihrer Liste. Ein Fenster gehört immer nur einer Gruppe.
Die besitzende Gruppe hat keine Aktion für die GesteDie Aktionen aus „Global“, wenn der Rückgriff erlaubt ist. Nie eine tiefer stehende App-Gruppe.
Eine Aktion einer App-Gruppe und eine Aktion aus „Global“ passen beideImmer die Aktion der App-Gruppe, unabhängig von Zusatztasten, Tasten oder Bereichen.
Zwei Formen liegen über der SchwelleDer höhere Wert.
Zwei Aktionen einer Gruppe passen (ohne Bereiche)Die weiter oben in der Aktionsliste der Gruppe.
Zwei Aktionen einer Gruppe passen (mit Bereichen)Die, deren Auslöser weniger Zellen abdeckt; bei gleicher Anzahl die weiter oben in der Liste.
Zwei Auslöser einer Aktion passenOhne Bereiche: der erste Auslöser. Mit Bereichen: der, der weniger Zellen abdeckt; bei gleicher Anzahl der erste. Es wird in jedem Fall dieselbe Aktion ausgeführt, aber es gelten die eigenen Einstellungen des gewählten Auslösers, etwa Gedrückte Zusatztasten.
Ein einfacher Auslöser und ein Auslöser, der Umschalt verlangt, mit derselben FormNur einer kann passen: Der einfache verlangt während der Geste überhaupt keine Zusatztaste, der andere verlangt Umschalt.

Aktionen ordnen Sie auf der Seite Aktionen (Nach oben und Nach unten), App-Gruppen auf der Seite App-Gruppen neu. Die Seite App-Gruppen und der Aktionseditor warnen, wenn ein Auslöser immer einen anderen verdeckt.

Rückgriff in Kürze​

SituationOhne RückgriffMit Rückgriff (beide Schalter ein)
Keine Gruppe besitzt das Fenster„Global“„Global“
Bei der besitzenden Gruppe ist Gesten funktionieren hier ausTastendruck geht durch„Global“
Die besitzende Gruppe gilt im aktiven Profil nichtTastendruck geht durch„Global“
Die besitzende Gruppe hat keine Aktion für den StrichKeine ÜbereinstimmungDie Aktionen aus „Global“ werden versucht
Eine Ignorier-Gruppe besitzt das FensterTastendruck geht durchTastendruck geht durch
Die besitzende Gruppe ist ausgeschaltet (Aktiviert aus)Das Fenster wird mit den Gruppen darunter abgeglichen, als gäbe es diese Gruppe nichtEbenso
„Global“ ist ausgeschaltetNichts, wo „Global“ verwendet würdeEbenso

Der Eintrag Globale Aktionen im Menü des Infobereichssymbols ist der Schalter Aktiviert von „Global“. Solange die Gruppe des Fensters mit dem Fokus nicht auf „Global“ zurückgreift, sagt die QuickInfo des Symbols das und nennt die Gruppe. Siehe Das Symbol im Infobereich.

Durchgerechnete Beispiele​

Die Beispiele verwenden diese Einrichtung:

ListeGruppeRegelnAktionen
Ignorier-GruppenRemotedesktopProgrammname ist genau mstsc.exekeine
App-Gruppen, 1.BrowserProgrammname ist genau chrome.exe„Zurück“ auf Nach links wischen; „Tab schließen“ auf Nach unten wischen
App-Gruppen, 2.TextdateienFenstertitel endet mit .txt - Editor„Speichern“ auf Nach unten wischen
App-Gruppen, 3.EditorProgrammname ist genau notepad.exe„Rückgängig“ auf Nach links wischen
—Globalkeine„Minimieren“ auf Nach unten wischen; „Maximieren“ auf Nach oben wischen

Beide Schalter Auf „Global“ zurückgreifen sind eingeschaltet, sofern ein Beispiel nichts anderes sagt.

1. Eine Form, die die Gruppe hat. Sie zeichnen Nach unten wischen über Chrome. Browser besitzt Chrome und hat „Tab schließen“ auf Nach unten wischen, also wird „Tab schließen“ ausgeführt. „Minimieren“ aus „Global“ auf derselben Form kommt nie zum Zug: Die besitzende Gruppe gewinnt immer.

2. Eine Form, die nur „Global“ hat. Sie zeichnen Nach oben wischen über Chrome. Browser hat nichts für Nach oben wischen, also greift die Geste auf „Global“ zurück, und „Maximieren“ wird ausgeführt, eingebettet in die Vorher- und Nachher-Aktionen von „Global“, nicht die von Browser.

3. Rückgriff aus. Schalten Sie Auf „Global“ zurückgreifen bei Browser aus, und zeichnen Sie Nach oben wischen über Chrome. Die Formen aus „Global“ konkurrieren nicht mehr, der Strich wird also nur mit Nach links wischen und Nach unten wischen verglichen. Erreicht keine die Schwelle, passt nichts, und das Ereignis Keine Übereinstimmung wird ausgeführt. Erreicht eine sie (ein ungenauer Strich kann das), wird deren Aktion ausgeführt. Der Rechtsklick wird in keinem Fall zurückgegeben.

4. Zwei Gruppen passen; nur die erste zählt. Im Editor ist eine Datei namens notes.txt geöffnet, der Titel lautet also „notes.txt - Editor“. Sowohl Textdateien als auch Editor passen darauf; Textdateien steht weiter oben und besitzt daher das Fenster. Sie zeichnen Nach links wischen: Weder Textdateien noch „Global“ verwendet diese Form, sie gehört also nicht einmal zu den verglichenen Formen, und nichts passt. „Rückgängig“ in der Gruppe Editor wird für dieses Fenster nie ausgeführt, denn ein Fenster fällt nie an eine tiefer stehende App-Gruppe. Damit „Rückgängig“ hier wirkt, fügen Sie es zu Textdateien hinzu oder verschieben Editor über Textdateien.

5. Eine Ignorier-Gruppe. Sie zeichnen über einem Remotedesktopfenster. Die Ignorier-Gruppe besitzt es, also geht der Tastendruck direkt an den Remotecomputer: keine Spur, kein „Global“. Solange dieses Fenster den Fokus hat, wird auch keine Hotkey-Aktion und keine Texterweiterung ausgeführt.

6. Eine ausgeschaltete Gruppe und eine Gruppe mit ausgeschalteten Gesten. Schalten Sie bei Textdateien Aktiviert aus, und zeichnen Sie Nach links wischen über „notes.txt - Editor“: Jetzt besitzt Editor das Fenster, und „Rückgängig“ wird ausgeführt. Schalten Sie Textdateien wieder ein, aber stattdessen ihr Gesten funktionieren hier aus: Textdateien besitzt das Fenster wieder, Editor wird also nie erreicht; die Geste geht an „Global“, das Nach links wischen nicht verwendet, und nichts wird ausgeführt.

7. Profile. Beschränken Sie Browser auf ein Profil „Arbeit“, und machen Sie kein Profil aktiv. Browser besitzt Chrome weiterhin, gilt aber nicht, also geht eine Geste über Chrome an „Global“: Nach unten wischen führt „Minimieren“ aus, nicht „Tab schließen“. Ist Auf „Global“ zurückgreifen bei Browser aus, geht der Tastendruck stattdessen direkt durch, und die Seite warnt Außerhalb ihrer Profile erhalten ihre Fenster nichts.

Hotkeys und Texterweiterung​

Hotkeys und Texterweiterung verwenden dieselben Ignorier-Gruppen, dieselbe Gruppenreihenfolge, dieselben Schalter Aktiviert, Profile, Schalter Auf „Global“ zurückgreifen, dieselbe Gruppe „Global“ und dieselben Vorher- und Nachher-Aktionen. Unterschiede:

GestenHotkeysTexterweiterung
Das maßgebliche FensterDas Fenster der obersten Ebene unter dem Mauszeiger beim DrückenDas Fenster mit dem Fokus, wenn Sie die Tasten drückenDas Fenster mit dem Fokus, wenn Sie den Text fertig getippt haben
Der Schalter der GruppeGesten funktionieren hierHotkeys funktionieren hierkeiner (die Seite Texterweiterung hat einen Schalter für alles)
Bereiche, ZeichentasteJaNeinNein
Wann die Gruppe festgelegt wirdEinmal, beim DrückenBei jedem TastendruckBei jeder Erweiterung

Was jeweils sonst noch gilt, steht unter Hotkeys und Texterweiterung.