Feedback sul componente tema "Reader Mode"

Ho recentemente installato un componente tematico qui su Meta che introduce una “modalità lettore” durante la visualizzazione di un argomento.

Il pulsante per attivare questa funzionalità si trova in cima ai controlli della timeline dell’argomento:

Facendoci clic si attiverà la “modalità lettura” dell’argomento, coprendo la maggior parte dell’interfaccia utente con una copertura leggermente opaca per ridurre al minimo le distrazioni.

Altre cose che accadono sono un filtro applicato a tutti gli avatar e le immagini, trasformandoli in immagini in scala di grigi.

Ecco una registrazione dello schermo in uso.


Il componente è disponibile nei seguenti temi installati qui su Meta:

  • Air Theme
  • Default
  • Default (Full Width)
  • Fully
  • Meta Branded
  • Redditish
  • Sam’s Simple Theme

Questo è ancora un lavoro in corso e apprezzerei qualsiasi segnalazione di bug o feedback pubblicato qui :smile:

28 Mi Piace

Fantastico!

Una cosa che ho notato è che alcune modifiche allo stile fanno “saltare” il layout quando si fa clic sul pulsante. Immagino che alcuni elementi vengano impostati su display: none;? O che le dimensioni dei font cambino?

Sarebbe fattibile far semplicemente “ingrigire” il pulsante (o impostare visibility: hidden;) per gli elementi non necessari, senza causare alcun spostamento del layout?

4 Mi Piace

Sì, questo è un problema che ho riscontrato.

Idealmente, la barra laterale si animerebbe chiudendosi, come fa quando si fa clic normalmente sull’interruttore della barra laterale.

Poiché il mio componente chiude la barra laterale, ma non la anima, risulta in uno scossone.

Potrei:

  • animare la barra laterale chiudendola
    • non sono sicuro di come farlo, dato che penso che venga fatto tramite JS + Css?
  • non chiudere la barra laterale
1 Mi Piace

Che ne dici di visibility: hidden;? O opacity: 0;? Così è ancora lì e incluso nel layout, ma invisibile? Immagino che avremmo bisogno anche di qualcosa per impedirgli di ricevere click/focus? O forse lo rendiamo di nuovo visibile al passaggio del mouse/focus? :face_with_monocle:

Un modo relativamente sicuro sarebbe quello di imitare l’interazione dell’utente:

if(document.body.classList.contains("has-sidebar-page")){ // La barra laterale è visibile
  document.querySelector(".btn-sidebar-toggle").click()
}
1 Mi Piace

Stai parlando della barra laterale?

Se sì, la sto effettivamente chiudendo con il mio componente, quindi sta usando lo stesso modo principale come questo:

  @action
  toggleReaderMode() {
    if (this.sidebarIsOpen && !this.isActive) {
      getOwner(this).lookup("controller:application").set("showSidebar", false);
      this.readerModeActive = !this.readerModeActive;
    } else {
      getOwner(this).lookup("controller:application").set("showSidebar", true);
      this.readerModeActive = false;
    }
  }

Non c’è niente nella pagina che sto effettivamente rimuovendo, a parte la chiusura di questa barra laterale.

2 Mi Piace

Giusto, ma questo causa uno spostamento del layout. Quindi stavo pensando che potremmo lasciarlo aperto, ma renderlo invisibile?

4 Mi Piace

Ok sì, scusa per la confusione. Ti sto capendo ora. Poiché la modalità lettore non è nota per essere un’opzione per la barra laterale, potrebbe essere fonte di confusione che sia attivata, causando lo spostamento quando non lo volevi.

Suppongo di aver pensato che se l’attivazione della barra laterale causa uno spostamento, allora il fatto che la modalità lettore faccia la stessa cosa non avrebbe importanza.

Posso provare a non attivare la barra laterale e pubblicare un video qui per mostrartelo.

2 Mi Piace

Quando la barra laterale è chiusa prima di utilizzare il pulsante della modalità lettura, la barra laterale si apre e, successivamente, il pulsante non fa nulla.

5 Mi Piace

Mi stavo chiedendo cosa fosse quella nuova icona. Ora lo so. Grazie.

Ma.

DiscourseHub, iPad e tema predefinito: tutto ciò che fa è espandere la barra laterale.

Modifica.

