Rectangle v0.97 à v0.99 : tous les changements des dernières mises à jour

Dans la continuité des changements couverts pour les v0.95 et v0.96, voici ce qui a réellement été livré dans les trois versions suivantes — vérifié directement à partir des propres notes de version du projet plutôt que résumé de mémoire. Si vous utilisez une build plus ancienne, voici ce que vous manquez.

v0.97

  • Ajustement du tri pour screensOrderedByX, qui utilise désormais le point médian horizontal d’un écran (midX) pour le calcul — un raffinement de la logique de tri des écrans multi-moniteurs couverte ailleurs dans cette série, visant à rendre le comportement d’Écran suivant/précédent plus prévisible dans des configurations de moniteurs non triviales.
  • Un interrupteur par défaut pour désactiver la restauration au désencastrement pour les commandes Smaller/Larger — donnant le contrôle sur le fait que l’utilisation de Make Smaller ou Make Larger sur une fenêtre encastrée déclenche automatiquement un comportement proche de Restore.
  • Une case à cocher « Skip gap on top screen edge » ajoutée directement dans les Réglages, répondant à une plainte précise sur le comportement incohérent des réglages d’espacement en haut de l’écran — liée, sans nécessairement partager la même cause racine, aux problèmes d’espace sur le bord supérieur traités dans l’article dédié aux plaintes de précision au pixel près.
  • Le ratio de division en deux appliqué de façon cohérente aux actions de coin et aux zones d’encastrement — corrigeant un cas où une simple action de demi-écran et une action de coin ou de zone d’encastrement pouvaient auparavant calculer le point de division légèrement différemment pour ce qui devrait être une limite identique.
  • Ancrer les fenêtres « clamped » au bord d’encastrement plutôt que de laisser un espace, et aligner par défaut les fenêtres « clamped » sur les bords d’encastrement — le correctif, traité plus en détail dans l’article sur des apps comme Discord et Spotify qui imposent une taille de fenêtre minimale, pour les fenêtres qui ne peuvent pas atteindre leur taille calculée complète et qui restaient flottantes avec un espace indésirable plutôt que d’être poussées à affleurer contre le bord.
  • Une fonctionnalité « Cooperative Window Resizer », apportée en même temps que les correctifs pour les fenêtres « clamped ».
  • Exécuter les actions de fenêtre lorsque l’ID de fenêtre n’est pas disponible — un correctif de robustesse pour un mode de défaillance interne précis où une action ne faisait auparavant rien si Rectangle app ne pouvait pas résoudre l’ID d’une fenêtre par la voie habituelle.
  • Correctif de performance pour le chargement lent de l’onglet des préférences Snap Area.

v0.98

Une version restreinte et à but unique : elle corrige une régression où les ratios de division latérale pour les actions latérales (moitié gauche/droite/haut/bas) avaient cessé de commencer exactement à 1/2 comme c’était le cas avant la v0.97. Un rappel utile que même un projet open source bien testé livre parfois, dans une version, un correctif qui nécessite une correction de suivi dans la suivante — le travail de cohérence du ratio de division de la v0.97 a introduit précisément cette régression, et la v0.98 existe spécifiquement pour la corriger.

v0.99

