fix(notifier): ESC només confirma sobre el propi prompt de sortida

This commit is contained in:
2026-05-21 08:24:22 +02:00
parent 9a79fb9774
commit 4252f3327f
3 changed files with 24 additions and 10 deletions
+8 -2
View File
@@ -47,10 +47,15 @@ namespace System {
void draw() const;
// Activa mentre el toast està entrant o aguantant. Quan està sortint
// o ja amagat, retorna false. Útil per a la lògica de doble-pulsació
// d'ESC: la segona pulsació només confirma sortida si encara aguanta.
// o ja amagat, retorna false.
[[nodiscard]] auto isActiveWindow() const -> bool;
// Cert només si el toast actiu va ser disparat per notifyExit().
// Per a la doble-pulsació d'ESC: la segona ESC confirma sortida
// únicament si la notificació visible és la de confirmació; si era
// de F1/F2/etc., ESC torna a obrir el prompt sense tancar.
[[nodiscard]] auto isExitPromptActive() const -> bool;
private:
explicit Notifier(Rendering::Renderer* renderer);
@@ -74,6 +79,7 @@ namespace System {
float box_h_{0.0F};
float text_x_{0.0F}; // X esquerre del text dins la caixa
float text_scale_{0.4F};
bool current_is_exit_{false}; // true només si l'actiu ve de notifyExit()
static std::unique_ptr<Notifier> instance;
};