Feat better mobile context menu#946
Merged
Merged
Conversation
Signed-off-by: Shea <nu@she-a.eu>
Signed-off-by: Shea <nu@she-a.eu>
Signed-off-by: Shea <nu@she-a.eu>
…text-menu Merge upsream
…tion Signed-off-by: Shea <nu@she-a.eu>
Signed-off-by: Shea <nu@she-a.eu>
…text-menu merge upsream again
Signed-off-by: Shea <nu@she-a.eu>
0118e08 to
b3a9ed6
Compare
Signed-off-by: Shea <nu@she-a.eu>
b3a9ed6 to
3c00726
Compare
Signed-off-by: Shea <nu@she-a.eu>
84b307e to
2508a73
Compare
Signed-off-by: Shea <nu@she-a.eu>
Signed-off-by: Shea <nu@she-a.eu>
ab8be86 to
1fd626c
Compare
7w1
approved these changes
Jun 23, 2026
Signed-off-by: Shea <nu@she-a.eu>
Signed-off-by: Shea <nu@she-a.eu>
d5ab781 to
9c01b79
Compare
Contributor
Deploying with
|
| Status | Preview URL | Commit | Alias | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! | https://pr-946-sable.raspy-dream-bb1d.workers.dev | 9c01b79 | pr-946 |
Tue, 23 Jun 2026 22:04:01 GMT |
This was referenced Jun 28, 2026
Just-Insane
added a commit
to CloudHub-Social/Charm-1.0
that referenced
this pull request
Jul 2, 2026
MessageTextBody's jumboEmoji variants lost their paddingTop/paddingBottom
(0.08em) and --sable-{system,custom}-emoji-top-offset CSS vars in
ade0bcb (SableClient#946, "Feat better mobile context menu"), an external feature
PR that branched from an older base and silently reverted an unrelated
spacing-cascade fix. The immediate follow-up (435d65c) restored the
ContentSpacingVar/withVarFallback mechanism on MessageBase but missed
that MessageTextBody's own jumbo-emoji padding was also dropped, since
the two live in the same recipe file but are logically separate concerns.
This is a real production bug, not a test-fixture artifact: two
jumbo-emoji-only messages from the same sender rendered back-to-back
(verified live via the emoji-qa smoke fixture, which wraps
MessageTextBody in MessageBase exactly as Message.tsx does) show zero
gap between their line boxes beyond the fixed 4px Box gap, because
MessageBase's row padding only applies at the row's outer edges, not
between sibling MessageTextBody lines within one row.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
charm-cloudhub-social Bot
pushed a commit
to CloudHub-Social/Charm-1.0
that referenced
this pull request
Jul 9, 2026
> [!IMPORTANT] > Merging this PR will create a new release. ## Features * Added a GIF search functionality ([SableClient#970](<SableClient#970>) by @7w1, @nikiwastaken) * Change unverified device flow. ([SableClient#1017](<SableClient#1017>) by @nikiwastaken, @nushea) * Change animal identity to allow arbitrary animals ([SableClient#984](<SableClient#984>) by @nushea) * Add a new Mobile Context ([SableClient#946](<SableClient#946>) by @7w1, @nushea) * Add bookmark functionality using account data ([SableClient#1000](<SableClient#1000>) by @nikiwastaken, @nushea) * Add Copy Message button to copy unformatted version. ([SableClient#1001](<SableClient#1001>) by @nushea) * Change profile handle part to a button that copies it ([SableClient#981](<SableClient#981>) by @nushea) * Add reactions to arbitrary events ([SableClient#946](<SableClient#946>) by @7w1, @nushea) * Added a gallery support as per msc4274 ([SableClient#1019](<SableClient#1019>) by @nikiwastaken, @nushea) * Add a context menu for copying and downloading images. ([SableClient#994](<SableClient#994>) by @nikiwastaken, @nushea) * Add search message keybind and combine sidebar items. ([SableClient#943](<SableClient#943>) by @nushea) * Add option for showing icons only when available and changed default to it ([SableClient#978](<SableClient#978>) by @nushea) * Add CTRL+E shortcut to editor to bring sticker menu up ([SableClient#982](<SableClient#982>) by @nushea) * Redesign the user menu tab ([SableClient#990](<SableClient#990>) by @nikiwastaken, @nushea) * Modify large parts of the mobile view of Sable! ([SableClient#1017](<SableClient#1017>) by @nikiwastaken, @nushea) * Improved sliding sync (only requests specific room state data), cleaned up and fixed most flickering issues, and added buttons in developer tools to request full state. ([SableClient#1020](<SableClient#1020>) by @7w1) ### Revamped the calling experience in Sable! ([SableClient#841](<SableClient#841>) by @7w1) - Pulled the latest Element Call updates. - Style improvements to the call widget so it uses the Sable theme and fonts. - Added support for custom ringtones and ringbacks. - Added call permissions. - Fixed various bugs around call ending, declining, and joining. ## Fixes * Allow favoriting all animated attachment types ([SableClient#1029](<SableClient#1029>) by @nikiwastaken) * Updated emojis to use stable 1.19 identifiers ([SableClient#1034](<SableClient#1034>) by @7w1) * Swap to using the stable identifier `m.recent_emoji` for recent emojis and add migration logic. ([SableClient#1009](<SableClient#1009>) by @7w1) * Add a direct link to room/space settings when the current sticker list is empty ([SableClient#1016](<SableClient#1016>) by @7w1, @ellieplayswow) * Fix leaving modal looking outsized ([SableClient#991](<SableClient#991>) by @nushea) * Fix cat status not being present on its own. ([SableClient#971](<SableClient#971>) by @nikiwastaken) * Fix encrypted thread messages not appearing until reopened. ([SableClient#975](<SableClient#975>) by @7w1) * Fix codebase issues with gadient themes ([SableClient#1007](<SableClient#1007>) by @nushea) * Fix account switcher's add account button redirecting to the wrong path when hashRouter is enabled ([SableClient#993](<SableClient#993>) by @EphemeralFog) * Fix the image viewer header not being fully visible on smaller phone screens. ([SableClient#1035](<SableClient#1035>) by @7w1) * Fix mentions not sending in non-textual replies ([SableClient#1004](<SableClient#1004>) by @nushea) * Fixed oidc device delete key being incorrect. ([SableClient#1030](<SableClient#1030>) by @7w1) * Fix crash when opening pins with stickers. ([SableClient#972](<SableClient#972>) by @7w1) * Fix pixelated image scaling not pixelating when zoomed in. ([SableClient#1033](<SableClient#1033>) by @7w1) * Fix registration not working when accessed from add account button ([SableClient#992](<SableClient#992>) by @EphemeralFog) * Reverse the order of message header elements in the right aligned bubbles layout. ([SableClient#967](<SableClient#967>) by @EphemeralFog) * Fixed outdated Firefox versions and some Safari versions not being able to send messages. ([SableClient#1010](<SableClient#1010>) by @7w1) * Fix timeline sorting order regression when "show hidden events" is enabled. ([SableClient#974](<SableClient#974>) by @7w1) * Fix ghost quickmenu ([SableClient#946](<SableClient#946>) by @7w1, @nushea) * Fix Collapsed mode showing the wrong icon ([SableClient#978](<SableClient#978>) by @nushea) * Fix poll crashing sable if interacted with different clients ([SableClient#969](<SableClient#969>) by @nushea) * Fix video player sometimes not working ([SableClient#1031](<SableClient#1031>) by @nushea) * Add support for searching users via nicknames in the autocomplete menu. ([SableClient#1028](<SableClient#1028>) by @7w1) * Update `@sableclient/twemoji-font` to fix missing Twemoji emoji coverage. ([SableClient#964](<SableClient#964>) by @7w1)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR implements a context menu for mobile, refactors the option menus, and unifies events and messages to a limited degree, it also fixes some focus issues
The pr does NOT fix quickmenu being underlayed in the thread root, or the entirety or focus issues. These issues could be fixed in the future with the help of this by creating an atom and showing the quickemenu as a unique item in the RoomView but that would still require a lot of work, it also does NOT unify the events and messages entirely or reduce the amount of data that is requested before usage, though it enables it for future development, nor does it the rightclicking outside of the MessageInternal/children but still within the message not bringing the menu
(view of the menu on a random real message)

(maximum size of a mobile menu)

(this pr does NOT remove the mobile quickmenu so you can still access the message the old way)

If you wish to select text from a message you have to first bring the menu and then select it from it
Fixes #
Type of change
Checklist:
AI disclosure:
This is being written w the assistance of whatever music is in my ears while writing it :p