La plus importante des trois, avec des contributions de plusieurs contributeurs pour la première fois :

  • Un interrupteur dans les Réglages pour conserver la taille de la fenêtre lors du déplacement d’une fenêtre maximisée vers un autre écran — auparavant, déplacer une fenêtre maximisée vers un écran différent via Écran suivant/précédent la redimensionnait vraisemblablement aux dimensions complètes de cet écran ; ce réglage permet de conserver la taille d’origine à la place.
  • Un badge au survol et un sélecteur pour les fenêtres empilées — le prolongement direct de la fonctionnalité de décalage de chevauchement de la v0.96, traitée en détail dans l’article dédié à cette fonctionnalité. C’est l’idée du « badge de comptage au survol » que le mainteneur avait mentionnée en fusionnant la PR précédente sur le décalage de chevauchement, désormais effectivement livrée.
  • Restaurer les raccourcis après des changements de session utilisateur — un correctif pour des raccourcis qui ne survivaient pas au passage d’un Mac à une autre session utilisateur puis retour.
  • Empêcher les raccourcis Todo de se déclencher pendant l’enregistrement d’un raccourci — arrêtant une interaction non voulue où tenter d’enregistrer un nouveau raccourci personnalisé pouvait accidentellement déclencher une action du Todo Mode à la place.
  • Invalider le CFMachPort de l’event tap dans ActiveEventMonitor.stop() — un correctif technique de plus bas niveau lié à la façon dont Rectangle mac écoute les événements système, visant à prévenir une classe précise de problème de gestion des ressources plutôt qu’un changement de comportement visible pour l’utilisateur.
  • Permettre à zéro de désactiver les limites de taille de fenêtre minimale — donnant un contrôle plus direct sur l’application par Rectangle app lui-même de sa taille minimale, distincte de la taille minimale propre imposée par une app en particulier (la limitation à la Discord/Spotify traitée ailleurs), que Rectangle app ne peut toujours pas outrepasser.
  • Effacer les raccourcis omis lors de l’importation d’une configuration, et réappliquer les raccourcis lors de la restauration des valeurs par défaut actuelles — deux correctifs liés à la façon dont l’importation d’une configuration enregistrée ou la réinitialisation aux valeurs par défaut gère les raccourcis absents de la nouvelle configuration, afin que des associations restantes d’une configuration précédente ne subsistent pas de façon inattendue.
  • Permettre à « smaller » de réduire la hauteur d’une fenêtre maximisée verticalement — étendant l’action Make Smaller pour gérer correctement une fenêtre qui a été maximisée spécifiquement selon sa hauteur.
  • Préserver la position relative de la fenêtre lors du déplacement vers un autre écran — gardant cohérent le placement proportionnel d’une fenêtre lorsqu’elle est déplacée entre des écrans de tailles différentes, plutôt que de la réinitialiser à une position par défaut sur le nouvel écran.
  • Respecter les personnalisations defaults write pour les clés JSONDefault — un correctif garantissant que les personnalisations faites via Terminal ne sont pas silencieusement écrasées par des valeurs intégrées dans les valeurs par défaut JSON propres de Rectangle app.
  • Éliminer les espaces d’encastrement en huitièmes en orientation portrait sur les écrans dont la hauteur n’est pas divisible par 4 — un correctif de précision au pixel près, restreint mais précis, pour une interaction particulière entre la hauteur de l’écran et la grille en huitièmes sur les moniteurs orientés en portrait.
  • Limiter le balayage de décalage de chevauchement et décaler aussi les fenêtres maximisées — étendant la fonctionnalité de décalage de chevauchement de la v0.96 (traitée dans son propre article dédié) pour qu’elle s’applique aussi aux fenêtres maximisées, avec une limite ajoutée pour empêcher le balayage de détection de s’exécuter sur une plage inutilement large.
  • Un petit changement d’interface : le bouton en points de suspension dans l’onglet General porte désormais le libellé « Extras » au lieu d’être sans libellé.

Ce que ce rythme de mises à jour indique

Trois versions dans une succession relativement rapprochée, dont plusieurs avec des contributeurs externes pour la première fois, est un signal raisonnable d’un projet activement maintenu plutôt que d’un projet vivant sur une base de code ancienne. Si vous dépannez un problème précis de précision au pixel près ou multi-écrans et trouvez un ancien rapport qui semble non résolu datant d’un an ou plus, cela vaut la peine de vérifier si l’un des correctifs précis ci-dessus — cohérence du ratio de division en deux, ancrage des fenêtres « clamped », préservation de la position relative entre écrans — n’y remédie pas déjà avant de supposer que le comportement est permanent.

Vérifier votre version par rapport à cette liste

Ouvrez l’icône de Rectangle dans la barre de menus et consultez About (sans maintenir Option) pour connaître votre numéro de version actuel, puis comparez-le à la page des Releases GitHub pour voir s’il vous manque l’un des correctifs décrits ici, et pour vérifier ce qui a été livré depuis la rédaction de cet article.