Comments (1)
We've deliberately made the API best-effort because different OSes have different constraints on what keys are available. A best-effort API works well for apps such as remote desktop that want to take over the whole keyboard but will settle for whatever the OS is willing to give them.
I agree that it's less clear that best-effort works as well for our other use-case: web-apps such as games that want to reserve the specific keys that they use. Going back to your example, a website can't request Ctrl+Alt+Del; instead, it would request Del if that key was important. If the OS reserved other +Del shortcuts that are interceptable, the website will receive those, so it's not necessarily an error to request Del. That's why we chose not to return an error in that case, and also because if other keys are requested as part of the same API, it's not clear what to return.
from keyboard-lock.
Related Issues (20)
- Add a section about ESC processing and encourage locking a subset of keys
- Escape/Esc key locking HOT 2
- Migration to WebApps WG: Implementor interest? HOT 1
- Mark as CG-DRAFT, move to WICG? HOT 1
- Duplicate definition of Keyboard interface HOT 3
- Still active? HOT 1
- It isn't clear how keyboard shortcuts on <input> and <textarea> should work
- Spec still links to w3c.github.io
- Don't allow capture of "system" keys
- Couple to fullscreen API HOT 1
- Don't allow configurable key overrides
- Issues link points to keyboard-map HOT 1
- Support multiple keyboards
- Regenerate index.html HOT 1
- CTRL+W
- Unlocking only specific keys. HOT 3
- Broken references in Keyboard Lock
- Requirements in notes
- `lock()` steps refer to the wrong promise when rejecting with `AbortError`
- Provide a way to retrieve keys which should be locked
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 keyboard-lock.