DEVLOPN Audit

Accélérez vos cycles de test Flutter avec CallbackShortcuts

Vider le cache, remplir un formulaire, injecter un mot de passe de test en un raccourci clavier — sans classe Intent ni Action, et invisible en release.

Vider le cache de l'app, remplir dix fois le même formulaire, retaper le même mot de passe de test… quelle galère. Chaque cycle de test manuel coûtait 30 secondes de manipulations répétitives.

Puis j'ai découvert CallbackShortcuts dans Flutter.

Speed up your dev shortcuts — CallbackShortcuts : Ctrl+D vide le cache, Ctrl+P remplit le mot de passe, Ctrl+F remplit le formulaire, le tout sous kDebugMode

Pas de classe Intent, pas d'Action

Le système de raccourcis classique de Flutter (Shortcuts + Actions) demande de déclarer une classe Intent, une Action, puis de les câbler. Pour des outils de debug jetables, c'est disproportionné.

CallbackShortcuts, c'est juste une map qui lie une touche à une fonction :

  • Ctrl + D → vide le cache
  • Ctrl + P → injecte le mot de passe de test
  • Ctrl + F → remplit tout le formulaire
CallbackShortcuts(
  bindings: {
    const SingleActivator(LogicalKeyboardKey.keyD, control: true): clearCache,
    const SingleActivator(LogicalKeyboardKey.keyP, control: true): fillPassword,
    const SingleActivator(LogicalKeyboardKey.keyF, control: true): fillForm,
  },
  child: Focus(autofocus: true, child: app),
)

Invisible en production

Le tout est encapsulé sous kDebugMode : les raccourcis disparaissent complètement du build release. Aucun risque qu'un utilisateur déclenche un outil de debug par accident.

Widget wrapWithDevShortcuts(Widget app) {
  if (!kDebugMode) return app;
  return CallbackShortcuts(/* bindings */, child: app);
}

Le résultat

Ce qui me coûtait 30 secondes à chaque cycle est devenu instantané. Sur une journée de développement d'un écran de formulaire, ce sont des dizaines de minutes récupérées — et surtout beaucoup moins de friction pour tester souvent.

Et vous, quels raccourcis de dev vous font gagner le plus de temps ?