feat: polish theme tooling, diagnostics and launcher workflows
Expand the theme editor with multi-select, snapping, context menus, draft recovery and export validation; add theme backups and trust prompts. Add in-app diagnostics and rotating log bundle viewing, hardware-accelerated theme video playback on macOS, and refresh the settings, setup wizard and theme gallery layouts.
This commit is contained in:
1 parent
87202de656
commit
c02b26e8ae
41 files changed
+5574
-865
No files matched your search
+36
-20
@@ -245,15 +245,18 @@ top. Themes can contain up to 100 layers.
|
||||
|
||||
Every layer supports:
|
||||
|
||||
| Field | Type | Notes |
|
||||
| ---------- | ------ | ----------------------------------- |
|
||||
| `id` | string | Unique within the theme |
|
||||
| `type` | string | `text`, `image`, `video` or `shape` |
|
||||
| `x`, `y` | number | Position in the 1000 × 650 stage |
|
||||
| `width` | number | 24–1000 |
|
||||
| `height` | number | 24–650 |
|
||||
| `rotation` | number | Degrees, `-360`–`360` |
|
||||
| `opacity` | number | `0`–`1` |
|
||||
| Field | Type | Notes |
|
||||
| ---------- | ------- | ------------------------------------------------ |
|
||||
| `id` | string | Unique within the theme |
|
||||
| `name` | string? | Optional editor label; does not affect rendering |
|
||||
| `type` | string | `text`, `image`, `video` or `shape` |
|
||||
| `x`, `y` | number | Position in the 1000 × 650 stage |
|
||||
| `width` | number | 24–1000 |
|
||||
| `height` | number | 24–650 |
|
||||
| `rotation` | number | Degrees, `-360`–`360` |
|
||||
| `opacity` | number | `0`–`1` |
|
||||
| `hidden` | boolean | Keep the layer in the file but do not render it |
|
||||
| `locked` | boolean | Prevent moving/resizing the layer in the editor |
|
||||
|
||||
#### Text
|
||||
|
||||
@@ -357,27 +360,40 @@ small tweaks, but it is not required. Example:
|
||||
full launcher home canvas at 1000 × 650.
|
||||
4. Use the left toolbar to add text, image, video and shape layers. Drag layers on
|
||||
the canvas, resize with the corner handles, or edit exact values in the right
|
||||
inspector.
|
||||
5. Use the **Theme** tab for metadata, background, effects, typography and custom
|
||||
inspector. Shift/Cmd-click a layer or drag a marquee over empty canvas to
|
||||
select several layers. Multi-selections can be dragged together and aligned
|
||||
or distributed from the right panel. Layers snap to canvas edges, the canvas
|
||||
center, and other layers while dragging; hold Alt to disable snapping.
|
||||
Right-click a layer for quick duplicate, ordering, hide/lock and delete
|
||||
actions, or right-click empty canvas to add a new layer.
|
||||
5. The layer list supports double-click rename, hide/show, lock/unlock and
|
||||
drag-to-reorder. Hidden layers remain in the package, while locked layers
|
||||
cannot be moved or resized on the canvas.
|
||||
6. Use the **Theme** tab for metadata, background, effects, typography and custom
|
||||
CSS. Open the **Fonts** tab to search and download from every Fontsource
|
||||
family, or import WOFF2, WOFF, TTF and OTF files. Downloaded fonts are copied
|
||||
into the theme's `assets/` folder when you save.
|
||||
6. Select **Save theme** to write `theme.json` and copy new assets into
|
||||
7. Select **Save theme** to write `theme.json` and copy new assets into
|
||||
`~/.ezpplauncher/themes`. A fresh `assets/preview.png` thumbnail is rendered
|
||||
from the theme and the launcher applies the saved theme immediately.
|
||||
7. Select **Export** to create a shareable `.ezpplauncher-theme` package. Export
|
||||
saves and refreshes the preview first, so the package always includes the
|
||||
current thumbnail.
|
||||
from the theme and the launcher applies the saved theme immediately. Unsaved
|
||||
edits are autosaved as a local draft and offered for recovery after a crash.
|
||||
8. Select **Export** to create a shareable `.ezpplauncher-theme` package. A theme
|
||||
check runs first and reports missing assets, oversized media, missing fonts
|
||||
and unused imports. Export saves and refreshes the preview, then reports the
|
||||
final package size.
|
||||
|
||||
Keyboard shortcuts:
|
||||
|
||||
- `Cmd/Ctrl+Z` undoes the last change.
|
||||
- `Cmd/Ctrl+Shift+Z` or `Ctrl+Y` redoes it.
|
||||
- `Cmd/Ctrl+S` saves.
|
||||
- `Cmd/Ctrl+D` duplicates the selected layer.
|
||||
- Arrow keys nudge the selected layer by 1 px; hold Shift for 10 px.
|
||||
- `Delete` removes the selected layer.
|
||||
- `Esc` deselects the layer.
|
||||
- `Cmd/Ctrl+D` duplicates the selected layer or multi-selection.
|
||||
- `Cmd/Ctrl+A` selects every visible layer.
|
||||
- Shift/Cmd-click toggles a layer in the current selection.
|
||||
- Arrow keys nudge the selected layer(s) by 1 px; hold Shift for 10 px.
|
||||
- `Delete` removes the selected layer(s).
|
||||
- Hold Alt while dragging to skip snapping.
|
||||
- `Esc` clears the selection or closes an open editor dialog.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in new issue
Block a user