Skip to content

Feature/unified canvas - #198

Merged
BrianJr03 merged 30 commits into
devfrom
feature/unified-canvas
Jul 2, 2026
Merged

BrianJr03 merged 30 commits into
devfrom
feature/unified-canvas

Conversation

@BrianJr03

Copy link
Copy Markdown
Owner

No description provided.

BrianJr03 and others added 30 commits June 28, 2026 12:34
Mirrors the hasSeenSliderHint pattern in OnboardingManager — StateFlow +
markCanvasOnboardingComplete() backed by a new "canvas_onboarding_seen"
key in onboarding_prefs. First of four steps for the Canvas tab's
first-open guided tour.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Two-step guided tour copy: step 1 introduces Canvas and points at the
menu button; step 2 explains the long-press-to-open-options gesture and
overviews what's inside. Also adds a shared onboarding_skip label since
the CanvasOnboardingOverlay exposes a Skip control the header overlay
does not.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Mirrors HeaderOnboardingOverlay — opaque black scrim, target redrawn
above via LayoutCoordinates offset+size, OnboardingTooltip centered.
Dispatches on targetId (canvas_menu_button / canvas_area) to pick the
right coordinate slot and content lambda.

Adds a Skip control in the top-end corner (calls onComplete) since the
brief requires one for the Canvas flow — kept local to this overlay
rather than modifying the shared OnboardingTooltip.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Plumbs an optional onAddTilePositioned callback from CanvasGrid down to
AddTile, which reports its LayoutCoordinates via onGloballyPositioned.
UnifiedCanvasTab wraps CanvasGrid's modifier with onGloballyPositioned
to capture the canvas-area coordinates in parallel.

The overlay shows when the Canvas tab becomes the active pager page,
CanvasUiState is bound (pageIndex != -1), resolvedItems is empty, and
hasSeenCanvasOnboarding is false. Advancing step 1 also closes the add
dialog so the empty canvas is visible for step 2 as the brief requires.

onAddClick is intercepted: during step 1 it no-ops (focus stays on the
menu button); during step 2 the long-press auto-completes onboarding
and then opens CanvasMenuDialog as the natural payoff. The tooltip's
Done button on step 2 completes without opening the dialog. Skip in the
overlay corner also completes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@BrianJr03
BrianJr03 merged commit 93aff40 into dev Jul 2, 2026
0 of 2 checks passed
@BrianJr03
BrianJr03 deleted the feature/unified-canvas branch July 2, 2026 21:29
BrianJr03 added a commit that referenced this pull request Jul 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant