== Abstract

Crosswalk extension module providing low level primitives for querying
whether the host operating system has a physical keyboard attached.
This information can be used by app authors to optimise application
appearance and behaviour on convertible devices such as laptop/tablet
hybrid computers.

Target platform(s): Windows, possibly Android at a later point in time
Crosswalk Target Version: 21
JIRA Ticket: https://crosswalk-project.org/jira/browse/XWALK-5711


== Implementation details

The technical scope of the Keyboard Status API is as follows:

Allow retrieval of the current keyboard status. This information can
be used by apps to optimise themselves for the current device posture,
both in terms of visual appearance and input modality. The possible
keyboard states are the following (names subject to change):

* laptop mode with keyboard docked, folded open, or otherwise active, or
* tablet  mode without a functional hardware keyboard attached.

Allow tracking of the keyboard status changes. Again the result set
has two possible values, either the device is in laptop mode or tablet
 mode. This signal can be used to adapt an already loaded web app or
web page to a change in posture, both in terms of visual appearance
and input modality.

=== Relevant APIs

GetSystemMetrics / SM_CONVERTIBLESLATEMODE (Win8)
https://msdn.microsoft.com/en-us/library/windows/desktop/ms724385(v=vs.85).aspx

GetUserInteractionMode (Win10)
https://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.viewmanagement.uiviewsettings.userinteractionmode.aspx

GetAutoRotationState
https://msdn.microsoft.com/en-us/library/windows/desktop/dn629264(v=vs.85).aspx

Enumerating Devices
https://msdn.microsoft.com/en-us/library/windows/desktop/dd319331(v=vs.85).aspx
_______________________________________________
Crosswalk-dev mailing list
Crosswalk-dev@lists.crosswalk-project.org
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-dev

Reply via email to