Rectangle v0.97 bis v0.99: alle Änderungen der neuesten Updates

Im Anschluss an die in v0.95 und v0.96 behandelten Änderungen geht es hier um das, was tatsächlich in den drei darauffolgenden Releases ausgeliefert wurde – direkt anhand der eigenen Release Notes des Projekts verifiziert, statt aus dem Gedächtnis zusammengefasst. Läufst du auf einem älteren Build, ist das, was dir fehlt.

v0.97

  • Anpassung der Sortierung für screensOrderedByX, das jetzt für die Berechnung den horizontalen Mittelpunkt eines Displays (midX) nutzt – eine Verfeinerung der an anderer Stelle in dieser Reihe behandelten Multi-Monitor-Display-Reihenfolge-Logik, mit dem Ziel, dass sich Nächstes/Vorheriges Display in nicht trivialen Monitor-Anordnungen vorhersehbarer verhält.
  • Ein Standard-Umschalter zum Deaktivieren der Unsnap-Wiederherstellung bei Smaller/Larger-Befehlen – damit lässt sich steuern, ob die Nutzung von Make Smaller oder Make Larger auf einem eingeschnappten Fenster automatisch ein an Restore angrenzendes Verhalten auslöst.
  • Eine Checkbox „Skip gap on top screen edge», direkt in den Einstellungen hinzugefügt, die eine konkrete Beschwerde über inkonsistentes Verhalten der Abstandseinstellungen am oberen Bildschirmrand adressiert – verwandt mit, wenn auch nicht unbedingt derselben Grundursache wie, den Probleme mit der Lücke am oberen Rand, die im eigenen Artikel zu Pixel-Präzisions-Beschwerden behandelt werden.
  • Das Halbierungs-Verhältnis wird konsistent auf Ecken-Aktionen und Snap-Bereiche angewendet – ein Fix für einen Fall, in dem eine einfache Halbbildschirm-Aktion und eine Ecken- oder Snap-Bereich-Aktion zuvor den Teilungspunkt für das, was eigentlich dieselbe Grenze sein sollte, leicht unterschiedlich berechnen konnten.
  • Geklemmte Fenster werden an der Snap-Kante verankert statt eine Lücke zu lassen, und geklemmte Fenster werden standardmäßig an Snap-Kanten ausgerichtet – der Fix, ausführlicher im Artikel über Apps wie Discord und Spotify behandelt, die eine Mindestfenstergröße erzwingen, dafür, dass Fenster, die ihre volle berechnete Größe nicht erreichen können, mit einer unerwünschten Lücke schwebend zurückblieben, statt bündig an die Kante geschoben zu werden.
  • Eine Funktion „Cooperative Window Resizer», beigetragen zusammen mit den Fixes für geklemmte Fenster.
  • Fensteraktionen ausführen, wenn die Fenster-ID nicht verfügbar ist – ein Robustheits-Fix für einen bestimmten internen Fehlerfall, bei dem eine Aktion zuvor nichts bewirkte, wenn Rectangle app die ID eines Fensters nicht über den üblichen Weg auflösen konnte.
  • Performance-Fix für langsames Laden des Snap-Area-Einstellungstabs.

v0.98

Ein enges, einzweckiges Release: Es behebt eine Regression, bei der die Seiten-Teilungsverhältnisse für Seitenaktionen (linke/rechte/obere/untere Hälfte) nicht mehr, wie vor v0.97, exakt bei 1/2 begannen. Das ist eine nützliche Erinnerung daran, dass selbst ein gut getestetes Open-Source-Projekt gelegentlich einen Fix in einem Release ausliefert, der im nächsten eine Nachbesserung braucht – v0.97s Arbeit an der Konsistenz des Teilungsverhältnisses brachte genau diese Regression mit sich, und v0.98 existiert speziell, um sie zu korrigieren.

v0.99

