mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-07-29 10:40:12 +00:00
Add the API surface needed for plugins that want to attach UI to a specific
work context (project or TODAY tag) and embed their iframe inside the
work-view body in place of the task list.
- New PluginAPI methods: getActiveWorkContext, registerWorkContextHeaderButton
(with showFor filter), showInWorkContext, closeWorkContextView.
- New WORK_CONTEXT_CHANGE hook, fired once per navigation off
activeWorkContext$ with a full {id, type, title, taskIds} snapshot.
- Iframe Hooks enum now exposes ANY_TASK_UPDATE, PROJECT_LIST_UPDATE,
TASK_CREATED, WORK_CONTEXT_CHANGE.
- Iframe message handler verifies event.source so embedded iframes
don't cross-talk with the side-panel iframe.
- PluginIndexComponent gets a skipCleanupOnDestroy input so context
switches don't tear down a plugin's hook/button registrations.
- Callback proxy for registerWorkContextHeaderButton mirrors the
existing registerHook IFRAME_HANDLER pattern.
- New plugin-work-context-header-btns component rendered in main-header
next to plugin-header-btns; filtered by current ctx + showFor.
- Work-view branches on pluginBridge.workContextEmbedPluginId(): when set
AND ctx is project or TODAY tag, render <plugin-index> in place of the
task list, suppress the work-view header (mirroring the in-tree
document-mode flow).
Includes the multi-review design plan as docs/plans/2026-05-21-...md.
|
||
|---|---|---|
| .. | ||
| 2026-03-22-advanced-onboarding-design.md | ||
| 2026-04-21-schedule-week-range-header.md | ||
| 2026-04-29-focus-mode-time-tracking-sync.md | ||
| 2026-05-12-pr5-dropbox-slice.md | ||
| 2026-05-12-pr5-webdav-slice.md | ||
| 2026-05-12-pr7-super-sync-slice.md | ||
| 2026-05-13-extract-encryption-to-sync-core.md | ||
| 2026-05-21-document-mode-tiptap-plugin.md | ||