Continuer à se former durant le confinement

Étant donné qu’il est impossible de se déplacer en ce moment, il est difficile de participer à une formation. Heureusement, il existe de nombreuses solutions en ligne pour se former.

Voici mes deux solutions préférées :

  • Microsoft Learn : Gratuit, très complet concernant Azure, Microsoft 365, Power Platform…
  • PluralSight : Payant (mais de nombreux contenus sont gratuits), on y trouve tout type de technologies, autant pour le développement que pour l’IT Pro.

Les abonnés MSDN ont accès à certains cours de PluralSight (cela est disponible via la page des avantages MSDN).

Jérémy Jeanson

Mise à jour Accessibilité et performances pour MyReader

MyReader s’offre une nouvelle mise à jour pour améliorer l’accessibilité pour les non-voyants. L’application a été entièrement vérifiée. Plusieurs contrôles étaient mal décrits, suite aux précédentes mises à jour. Je suis désolé pour le désagrément occasionné aux personnes utilisant un lecteur d’écran.

Le traitement des données et leur affichage ont aussi été peaufinés afin que l’application soit encore plus rapide. Tout en restant dans une enveloppe mémoire maitrisée.

J’espère que cette version vous plaira. Comme à l’accoutumée, j’attends vos feedbacks et nouvelles de demandes.

MyReader

Jérémy Jeanson

Comment MVVM peut améliorer l’accessibilité ?

Rendre accessible une application XAML / MVVM n’est pas toujours facile. Si vous utilisez une application de tests tel que Acessibility Insights (https://accessibilityinsights.io/) vous vous rendrez compte que par moment, le texte proposé au narrateur pour décrire l’interface graphique est le nom d’une classe C# (namespace compris).

Autant dire que cette aide n’en est pas une.

Pourquoi un tel comportement ?

Le texte fourni au narrateur est fourni par le Control à la racine du Template (via sa propriété AutomationProperties.Name). Chaque Control va avoir un comportement différent.

Voici quelques cas :

  • Si votre premier Control est un TextBlock, la propriété Text est utilisée par défaut pour AutomationProperties.Name.
  • Pour un Button, AutomationProperties.Name va être déduit du Control qui s’y trouve. Si c’est un TexBlock, son texte est utilisé.
  • ...

Dans le cas où le Control n’a pas une propriété éligible pour alimenter AutomationProperties.Name, la propriété est déduite du Context (DataContext, BindingContext).

Résoudre un problème d’accessibilité des notifications UWP in App

Si vous utilisez les notifications in app fournies par le Windows Community Toolkit, il y a un petit problème d’accessibilité à gérer.

Le problème

Lors de l’affichage des notifications, il n’y a aucun problème. Le problème se présente ensuite. Quand les notifications sont cachées, elles restent accessibles au clavier. Ceci n’est pas normal. L’utilisateur a le focus sur un control qui n’est pas visible. Il n’a donc aucun moyen de savoir où est le focus.

La solution

Pour résoudre le problème, il faut jouer avec la propriété IsTabStop du control. Ma solution simple est en deux partie.

Cherche testeurs dyslexiques pour une nouvelle montre Fitbit!

Après quelques semaines de calme, je sors une nouvelle horloge pour Fitbit OS. Comme à l'accoutumée, l'objectif est d'améliorer la vie de tous et plus particulièrement des utilisateurs dyslexiques. L’horloge est bien évidemment gratuite et fonctionne sur l'ensemble de la gamme Ionic, Versa, Versa2, Versa Light.

Celle-ci est disponible ici.

Je suis à la recherche de feedback. Si vous avez des remarques, je suis preneur!

Jérémy Jeanson