Skip to content

RecentDmConversationsPage: Breaks with nonzero horizontal device insets #339

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

Closed
chrisbobbe opened this issue Oct 26, 2023 · 8 comments · Fixed by #413
Closed

RecentDmConversationsPage: Breaks with nonzero horizontal device insets #339

chrisbobbe opened this issue Oct 26, 2023 · 8 comments · Fixed by #413
Labels
a-design Visual and UX design

Comments

@chrisbobbe
Copy link
Collaborator

chrisbobbe commented Oct 26, 2023

Such as on an iPhone 15 Pro in landscape mode. Seen here in a simulator, with the not-yet-merged unread counts from #334. I'm long-pressing to show how the row responds:

image image
@chrisbobbe chrisbobbe added the a-design Visual and UX design label Oct 26, 2023
@chrisbobbe
Copy link
Collaborator Author

chrisbobbe commented Oct 26, 2023

Labeling "a-design" because I'm not sure how best to handle device insets for screen content like this.

cc @alya @terpimost

I see basically two approaches to solve this. (In these screenshots I'm also long-pressing a row, and it still shows the not-yet-merged unread counts from #334.)

  1. Have each row extend out to the edge of the screen and pad the insets; something like this:
image image
  1. Add a container around the whole list and have it pad the insets; something like this:
image image

@chrisbobbe
Copy link
Collaborator Author

chrisbobbe commented Oct 26, 2023

A note about the screenshots in my previous message. On the side opposite the iPhone's black oval (for the camera), there's maybe more space than seems necessary: it looks like we reserve approximately the width needed for another camera notch, even though there isn't one on that side. But that's just what happens when we faithfully follow the measurements iOS gives us for the horizontal insets, and you'll commonly see a similar effect in other apps.

@gnprice
Copy link
Member

gnprice commented Oct 26, 2023

Good question. My inclination would be for option 2. Is there another app or two where you can conveniently provoke the same situation and see how they handle it?

@chrisbobbe
Copy link
Collaborator Author

Gmail on iPhone is mixed; here are some screenshots. Unfortunately you'll have to imagine my phone's rounded corners and the camera notch, which don't show up in its take-a-screenshot feature. This is on my iPhone 13 Pro.

They do option 1:

7101056F-1679-4E9B-8DF9-3AF822FCC879

They do option 2:

ABFEF08A-83EC-4DA5-A100-08FE649EABC1_1_201_a

And they do a better (I think) version of option 2 where the area covered by the ink effect is also visible when you're not pressing a row, as a nice surface with rounded corners:

588C3091-E1C5-4E6B-AB4D-1B03C9BE3802

@chrisbobbe
Copy link
Collaborator Author

Wikipedia on iPhone—in lists like these—seems to prefer option 1 consistently. It has some bugs where some content fails to position outside the insets:

46B3C3D0-A9C5-48AF-BE3D-D0F9406273C8

68D29104-AFCA-4466-89D0-A39B41B68085

(see "Add another language", and the line under it, are outside the safe area)

@gnprice
Copy link
Member

gnprice commented Oct 30, 2023

Cool, thanks. I guess those are inconclusive, then, and I'd still incline toward option 2 pending input from @terpimost.

version of option 2 where the area covered by the ink effect is also visible when you're not pressing a row, as a nice surface with rounded corners:

I think this works well in that settings screen, where there's several sections and they each have a heading above them. On this screen, though, I think the rounded effect would look odd at the top and bottom of the list.

@terpimost
Copy link

In my design buttons have rounding corners, and there is always a gap between edge of a screen, so in cases when you have safe area it shouldn't be a problem... I do suggest to don't support landscape mode.

I don't assume we have material UI components and their tap animations... I suggest to not bring it to iOS version at least.
I think it is ok to darken the hit area or a button on tap. We can also scale down the button a bit as a default option. It is also ok to not bother for the smaller elements which user might not even see under the finger.

@gnprice
Copy link
Member

gnprice commented Nov 27, 2023

I don't assume we have material UI components and their tap animations... I suggest to not bring it to iOS version at least.

Cool, I've filed #417 for that. I've milestoned it for Beta 3, i.e. for the first beta that goes to a wider audience beyond chat.zulip.org.

I do suggest to don't support landscape mode.

(This now has a chat thread, following discussion on the PR #413.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a-design Visual and UX design
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants