Page MenuHomePhabricator

Make header sticky for the Explore languages option
Closed, ResolvedPublic1 Estimated Story Points

Description

As part of the work on the MinT for Wiki Readers MVP (T359072), an option to "Explore languages" (T359863) is provided so that users can identify the languages where there is more content available, and which sections are covered. In this way, they can decide which language version to pick to machine translate and learn the most relevant aspects on the topic.

The initial implementation is not supporting the following aspect from the original spec:

The elements on top (comprising the "Header" and the "Access to all languages") are sticky. Scrolling will keep them visible on top.

The mockup below illustrates the sticky behavior for the header:

Scrolling.png (964×1 px, 77 KB)

However, the current implementation does not keep the header sticky as illustrated in the video below:

Derived Requirements

  1. Make the Header Sticky for the "Explore Languages" Option
    • Ensure that the header and "Access to all languages" section remain visible while scrolling.
    • Implement the sticky behavior as per the [mockup](Scrolling.png).
  1. Ensure Smooth Scrolling Behavior
    • The header should remain fixed at the top without jumping or overlapping content.
    • The scrolling experience should remain seamless across different screen sizes.
  1. Maintain UI Consistency with Design Specifications
    • Apply appropriate z-index, padding, and styling to match the intended layout.
    • Ensure the header does not obstruct any interactive elements.
  1. Test Across Different Screen Sizes
    • Ensure the sticky behavior works correctly on desktop, tablet, and mobile views.
Test Steps

Test Case: Verify Sticky Header in "Explore Languages" Option

  1. Scroll Down and Observe the Header Behavior
    • Slowly scroll down the language list.
    • ✅❓❌⬜ AC1: Ensure the header and "Access to all languages" section remain visible and sticky.
  1. Verify Responsiveness on Different Devices
    • Resize the screen to mobile, tablet, and desktop views.
    • ✅❓❌⬜ AC2: Ensure the sticky behavior remains consistent across all screen sizes.

QA Results - Test Wiki

ACStatusDetails
1T381483#10611597
2T381483#10611597

Event Timeline

Change #1123818 had a related patch set uploaded (by Huei Tan; author: Huei Tan):

[mediawiki/extensions/ContentTranslation@master] AX: Make header sticky for the Explore languages option

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

Nikerabbit set the point value for this task to 1.Mar 3 2025, 7:48 AM

Change #1123818 merged by jenkins-bot:

[mediawiki/extensions/ContentTranslation@master] AX: Make header sticky for the Explore languages option

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

abi_ changed the task status from Open to In Progress.Mar 6 2025, 5:45 AM

@hueitan Confirmed the header and "Access to all languages" section remain visible and sticky as seen in the gifs. I will move this to sign-off. Thanks for all your work!

Test Result - PROD

Status: ✅ PASS
Environment: PROD
OS: macOS Sonoma 15.3.1
Browser: Chrome 133
Device: MacBook Air

Test Artifact(s):

https://ig.m.wikipedia.org/wiki/%E1%BB%8Cp%E1%BB%A5r%E1%BB%A5iche:AutomaticTranslation?page=Year&from=en&to=fr&step=confirm

Test Steps

Test Case: Verify Sticky Header in "Explore Languages" Option

  1. Scroll Down and Observe the Header Behavior
    • Slowly scroll down the language list.
    • AC1: Ensure the header and "Access to all languages" section remain visible and sticky.
Desktop
2025-03-06_13-46-05.mp4.gif (888×1 px, 1 MB)
  1. Verify Responsiveness on Different Devices
    • Resize the screen to mobile, tablet, and desktop views.
    • AC2: Ensure the sticky behavior remains consistent across all screen sizes.
TabletMobile
2025-03-06_13-48-06.mp4.gif (688×590 px, 857 KB)
2025-03-06_13-47-25.mp4.gif (714×668 px, 913 KB)