* Add accessibility traits needed for MacOS Buttons
Keep this behind a flag until public react-native-mac fully supports this
* Add (experimental) support for keyboard based navigation on Mac
* Disable cell recycling in VLV on mac to support keyboard based accessibility
Currently there's no mechanism to tell mac to ignore specific views if they don't have a touch handler
* Fix spacing in GestureView
* Fix accessibility in reactxp-virtuallistview
1) Ensure that there is a selectable item on vlv mount
2) Ensure that if the focuses item is removed, we pick a new item (instead of asserting)
* Down -> Up
They were only wired up for CustomScrollbar implementation, which means that VirtualListView would not work in acessibility mode unless Custom Scrollbars were enabled
Overview:
Previously FocusManager dealt with keyboard focusable
components through tab navigation only, so View with tabIndex===-1 (that
is avoided by tab navigation) was left outside.
Some special processing needed for the case app calls requestFocus on
such views and also the FocusManager scope widening to cover screen reader
focus control made us reconsider this decision.
The web flavor was fixed, yet the windows one was forgotten. The
current fix aligns the windows implementation.
Fix:
- View with any tabIndex (as long as it's not undefined) is now
tracked by FocusManager
- "focusFirst" is adapted to avoid these tabIndex===-1 views.
1) Explicit version of lodash could cause double-bundling in downstream modules
2) ReactXP was pointing to a min version that was un-supported (missing scrollXAnimatedValue prop on RX.ScrollView until 1.5.0)
* Update dependencies to latest React (16.6.0), RN (0.57.3), and RNW (0.57.0-rc.0)
* Changed SDK minTarget to RS1
* Disabled inline view tests due to RN breaking support for those
* Fix test broken due to (potentially) stricter RN checks
* Disable crashing test
* Freshen xCode project related files (from xCode v10)
* Filter out emulated Cache-Control: max-stale on iOS
The header has the opposite effect on iOS: instead of having the cache
return stale data it disables the cache altogether. The header is
emulated by the component as of #853. This change adds filtering so that
RN doesn't see the header.
* PR feedback: add headers to state
* PR feedback: use _.omit()
* First whack at building a simple abstraction on top of the new RN.Animated.event() ability into the RX.ScrollView control. RN.Animated.event nominally lets you handle any parameter of the native callback object and map it into an animated value, but, in reality, for a scrollview, there's only x and y scroll position to take into account. As such, my theory is that we should simplify the abstraction down to simply passing in a scroll{X,Y}AnimatedValue property to the scrollview, and it can do the appropriate wacky mappings to the react native event objects to map it through.
* Fixing/extending implementation of web/Animated's value interpolation. It was making an assumption that you could only interpolated a single value from another value. This is broken in the common case with native combined with animated.event, where you have a single native-mapped animated.value that's mapped to a scroll position, and then interpolate several other values from that root value.
* Fixing some more issues with chained Animated.InterpolatedValues on web
* Fixing some more bugs in the implementation. Just going with output/post-interpolation values everywhere to clean things up.
* Moving interpolation warning into _startTransition, since now you can use it for other interpolation schemes that don't involve a startTransition.
* Addressing PR feedback and adding a scrollview test
* Alex T reminded me to fix the self pointer thing I was doing in web/Animated.tsx
* Emulate Cache-Control: max-stale on iOS
iOS does not seem to respect the max-stale header. It does not load
expired images from the cache unless the force-cache option (internally
NSURLRequestReturnCacheDataElseLoad) is passed.
We can't use force-cache always because it has the opposite problem of
loading only from the cache and using stale data even when the app is
online and the data served under the URL has changed.
The proposed solution is to fall back to force-cache only on encountering
the first error.
* Reset _forceCache on prop update
* PR feedback: compare only relevant props
* PR feedback: use state, only-if-cached, and document the behavior
* Fix comment
* Initialize state
* Initialize state without constructor
* Add information about how to use create-rx-app cli
This way people don't need to go into separate page
* Update README.md
add information about creating JS project