Commit Graph
100 Commits
Author SHA1 Message Date
Raven ScottandCursor d6ff3f371a feat(sync): export guild sync diagnostics via IPC
Handle export-guild-sync-diagnostics and return JSON for clipboard copy in UI.

Co-authored-by: Cursor <[email protected]>
2026-06-01 18:08:36 -04:00
Raven ScottandCursor 3a5eeb0e4a feat(ui-flow): request-guild-sync IPC for manual P2P history pull
Expose platform.requestGuildSyncFromHost through sidecar for sync recovery.

Co-authored-by: Cursor <[email protected]>
2026-06-01 17:54:22 -04:00
Raven ScottandCursor a0de1db0bf Pass discovery listing host public key through explore join IPC.
Co-authored-by: Cursor <[email protected]>
2026-06-01 16:37:56 -04:00
Raven ScottandCursor 5762194cb4 feat(guild): wire delete-guild IPC to platform.deleteGuild
Co-authored-by: Cursor <[email protected]>
2026-06-01 15:22:51 -04:00
Raven ScottandCursor 513a10359d fix(attachments): default download inline limit off (use export cache)
PEARCORD_ATTACHMENT_DOWNLOAD_MAX=0 sends full files via download-cache path.

Co-authored-by: Cursor <[email protected]>
2026-05-25 00:39:35 -04:00
Raven ScottandCursor c54e06f390 fix(ui): reliable attachment download and preview error IPC
Export bytes to download-cache, use saved-path for large files, and always
send download/preview error events when fetch fails.

Co-authored-by: Cursor <[email protected]>
2026-05-25 00:17:50 -04:00
Raven ScottandCursor a32e4a497e fix(ui-flow): attachment download timeout and size guard
Race download reads with a 30s timeout and reject oversized inline IPC
payloads so the UI does not stay on Downloading indefinitely.

Co-authored-by: Cursor <[email protected]>
2026-05-25 00:05:14 -04:00
Raven ScottandCursor 480fb7cb12 feat(ui-flow): attachment download IPC for save-to-disk
Handle request-attachment-download using readAttachmentBytesWithSource
for any mime type and reply with base64 payload or error.

Co-authored-by: Cursor <[email protected]>
2026-05-24 23:55:24 -04:00
Raven ScottandCursor 47ec7494a7 docs: Phase 624 expression ui-flow composer focus bundle (v0.8.587)
Co-authored-by: Cursor <[email protected]>
2026-05-24 19:52:20 -04:00
Raven ScottandCursor 4b7601be9a docs: Phase 610 expression composer focus bundle (v0.8.573)
Co-authored-by: Cursor <[email protected]>
2026-05-24 18:17:57 -04:00
Raven ScottandCursor a71cefa37f docs: Phase 609 sticker composer focus bundle (v0.8.572)
Co-authored-by: Cursor <[email protected]>
2026-05-24 18:14:48 -04:00
Raven ScottandCursor c9e9abcff9 docs: Phase 608 emoji composer focus bundle (v0.8.571)
Co-authored-by: Cursor <[email protected]>
2026-05-24 18:12:06 -04:00
Raven ScottandCursor 7761106c6a docs: Phase 607 automation composer focus bundle (v0.8.570)
Co-authored-by: Cursor <[email protected]>
2026-05-24 18:09:02 -04:00
Raven ScottandCursor e337689901 docs: Phase 606 bots composer focus README (v0.8.569)
Co-authored-by: Cursor <[email protected]>
2026-05-24 18:04:07 -04:00
Raven ScottandCursor c914d6c2c8 docs: Phase 605 slash composer focus README (v0.8.568)
Co-authored-by: Cursor <[email protected]>
2026-05-24 18:00:10 -04:00
Raven ScottandCursor 07e7f3beb5 docs: Phase 604 webhooks composer focus README (v0.8.567)
Co-authored-by: Cursor <[email protected]>
2026-05-24 17:56:30 -04:00
Raven ScottandCursor 3d7b7d5d70 feat(ui-flow): composer focus after archive fetch (Phase 603)
Emit composer-focus-channel after fetch-audit-export-archive
when in guild mode with an active channel.

