Page MenuHomePhabricator

Popover: create mobile-version in Codex
Open, MediumPublic

Assigned To
Authored By
lwatson
Feb 11 2025, 9:33 PM
Referenced Files
F66056027: image.png
Sep 18 2025, 5:37 PM
F66056023: image.png
Sep 18 2025, 5:37 PM
F66056021: image.png
Sep 18 2025, 5:37 PM
F66056010: image.png
Sep 18 2025, 5:37 PM

Description

Background

This task adds a Popover mobile version in Codex. On mobile, the Popover appears as a bottom sheet.

Consider the known issue of mobile keyboards covering content on the bottom of the page that has a fixed position. One possible solution is to position the Popover to the bottom, but not fixed, to allow the keyboard to appear and change the layout by pushing the Popover upwards rather than cover the Popover. Another possibility is to use JavaScript to detect the keyboard and adjust the Popover's position.

Based on the user testing research found in T339369: Component user testing: conduct pilot testing on Fullscreen Mobile Dialogs the fixed buttons on the bottom were not found to be problematic. Users did not have trouble getting back to them after completing typing. They found the overall location more accessible.

Design drafts

General design details
  • The Popover becomes full screen on mobile.
  • Buttons are stacked by default, which is being completed in T399289: Make Dialog and Popover more responsive.
  • The padding with the Popover shifts from 16px to 24px, to match that of Dialog, and create more space for fingers holding the device.
  • The shadow and border are not needed on mobile since the Popover becomes full screen.
Default mobile Popover

image.png (584×336 px, 16 KB)

Popover fixed header and footer

When the content becomes longer than the height of the Popover, the bottom actions should become contained in a fixed container, similar to that of the current Dialog, with a border on top to separate from the text within the body of the Popover.

The same treatment should be true for the header container when the content is longer than the height of the Popover and the Popover is being scrolled, with the border being on the bottom of said container.

There should not be any shadows for these fixed containers.

image.png (584×336 px, 45 KB)

image.png (584×336 px, 44 KB)

Popover with keyboard overtop

When a keyboard appears, it should appear overtop the Popover, not moving any actions.

image.png (584×336 px, 143 KB)

Details

Related Changes in Gerrit:

Event Timeline

bmartinezcalvo renamed this task from Popover: mobile-version to Popover: create mobile-version in Codex.Sep 15 2025, 8:54 AM
bmartinezcalvo updated the task description. (Show Details)
DTorsani-WMF updated the task description. (Show Details)
DTorsani-WMF moved this task from Upcoming to Ready for Design/Dev on the Codex board.

This has overlap with T405015: Dialog: optimize mobile version in Codex, it probably makes sense to do these two tasks together. The Dialog one is probably easier than the Popover one (Dialog doesn't use floating-ui and is already modal), so I would suggest starting with the Dialog one first.

Okay I would work on that one first

Change #1234447 had a related patch set uploaded (by Daphne Smit; author: Daphne Smit):

[design/codex@main] Popover: Add bottom sheet variant for mobile devices

https://gerrit.wikimedia.org/r/1234447