Sticker widget improvements. UI/UX/widget capabilities#33022
Open
alwayshopeless wants to merge 7 commits intoelement-hq:developfrom
Open
Sticker widget improvements. UI/UX/widget capabilities#33022alwayshopeless wants to merge 7 commits intoelement-hq:developfrom
alwayshopeless wants to merge 7 commits intoelement-hq:developfrom
Conversation
Author
|
Video demo: |
Fix Widget API behavior in sidebar mode.
daa99e8 to
0051f93
Compare
Member
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.

This change updates the sticker picker so it can be attached to the right sidebar and behave more like other persistent widgets.
What changed
Validation
All features were tested in development mode. The desktop build also completes successfully.
Goal and rationale
Interaction with stickers is an important part of the client experience for new users, so improving how they are displayed and used is important.
The default widget size is too small and differs from the emoji picker, despite being intended to display larger elements.
Additionally, accessing the sticker picker through the dot-bar is inconvenient, so the sticker button has been moved to the input bar next to the emoji picker.
Another important change is the ability to pin the widget statically to the sidebar for quick access, similar to an extension.
Permissions for MSC4039 were also added to the sticker widget in addition to m.sticker. I understand these are experimental features, but they have already existed in Element for several years. Adding them is important to enable uploading custom stickers through the widget, as implemented in my project:
https://github.com/alwayshopeless/sticky-picky
By expanding the list of available permissions, integration with Element becomes nearly native, without requiring users to create a separate room extension via an administrator and pin it for the entire chat.
Additionally, these changes could help further develop the already popular sticker picker:
https://github.com/maunium/stickerpicker
which has over 800 forks.