Das umfangreichste der drei Releases, mit Beiträgen mehrerer Erstbeitragender:

  • Ein Einstellungs-Umschalter, um die Fenstergröße beim Verschieben eines maximierten Fensters auf ein anderes Display beizubehalten – zuvor wurde ein maximiertes Fenster beim Verschieben auf ein anderes Display über Nächstes/Vorheriges Display vermutlich auf dessen volle Abmessungen skaliert; diese Einstellung erlaubt es stattdessen, die ursprüngliche Größe beizubehalten.
  • Ein Hover-Badge und Umschalter für gestapelte Fenster – die direkte Weiterentwicklung des Overlap-Offset-Features aus v0.96, ausführlich im eigenen Artikel zu diesem Feature behandelt. Das ist die „Hover-Zähl-Badge»-Idee, auf die der Maintainer beim Mergen des früheren Overlap-Offset-PRs verwies und die jetzt tatsächlich ausgeliefert wurde.
  • Shortcuts nach Nutzersitzungswechseln wiederherstellen – ein Fix dafür, dass Shortcuts einen Wechsel des Macs zu einer anderen Nutzersitzung und zurück nicht überstanden.
  • Verhindern, dass Todo-Shortcuts während der Shortcut-Aufnahme auslösen – Behebung einer unbeabsichtigten Interaktion, bei der der Versuch, einen neuen benutzerdefinierten Shortcut aufzunehmen, versehentlich stattdessen eine Todo-Mode-Aktion auslösen konnte.
  • Den Event-Tap CFMachPort in ActiveEventMonitor.stop() invalidieren – ein technischer Fix auf niedrigerer Ebene bezüglich der Art, wie Rectangle mac auf Systemereignisse lauscht, mit dem Ziel, eine bestimmte Klasse von Ressourcen-Handling-Problemen zu verhindern, statt eine für Nutzer sichtbare Verhaltensänderung zu sein.
  • Null erlauben, um Mindestfenstergrößen-Limits zu deaktivieren – gibt direktere Kontrolle über Rectangle app eigene Mindestgrößen-Durchsetzung, unabhängig von der eigenen erzwungenen Mindestgröße einer bestimmten App (die Discord/Spotify-artige Einschränkung, die an anderer Stelle behandelt wird), die Rectangle app weiterhin nicht überschreiben kann.
  • Ausgelassene Shortcuts beim Importieren einer Konfiguration löschen, und Shortcuts beim Wiederherstellen der aktuellen Standardwerte erneut anwenden – zwei zusammenhängende Fixes dafür, wie der Import einer gespeicherten Konfiguration oder das Zurücksetzen auf Standardwerte mit Shortcuts umgeht, die in der neuen Konfiguration nicht vorhanden sind, damit übrig gebliebene Belegungen aus einem vorherigen Setup nicht unerwartet bestehen bleiben.
  • „Smaller» erlauben, die Höhe eines vertikal maximierten Fensters zu verkleinern – Erweiterung der Make-Smaller-Aktion, um ein Fenster korrekt zu behandeln, das speziell entlang seiner Höhe maximiert wurde.
  • Relative Fensterposition beim Verschieben auf ein anderes Display beibehalten – hält die proportionale Platzierung eines Fensters konsistent, wenn es zwischen unterschiedlich großen Displays verschoben wird, statt auf eine Standardposition auf dem neuen Display zurückzusetzen.
  • defaults write-Anpassungen für JSONDefault-Keys respektieren – ein Fix, der sicherstellt, dass terminalbasierte Anpassungen nicht stillschweigend von Werten überschrieben werden, die in Rectangle app eigenen JSON-Standardwerten fest verankert sind.
  • Achtel-Snap-Lücken im Hochformat auf Displays beseitigen, deren Höhe nicht durch 4 teilbar ist – ein enger, aber konkreter Pixel-Präzisions-Fix für eine bestimmte Interaktion zwischen Display-Höhe und Achtel-Raster auf hochkant ausgerichteten Monitoren.
  • Den Overlap-Offset-Scan begrenzen und auch maximierte Fenster versetzen – Erweiterung des Overlap-Offset-Features aus v0.96 (im eigenen Artikel behandelt), sodass es auch auf maximierte Fenster angewendet wird, mit einer hinzugefügten Begrenzung, damit der Erkennungs-Scan nicht unnötig weit läuft.
  • Eine kleine Oberflächenänderung: Die Auslassungspunkte-Schaltfläche im General-Tab trägt jetzt die Beschriftung „Extras», statt unbeschriftet zu sein.

Was dieses Update-Tempo aussagt

Drei Releases in relativ kurzer Folge, mehrere davon mit externen Erstbeitragenden, sind ein vernünftiges Signal für ein aktiv gepflegtes Projekt statt eines, das sich auf einer alten Codebasis ausruht. Untersuchst du ein bestimmtes Pixel-Präzisions- oder Multi-Monitor-Problem und findest einen alten, ungelöst wirkenden Bericht von vor einem Jahr oder mehr, lohnt es sich zu prüfen, ob einer der oben genannten konkreten Fixes – Konsistenz des Halbierungs-Verhältnisses, Verankerung geklemmter Fenster, Beibehaltung der relativen Position über Displays hinweg – das Problem nicht schon behebt, bevor du davon ausgehst, dass das Verhalten dauerhaft ist.

Deine Version mit dieser Liste abgleichen

Öffne Rectangles Menüleisten-Icon und schau unter About (ohne Option gedrückt zu halten) nach deiner aktuellen Versionsnummer, dann vergleiche sie mit der GitHub-Releases-Seite, um zu sehen, ob dir einer der hier beschriebenen Fixes fehlt, und um zu prüfen, was seit dem Schreiben dieses Artikels noch dazugekommen ist.