fr.gif, 1 kB    en.gif, 1 kB

MDN Extended Technical Documentation/fr

Dernière modification de cette page le 21 août 2008 à 07:52.

Un article de Milimail.

Sommaire

Documentation technique - MDN

Rappel des fonctionnalités

Le MDN ou (Message Disposition Notification) est la fonctionnalité qui permet à l'émetteur d'un message de demander au destinataire le renvoi d'un accusé.

L'accusé renvoyé par le destinataire à l'émetteur peut être de plusieurs formes :

  • un accusé de Lecture: le destinataire accuse la lecture du message.
  • un accusé de Suppression: le destinataire accuse la suppression du message.


Demande de confirmation pour l'envoi d'un accusé

Dans la version standard de Thunderbird, seule la gestion de l'accusé de Lecture est implémentée. Le but de cette extension est donc d'implémenter la gestion des accusés de Suppression afin d'être pleinement conforme à la norme.

Implémentation

Normes

La norme de référence pour l'implémentation de cette fonctionnalité est la RFC 3798

Architecture

Présentation synthétique de l'architecture de l'extension

Cette fonctionnalité est développée sous la forme d'une extension Thunderbird.

Architecture

Le coeur de cette implémentation repose sur l'ajout d'un contrôleur aux fenêtres existantes pour gérer les évènements de suppression d'un message.

Les fichiers d'IHM

Les fichiers overlay XUL ont pour unique but d'inclure la librairie mdn_extended.js aux fenêtres existantes. Les fenêtres surchargées sont la fenêtre principale de navigation et la fenêtre de visualisation d'un message. En fait, ce sont celles qui permettent à l'utilisateur de supprimer un message.

C'est cette librairie mdn_extended.js qui permet d'enregistrer un contrôleur supplémentaire pour gérer les évènements de suppression d'un message.

Cette librairie surcharge la fonction standard SetupCommandUpdateHandlers() pour ajouter un nouveau contrôleur d'événements en tant que contrôleur par défaut. Cette fonction est appelée lors de l'ouverture des pages. Nous sommes obligés de surcharger cette fonction pour être sûr que notre contrôleur est défini en tant que contrôleur par défaut. Ce contrôleur gère uniquement les évènements standards suivants:

  • cmd_delete
  • button_delete
  • cmd_shiftDelete

Lors d'une demande de suppression, il intercepte l'évènement, puis appelle le XPCOM nsIMsgMdnGenerator avec les bons paramètres, avant de déléguer la suite du traitement aux contrôleurs standards. Les autres évènements ne sont pas interceptés.

Les fichiers XPCOM

Cette extension ne contient pas de nouvel XPCOM. Elle s'appuie principalement sur le XPCOM standard nsIMsgMdnGenerator.

Reference: English – Translations:  Français  •