canmove, Confirmed users
901
edits
(Add comments on how availability is determined) |
|||
Line 22: | Line 22: | ||
See definition of template or mouseovers for definitions of status. | See definition of template or mouseovers for definitions of status. | ||
--> | |||
<!-- | |||
See https://mxr.mozilla.org/mozilla-central/source/dom/apps/src/PermissionsTable.jsm for "app", "privileged", and "certified" access information | |||
--> | --> | ||
{| cellpadding="2" border="1" | {| cellpadding="2" border="1" | ||
Line 34: | Line 37: | ||
| Allow placing and answering phone calls as well as build in-call UI. | | Allow placing and answering phone calls as well as build in-call UI. | ||
| W3C ED (SysApps) | | W3C ED (SysApps) | ||
<!-- | |||
* dom.telephony.enabled=false in all.js, true in b2g.js | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 42: | Line 48: | ||
| Control device vibration for things like haptic feedback in games. Not intended to solve things like vibration for notification. | | Control device vibration for things like haptic feedback in games. Not intended to solve things like vibration for notification. | ||
| W3C CR (Device APIs) | | W3C CR (Device APIs) | ||
<!-- | |||
* dom.vibrator.enabled set to true in Navigator.cpp | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 50: | Line 59: | ||
| Send/receive SMS messages as well as manage messages stored on device. | | Send/receive SMS messages as well as manage messages stored on device. | ||
| W3C ED (SysApps) | | W3C ED (SysApps) | ||
<!-- | |||
* dom.sms.enabled=false in all.js, true in b2g.js | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|offByDefault|Android}} | | {{WebAPIPlatformAvailability|offByDefault|Android}} | ||
Line 58: | Line 70: | ||
| Get notifications when user is idle. | | Get notifications when user is idle. | ||
| Needs plan | | Needs plan | ||
<!-- | |||
* dom.idle-observers-api.enabled=true in all.js, not set elsewhere | |||
* Navigator.cpp checks for nsIPrincipal::APP_STATUS_CERTIFIED | |||
--> | |||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | | {{WebAPIPlatformAvailability|implemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 66: | Line 82: | ||
| Get notification when screen orientation changes as well as control which screen orientation a page/app wants. | | Get notification when screen orientation changes as well as control which screen orientation a page/app wants. | ||
| W3C WD (WebApps) | | W3C WD (WebApps) | ||
<!-- | |||
FIXME: is presence of implementations in widget/{android,gonk} sufficient? | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 74: | Line 93: | ||
| Set system-wide configurations that are saved permanently on the device. | | Set system-wide configurations that are saved permanently on the device. | ||
| Future? | | Future? | ||
<!-- | |||
FIXME: more details here | |||
* dom.mozSettings.enabled=false in all.js, true in b2g.js | |||
* dom/settings/SettingsManager.js uses permission manager to check for settings-read/settings-write permissions | |||
* Settings.perms.testExactPermissionFromPrincipal defined in netwerk/base/public/nsIPermissionManager.idl | |||
** unsure where implementation is | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 82: | Line 108: | ||
| Turn on/off screen, cpu, device power, etc. Listen and inspect resource lock events. | | Turn on/off screen, cpu, device power, etc. Listen and inspect resource lock events. | ||
| Future? | | Future? | ||
<!-- | |||
* MozPowerManager.webidl | |||
* how do we know this is b2g-only? | |||
* certified only check is done in nsIPermissionManager | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 90: | Line 121: | ||
| Expose signal strength, operator, etc for GSM and other mobile connections. This does not cover WiFi. | | Expose signal strength, operator, etc for GSM and other mobile connections. This does not cover WiFi. | ||
| Future? | | Future? | ||
<!-- | |||
* dom/network/interfaces/moz.build contains | |||
** if CONFIG['MOZ_B2G_RIL']: ... nsIMobileConnectionProvider.idl | |||
* permission check in dom/network/src/MobileConnection.cpp | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 98: | Line 134: | ||
| Low-level TCP socket API. Will also include SSL support. | | Low-level TCP socket API. Will also include SSL support. | ||
| W3C ED (SysApps) | | W3C ED (SysApps) | ||
<!-- | |||
* dom.mozTCPSocket.enabled only true in b2g/app/b2g.js, not in all.js | |||
--> | |||
| {{WebAPIPlatformAvailability|privilegedAndCertified|Desktop}} | | {{WebAPIPlatformAvailability|privilegedAndCertified|Desktop}} | ||
| {{WebAPIPlatformAvailability|offByDefault|Android}} | | {{WebAPIPlatformAvailability|offByDefault|Android}} | ||
Line 106: | Line 145: | ||
| Access to the end user's location. | | Access to the end user's location. | ||
| W3C CR | | W3C CR | ||
<!-- | |||
* geolocation PROMPT_ACTION for app/privileged/certified | |||
--> | |||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | | {{WebAPIPlatformAvailability|implemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 114: | Line 156: | ||
| Privileged API to get a list of available WiFi networks. Also get signal strength and name of currently connected network, etc. | | Privileged API to get a list of available WiFi networks. Also get signal strength and name of currently connected network, etc. | ||
| Future? | | Future? | ||
<!-- | |||
* wifi-manage permission | |||
* FIXME: how do we know this is only built on b2g? | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 122: | Line 168: | ||
| Add/Read/Modify files stored on a central location on the device. For example the "pictures" folder on modern desktop platforms or the photo storage in mobile devices. | | Add/Read/Modify files stored on a central location on the device. For example the "pictures" folder on modern desktop platforms or the photo storage in mobile devices. | ||
| Needs plan | | Needs plan | ||
<!-- | |||
* device.storage.enabled pref=false in all.js, true in b2g.js | |||
* webapps-manage permission | |||
--> | |||
| {{WebAPIPlatformAvailability|offByDefault|Desktop}} | | {{WebAPIPlatformAvailability|offByDefault|Desktop}} | ||
| {{WebAPIPlatformAvailability|offByDefault|Android}} | | {{WebAPIPlatformAvailability|offByDefault|Android}} | ||
Line 130: | Line 180: | ||
| Add/Read/Modify the device contacts address book. | | Add/Read/Modify the device contacts address book. | ||
| W3C ED (SysApps) | | W3C ED (SysApps) | ||
<!-- | |||
* privileged: prompt | |||
* certified: allowed | |||
* android: #ifdef NIGHTLY_BUILD in mobile/android/base/AndroidManifest.xml.in | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|offByDefault|Android}} | | {{WebAPIPlatformAvailability|offByDefault|Android}} | ||
Line 138: | Line 193: | ||
| Lock access to mouse and get access to movement deltas rather than coordinates. | | Lock access to mouse and get access to movement deltas rather than coordinates. | ||
| W3C ED | | W3C ED | ||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | <!-- | ||
* FIXME: I see implementation but it's unclear how it's not implemented on b2g | |||
-->| {{WebAPIPlatformAvailability|implemented|Desktop}} | |||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
| {{WebAPIPlatformAvailability|notPlanned|B2G}} | | {{WebAPIPlatformAvailability|notPlanned|B2G}} | ||
Line 146: | Line 203: | ||
| Install web apps and manage installed webapps. Also allows an installed webapp to get payment information. Everything needed to build a Open WebApps app store. | | Install web apps and manage installed webapps. Also allows an installed webapp to get payment information. Everything needed to build a Open WebApps app store. | ||
| W3C WD (SysApps) | | W3C WD (SysApps) | ||
<!-- | |||
* interfaces/apps in dom/moz.build with no conditionals | |||
--> | |||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | | {{WebAPIPlatformAvailability|implemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 154: | Line 214: | ||
| Low level access to Bluetooth hardware. | | Low level access to Bluetooth hardware. | ||
| Future? | | Future? | ||
<!-- | |||
* only certified in dom/apps/src/PermissionsTable.jsm | |||
* MOZ_B2G_BT=1 with --enable-b2g-bt | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 162: | Line 226: | ||
| Get basic information about current network connectivity. Example: "How fast of a connection do I have?". | | Get basic information about current network connectivity. Example: "How fast of a connection do I have?". | ||
| W3C ED | | W3C ED | ||
<!-- | |||
* no explicit permission | |||
* FIXME: I only see the JNI implementation in {hal,widget}/android | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 170: | Line 238: | ||
| Information about battery charge level and if device is plugged in. | | Information about battery charge level and if device is plugged in. | ||
| W3C CR (DAP) | | W3C CR (DAP) | ||
<!-- | |||
* no explicit permission | |||
* hal/*/*Battery.cpp | |||
--> | |||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | | {{WebAPIPlatformAvailability|implemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 178: | Line 250: | ||
| Schedule a notification, or for an application to be started, at a specific time. | | Schedule a notification, or for an application to be started, at a specific time. | ||
| W3C WD (SysApps) | | W3C WD (SysApps) | ||
<!-- | |||
* FIXME: I see it in hal/gonk/GonkHal.cpp but does just the lack of | |||
existence of alarm stuff in other HALs denote "notImplemented"? | |||
--> | |||
| {{WebAPIPlatformAvailability|notImplemented|Desktop}} | | {{WebAPIPlatformAvailability|notImplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|notImplemented|Android}} | | {{WebAPIPlatformAvailability|notImplemented|Android}} | ||
Line 186: | Line 262: | ||
| Enables implementing a browser completely in web technologies. | | Enables implementing a browser completely in web technologies. | ||
| Future? | | Future? | ||
<!-- | |||
* FIXME: dom.mozBrowserFramesEnabled in b2g.js (nowhere else?) | |||
--> | |||
| {{WebAPIPlatformAvailability|notImplemented|Desktop}} | | {{WebAPIPlatformAvailability|notImplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|notImplemented|Android}} | | {{WebAPIPlatformAvailability|notImplemented|Android}} | ||
Line 194: | Line 273: | ||
| Set current time. Timezone will go in the Settings API. | | Set current time. Timezone will go in the Settings API. | ||
| Future? | | Future? | ||
<!-- | |||
* FIXME: implementation | |||
--> | |||
| {{WebAPIPlatformAvailability|notimplemented|Desktop}} | | {{WebAPIPlatformAvailability|notimplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|notimplemented|Android}} | | {{WebAPIPlatformAvailability|notimplemented|Android}} | ||
| {{WebAPIPlatformAvailability| | | {{WebAPIPlatformAvailability|certifiedOnly|B2G}} | ||
| {{bug|714357}}, {{bug|714358}}, [http://groups.google.com/group/mozilla.dev.webapi/browse_thread/thread/f382abb068abd4c5 API proposed] | | {{bug|714357}}, {{bug|714358}}, [http://groups.google.com/group/mozilla.dev.webapi/browse_thread/thread/f382abb068abd4c5 API proposed] | ||
|- | |- | ||
Line 202: | Line 284: | ||
| Delegate an activity to another application. | | Delegate an activity to another application. | ||
| Discussed in Device APIs | | Discussed in Device APIs | ||
<!-- | |||
* implemented for B2G in 78f4674cf0 (git SHA-1) | |||
* FIXME: unclear how not implemented elsewhere | |||
** stuff in ../installer/package-manifest.in ? | |||
--> | |||
| {{WebAPIPlatformAvailability|notImplemented|Desktop}} | | {{WebAPIPlatformAvailability|notImplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|notImplemented|Android}} | | {{WebAPIPlatformAvailability|notImplemented|Android}} | ||
Line 210: | Line 297: | ||
| Allow the platform to send notification messages to specific applications. | | Allow the platform to send notification messages to specific applications. | ||
| [http://telefonicaid.github.com/WebAPISpecs/Push/index.html W3C ED (Webapps)] | | [http://telefonicaid.github.com/WebAPISpecs/Push/index.html W3C ED (Webapps)] | ||
<!-- | |||
* pref "services.push.enabled" true on b2g, false on Android and in libpref all.js | |||
* Desktop: ae0f6c30aaf (git SHA-1) (bug 863599) but services.push.enabled still false | |||
--> | |||
| {{WebAPIPlatformAvailability|notImplemented|Desktop}} | | {{WebAPIPlatformAvailability|notImplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|notImplemented|Android}} | | {{WebAPIPlatformAvailability|notImplemented|Android}} | ||
Line 218: | Line 309: | ||
| Allow Settings app to manage all app permissions in a centralized location | | Allow Settings app to manage all app permissions in a centralized location | ||
| Future? | | Future? | ||
<!-- | |||
* dom.mozPermissionSettings.enabled=true in b2g.js, false in all.js | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 226: | Line 320: | ||
| For FM radio feature. | | For FM radio feature. | ||
| Future? | | Future? | ||
<!-- | |||
* FIXME: dom/fmradio/moz.build has if CONFIG'[MOZ_B2G_FM]' => non-B2G unimplemented? | |||
* configure.in sets MOZ_B2G_FM=1 if target=android & --with-gonk set | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 234: | Line 332: | ||
| Writable files with locking. | | Writable files with locking. | ||
| Needs plan | | Needs plan | ||
<!-- | |||
* implemented everywhere in 5f93a8930 (git SHA-1) (bug 726593) | |||
--> | |||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | | {{WebAPIPlatformAvailability|implemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 242: | Line 343: | ||
| Monitor data usage and expose data to privileged apps | | Monitor data usage and expose data to privileged apps | ||
| Future? | | Future? | ||
<!-- | |||
* dom.mozNetworkStats.enabled=true in b2g.js, false in all.js | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|notPlanned|Android}} | | {{WebAPIPlatformAvailability|notPlanned|Android}} | ||
Line 250: | Line 354: | ||
| Allow web content to initiate payments and refunds for virtual goods. For the server implementation, see [[WebAPI/WebPayment|WebPaymentProvider]]. | | Allow web content to initiate payments and refunds for virtual goods. For the server implementation, see [[WebAPI/WebPayment|WebPaymentProvider]]. | ||
| [http://lists.w3.org/Archives/Public/public-webpayments/2013May/0025.html Beginning] | | [http://lists.w3.org/Archives/Public/public-webpayments/2013May/0025.html Beginning] | ||
<!-- | |||
* dom.mozPay.enabled=true in at least b2g.js and mobile/...js | |||
--> | |||
| {{WebAPIPlatformAvailability|notImplemented|Desktop}} | | {{WebAPIPlatformAvailability|notImplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 258: | Line 365: | ||
| Client-side storage of structured data and high performance searches on this data | | Client-side storage of structured data and high performance searches on this data | ||
| W3C WD | | W3C WD | ||
<!-- | |||
* in dom/moz.build | |||
--> | |||
| {{WebAPIPlatformAvailability|implemented|Desktop}} | | {{WebAPIPlatformAvailability|implemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 266: | Line 376: | ||
| Blob support for Zip file contents | | Blob support for Zip file contents | ||
| Future? | | Future? | ||
<!-- | |||
* dom.archivereader.enabled = false in all.js | |||
--> | |||
| {{WebAPIPlatformAvailability|offByDefault|Desktop}} | | {{WebAPIPlatformAvailability|offByDefault|Desktop}} | ||
| {{WebAPIPlatformAvailability|offByDefault|Android}} | | {{WebAPIPlatformAvailability|offByDefault|Android}} | ||
Line 274: | Line 387: | ||
| Device light sensor support | | Device light sensor support | ||
| W3C WD | | W3C WD | ||
<!-- | |||
* implementations spread out | |||
* FIXME: dougt thinks maybe some Mac support exists | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 282: | Line 399: | ||
| Device proximity sensor support | | Device proximity sensor support | ||
| W3C WD | | W3C WD | ||
<!-- | |||
* implementations spread out | |||
--> | |||
| {{WebAPIPlatformAvailability|notPlanned|Desktop}} | | {{WebAPIPlatformAvailability|notPlanned|Desktop}} | ||
| {{WebAPIPlatformAvailability|implemented|Android}} | | {{WebAPIPlatformAvailability|implemented|Android}} | ||
Line 290: | Line 410: | ||
| External (non-same origin) XMLHttpRequests | | External (non-same origin) XMLHttpRequests | ||
| ? | | ? | ||
<!-- | |||
* FIXME: I see the permission checks "SystemXHR" but I don't see how it's _not_ implemented on desktop/Android | |||
--> | |||
| {{WebAPIPlatformAvailability|notImplemented|Desktop}} | | {{WebAPIPlatformAvailability|notImplemented|Desktop}} | ||
| {{WebAPIPlatformAvailability|notImplemented|Android}} | | {{WebAPIPlatformAvailability|notImplemented|Android}} |