Co-authored-by: Cursor <[email protected]>
2026-05-24 17:53:14 -04:00
Raven ScottandCursor 130fde0315 feat(ui-flow): composer focus after audit filter and schedule IPC
Emit composer-focus-channel after set-audit-log-export-filter and
set-audit-export-schedule in guild mode for Phase 602 audit hub depth.

Co-authored-by: Cursor <[email protected]>
2026-05-24 17:43:13 -04:00
Raven ScottandCursor 21d849668b feat(ui-flow): composer focus after settings IPC updates
Phase 598 parity — autofocus message composer after update-user-prefs
and update-guild-settings when a guild text channel is active.

Co-authored-by: Cursor <[email protected]>
2026-05-24 17:22:39 -04:00
Raven ScottandCursor 43d554d7c4 feat(ui-flow): composer focus after select-guild IPC
Phase 597 parity — autofocus message composer when switching guilds
and a text channel is selected, matching join-invite behavior.

Co-authored-by: Cursor <[email protected]>
2026-05-24 17:18:13 -04:00
Raven ScottandCursor 780f873aa7 feat(ui-flow): composer focus after create-guild IPC
Phase 596 parity — autofocus message composer when a new guild's default
text channel is selected, matching join-invite behavior.

Co-authored-by: Cursor <[email protected]>
2026-05-24 17:13:39 -04:00
Raven ScottandCursor c0fd2b9a0f feat(ui-flow): composer focus after pin/unpin (Phase 587)
Emit composer-focus-channel after pin-message and unpin-message IPC in
guild mode so composer autofocus matches search/reaction hub behavior.

Co-authored-by: Cursor <[email protected]>
2026-05-24 16:26:23 -04:00
Raven ScottandCursor b25d13bd40 feat(ui-flow): composer focus after digest export schedule (v0.8.537)
Request composer-focus-channel after set-digest-export-schedule so
compliance schedule saves return focus to the message composer.

Co-authored-by: Cursor <[email protected]>
2026-05-24 15:37:50 -04:00
Raven ScottandCursor 65886d9634 feat(ui-flow): composer focus after cleared search (v0.8.516)
Emit composer-focus-channel when update-search clears the query in guild mode.

