diff --git a/samples/qa-a11y/src/views/Scroller.js b/samples/qa-a11y/src/views/Scroller.js index da90e393ba..2eb95462ed 100644 --- a/samples/qa-a11y/src/views/Scroller.js +++ b/samples/qa-a11y/src/views/Scroller.js @@ -1,18 +1,58 @@ /* eslint-disable react/jsx-no-bind */ import Scroller from '@enact/sandstone/Scroller'; +import SpotlightContainerDecorator from '@enact/spotlight/SpotlightContainerDecorator'; +import Spottable from '@enact/spotlight/Spottable'; import ToggleButton from '@enact/sandstone/SwitchItem'; import Layout, {Cell} from '@enact/ui/Layout'; import ri from '@enact/ui/resolution'; -import {useState} from 'react'; +import {Fragment, useState} from 'react'; + +import css from './Scroller.module.less'; const ScrollerView = () => { - const [native, setNative] = useState(true); + const [spottable, setSpottable] = useState(false); const [customAriaLabel, setCustomAriaLabel] = useState(false); + const [native, setNative] = useState(true); const scrollMode = native ? 'native' : 'translate'; const handleChangeJSNativeButton = () => setNative(!native); const handleChangeAriaLabelButton = () => setCustomAriaLabel(!customAriaLabel); + const handleChangeSpottableButton = () => setSpottable(!spottable); + + const bodyText = [ + <>Foo
Bar
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
, + <>Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow.
, + <>Foo
Bar
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
, + <>Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow.
, + <>Foo
Bar
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
, + <>Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow.
, + <>Foo
Bar
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
Boom boom pow
, + <>Foo
Bar
, + <>Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow.
+ ]; + + const Container = SpotlightContainerDecorator({enterTo: 'last-focused'}, 'div'); + const SpottableDiv = Spottable('div'); return ( @@ -29,34 +69,27 @@ const ScrollerView = () => { > Native + + Scroller with Spottable + -
- Foo
Bar
Bar
Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
- Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow.
Foo
Bar
Bar
- Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
- Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow.
Foo
Bar
Bar
Boom boom pow
Foo
Bar
- Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
- Foo
Bar
Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow.
Foo
Bar
Bar
Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
- Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow
Foo
Bar
Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. - Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. Boom boom pow. +
+ {spottable ? + + {bodyText.map((x, i) => {x})} + : + bodyText.map((x, i) => {x}) + }
diff --git a/samples/qa-a11y/src/views/Scroller.module.less b/samples/qa-a11y/src/views/Scroller.module.less new file mode 100644 index 0000000000..f15f7abc85 --- /dev/null +++ b/samples/qa-a11y/src/views/Scroller.module.less @@ -0,0 +1,9 @@ +@import "~@enact/sandstone/styles/colors.less"; +@import "~@enact/sandstone/styles/mixins.less"; + +.focusableBodyText { + .focus({ + background-color: @sand-scroll-focusablebody-focus-bg-color; + opacity: 1; + }); +}