OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_WEBSITE_SETTINGS_PERMISSION_BUBBLE_REQUEST_H_ | 5 #ifndef CHROME_BROWSER_UI_WEBSITE_SETTINGS_PERMISSION_BUBBLE_REQUEST_H_ |
6 #define CHROME_BROWSER_UI_WEBSITE_SETTINGS_PERMISSION_BUBBLE_REQUEST_H_ | 6 #define CHROME_BROWSER_UI_WEBSITE_SETTINGS_PERMISSION_BUBBLE_REQUEST_H_ |
7 | 7 |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 #include "url/gurl.h" | 9 #include "url/gurl.h" |
10 | 10 |
11 // Describes the interface a feature utilizing permission bubbles should | 11 // Describes the interface a feature utilizing permission bubbles should |
12 // implement. A class of this type is registered with the permission bubble | 12 // implement. A class of this type is registered with the permission bubble |
13 // manager to receive updates about the result of the permissions request | 13 // manager to receive updates about the result of the permissions request |
14 // from the bubble. It should live until it is unregistered or until | 14 // from the bubble. It should live until it is unregistered or until |
15 // RequestFinished is called. | 15 // RequestFinished is called. |
16 // Note that no particular guarantees are made about what exact UI surface | 16 // Note that no particular guarantees are made about what exact UI surface |
17 // is presented to the user. The delegate may be coalesced with other bubble | 17 // is presented to the user. The delegate may be coalesced with other bubble |
18 // requests, or depending on the situation, not shown at all. | 18 // requests, or depending on the situation, not shown at all. |
19 class PermissionBubbleRequest { | 19 class PermissionBubbleRequest { |
20 public: | 20 public: |
21 virtual ~PermissionBubbleRequest() {} | 21 virtual ~PermissionBubbleRequest() {} |
22 | 22 |
23 // The icon to use next to the message text fragment in the permission bubble. | 23 // The icon to use next to the message text fragment in the permission bubble. |
24 // Must be a valid icon of size 16x16. (TODO(gbillock): tbd size) | 24 // Must be a valid icon of size 18x18. |
25 virtual int GetIconID() const = 0; | 25 virtual int GetIconID() const = 0; |
26 | 26 |
27 // Returns the full prompt text for this permission. This is the only text | 27 // Returns the full prompt text for this permission. This is the only text |
28 // that will be shown in the single-permission case and should be phrased | 28 // that will be shown in the single-permission case and should be phrased |
29 // positively as a complete sentence. | 29 // positively as a complete sentence. |
30 virtual base::string16 GetMessageText() const = 0; | 30 virtual base::string16 GetMessageText() const = 0; |
31 | 31 |
32 // Returns the shortened prompt text for this permission. Must be phrased | 32 // Returns the shortened prompt text for this permission. Must be phrased |
33 // as a heading, e.g. "Location", or "Camera". The permission bubble may | 33 // as a heading, e.g. "Location", or "Camera". The permission bubble may |
34 // coalesce different requests, and if it does, this text will be displayed | 34 // coalesce different requests, and if it does, this text will be displayed |
(...skipping 20 matching lines...) Expand all Loading... |
55 virtual void Cancelled() = 0; | 55 virtual void Cancelled() = 0; |
56 | 56 |
57 // The bubble this request was associated with was answered by the user. | 57 // The bubble this request was associated with was answered by the user. |
58 // It is safe for the request to be deleted at this point -- it will receive | 58 // It is safe for the request to be deleted at this point -- it will receive |
59 // no further message from the permission bubble system. This method will | 59 // no further message from the permission bubble system. This method will |
60 // eventually be called on every request which is not unregistered. | 60 // eventually be called on every request which is not unregistered. |
61 virtual void RequestFinished() = 0; | 61 virtual void RequestFinished() = 0; |
62 }; | 62 }; |
63 | 63 |
64 #endif // CHROME_BROWSER_UI_WEBSITE_SETTINGS_PERMISSION_BUBBLE_REQUEST_H_ | 64 #endif // CHROME_BROWSER_UI_WEBSITE_SETTINGS_PERMISSION_BUBBLE_REQUEST_H_ |
OLD | NEW |