Skip to content

Change cross-cutting hooks to shared modules and fix menu, thread and sheet regressions - #1367

Merged
eleboucher merged 2 commits into
devfrom
refactor/menu-and-thread-fixes
Jul 26, 2026
Merged

Change cross-cutting hooks to shared modules and fix menu, thread and sheet regressions#1367
eleboucher merged 2 commits into
devfrom
refactor/menu-and-thread-fixes

Conversation

@eleboucher

@eleboucher eleboucher commented Jul 25, 2026

Copy link
Copy Markdown
Member

Description

Adds a generalized useMatrixEvent hook, useAsyncAction/AsyncButton, a shared RoomMenu/useRoomMenuActions, and splits utils/room.ts into unread, relations, hierarchy and display modules with no barrel. Folds ThreadDrawer onto useTimelineActions and the shared renderer context, and moves the call feature into features/call/.

Also fixes regressions found while reviewing the stack: right-click menus not opening or not anchoring at the cursor, long-press opening the desktop popout instead of the mobile sheet, swipe-to-dismiss shrinking to the drag handle, bottom sheets losing their sheet styling and role="dialog", thread reactions double-reacting instead of redacting, the thread root being unrepliable, and the DM invite prompt never rendering.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings

AI disclosure:

  • Partially AI assisted (clarify which code was AI assisted and briefly explain what it does).
  • Fully AI generated (explain what all the generated code does in moderate detail).

@eleboucher
eleboucher requested review from 7w1 and hazre as code owners July 25, 2026 22:10
@7w1
7w1 force-pushed the refactor/remove-unused-exports branch 3 times, most recently from b4ccba5 to 7e5ba5d Compare July 26, 2026 02:07
@eleboucher
eleboucher changed the base branch from refactor/remove-unused-exports to dev July 26, 2026 04:54
@eleboucher
eleboucher force-pushed the refactor/menu-and-thread-fixes branch 3 times, most recently from 7631ba0 to bafc945 Compare July 26, 2026 07:24
@eleboucher
eleboucher enabled auto-merge July 26, 2026 07:24
@eleboucher
eleboucher force-pushed the refactor/menu-and-thread-fixes branch from bafc945 to c2d7d00 Compare July 26, 2026 07:41
@eleboucher
eleboucher force-pushed the refactor/menu-and-thread-fixes branch from 880988b to 228494c Compare July 26, 2026 14:52
@github-actions

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

Status Preview URL Commit Alias Updated (UTC)
✅ Deployment successful! https://pr-1367-sable.raspy-dream-bb1d.workers.dev 228494c pr-1367 Sun, 26 Jul 2026 14:53:54 GMT

@hazre hazre left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Massive diff but it seems sane to me just looking at the code, I've yet to test it. My only concern is the Timeline and RoomView stuff and making sure there is no regressions from these changes, I'm not familiar with the code there since @7w1 has changed it a lot since last time I looked at it.

@hazre

hazre commented Jul 26, 2026

Copy link
Copy Markdown
Member

Long holding a room on mobile in the RoomView just causes it to flash for a second and nothing happens. Is that a regression?

@7w1

7w1 commented Jul 26, 2026

Copy link
Copy Markdown
Member

Long holding a room on mobile in the RoomView just causes it to flash for a second and nothing happens. Is that a regression?

Seems like there's something weird going on if you let go too quickly, but I'm only using chromes emulator since holding rooms never worked on iOS anyway. Don't know if its a regression

@eleboucher
eleboucher added this pull request to the merge queue Jul 26, 2026
Merged via the queue into dev with commit 22784d5 Jul 26, 2026
12 of 13 checks passed
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.

3 participants