Ok, devo prima aprire la barra laterale. Dopo succede la magia. Tranne… che qui non uso la barra laterale :smirking_face:

2 Mi Piace

Ottimo!

Non sono sicuro di quanto sarebbe difficile, ma stavo pensando che sarebbe bello se l’utente potesse premere ESC per uscire dalla modalità lettura. Poiché il pulsante è considerato parte della timeline, se scorri fino in fondo all’argomento, il pulsante può uscire dallo schermo.

5 Mi Piace

È una funzionalità molto interessante. Ottimo lavoro, Jordan! :+1:

Come ha detto David, mi chiedo se sia possibile non spostare il contenuto.
Inoltre, c’è un motivo particolare per ridurre la larghezza originale? Potrei non essere a conoscenza di alcune limitazioni, tuttavia.

Quello che intendo è più o meno così:

chrome_oW7GzSDCWw

3 Mi Piace

Funzionalità, tutto ciò che sembra fare è nascondere la barra della sequenza temporale e delle notifiche, dato che la barra laterale è già comprimibile. Non vedo davvero l’esperienza modificata o migliorata a sufficienza da avere un altro pulsante in ogni argomento.

Avrebbe più senso se cambiasse l’esperienza di lettura in qualche modo significativo, come renderla a larghezza intera in Modalità Lettura. Così com’è ora, probabilmente non userei mai questa funzionalità, quindi ironicamente tutto ciò che sta facendo per me è aggiungere più rumore visivo alla sequenza temporale.

2 Mi Piace

Ho alcuni obiettivi a lungo termine per aggiungere opzioni per il font, la dimensione del testo, la larghezza del contenuto, ecc. Ma per ora, questo è solo un piccolo esperimento e un lavoro in corso.

3 Mi Piace

Le ultime modifiche per limitare il movimento e ottenere una migliore transizione sono state unite a questo componente. Grazie per il feedback finora :smile:

4 Mi Piace

Mi piace molto!

Nascondere la mappa dell’argomento crea un grande spazio tra l’OP e la prima risposta. Mi chiedo che aspetto avrebbe una mappa dell’argomento in scala di grigi.

Posso rispondere all’OP o rispondere direttamente ai post in modalità Lettura. Forse dovrebbe essere possibile rispondere anche dal fondo dell’argomento?

1 Mi Piace

Sì, forse posso renderla anche un po’ trasparente. Ho provato a nasconderla con una transizione fluida, ma a causa del modo in cui renderizziamo gli elementi nella nostra lista, a volte questo non è visibile, e cercare di nasconderla diventa un problema.

È lo stesso con tutte le piccole notifiche dei post e le lacune temporali. L’unico modo a cui ho potuto pensare è usare un’API di osservazione degli elementi, ma anche in quel caso, il movimento è leggermente imprevedibile e ho notato che si verificava casualmente un tremolio.

Questo ha senso per me :+1:

1 Mi Piace

Una scorciatoia da tastiera (CTRL-qualcosa) per attivare/disattivare sarebbe fantastica qui (e potremmo insegnarla quando si passa il mouse sul pulsante)

Non mi piace la conversione in bianco e nero delle immagini, sento di perdere informazioni.

Sono favorevole invece alla rimozione di molti elementi grafici come "conteggi dei like", pulsante di risposta, forse anche avatar.

6 Mi Piace

Bel miglioramento, Jordan! È un’esperienza molto migliore non vedere più alcun cambio di movimento e alcune animazioni per smussare la transizione. :+1:

Sono d’accordo con i suggerimenti di Sam; se nascondiamo le informazioni non essenziali, riavere il colore sarebbe un buon compromesso. Potrebbe essere un’opzione, però. :thinking:

3 Mi Piace

Sì, sì, sì!!!

1 Mi Piace

Una volta in modalità lettura, devi fare clic per passare a un’altra pagina e poi, se vuoi la modalità lettura, devi fare clic di nuovo per riattivarla. Forse rendi gli altri link di navigazione un po’ meno nascosti e lasciali funzionare e lasciali attivi quando passiamo all’argomento successivo.

Un’altra idea, disattivala automaticamente quando arrivi alla fine dell’argomento.

Oppure, naviga automaticamente all’argomento successivo nell’ultima lista di argomenti che hai visitato!

1 Mi Piace