zulip / zulip-flutter

Future Zulip client using Flutter
Apache License 2.0
159 stars 134 forks source link

Support adding an arbitrary reaction #388

Open gnprice opened 10 months ago

gnprice commented 10 months ago

Currently we offer the ability to add a thumbs-up from the message action sheet, and to tap on an existing reaction to join in or to remove it. This issue is to add the ability to choose an arbitrary reaction to add.

This feature will appear in the message action sheet. The six "popular" emoji, including :+1:, will appear there directly, with an option to go to a full-screen bottom sheet with the list of all emoji. Here's the Figma design from @terpimost: https://www.figma.com/design/1JTNtYo9memgW7vV6d0ygq/Zulip-Mobile?node-id=2854-27692&m=dev

Key screenshots here (but see Figma for details): image image

Two points of difference from that version of the design:

Prerequisite issues

Previous discussion of design

The zulip-mobile RN app has this functionality but the UI is kind of clumsy. With Flutter we have a lot more control to make the UI work however we like. So this is an opportunity to reimagine this UI to be much nicer. /cc @alya @terpimost

Some previous threads with ideas for improving this UI in the context of the zulip-mobile RN app:

I think all three of those are good ideas, all together or in any combination, or we can go in another direction if we think it'd be good. For the third one (a button next to existing reactions) we can borrow the design from web, but the other two don't correspond to anything in web and so we'd need fresh designs for them.

chrisbobbe commented 8 months ago

A user reports in CZO that zulip-mobile's choice of putting :heart:, :love:, and :love_you: at the top of the emoji picker doesn't make sense for a work context: "I’m always a bit scared I’ll tap by mistake on the love-you emoji […]" Which makes sense; I've had a similar feeling myself! 😅

chrisbobbe commented 7 months ago

We've had another report by email, of wanting a less clumsy add-reaction UI than we currently have in zulip-mobile. They mention (if I understand correctly) having some frequently-used emoji directly in the message-long-press sheet, as discussed here.

They also had another interesting idea:

If I can configure a swipe left action to be a certain emoji I would love that I think