Skip to content
This repository has been archived by the owner on Dec 26, 2022. It is now read-only.

feat: Gérer un état 'stopped' local en plus de l'état synchronisé #60

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

julienw
Copy link
Collaborator

@julienw julienw commented May 27, 2021

(pas encore prêt pour merger, je veux faire plus de tests notamment pour la partie "synchro")

Fixes #56

J'ai finalement gardé un état synchronisé car je trouve utile d'arrêter la recherche sur toutes les instances de Firefox quand un rdv est booké.
En revanche il n'y a plus de bouton pour gérer cet état synchronisé, donc ça peut être pénible pour les personnes qui veulent trouver plusieurs rendez-vous (sauf à supprimer l'ensemble des données). Donc feedback bienvenu sur ce sujet.

J'en ai profité pour corriger l'icône qui ne changeait pas de couleurs en fonction de l'état ;-) et un tout petit peu de simplifications par ci par là sur les changements d'UI lorsqu'un état change.

@@ -99,13 +100,11 @@
});

document.getElementById("stop").onclick = async () => {
await browser.storage.sync.set({ stopped: true });
displayStopStart(true);
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

La simplification minime dont je parlais: en effet, displayStopStart est appelé dans onChanged, donc je l'ai enlevé d'ici (et de dessous).

@@ -111,7 +109,14 @@
});
}

if (change.stopped) return await updateIconStatus(stopped);
if (change.stopped) {
await updateIconStatus(change.stopped.newValue);
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

la seconde partie du fix de l'icône

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Arf, j'ai déjà fixé tout ca dans #48

@@ -10,7 +10,7 @@
WORKING: "w",
};

async function updateIconStatus() {
async function updateIconStatus(stopped) {
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

la première partie du fix de l'icône

@julienw julienw force-pushed the store-local-state-in-local branch from 8d1be38 to c28b9c5 Compare May 27, 2021 09:58
stopped: false,
// Le booléan "stopped" est à la fois stocké localement et synchronisé. En
// effet, lorsqu'on arrive à booker un rdv dans un Firefox on veut arrêter les
// checks dans toutes les instances. Mais un simple clic sur le bouton ne doit
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On est sûr de ça ? À mon avis il vaut mieux arrêter partout. Cas d'usage :

  • je trouve un RDV sur Maia ou Keldoc
  • je veux que ça s'arrête sur tous mes ordis

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah ben je pensais que tu étais d'accord d'après #56 (comment), c'est le but de ce PR à la base :-)

En fait je comprends pas bien l'intérêt de faire tourner l'extension sur plusieurs ordinateurs à la fois. Le problème est qu'elle est installée automatiquement lorsqu'on se connecte avec son FxAccounts sur une autre installation...

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah ben je pensais que tu étais d'accord d'après #56 (comment), c'est le but de ce PR à la base :-)

Je pensais que tu voulais tout mettre en local storage (ce qui me va toujours). Je n'aime pas trop le mélange des deux, ça rend ça moins clair. Si rien n'est synchro, ça me semble plus logique que tu doives l'arrêter partout.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mais du coup, ce cas d'usage:

  • je trouve un RDV sur Maia ou Keldoc
  • je veux que ça s'arrête sur tous mes ordis
    ne sera plus supporté?

Et tu veux mettre les locations aussi en local, ou bien pour ça c'est OK que ce soit à la fois synchronisé en local ? Je vois que c'est déjà en partie en local pour pouvoir les afficher, mais c'est pas tout à fait clair pour moi vu que j'ai pas du tout suivi cette partie...

Désolé, j'essaie de bien comprendre ce qu'on veut faire :-)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

On ne devrait pas synchroniser l'état de la "surveillance des RDV"
3 participants