| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2012 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 #include <map> |  | 
|    6  |  | 
|    7 #import <Cocoa/Cocoa.h> |    5 #import <Cocoa/Cocoa.h> | 
|    8  |    6  | 
 |    7 #include <map> | 
 |    8 #include <memory> | 
 |    9  | 
|    9 #include "base/macros.h" |   10 #include "base/macros.h" | 
|   10 #include "base/memory/scoped_ptr.h" |  | 
|   11 #import "chrome/browser/ui/cocoa/base_bubble_controller.h" |   11 #import "chrome/browser/ui/cocoa/base_bubble_controller.h" | 
|   12 #include "content/public/common/media_stream_request.h" |   12 #include "content/public/common/media_stream_request.h" | 
|   13  |   13  | 
|   14 class ContentSettingBubbleModel; |   14 class ContentSettingBubbleModel; | 
|   15 class ContentSettingBubbleWebContentsObserverBridge; |   15 class ContentSettingBubbleWebContentsObserverBridge; | 
|   16 class ContentSettingMediaMenuModel; |   16 class ContentSettingMediaMenuModel; | 
|   17 @class InfoBubbleView; |   17 @class InfoBubbleView; | 
|   18  |   18  | 
|   19 namespace content { |   19 namespace content { | 
|   20 class WebContents; |   20 class WebContents; | 
|   21 } |   21 } | 
|   22  |   22  | 
|   23 namespace content_setting_bubble { |   23 namespace content_setting_bubble { | 
|   24 // For every "show popup" button, remember the index of the popup tab contents |   24 // For every "show popup" button, remember the index of the popup tab contents | 
|   25 // it should open when clicked. |   25 // it should open when clicked. | 
|   26 typedef std::map<NSButton*, int> PopupLinks; |   26 typedef std::map<NSButton*, int> PopupLinks; | 
|   27  |   27  | 
|   28 // For every media menu button, remember the components assosiated with the |   28 // For every media menu button, remember the components assosiated with the | 
|   29 // menu button. |   29 // menu button. | 
|   30 struct MediaMenuParts { |   30 struct MediaMenuParts { | 
|   31   MediaMenuParts(content::MediaStreamType type, NSTextField* label); |   31   MediaMenuParts(content::MediaStreamType type, NSTextField* label); | 
|   32   ~MediaMenuParts(); |   32   ~MediaMenuParts(); | 
|   33  |   33  | 
|   34   content::MediaStreamType type; |   34   content::MediaStreamType type; | 
|   35   NSTextField* label;  // Weak. |   35   NSTextField* label;  // Weak. | 
|   36   scoped_ptr<ContentSettingMediaMenuModel> model; |   36   std::unique_ptr<ContentSettingMediaMenuModel> model; | 
|   37  |   37  | 
|   38  private: |   38  private: | 
|   39   DISALLOW_COPY_AND_ASSIGN(MediaMenuParts); |   39   DISALLOW_COPY_AND_ASSIGN(MediaMenuParts); | 
|   40 }; |   40 }; | 
|   41  |   41  | 
|   42 // Comparator used by MediaMenuPartsMap to order its keys. |   42 // Comparator used by MediaMenuPartsMap to order its keys. | 
|   43 struct compare_button { |   43 struct compare_button { | 
|   44   bool operator()(NSPopUpButton *const a, NSPopUpButton *const b) const { |   44   bool operator()(NSPopUpButton *const a, NSPopUpButton *const b) const { | 
|   45     return [a tag] < [b tag]; |   45     return [a tag] < [b tag]; | 
|   46   } |   46   } | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
|   57  |   57  | 
|   58   IBOutlet NSButton* manageButton_; |   58   IBOutlet NSButton* manageButton_; | 
|   59   IBOutlet NSButton* doneButton_; |   59   IBOutlet NSButton* doneButton_; | 
|   60   IBOutlet NSButton* loadButton_; |   60   IBOutlet NSButton* loadButton_; | 
|   61  |   61  | 
|   62   // The container for the bubble contents of the geolocation bubble. |   62   // The container for the bubble contents of the geolocation bubble. | 
|   63   IBOutlet NSView* contentsContainer_; |   63   IBOutlet NSView* contentsContainer_; | 
|   64  |   64  | 
|   65   IBOutlet NSTextField* blockedResourcesField_; |   65   IBOutlet NSTextField* blockedResourcesField_; | 
|   66  |   66  | 
|   67   scoped_ptr<ContentSettingBubbleModel> contentSettingBubbleModel_; |   67   std::unique_ptr<ContentSettingBubbleModel> contentSettingBubbleModel_; | 
|   68   scoped_ptr<ContentSettingBubbleWebContentsObserverBridge> observerBridge_; |   68   std::unique_ptr<ContentSettingBubbleWebContentsObserverBridge> | 
 |   69       observerBridge_; | 
|   69   content_setting_bubble::PopupLinks popupLinks_; |   70   content_setting_bubble::PopupLinks popupLinks_; | 
|   70   content_setting_bubble::MediaMenuPartsMap mediaMenus_; |   71   content_setting_bubble::MediaMenuPartsMap mediaMenus_; | 
|   71 } |   72 } | 
|   72  |   73  | 
|   73 // Creates and shows a content blocked bubble. Takes ownership of |   74 // Creates and shows a content blocked bubble. Takes ownership of | 
|   74 // |contentSettingBubbleModel| but not of the other objects. |   75 // |contentSettingBubbleModel| but not of the other objects. | 
|   75 + (ContentSettingBubbleController*) |   76 + (ContentSettingBubbleController*) | 
|   76     showForModel:(ContentSettingBubbleModel*)contentSettingBubbleModel |   77     showForModel:(ContentSettingBubbleModel*)contentSettingBubbleModel | 
|   77      webContents:(content::WebContents*)webContents |   78      webContents:(content::WebContents*)webContents | 
|   78     parentWindow:(NSWindow*)parentWindow |   79     parentWindow:(NSWindow*)parentWindow | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
|  100 - (IBAction)mediaMenuChanged:(id)sender; |  101 - (IBAction)mediaMenuChanged:(id)sender; | 
|  101  |  102  | 
|  102 @end |  103 @end | 
|  103  |  104  | 
|  104 @interface ContentSettingBubbleController (TestingAPI) |  105 @interface ContentSettingBubbleController (TestingAPI) | 
|  105  |  106  | 
|  106 // Returns the weak reference to the |mediaMenus_|. |  107 // Returns the weak reference to the |mediaMenus_|. | 
|  107 - (content_setting_bubble::MediaMenuPartsMap*)mediaMenus; |  108 - (content_setting_bubble::MediaMenuPartsMap*)mediaMenus; | 
|  108  |  109  | 
|  109 @end |  110 @end | 
| OLD | NEW |