Comportamento di ritorno deterministico

Definisci un'unica politica di ritorno, così la chiusura degli overlay e le operazioni di pop dallo stack avvengono sempre nello stesso ordine.

Overlay prima di tutto

Chiudi gli overlay attivi prima di fare pop dagli stack delle pagine.

Consapevole della radice

Quando la lunghezza dello stack è uno, delega al comportamento del padre invece di forzare il pop.

Consapevole delle schede

In modalità schede, passa alla prima scheda alla radice prima di attivare la gestione dell'uscita a livello di app.

Pattern dell'ambito di ritorno

Usa DeclarativePagesBackScope per le pile di pagine e i callback delle schede per le radici delle schede.

Politica di ritorno

DeclarativePagesBackScope

return DeclarativePagesBackScope(
  pages: _pages,
  popTopPage: _popTop,
  isOverlayVisible: _overlay != null,
  dismissOverlay: _dismissOverlay,
  onBackAtRoot: _onBackAtRoot,
  child: DeclarativePagesNavigator(
    pages: _pages,
    buildPage: _buildPage,
    onPopTop: _popTop,
    canPopTop: () => _overlay == null,
  ),
);
Stabilità UX

Mantieni un unico ordine coerente per tutti gli eventi di ritorno per evitare confusione tra il pulsante Indietro di Android e i gesti di iOS.