Less specific shorthand style properties are being applied instead of the more
specific styles if there is another element also with one of the more specific
styles. This is due to the common styles being pulled out as class names for
de-duplication.
Ref #2007Close#2010
Safari requires use of `white-space:nowrap` if not using the multi-line
technique. This patch uses the multi-lines styles to truncate single-lines.
Fix#2111Close#2113
Only set the click handler if it is needed. This was previously always set,
which caused screen readers to announce the element as "clickable".
Close#2061
This patch removes the keyboard `onClick` shim from `unstable_createElement`
and adds it to the `PressResponder`.
Previously, the logic in `createElement` was calling `onClick` during
`onKeyDown`. This could result in React state update warnings if the host
element was no longer in the DOM during `keyup`.
Fix#2051
Elements other than 'a' support the 'href' attribute, so the element type
should not be inferred from 'href'. Longer term no host element type inference
should be performed by 'createElement'.
Fix#1958
This role is not meant to be in the tab flow unless the element type demands
it. Users will now have to manage `onClick` and `onKeyDown` callbacks to apply
the desired interaction behavior.
Fix#1968
The TextInput element no longer uses the 'number' input type, so this reset is
no longer necessary. Furthermore, the reset potentially impacts non-framework
components.
Fix#1949
The host node ref is not a dependency of the focus handling. Previously, the
focus callback was not called if the element was auto-focused, because React
DOM calls `onFocus` while the object ref is `null`.
Fix#2045
Latest versions of `url-loader` default `esModule: true` which outputs a module
object with `default` property for asset imports. This behaviour is different
from Metro which doesn't do that.
This breaks compatibility with a lot of React Native libraries since it's
common to do an inline `require` for assets., so it'd work for Metro, but break
with url-loader.
Close#2040
Pressing ctrl+click on a link opens a new tab in Windows. On macOS it opens the
context menu but doesn't dispatch a 'click' event. On other element types both
OS dispatch a 'click'. Removing the condition related to 'ctrlKey' produces the
desired behavior across OS.
Fix#2000
Fixes issues in Safari from using window.innerWidth. Using
documentElement.clientWidth doesn't have issues and provides a more practical
value for the canvas width that excludes the width of scrollbars.
Fix#1369Fix#1905