Co-authored-by: Cursor <[email protected]>
2026-05-24 14:00:01 -04:00
Raven ScottandCursor 7a28cca81d feat(ui-flow): composer focus after scheduled audit export (v0.8.515)
Emit composer-focus-channel after run-audit-export-now and sync-audit-export-csv
when guild mode has an active channel.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:54:06 -04:00
Raven ScottandCursor 73d315b745 feat(ui-flow): composer focus after delete and reorder guild roles
Emit composer-focus-channel when custom roles are deleted or reordered.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:44:31 -04:00
Raven ScottandCursor 3bb63d4b82 feat(ui-flow): composer focus after rename-channel and create-category
Restore composer focus when guild channel list changes complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:39:04 -04:00
Raven ScottandCursor 970f8e8fc8 feat(ui-flow): composer focus after create-invite
Emit composer-focus-channel when guild invite is created and a channel is active.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:33:59 -04:00
Raven ScottandCursor fb7e31ce4f feat(ui-flow): composer focus after contacts IPC (Phase 546)
Restore message composer focus after send-friend-request,
decline-friend-request, block-contact, and unblock-contact.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:24:49 -04:00
Raven ScottandCursor 39cf119c85 feat(ui-flow): composer focus after discovery IPC (Phase 545)
Restore message composer focus after set-discovery-listing,
update-discovery-filter, and set-discovery-tags handlers.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:20:21 -04:00
Raven ScottandCursor a0f80b52f5 feat(ui-flow): composer focus after set-activity-image (Phase 544)
Restore message composer focus after activity image upload IPC.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:15:11 -04:00
Raven ScottandCursor 4f0eac806a feat(ui-flow): composer focus after guild sound IPC (Phase 543)
Restore message composer focus after upsert-guild-sound and
remove-guild-sound handlers complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:10:06 -04:00
Raven ScottandCursor 87d18f9fb5 feat(ui-flow): composer focus after guild sticker IPC (Phase 542)
Restore message composer focus after upsert-guild-sticker and
remove-guild-sticker handlers complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 13:02:10 -04:00
Raven ScottandCursor 412cc17c5f feat(ui-flow): composer focus after guild emoji IPC (Phase 541)
Restore message composer focus after upsert-guild-emoji and
remove-guild-emoji handlers complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:54:44 -04:00
Raven ScottandCursor 42c65609bd feat(ui-flow): composer focus after automation hook IPC (Phase 540)
Restore message composer focus in guild mode after upsert, delete, export,
and import automation handlers complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:46:20 -04:00
Raven ScottandCursor 440d83d351 feat(ui-flow): composer focus after bot install IPC (Phase 539)
Restore message composer focus in guild mode after create-bot-install-token
and install-bot-token handlers complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:40:21 -04:00
Raven ScottandCursor 924ef58bb1 feat(ui-flow): composer focus after slash register/delete (Phase 538)
Restore message composer focus in guild mode after register-slash-commands
and delete-slash-command IPC completes.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:35:33 -04:00
Raven ScottandCursor 857c0efa2b feat(ui-flow): composer focus after webhook IPC (Phase 537)
Restore message composer focus in guild mode after create, delete, and
execute channel webhook handlers complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:31:02 -04:00
Raven ScottandCursor 968de2c71f feat(ui-flow): composer focus after audit export (Phase 536)
Restore message composer focus in guild mode after export-audit-log IPC
completes, matching moderation and roles depth patterns.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:26:27 -04:00
Raven ScottandCursor 510e096c33 feat(ui-flow): composer focus after ban/kick/timeout IPC (Phase 535)
Emit composer-focus-channel when guild mode retains activeChannelId after
member moderation actions complete.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:21:04 -04:00
Raven ScottandCursor bab50aef13 feat(ui-flow): composer focus after role and overwrite IPC (Phase 534)
Emit composer-focus-channel when guild mode retains activeChannelId after
create/update custom role or channel permission overwrite changes.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:14:28 -04:00
Raven ScottandCursor 8c5927a8c0 feat(ui-flow): composer focus after delete/reorder channel (Phase 533)
Emit composer-focus-channel when guild mode retains an active channel after
delete-channel or reorder-channels IPC.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:09:15 -04:00
Raven ScottandCursor beaca656c0 feat(ui-flow): composer focus after join-invite in guild mode (Phase 532)
Emit composer-focus-channel when join-invite succeeds with activeChannelId.

Co-authored-by: Cursor <[email protected]>
2026-05-24 12:04:12 -04:00
Raven ScottandCursor 2fd7a8a0a9 feat(contacts): composer focus after accept-friend-request
Phase 530 restores composer autofocus when in DM or guild channel.

Co-authored-by: Cursor <[email protected]>
2026-05-24 11:52:47 -04:00
Raven ScottandCursor e3debf2855 feat(soundboard): composer focus after play-soundboard IPC
Phase 527 restores text channel composer autofocus when a soundboard clip plays in guild mode.

Co-authored-by: Cursor <[email protected]>
2026-05-24 11:32:05 -04:00
Raven ScottandCursor be5e10262b feat(screen): composer focus after start and stop screen share IPC
Phase 526 restores text channel composer autofocus when screen sharing state changes.

Co-authored-by: Cursor <[email protected]>
2026-05-24 11:27:20 -04:00
Raven ScottandCursor 46f5ce0e00 feat(stage): stage IPC handlers and composer focus
Phase 525 adds approve-stage-speaker and demote-stage-speaker handlers plus composer-focus-channel after join, request, and approve.

