Skip to content

[feat] Connect drawer: one tabbed drawer (Info/Rooms/Toasts) + flush gap fix + Rooms button toggle - #43

Merged
AlexZ005 merged 1 commit into
mainfrom
feature/connect-drawer-tabs
Jul 25, 2026
Merged

[feat] Connect drawer: one tabbed drawer (Info/Rooms/Toasts) + flush gap fix + Rooms button toggle#43
AlexZ005 merged 1 commit into
mainfrom
feature/connect-drawer-tabs

Conversation

@AlexZ005

Copy link
Copy Markdown
Collaborator

Unifies the chevron info-drawer and the cloud rooms drawer into one tabbed drawer opened by the chevron.

  • Tabs: Info (session + server), Rooms (cloud plugin drawerSlot — Browse + host settings; tab only appears when a plugin is present), Toasts.
  • Toasts tab = a view of the SAME notifications feed the top-right bell shows (single source of truth). Shows/clears the unread badge. While open, live info/decision pop-ups are suppressed (cxd-hidden) so they don't cover the drawer — they still land in the feed. Critical connection-request toasts are not suppressed.
  • Gap fix: drawer spans the pill's full width, flush off the bottom; the pill squares its bottom corners + drops its bottom border while open (.connect-pill.drawer-open) so pill + drawer read as one surface — no rounded-corner notches.
  • Rooms shortcut button now core-owned in the pill, opens the drawer on the Rooms tab, togglable via Settings ▸ Show Rooms button (default ON, shown only when the cloud plugin is present).
  • Shared stores connectDrawerOpen / connectDrawerTab / showRoomsButton.

Pairs with cloud PR (rooms move into the drawer tab). svelte-check unchanged 491/72. Verified headless via the engine + cloud plugin (tabs, rooms panel in-tab, full-width flush, pill squares, toast suppression, chevron/✕/outside-click/rooms-button all behave).

…gap fix + Rooms button toggle

Unify the chevron info-drawer and the cloud rooms drawer into ONE tabbed drawer
opened by the chevron under the Connect pill.

- ConnectInfoDrawer is now TABBED: Info (session + signaling server, as before),
  Rooms (the cloud plugin's drawerSlot — Browse + host settings render here; the tab
  only appears when a plugin provides room content), and Toasts.
- Toasts tab = a scrollable view of the SAME notifications feed the top-right bell
  shows (single source of truth, no duplicate log); its tab shows the unread badge and
  opening it clears the badge. While the Toasts tab is open, Toasts.svelte suppresses
  the live info/decision pop-ups (class cxd-hidden) so they never cover the drawer —
  they still land in the feed. Critical connection-request toasts are NOT suppressed.
- GAP FIX: the drawer spans the pill's FULL width and hangs flush off its bottom
  edge; while open the pill squares its bottom corners + drops its bottom border
  (.connect-pill.drawer-open) so pill + drawer read as one surface (no rounded-corner
  notches at the sides). Replaces the old 340px centred panel.
- Rooms SHORTCUT button lives in the pill now (core-owned), opens the drawer on the
  Rooms tab, and is togglable via Settings > Show Rooms button (default ON for
  discoverability; only shown when the cloud plugin is present). Chevron still opens
  Info; both are excluded from the outside-click-close.
- Shared stores connectDrawerOpen / connectDrawerTab / showRoomsButton (appStore).

svelte-check unchanged at 491/72 (no new errors). Verified headless via the engine +
cloud plugin: tabs render, rooms panel mounts in its tab, drawer is full pill-width
flush, pill squares while open, live toasts suppress on the Toasts tab, chevron/✕/
outside-click/rooms-button all behave.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@AlexZ005
AlexZ005 merged commit 0ed2c8e into main Jul 25, 2026
@AlexZ005
AlexZ005 deleted the feature/connect-drawer-tabs branch August 5, 2026 20:25
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