docs: the 0.3.0 backlog, from testing 0.2.6.1
Wonder Ink's next interface, the PDF viewer's Download and second Print, readable worksheet names, a tab's sound indicator, the popup that Chrome does not show, session retention, and the site's weight; Presentations as a maximisable tile grid with click-to-advance and a hidden pointer; the launcher's subtitles and Parent Call's flash. Recorded, not built. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
cd798a33a1
commit
0bbe2a1ee0
@@ -0,0 +1,84 @@
|
|||||||
|
# Backlog — 0.3.0 and later
|
||||||
|
|
||||||
|
Recorded after hands-on testing of 0.2.6.1 in September 2026. **None of
|
||||||
|
this is in 0.2.6.2**, which is limited to picture printing, the
|
||||||
|
Presentations memory failure and the settings lockdown. Each item says
|
||||||
|
what was observed, so whoever picks it up starts from the evidence.
|
||||||
|
|
||||||
|
## Wonder Ink
|
||||||
|
|
||||||
|
- **An interface like Chrome's, visibly the classroom's.** Familiar tabs
|
||||||
|
and back/forward/reload, without an address bar, new-tab button or
|
||||||
|
anything that takes a teacher somewhere the lesson did not. The 0.2.6.1
|
||||||
|
tab strip is a step towards it, not the design.
|
||||||
|
- **The PDF viewer's own Download button.** It saves a copy, which the
|
||||||
|
download handler then opens as another worksheet tab. Remove it, or
|
||||||
|
intercept the download from a worksheet tab so it does nothing visible.
|
||||||
|
(0.2.2 already skips re-opening a save from a worksheet tab — see
|
||||||
|
`from_worksheet` in `on_download` — so check first which route it now
|
||||||
|
takes.)
|
||||||
|
- **One Print, not two.** A worksheet tab has the viewer's printer icon
|
||||||
|
and Wonder Ink's Print; both now open the same preview, but a teacher
|
||||||
|
sees two buttons. One teacher-facing workflow.
|
||||||
|
- **Readable worksheet names.** Tabs show the downloaded file's name,
|
||||||
|
which for many worksheets is a long generated prefix. Strip it, or take
|
||||||
|
the name from the PDF's own title.
|
||||||
|
- **A speaker on the tab that is playing sound** (`QWebEnginePage.recentlyAudible`).
|
||||||
|
- **Linked lesson text opens an intermediate popup** instead of following
|
||||||
|
the link, where Chrome follows it directly. Investigate: probably a
|
||||||
|
site script choosing `window.open` for a gesture Wonder Ink reports
|
||||||
|
differently, or `createWindow` being asked for a popup type we treat as
|
||||||
|
a tab.
|
||||||
|
- **Session retention.** Today closing Wonder Ink signs the teacher out
|
||||||
|
(session-only cookies). Wanted: recover from an accidental close, but
|
||||||
|
expire after a configurable period of inactivity, including across
|
||||||
|
restarts. Needs a design that never leaves one teacher signed in for
|
||||||
|
the next — and first, a real account to measure where the site keeps
|
||||||
|
its sign-in: 0.2.6.1 found cookies do clear on close, but the profile's
|
||||||
|
Local Storage persists, and whether the site stores its token there has
|
||||||
|
never been tested.
|
||||||
|
- **The site's sluggishness, where it is ours.** Measured in 0.2.6.1:
|
||||||
|
Wonder Ink and Chrome take the same time (about 2.9 s cold) and the
|
||||||
|
site is the weight — 119 – 160 requests, 3.2 MB, the Google Maps API
|
||||||
|
loaded twice. Ours to look at: whether a classroom's QtWebEngine has its
|
||||||
|
GPU (`classroom-wonderink --diagnose` on the machines), and the page
|
||||||
|
shell being revalidated on every warm load (62 – 87 ms).
|
||||||
|
- **The browser is scaled twice** under Plasma (dpr 2.25 at 150%):
|
||||||
|
`classroom-browser` forces `UI_SCALE` on a Chrome that already follows
|
||||||
|
the compositor. Deliberately left in 0.2.6.x because teachers know that
|
||||||
|
size, and Wonder Ink was matched to it. Decide once, for both.
|
||||||
|
|
||||||
|
## Presentations
|
||||||
|
|
||||||
|
- **A normal, maximisable application** instead of the small floating
|
||||||
|
library window.
|
||||||
|
- **Consistently sized tiles in a responsive grid.**
|
||||||
|
- **No unnecessary internal scrollbars or stretched layouts.** 0.2.6.2
|
||||||
|
had to give a row extra height by hand when a card carries the
|
||||||
|
memory-failure message; the layout should size to its cards.
|
||||||
|
- **Keep the window's size and position** when importing a presentation
|
||||||
|
or changing a cover.
|
||||||
|
- **Click the slide to advance.**
|
||||||
|
- **Hide the pointer after a moment of stillness while presenting**, and
|
||||||
|
bring it back on movement.
|
||||||
|
- **Keep the keyboard controls**, and never advance when a playback
|
||||||
|
control itself is clicked.
|
||||||
|
- **Remote control of a presentation** — later than 0.3.0.
|
||||||
|
|
||||||
|
## The launcher and Parent Call
|
||||||
|
|
||||||
|
- **Remove the subtitles under DVD and Presentations** on the launcher.
|
||||||
|
- **Parent Call appears among the ordinary applications for a moment and
|
||||||
|
then disappears**, which looks like a crash. Keep it reachable through
|
||||||
|
its background or notification route without it flashing up as a
|
||||||
|
window.
|
||||||
|
|
||||||
|
## The settings lockdown
|
||||||
|
|
||||||
|
- A notification's **Configure** button still shows, and opens a small
|
||||||
|
"module disabled" window (0.2.6.2). Hiding it needs a change to Plasma's
|
||||||
|
notification applet, not configuration — revisit if Plasma gains a
|
||||||
|
Kiosk key for it.
|
||||||
|
- The settings-module list is per Plasma release. `tools/lab/converged-check`
|
||||||
|
fails when a new one appears; the list in `config/plasma/xdg/kdeglobals`
|
||||||
|
then needs the new name.
|
||||||
@@ -280,3 +280,7 @@ classroom-manual --features which manual pages this device shows
|
|||||||
`--status` prints titles, slide counts, the chosen thumbnail slide, both
|
`--status` prints titles, slide counts, the chosen thumbnail slide, both
|
||||||
timers and the expiry date. It is the fastest way to answer "why has this
|
timers and the expiry date. It is the fastest way to answer "why has this
|
||||||
gone" and "why has this not appeared".
|
gone" and "why has this not appeared".
|
||||||
|
|
||||||
|
## Later
|
||||||
|
|
||||||
|
The library's next round — a maximisable window, a tile grid, click to advance, a hidden pointer — is in [backlog.md](backlog.md).
|
||||||
|
|||||||
@@ -571,3 +571,7 @@ For completeness, so nobody re-audits them: the managed policy in
|
|||||||
`/etc/opt/chrome/policies/managed/` sets first-run, sign-in, password
|
`/etc/opt/chrome/policies/managed/` sets first-run, sign-in, password
|
||||||
and homepage behaviour only. None of it touches media, autoplay,
|
and homepage behaviour only. None of it touches media, autoplay,
|
||||||
iframes, fullscreen or site permissions.
|
iframes, fullscreen or site permissions.
|
||||||
|
|
||||||
|
## Later
|
||||||
|
|
||||||
|
What testing of 0.2.6.1 asked for next is in [backlog.md](backlog.md).
|
||||||
|
|||||||
Reference in New Issue
Block a user