Co-authored-by: Cursor <[email protected]>
2026-05-24 11:22:34 -04:00
Raven ScottandCursor 7fdb7e1aff feat(voice): composer focus after join and leave voice IPC
Phase 524 restores text channel composer autofocus when voice state changes, matching messaging and reaction handlers.

Co-authored-by: Cursor <[email protected]>
2026-05-24 11:16:43 -04:00
Raven ScottandCursor 8e2cc7e85f feat(attachments): composer focus after stage-attachment (Phase 522)
Emit composer-focus-channel when stage-attachment completes in guild
mode so file uploads restore composer autofocus like Discord.

Co-authored-by: Cursor <[email protected]>
2026-05-24 11:03:22 -04:00
Raven ScottandCursor 0136cb26bb feat(reactions): composer focus after toggle-reaction (Phase 521)
Emit composer-focus-channel when toggle-reaction completes in guild
mode so reaction toggles restore composer autofocus like Discord.

Co-authored-by: Cursor <[email protected]>
2026-05-24 10:57:11 -04:00
Raven ScottandCursor 61e66441b7 feat(messaging): composer focus after send/edit/delete (Phase 520)
Emit composer-focus-channel when messaging IPC completes in guild
mode so composer autofocus matches Discord after send and edits.

Co-authored-by: Cursor <[email protected]>
2026-05-24 10:52:32 -04:00
Raven ScottandCursor 5065e53254 feat(search): composer focus after jump-to-message (Phase 519)
Emit composer-focus-channel when jump-to-message resolves in guild
mode so search and pin jumps restore composer autofocus like Discord.

Co-authored-by: Cursor <[email protected]>
2026-05-24 10:47:14 -04:00
Raven ScottandCursor 7bc352b455 feat(presence): autofocus composer after set-presence and activity IPC
Emit composer-focus-channel when presence or activity changes in a guild
with an active channel selected.

Co-authored-by: Cursor <[email protected]>
2026-05-24 10:38:04 -04:00
Raven ScottandCursor 2661892ce0 feat(discovery): autofocus composer after joining from Explore
Emit composer-focus-channel when join-public-discovery selects a channel
so the message composer receives focus after an explore listing join.

Co-authored-by: Cursor <[email protected]>
2026-05-24 10:32:44 -04:00
Raven ScottandCursor 7736f43ea9 feat(ui-flow): emit bot-installed and slash-invoked UI events
After install-bot-token and slash send-message, notify the Pear UI with
structured sidecar messages for confirmation toasts and composer autofocus.

Co-authored-by: Cursor <[email protected]>
2026-05-24 04:22:50 -04:00
Raven ScottandCursor c9ba4a10f2 feat(server-folders): support mergeGuildId on folder create IPC
When two guilds are merged via drag, assign both servers to the newly created folder in one create-server-folder handler pass.

Co-authored-by: Cursor <[email protected]>
2026-05-24 04:03:41 -04:00
Raven ScottandCursor ed74ee17cd feat(channels): delete-channel IPC handler (v0.8.421)
Co-authored-by: Cursor <[email protected]>
2026-05-24 01:04:46 -04:00
Raven ScottandCursor c995bde7a1 feat(channels): select channel and composer focus after create-channel (v0.8.420)
Co-authored-by: Cursor <[email protected]>
2026-05-24 00:53:15 -04:00
Raven ScottandCursor ba00355178 Emit composer-focus and contact toasts for DM and friends (Phase 452).
DM and group-DM opens now request composer autofocus, and friend/block actions surface success toasts for clearer P2P contacts UX.

Co-authored-by: Cursor <[email protected]>
2026-05-24 00:04:46 -04:00
Raven ScottandCursor 159e584853 feat(ui-flow): composer focus after notif actions (Phase 444)
Route mark-notification-read through platform.markNotificationRead.
Send composer-focus-channel after mark-all and open-notification.

