-
Notifications
You must be signed in to change notification settings - Fork 3.9k
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
✨ Update amp-access-scroll #26810
✨ Update amp-access-scroll #26810
Conversation
2c6556b
to
8535f4f
Compare
This PR - adds a protocol version query param to requests made from amp-access-scroll for compatibility - adds a "holdback" flag and styles to prevent mismatched rendeirng with new layout - renames ScrollAudio to ScrollSheet - adds ability to dynamically size horizontal layout for ScrollComponents. Special care was taken to ensure these properties cannot interrupt vertical browser layout; only width, left, and right are allowed. Dynamic sizing is necessary to pervent invisible iframes being drawn over usable parts of the underlying page, which would cause UX and accessibility problems in certain layout scenarios. Dynamic sizing solves this by shrinking the iframe to fit the size neccessary to fit the rendered controls.
8535f4f
to
7ec8d4b
Compare
b32000b
to
288854d
Compare
72d0271
to
d0c42b5
Compare
width: 100%; | ||
} | ||
|
||
.amp-access-scroll-sheet.amp-access-scroll-holdback { | ||
position: fixed; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
seems like these styles are unnecessary with the .amp-access-scroll-sheet
classname providing them too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
bottom: 63px; | ||
height: 56px; | ||
left: auto; | ||
right: 16px; | ||
width: 475px; | ||
} | ||
} | ||
|
||
.amp-access-scroll-sheet { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could you put this classname above the modifications to it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
To clarify, the holdback code / css classes will be removed in a future PR. |
2ae3590
to
b6dee79
Compare
LGTM from me. Ready to be merged? |
@dvoytenko yep, thanks! |
Yup! |
/cc @jpettitt |
* master: (41 commits) custom-element: Minor test improvements (ampproject#26923) amp-pixel: Minor test improvements (ampproject#26918) viewer: Minor test improvements (ampproject#26906) dom: Minor test improvements (ampproject#26913) amp-action: Support whitelist lookup in AmpDocShadow (ampproject#26684) ✨ Update amp-access-scroll (ampproject#26810) 🚀 Remove doc css and base css from ESM build (ampproject#26889) 📖 [amp-story-player] Initial docs (ampproject#26606) Amp consent restrict fullscreen prod flag (ampproject#26909) 📖 Clarify SXG duration minimum (ampproject#26890) Improve test vendor requests macros (ampproject#26828) 🚀 Move scroll left and top macros out of url-replacement-impl (ampproject#25594) Update consent string maximum size to 200 bytes (ampproject#26741) ✨[amp-story-player] Adds tap-to-next/previous story (ampproject#26865) update owners file with correct syntax (ampproject#26899) amp-sticky-ad: Fix unit test (ampproject#26855) Add performance metrics to README (ampproject#26891) 🐛 Bug fix: check links test (ampproject#26739) ✨Idealmedia uniq ad (ampproject#25838) 📦 Update dependency jsdom to v16.2.0 (ampproject#26591) ...
This PR
was taken to ensure these properties cannot interrupt vertical browser layout;
only width, left, and right are allowed.
Dynamic sizing is necessary to pervent invisible iframes being drawn over usable
parts of the underlying page, which would cause UX and accessibility problems in
certain layout scenarios. Dynamic sizing solves this by shrinking the iframe to fit
the size neccessary to fit the rendered controls.