Résumé

  • Le premier projet public du W3C, en décembre 2019, permettait à un site de proposer texte et lien; l’agent utilisateur présentait les destinations et la personne en choisissait une.
  • La Recommandation de mai 2023 a conservé ce partage des rôles et décrit aussi les fichiers, la validation par canShare(), le geste du lecteur et l’annulation.

Sur le comptoir, une page web dépose un petit paquet: un titre, quelques mots, une adresse. Elle voudrait qu’il voyage. Derrière le guichet, plusieurs portes mènent vers des applications, des sites ou des contacts. La page ne connaît pas la clef de chaque porte. Le téléphone ouvre son sélecteur et la personne qui tient le téléphone indique la destination. Le colis a un expéditeur; le destinataire est choisi plus tard.

Pendant longtemps, des pages ont affiché une rangée de boutons portant les noms de services particuliers. Le site devinait ainsi où ses lecteurs aimeraient envoyer un article. Le téléphone, lui, possède déjà son propre paysage de destinations, façonné par les logiciels installés et par son interface. Une API commune permettait de formuler une demande plus modeste: voici ce que je propose de partager; montre à la personne les chemins disponibles ici.

Le premier projet public du W3C du 17 décembre 2019 définissait le partage de texte, de liens et d’autres contenus vers une destination choisie par l’utilisateur. L’agent utilisateur fournissait les cibles possibles. L’exemple mettait navigator.share({ title, url }) derrière le clic sur un bouton. L’agent affichait ensuite un sélecteur où le lecteur choisissait une cible. Le site pouvait lancer la conversation, sans garder le carnet d’adresses derrière le comptoir.

La sobriété de la première version fait sa force. Un site n’avait plus besoin de dresser une liste prétendument complète des applications de tous les appareils. Il décrivait le contenu à transmettre et indiquait quand le navigateur devait intervenir. Les données initiales pouvaient comprendre un titre, du texte et une URL. L’article voyageait avec une étiquette lisible, tandis que le téléphone présentait ses propres destinations. Le menu pouvait changer d’un appareil à l’autre sans que l’intention de partage change.

La Recommandation du W3C du 30 mai 2023 ajoutait à la description des exemples de fichiers. Le document montre un objet File placé dans le tableau files, à côté des partages de texte et de liens. Il décrit aussi navigator.canShare(data), qui vérifie la validité des données sans ouvrir le sélecteur. La page peut donc se renseigner discrètement avant de dessiner son bouton; l’appel à share() reste le véritable départ du colis.

Ce départ vient d’un geste du lecteur. Un clic fournit le cas le plus ordinaire. Le navigateur utilise cette activation lorsque le partage commence et n’entretient qu’une opération active à la fois. La demande peut échouer ou être annulée si la personne ferme le menu. Une interface honnête accepte cette décision avec naturel: le lecteur a demandé à voir les portes, puis a décidé de rester dans la pièce.

La liste des portes appartient à l’agent utilisateur. Selon la Recommandation de 2023, une cible peut être une application, un site ou un contact. Sa disponibilité dépend de l’environnement. Les systèmes d’exploitation présentent le choix sous des formes différentes, feuille de partage ou menu. La partie commune du contrat est le passage de relais. La maquette du guichet suit la maison qui l’abrite.

Le résultat est appréciable pour quelqu’un qui lit un article. Le site peut proposer « Partager » sans imposer la liste de ses plateformes favorites. Le lecteur peut envoyer le lien dans une note privée, une conversation ou un outil que l’éditeur n’a jamais prévu. Le site prépare le paquet, le téléphone fournit les portes présentes, le lecteur choisit. Cette chaîne de garde tient dans une petite méthode JavaScript, mais elle protège un choix très personnel.

L’historique de publication du W3C va du projet public de décembre 2019 à la Recommandation de mai 2023. Dans ce parcours, les exemples et la validation des données se sont enrichis. La scène principale est restée intacte: la page tend un lien emballé, puis attend que quelqu’un d’autre décide à quelle porte frapper.

Une bonne page traite ce moment avec tact. Le titre et l’adresse proposés doivent correspondre au contenu que la personne croyait partager. Pour un fichier, canShare() aide à décider si l’option vaut la peine d’être montrée. Si le lecteur annule, la page continue. Un menu fermé est simplement une décision prise au guichet.