Passer au système de notification natif sur macOS

Stephen McGruer
Stephen McGruer

À partir de Chrome 59, les notifications envoyées via l'API Notifications ou l'API chrome.notifications extensions seront affichées directement par le système de notification natif de macOS, et non par le propre système de Chrome.

Ce changement permet à Chrome sur macOS de s'intégrer beaucoup mieux à la plate-forme et corrige un certain nombre de bugs de longue date, par exemple le fait que Chrome ne respecte pas le paramètre du système Ne pas déranger.

Vous trouverez ci-dessous les différences que cette modification introduit dans les API existantes.

Centre de notifications

L'un des avantages de ce changement est que les notifications s'affichent dans le centre de notifications de macOS.

Les notifications Google Chrome s'affichent dans le centre de notifications de macOS
Les notifications Google Chrome s'affichent dans le centre de notifications macOS.

Différences

Taille et positionnement des icônes

L'apparence des icônes changera. Ils seront de plus petite taille et une marge intérieure sera appliquée. Pour des raisons esthétiques, vous pouvez envisager d'utiliser une icône à arrière-plan transparent plutôt qu'une couleur unie.

Avant et après pour les icônes de notification Chrome sur Mac affichées par Chrome et par macOS.
Avant et après pour les icônes de notification Chrome sur Mac affichées par Chrome et par macOS

Icônes d'action

Auparavant, des boutons d'action et des icônes s'affichaient dans la notification. Avec les notifications natives, les icônes des boutons d'action ne sont pas utilisées. L'utilisateur doit pointer sur la notification et sélectionner le bouton "Plus" pour afficher les actions disponibles.

Avant et après les boutons d'action des notifications avec les icônes affichées par Chrome et macOS.
Avant et après les boutons d'action des notifications avec des icônes affichées par Chrome par rapport à macOS

Le logo Chrome est toujours affiché, et ne peut pas être remplacé ni modifié. Il s'agit d'une exigence pour les applications tierces sur macOS.

Images

L'option image ne sera plus disponible sur macOS. Si vous définissez une propriété d'image, la notification s'affichera toujours, mais elle ignorera le paramètre d'image (voir exemple ci-dessous).

Image de notification "Avant et après" pour Chrome sous macOS.
Avant et après l'image de notification pour Chrome sur macOS

Vous pouvez détecter la prise en charge des images à l'aide du code suivant:

if ('image' in Notification.prototype) {  
  // Image is supported.
} else {  
  // Image is NOT supported.
}

Modifications apportées aux extensions Chrome

Les extensions Chrome utilisent le concept de modèles de notification, qui se comporteront différemment avec ce changement.

Le modèle de notification d'image n'affichera plus l'image. Vous devez vous assurer que les images sont complémentaires et qu'elles ne doivent pas nécessairement être utiles à vos utilisateurs.

Avant et après pour les modèles d'images dans l'API chrome.notification.
Avant et après pour les modèles d'image dans l'API chrome.notification

Le modèle de notification de liste n'affiche que le premier élément de la liste. Vous pouvez envisager de revenir au style de notification de base et d'utiliser le corps du texte pour résumer l'ensemble des modifications.

Avant et après pour les modèles de liste dans l'API chrome.notification
Avant et après pour les modèles de liste dans l'API chrome.notification

Les notifications de progression ajoutent une valeur de pourcentage au titre de la notification pour indiquer la progression au lieu d'une barre de progression.

Avant et après pour les modèles de progression dans l'API chrome.notification.
Avant et après pour les modèles de progression dans l'API chrome.notification

La dernière différence de l'UI des notifications est que appIconMarkUrl ne sera plus utilisé sur macOS.

Avant et après pour appIconMarkUrl dans l'API chrome.notification.
Avant et après pour appIconMarkUrl dans l'API chrome.notification