Comments (5)
So there is a special component with roving tab index over focus guards, which makes them safe and easy to put where needed - https://github.com/theKashey/react-focus-lock/blob/master/src/FocusGuard.js#L18
They are not activating on time 🤷♂️
from react-focus-lock.
This is more about feature rather a bug because frankly speaking being able to leave to the browser interface is often correct behavior.
The expected solution for this is to wrap portalled content with InFocusGuard
, that should provide the original behavior. But it's not working. Even if I have a test for it 🙄
Leave this to me...
from react-focus-lock.
Greetings, Anton! Thank you for this tool :)
The main problem here is that usually createPortal
mounts sharded node as last child of body.
In my case this is a dropdown of a Select, and the Select is inside a focus-trap.
And even a dropdown is within trap's shard, it won't work... :(
leave to the browser interface is often correct behavior
Here is what happening:
- if there is a focusble between sharded focusable and body boundary, focus is trapped
- if there is no focusable in between, focus isn't trapped and leave to the browser interface
- such inconsistentcy/misbehavior of programming tool often called bug
BTW same behavior happens with having shard as first focusable child of the body, revealing itself on Shift+Tab.
from react-focus-lock.
to wrap portalled content with
InFocusGuard
, but it's not working
Yes. I tried FocusGuard too. They are not working, but might be improved to bugfix in this way:
Underlined attributes is obligatory to make it work.
Check this out:
https://8247h3.csb.app/
https://codesandbox.io/s/react-focus-lock-forked-8247h3
from react-focus-lock.
This issue has been marked as "stale" because there has been no activity for 2 months. If you have any new information or would like to continue the discussion, please feel free to do so. If this issue got buried among other tasks, maybe this message will reignite the conversation. Otherwise, this issue will be closed in 7 days. Thank you for your contributions so far.
from react-focus-lock.
Related Issues (20)
- Socket dev picking up some security issues. HOT 3
- Add an `onError` callback for when focus fighting is detected HOT 2
- Feature request - Clickaway deactivation HOT 2
- `crossFrame={false}` has cross-browser Safari issues HOT 7
- Can't click without scroll being changed HOT 3
- Invalid hook call when using it inside a library HOT 3
- Issue with importing FocusLock component HOT 18
- /*#__PURE__*/ comment throws warning in Rollup HOT 3
- Unclear behavior during loosing focus in unmanaged area HOT 3
- Migrate to Typescript HOT 1
- Remove sidecar HOT 1
- useFocusLock HOT 1
- Version `2.11.0` doesn't compile with TS HOT 1
- Returning focus to element inside an iframe HOT 2
- ESM compatibility breaks WebPack build HOT 18
- added file extension in imports as it was breaking in webpack 5 HOT 2
- version 2.12.0 , feature "ESM Compatible" breaks React app CRA build with Chackra UI HOT 3
- Module Resolution Error: Missing File Extensions in Import Statements HOT 2
- Typo in readme HOT 2
- onDeactivation callback is called on render in StrictMode HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-focus-lock.