1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_GEOLOCATION_GEOLOCATION_INFOBAR_DELEGATE_H_
6 #define CHROME_BROWSER_GEOLOCATION_GEOLOCATION_INFOBAR_DELEGATE_H_
10 #include "chrome/browser/permissions/permission_infobar_delegate.h"
12 // GeolocationInfoBarDelegates are created by the
13 // PermissionQueueController to control the display
14 // and handling of geolocation permission infobars to the user.
15 class GeolocationInfoBarDelegate
: public PermissionInfobarDelegate
{
17 // Creates a geolocation infobar and delegate and adds the infobar to
18 // |infobar_service|. Returns the infobar if it was successfully added.
19 static infobars::InfoBar
* Create(
20 InfoBarService
* infobar_service
,
21 const GURL
& requesting_frame
,
22 const std::string
& display_languages
,
23 const PermissionSetCallback
& callback
);
26 GeolocationInfoBarDelegate(
27 const GURL
& requesting_frame
,
28 const std::string
& display_languages
,
29 const PermissionSetCallback
& callback
);
30 ~GeolocationInfoBarDelegate() override
;
32 // PermissionInfoBarDelegate:
33 int GetIconId() const override
;
34 base::string16
GetMessageText() const override
;
36 GURL requesting_frame_
;
37 std::string display_languages_
;
39 DISALLOW_COPY_AND_ASSIGN(GeolocationInfoBarDelegate
);
42 #endif // CHROME_BROWSER_GEOLOCATION_GEOLOCATION_INFOBAR_DELEGATE_H_