Problem/Motivation

The header search bar opens and closes instantly — Bootstrap toggles display, so the band jumps in and out and the main menu is simply covered. The design prototype crossfades: the menu links and the "Search" label fade out while the bar and its close X fade in on the same line, with a small vertical settle, and the close is the exact mirror. Sampled in the prototype: about 20% at 45ms, 70% at 145ms, settled by 220ms.

 the main menu fades out while the search bar and its close X fade in, with a small vertical settle
Opening.

 the exact mirror of the opening crossfade
Closing.

Both recorded with the transition slowed to 1100ms (about 5x) so the curve is legible frame by frame; the shipped duration is 220ms.

See the attached GIFs, and the geometry fix in fix: Header search bar does not follow the design — geometry, background and mobile band, which this builds on and should land first.

Steps to reproduce

  1. Install the Educare site template on Varbase 11 and open the front page at 1440px.
  2. Click the header search icon, then the close X.
  3. Both happen instantly, with no crossfade.

Proposed resolution

In components/organisms/icon-toggle:

  • Crossfade the panel on opacity over 220ms with a 4px settle on the translate property (transform is already used for centring), plus transition-behavior: allow-discrete and @starting-style to animate across Bootstrap's display toggle; without support the panel appears as before.
  • Add is-search-open to the measured band from icon-toggle.js on show.bs.dropdown / hide.bs.dropdown so the main menu fades over the same 220ms.
  • Guard both with prefers-reduced-motion: reduce.

Files: icon-toggle.scss, icon-toggle.css (built), icon-toggle.js.

Merge request: !31.

AI-Generated: Yes

Remaining tasks

  • ✅ File an issue
  • ✅ Addition/Change/Update/Fix
  • ❌ Testing to ensure no regression
  • ➖ Automated unit/functional testing coverage
  • ➖ Developer Documentation support
  • ➖ User Guide Documentation support
  • ❌ UX/UI designer responsibilities
  • ❌ Accessibility and Readability
  • ❌ Reviewed by a human
  • ❌ Code review by maintainers
  • ❌ Full testing and approval
  • ❌ Credit contributors
  • ❌ Review with the product owner
  • ✅ Update Release Notes
  • ✅ Release

User interface changes

  • Yes — the search bar now crossfades with the main menu instead of appearing instantly.

API changes

  • N/A

Data model changes

  • N/A

Release notes snippet

  • Added the design's open and close motion to the header search bar.
Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

rajab natshah created an issue. See original summary.

rajab natshah’s picture

Issue summary: View changes
StatusFileSize
new73.97 KB
new77.09 KB

Recordings from a live Educare build on Varbase 11:

  • search-open-motion.gif — opening: the main menu fades out while the bar and its close X fade in on the same line, with the small vertical settle.
  • search-close-motion.gif — closing: the exact mirror.

Both were recorded with the transition slowed to 1100ms (about 5x) so the curve is legible frame by frame. The shipped duration is 220ms.

Also trimmed the issue summary.

AI-Generated: Yes

rajab natshah’s picture

Issue summary: View changes

  • rajab natshah committed ba2b4cbb on 1.0.x
    fix: #3618070 Add the design's open and close motion to the header...
rajab natshah’s picture

Assigned: Unassigned » josebc
Issue summary: View changes
Status: Active » Needs review
Issue tags: +vartheme_bs5_educare-1.0.0-alpha4
rajab natshah’s picture

Assigned: josebc » mohammed j. razem
rajab natshah’s picture

Assigned: mohammed j. razem » Unassigned
Status: Needs review » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.