element-hq / element-hq/element-x-android

Telegram style message selection

Open
#6,737 0 comments 0 reactions 0 assignees View on GitHub
T-Enhancement
Dominant language
Kotlin
Stars
2.4k
Forks
624
Avg merge
1d 14h
Merged PRs (30d)
149

Description

### Your use case

#### What would you like to do?

I want to be able to easily select many messages with a long press.

#### Why would you like to do it?

To easily copy-paste or forward multiple messages without the selection flow interrupting the conversation view or requiring many extra taps.

#### How would you like to achieve it?

Long-pressing a message should immediately begin selection mode and create tickboxes. You should then be able to:

* tap additional messages to toggle selection
* swipe up/down to quickly select many messages
* continue scrolling normally while selecting

Actions like copy, forward, and delete should appear in the top bar.

The important part is keeping the UI visually stable and lightweight while selecting, instead of switching into a heavy modal workflow.

### Have you considered any alternatives?

The current approach works functionally, but feels slower and more disruptive for selecting many or non-adjacent messages. Checkbox-heavy or modal approaches used by many apps also tend to break conversational context.

### Additional context

I recommend looking at and copying Telegram’s UX for this. Its selection flow feels extremely natural because:

* selection is message-centric
* scrolling continues normally
* the layout barely changes
* multi-select remains fast even across long histories

It preserves spatial continuity and minimizes mode-switching, which makes bulk actions much more comfortable to use.

### Are you willing to provide a PR?

No

Contributor guide

Open the contributing guide

Research direction

Start by locating the existing Android message-selection flow and compare it with the Telegram behavior described in the issue. Done means long-press selection preserves the conversation view, supports toggling messages, scrolling, and swipe selection, with copy, forward, and delete available in the top bar.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.