Re: Permissions UI & Necessary API

On Apr 28, 2014, at 9:35 AM, Kostiainen, Anssi wrote:

> On 26 Apr 2014, at 12:52, Dave Raggett <dsr@w3.org> wrote:
> 
>> On 25/04/14 19:15, Marcos Caceres wrote:
>> 
>> A more compelling argument is that app developers will want control of how the justification for using a given capability is presented to the user.  This further suggests the requirement for apps to determine which of the following apply:
>> 
>>  a. user has yet to be asked for a decision
>>  b. user has previously granted permission
>>  c. user has explicitly denied permission
>> 
>> Without this information, it would be hard for developers to provide the appropriate user experience. Does FirefoxOS offer developers this info?
>> 
> 
> An API that fulfils the requirements a-c above was experimented with in the Device APIs WG couple of years ago, known as “Feature Permissions" [1]. The spec was put on hold as "the only immediately obvious relevant use case [was] for Web Notifications”. Eventually, the Web Notifications API settled on a slightly different model [2] in which the UA’s default permission setting (allow or deny) is not exposed.
> 
> Some known issues with the model in [1] include privacy concerns over exposing user’s preference to the web content (from the privacy perspective, the web content should not need to know whether you have explicitly declined or just ignored the permission prompt) and other potential for misuse (e.g. block the user’s flow until she grants permission). That said, this thread suggests there may be also legitimate use cases for such a feature.
> 
> Doug - the API shape aside, do you think an API such as [1] would be part of the solution to your problem?
> 
> -Anssi
> 
> [1] http://dev.w3.org/2009/dap/perms/FeaturePermissions.html
> [2] http://notifications.spec.whatwg.org/#permission


Yes. If my app knew the user had not granted permission (despite setting the app preference), it could open a dialog setting out choices to the user.

Received on Monday, 28 April 2014 15:02:13 UTC