-
Notifications
You must be signed in to change notification settings - Fork 741
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added lab feature to pin/unpin messages #7762
base: develop
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot for your Pull Request!
I have made a bunch of first remarks.
matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/Event.kt
Outdated
Show resolved
Hide resolved
matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/Event.kt
Outdated
Show resolved
Hide resolved
...ava/org/matrix/android/sdk/api/session/room/model/pinnedmessages/PinnedEventsStateContent.kt
Outdated
Show resolved
Hide resolved
matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/state/StateService.kt
Outdated
Show resolved
Hide resolved
matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/state/StateService.kt
Outdated
Show resolved
Hide resolved
...rc/main/java/im/vector/app/features/home/room/detail/timeline/format/NoticeEventFormatter.kt
Outdated
Show resolved
Hide resolved
...rc/main/java/im/vector/app/features/home/room/detail/timeline/format/NoticeEventFormatter.kt
Outdated
Show resolved
Hide resolved
...rc/main/java/im/vector/app/features/home/room/detail/timeline/format/NoticeEventFormatter.kt
Outdated
Show resolved
Hide resolved
vector/src/main/java/im/vector/app/features/home/room/pinnedmessages/PinnedMessagesActivity.kt
Outdated
Show resolved
Hide resolved
...java/im/vector/app/features/home/room/pinnedmessages/arguments/PinnedMessagesTimelineArgs.kt
Outdated
Show resolved
Hide resolved
@bmarty thanks for your review! I edited the things you marked and also did some additional refactoring (renamed files and variables to have more consistency). |
In case that someone wants to know where the icons which are used in this PR come from : They are from Microsoft's Fluent Icons. |
Waiting for this to be merged, it's a very useful feature. Right now I have to explore the room data and copy out the pin IDs, then check them one by one. It isnt very convenient at all |
I'd also vote for removing the |
@bmarty any updates? |
nice feature here! Does it need more changes before merging it @bmarty ? |
BTW: In Element X for Android this feature is already included and since today enabled as default: https://github.com/element-hq/element-x-android/releases/tag/v0.6.0. |
I'd rather not use element X, can you update this PR with the necessary changes and get it merged? |
I implemented all requested changes already and don't know if there is anything from my side that has to be done for a merge. |
It says reviews are pending with changes requested, @bmarty any updates on this? I really like this client and want to continue using it for the forseeable future |
|
Type of change
Content
This PR adds a new feature so users can (un)pin messages and open a timeline where only the pinned messages are visible. The feature can be found and activated in the "Labs" settings.
Details of this feature:
Little background:
Currently, if pinned messages are missing the client will load chunks of older messages like it does in the "normal" timeline until all pinned messages are available. This is not very efficient but it works for now.
Motivation and context
Solves #5933 and #357
Screenshots / GIFs
Here you can see the context menu which includes a button to pin a message. When a message is pinned already a button to do the opposite will be shown.
When there are pinned messages available a button to open a timeline with these messages appears at the top right corner.
Tests
Tested devices
Checklist
Signed-off-by: Christoph Klassen [email protected]