[Bug] Logo picker is not platform-gated and yields an unusable path on web #506
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck#506
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Describe the bug
The "Kiezen" button for the presentation logo is not behind a platform gate,
unlike the other file pickers fixed in #148. On web a dialog does open, so this
is not the silence reported in #150 — but the result is unusable:
file_pickerreturns a
blob:URL inpath, while the rest of the app expectsmem:keysfor web images (
lib/services/image_service.dart:127,lib/models/asset_origin.dart:88).To reproduce
Expected behaviour
Either the button is absent on web, consistent with the other pickers, or it
works end to end.
Environment
Applies to the web build only. Found by reading
lib/widgets/dialogs/settings_dialog.dart:527(_pickLogo, which readsresult?.files.single.pathwithoutwithData: true) and the unconditionalbutton at
lib/widgets/dialogs/parts/settings_dialog_colors.dart:417onmain.Additional context
Deliberately not proposed: a web variant that stores the logo as bytes or
base64 in the theme profile. That would put binary data in our own format and
lock the user in. Absent is better than locked in.
Same class of mistake as #150; the guard proposed there should catch this one
too.