Co-authored-by: Cursor <[email protected]>
2026-05-23 19:59:54 -04:00
Raven ScottandCursor 236e7ca451 feat(ui-flow): composer focus after thread/forum create (Phase 443)
Send composer-focus-channel IPC after create-thread and create-forum-post
so the message composer autofocuses in the new thread.

Co-authored-by: Cursor <[email protected]>
2026-05-23 19:50:28 -04:00
Raven ScottandCursor 3ca86dc059 Phase 441: surface voice/stage connect permission errors to UI.
Return IPC error toasts for no-permission and listen-only join failures
on join-voice, join-voice-listen, and join-stage handlers.

Co-authored-by: Cursor <[email protected]>
2026-05-23 19:25:31 -04:00
Raven ScottandCursor 75267b90e6 Wire remove-guild-emoji and remove-guild-sticker IPC handlers.
Completes Phase 431 delete path from UI and agentctl scenarios.

Co-authored-by: Cursor <[email protected]>
2026-05-23 17:24:48 -04:00
Raven ScottandCursor faebb4a455 feat(ipc): delete-slash-command handler
Expose platform slash command deletion to the desktop UI sidecar.

Co-authored-by: Cursor <[email protected]>
2026-05-23 17:05:17 -04:00
Raven ScottandCursor 2fba8129c8 feat(ipc): channel webhook create, delete, and execute handlers
Expose platform webhook APIs to the desktop UI sidecar.

Co-authored-by: Cursor <[email protected]>
2026-05-23 16:53:31 -04:00
Raven ScottandCursor 759e8eb330 Log typing.ipc with channelId before signalTyping (Phase 389).
Emit debug metadata on typing-start IPC so diagnostics correlate typing
gossip with the active channel.

Co-authored-by: Cursor <[email protected]>
2026-05-23 13:46:40 -04:00
Raven ScottandCursor de6a49b7ab Accept legacy typing IPC as alias for typing-start.
Stops unhandled ipc warnings when the UI or older clients send type typing.

Co-authored-by: Cursor <[email protected]>
2026-05-23 13:10:11 -04:00
Raven ScottandCursor 9d344ca130 Always push UI state after leave-voice IPC.
Ensures voice chrome clears even when platform leave is a noop.

Co-authored-by: Cursor <[email protected]>
2026-05-23 13:02:46 -04:00
Raven ScottandCursor a79cf8f504 feat(ui-flow): mark-channel-read emits threadChannelId for desktop dismiss
Thread mark-read cleared events include threadChannelId so the desktop UI
can dismiss thread-family notifications alongside parent channel batch.

Co-authored-by: Cursor <[email protected]>
2026-05-23 09:54:47 -04:00
Raven ScottandCursor bb662dddf1 feat(ui-flow): mark-notification-read includes notificationChannelId
Emits parent channelId for batch dismiss and notificationChannelId for
thread-family desktop clearing on thread notifications.

Co-authored-by: Cursor <[email protected]>
2026-05-23 09:45:49 -04:00
Raven ScottandCursor aaf8776229 feat(ui-flow): emit mark-channel-read-cleared for desktop unread dismiss
Resolves parent channel id for threads before notifying desktop UI.

Co-authored-by: Cursor <[email protected]>
2026-05-23 09:36:40 -04:00
Raven ScottandCursor 85bc63ddbe docs(ui-flow): document mark-all and mark-read cleared IPC events
Co-authored-by: Cursor <[email protected]>
2026-05-23 09:32:20 -04:00
Raven ScottandCursor b2e3fca2d5 feat(ui-flow): emit mark-all-notifications-read-cleared after mark all
Lets desktop dismiss parent-channel unread desktop notification tags when
mark-all-notifications-read completes from any IPC client.

