permissions: switch from explicitly passing queue controller to callbacks
[chromium-blink-merge.git] / chrome / browser / media / midi_permission_infobar_delegate.h
blob5818f2def6e0d851c764da403c9e6ba1fcaba1a7
1 // Copyright 2013 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_MEDIA_MIDI_PERMISSION_INFOBAR_DELEGATE_H_
6 #define CHROME_BROWSER_MEDIA_MIDI_PERMISSION_INFOBAR_DELEGATE_H_
8 #include <string>
9 #include "chrome/browser/permissions/permission_infobar_delegate.h"
10 #include "components/content_settings/core/common/content_settings_types.h"
12 class GURL;
13 class InfoBarService;
15 // MidiPermissionInfoBarDelegates are created by the
16 // MidiPermissionContext to control the display and handling of MIDI permission
17 // infobars to the user.
18 class MidiPermissionInfoBarDelegate : public PermissionInfobarDelegate {
19 public:
20 // Creates a MIDI permission infobar and delegate and adds the infobar to
21 // |infobar_service|. Returns the infobar if it was successfully added.
22 static infobars::InfoBar* Create(
23 InfoBarService* infobar_service,
24 const GURL& requesting_frame,
25 const std::string& display_languages,
26 ContentSettingsType type,
27 const PermissionSetCallback& callback);
29 private:
30 MidiPermissionInfoBarDelegate(
31 const GURL& requesting_frame,
32 const std::string& display_languages,
33 ContentSettingsType type,
34 const PermissionSetCallback& callback);
35 ~MidiPermissionInfoBarDelegate() override;
37 // ConfirmInfoBarDelegate:
38 int GetIconId() const override;
39 base::string16 GetMessageText() const override;
41 GURL requesting_frame_;
42 std::string display_languages_;
44 DISALLOW_COPY_AND_ASSIGN(MidiPermissionInfoBarDelegate);
47 #endif // CHROME_BROWSER_MEDIA_MIDI_PERMISSION_INFOBAR_DELEGATE_H_