Co-authored-by: Cursor <[email protected]>
2026-05-23 09:32:10 -04:00
Raven ScottandCursor 5084311160 feat(ui-flow): emit mark-notification-read-cleared for desktop unread dismiss
After markRead, push mark-notification-read-cleared with guild and channel ids
so desktop can dismiss channel unread desktop notifications.

Co-authored-by: Cursor <[email protected]>
2026-05-23 09:27:25 -04:00
Raven ScottandCursor 20dfeb5156 feat(v0.8.281): emit open-notification-opened for desktop dismiss
After openNotificationTarget, notify UI so desktop can clear channel
unread desktop notification batch.

Co-authored-by: Cursor <[email protected]>
2026-05-23 09:18:58 -04:00
Raven ScottandCursor cd32dbb82a Pass guildId and meta through settings deep link and diagnostics export IPC.
format-settings-deep-link includes guildId in URL; export-diagnostics-jsonl forwards meta to platform writer.

Co-authored-by: Cursor <[email protected]>
2026-05-23 06:45:53 -04:00
Raven ScottandCursor 063f4f3c89 Log leave-voice noop and add format-settings-deep-link IPC.
Skip pushState when leaveVoiceChannel returns null; format settings URLs for the desktop copy-link flow.

Co-authored-by: Cursor <[email protected]>
2026-05-23 06:33:50 -04:00
Raven ScottandCursor 1735572f73 Handle export-diagnostics-jsonl IPC from the diagnostics panel.
Forwards filtered JSONL lines to the platform writer and replies with the saved file path for UI toasts.

Co-authored-by: Cursor <[email protected]>
2026-05-23 06:22:22 -04:00
Raven ScottandCursor c27ecfa440 fix(ui-flow): reset display-capture trace on stop-screen-share
Mirror leave-voice behavior so display frame counters clear when screen
share stops, keeping voice-capture trace diagnostics accurate.

Co-authored-by: Cursor <[email protected]>
2026-05-23 05:32:26 -04:00
Raven ScottandCursor 82fb4a090c feat(ui-flow): voice trace bytes/sec window and reset on leave-voice
Track rolling bytesPerSec in voice-capture trace logs and reset capture
counters when the user leaves voice.

Co-authored-by: Cursor <[email protected]>
2026-05-23 05:22:13 -04:00
Raven ScottandCursor c01d59a381 feat(ui-flow): voice/display trace bytes and request-stage-speak IPC
Aggregate voice-capture bytes and display-capture frame counts at trace
when PEARCORD_LOG_VOICE_CAPTURE_TRACE=1, and surface request-stage-speak
capacity errors to the UI like join-stage.

Co-authored-by: Cursor <[email protected]>
2026-05-23 05:13:16 -04:00
Raven ScottandCursor eba2d713d3 fix(ui-flow): join-stage capacity errors and voice capture trace (v0.8.248)
Handle join-stage like join-voice for full channels, forward no-viewable guild
warnings to diagnostics, and sample voice-capture chunks at trace when enabled.

Co-authored-by: Cursor <[email protected]>
2026-05-23 04:50:05 -04:00
Raven ScottandCursor 3d1d44d0a2 fix: surface voice channel full errors for join-voice-listen IPC
Return UI error toast instead of ipc dispatch failed when voice
channel is at capacity for listen-only joins.

Co-authored-by: Cursor <[email protected]>
2026-05-23 04:43:08 -04:00
Raven ScottandCursor 012f4f656c fix: noop set-voice-mute when not in voice; emoji miss debug log
Avoid ipc dispatch failed errors after disconnect races and forward
emoji-image-miss as a debug log record for the diagnostics panel.

Co-authored-by: Cursor <[email protected]>
2026-05-23 04:31:19 -04:00
Raven ScottandCursor f4d580743d fix(ipc): emoji-image-miss instead of throwing on missing attachment
Co-authored-by: Cursor <[email protected]>
2026-05-23 04:23:17 -04:00
Raven ScottandCursor 1aec691a24 chore(log): trace-level compose draft IPC logging
Co-authored-by: Cursor <[email protected]>
2026-05-23 04:15:26 -04:00
Raven ScottandCursor c0ce2502fd fix(ipc): set-compose-draft no longer pushes full UI state
Co-authored-by: Cursor <[email protected]>
2026-05-23 04:10:25 -04:00
Raven ScottandCursor 9990f85624 feat(log): ui-flow guild select and IPC warn logging
Depend on pearcord-log; log select-guild and unhandled IPC via hooks.log.

Co-authored-by: Cursor <[email protected]>
2026-05-23 04:02:54 -04:00
Raven ScottandCursor 42fda37fe6 feat(ipc): add refresh-notifications handler for empty inbox UI
Re-push view state when the notifications modal Refresh control is used.

Co-authored-by: Cursor <[email protected]>
2026-05-23 03:30:28 -04:00
Raven ScottandCursor ac8083216e feat(ui-flow): forward nsfwGateEnabled on update-guild-settings (v0.8.174)
Wire guild settings IPC to platform.updateGuildSettings so the desktop UI can
toggle the server-wide NSFW acknowledgement gate.

Co-authored-by: Cursor <[email protected]>
2026-05-22 22:48:41 -04:00
Raven ScottandCursor 62fecd0589 Wire set-channel-nsfw IPC handler
Route NSFW toggle from channel context menu to platform.

Co-authored-by: Cursor <[email protected]>
2026-05-22 22:35:54 -04:00
Raven ScottandCursor c0e2347470 Wire set-channel-user-limit IPC handler
Route voice/stage user limit updates from desktop UI to platform.

Co-authored-by: Cursor <[email protected]>
2026-05-22 22:25:39 -04:00
Raven ScottandCursor 6f75eaaa11 Wire rename-channel IPC and role hoist updates
Handle rename-channel and pass hoist flag through update-guild-custom-role.

Co-authored-by: Cursor <[email protected]>
2026-05-22 22:17:45 -04:00
Raven ScottandCursor 2a16746f71 feat(ui-flow): move-channel-to-parent IPC handler (v0.8.168)
Wire category drag-drop moves from the desktop UI to the platform.

Co-authored-by: Cursor <[email protected]>
2026-05-22 21:55:31 -04:00
Raven ScottandCursor 512f62cda8 feat(ui-flow): IPC handler for set-channel-mute-duration
Co-authored-by: Cursor <[email protected]>
2026-05-22 21:45:07 -04:00
Raven ScottandCursor abd9b9446f feat(ui-flow): IPC handler for reorder-guild-custom-roles
Wire settings drag-reorder to platform.reorderGuildCustomRoles.

Co-authored-by: Cursor <[email protected]>
2026-05-22 21:38:01 -04:00
Raven ScottandCursor 64aa0a9932 feat(ui-flow): handle set-channel-notification-level IPC
Route channel notification level changes from the desktop UI to the
platform layer.

Co-authored-by: Cursor <[email protected]>
2026-05-22 21:20:31 -04:00
Raven ScottandCursor e207b0e97b feat(ui-flow): mark-channel-read IPC and attachment uploadLocalId echo
Support channel mark-read from context menus and pass through upload
local ids on attachment-staged for composer progress UI.

Co-authored-by: Cursor <[email protected]>
2026-05-22 21:14:38 -04:00
Raven ScottandCursor d9ba232b7d feat(ui-flow): handle reorder-categories IPC
Route category drag-reorder from the desktop UI to the platform layer.

Co-authored-by: Cursor <[email protected]>
2026-05-22 21:08:24 -04:00
Raven ScottandCursor 6ef43b0893 feat(ui-flow): handle reorder-channels IPC from desktop UI
Route sidebar drag-reorder to platform.reorderChannelsInParent and
refresh view state after sibling positions update.

Co-authored-by: Cursor <[email protected]>
2026-05-22 21:03:28 -04:00