Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: chrome/browser/ui/views/website_settings/permissions_bubble_view.cc

Issue 1865213004: Convert //chrome/browser/ui from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 #include "chrome/browser/ui/views/website_settings/permissions_bubble_view.h" 5 #include "chrome/browser/ui/views/website_settings/permissions_bubble_view.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/memory/ptr_util.h"
10 #include "base/strings/string16.h" 11 #include "base/strings/string16.h"
11 #include "chrome/browser/profiles/profile.h" 12 #include "chrome/browser/profiles/profile.h"
12 #include "chrome/browser/ui/browser.h" 13 #include "chrome/browser/ui/browser.h"
13 #include "chrome/browser/ui/views/exclusive_access_bubble_views.h" 14 #include "chrome/browser/ui/views/exclusive_access_bubble_views.h"
14 #include "chrome/browser/ui/views/frame/browser_view.h" 15 #include "chrome/browser/ui/views/frame/browser_view.h"
15 #include "chrome/browser/ui/views/frame/top_container_view.h" 16 #include "chrome/browser/ui/views/frame/top_container_view.h"
16 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" 17 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
17 #include "chrome/browser/ui/views/location_bar/location_icon_view.h" 18 #include "chrome/browser/ui/views/location_bar/location_icon_view.h"
18 #include "chrome/browser/ui/views/website_settings/permission_selector_view.h" 19 #include "chrome/browser/ui/views/website_settings/permission_selector_view.h"
19 #include "chrome/browser/ui/views/website_settings/permission_selector_view_obse rver.h" 20 #include "chrome/browser/ui/views/website_settings/permission_selector_view_obse rver.h"
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 void OnMenuButtonClicked(views::MenuButton* source, 80 void OnMenuButtonClicked(views::MenuButton* source,
80 const gfx::Point& point, 81 const gfx::Point& point,
81 const ui::Event* event) override; 82 const ui::Event* event) override;
82 83
83 // Callback when a permission's setting is changed. 84 // Callback when a permission's setting is changed.
84 void PermissionChanged(const WebsiteSettingsUI::PermissionInfo& permission); 85 void PermissionChanged(const WebsiteSettingsUI::PermissionInfo& permission);
85 86
86 private: 87 private:
87 int index_; 88 int index_;
88 Listener* listener_; 89 Listener* listener_;
89 scoped_ptr<PermissionMenuModel> model_; 90 std::unique_ptr<PermissionMenuModel> model_;
90 scoped_ptr<views::MenuRunner> menu_runner_; 91 std::unique_ptr<views::MenuRunner> menu_runner_;
91 }; 92 };
92 93
93 PermissionCombobox::PermissionCombobox(Listener* listener, 94 PermissionCombobox::PermissionCombobox(Listener* listener,
94 int index, 95 int index,
95 const GURL& url, 96 const GURL& url,
96 ContentSetting setting) 97 ContentSetting setting)
97 : MenuButton(base::string16(), this, true), 98 : MenuButton(base::string16(), this, true),
98 index_(index), 99 index_(index),
99 listener_(listener), 100 listener_(listener),
100 model_(new PermissionMenuModel( 101 model_(new PermissionMenuModel(
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 176
176 // Updates the anchor's arrow and view. Also repositions the bubble so it's 177 // Updates the anchor's arrow and view. Also repositions the bubble so it's
177 // displayed in the correct location. 178 // displayed in the correct location.
178 void UpdateAnchor(views::View* anchor_view, 179 void UpdateAnchor(views::View* anchor_view,
179 views::BubbleBorder::Arrow anchor_arrow); 180 views::BubbleBorder::Arrow anchor_arrow);
180 181
181 private: 182 private:
182 PermissionBubbleViewViews* owner_; 183 PermissionBubbleViewViews* owner_;
183 bool multiple_requests_; 184 bool multiple_requests_;
184 base::string16 display_origin_; 185 base::string16 display_origin_;
185 scoped_ptr<PermissionMenuModel> menu_button_model_; 186 std::unique_ptr<PermissionMenuModel> menu_button_model_;
186 std::vector<PermissionCombobox*> customize_comboboxes_; 187 std::vector<PermissionCombobox*> customize_comboboxes_;
187 188
188 DISALLOW_COPY_AND_ASSIGN(PermissionsBubbleDialogDelegateView); 189 DISALLOW_COPY_AND_ASSIGN(PermissionsBubbleDialogDelegateView);
189 }; 190 };
190 191
191 PermissionsBubbleDialogDelegateView::PermissionsBubbleDialogDelegateView( 192 PermissionsBubbleDialogDelegateView::PermissionsBubbleDialogDelegateView(
192 views::View* anchor_view, 193 views::View* anchor_view,
193 views::BubbleBorder::Arrow anchor_arrow, 194 views::BubbleBorder::Arrow anchor_arrow,
194 PermissionBubbleViewViews* owner, 195 PermissionBubbleViewViews* owner,
195 const std::vector<PermissionBubbleRequest*>& requests, 196 const std::vector<PermissionBubbleRequest*>& requests,
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
356 return; 357 return;
357 358
358 set_arrow(anchor_arrow); 359 set_arrow(anchor_arrow);
359 360
360 // Update the border in the bubble: will either add or remove the arrow. 361 // Update the border in the bubble: will either add or remove the arrow.
361 views::BubbleFrameView* frame = 362 views::BubbleFrameView* frame =
362 views::BubbleDialogDelegateView::GetBubbleFrameView(); 363 views::BubbleDialogDelegateView::GetBubbleFrameView();
363 views::BubbleBorder::Arrow adjusted_arrow = anchor_arrow; 364 views::BubbleBorder::Arrow adjusted_arrow = anchor_arrow;
364 if (base::i18n::IsRTL()) 365 if (base::i18n::IsRTL())
365 adjusted_arrow = views::BubbleBorder::horizontal_mirror(adjusted_arrow); 366 adjusted_arrow = views::BubbleBorder::horizontal_mirror(adjusted_arrow);
366 frame->SetBubbleBorder(scoped_ptr<views::BubbleBorder>( 367 frame->SetBubbleBorder(std::unique_ptr<views::BubbleBorder>(
367 new views::BubbleBorder(adjusted_arrow, shadow(), color()))); 368 new views::BubbleBorder(adjusted_arrow, shadow(), color())));
368 369
369 // Reposition the bubble based on the updated arrow and view. 370 // Reposition the bubble based on the updated arrow and view.
370 SetAnchorView(anchor_view); 371 SetAnchorView(anchor_view);
371 } 372 }
372 373
373 ////////////////////////////////////////////////////////////////////////////// 374 //////////////////////////////////////////////////////////////////////////////
374 // PermissionBubbleViewViews 375 // PermissionBubbleViewViews
375 376
376 PermissionBubbleViewViews::PermissionBubbleViewViews(Browser* browser) 377 PermissionBubbleViewViews::PermissionBubbleViewViews(Browser* browser)
377 : browser_(browser), 378 : browser_(browser),
378 delegate_(nullptr), 379 delegate_(nullptr),
379 bubble_delegate_(nullptr) { 380 bubble_delegate_(nullptr) {
380 DCHECK(browser); 381 DCHECK(browser);
381 } 382 }
382 383
383 PermissionBubbleViewViews::~PermissionBubbleViewViews() { 384 PermissionBubbleViewViews::~PermissionBubbleViewViews() {
384 } 385 }
385 386
386 // static 387 // static
387 scoped_ptr<PermissionBubbleView> PermissionBubbleView::Create( 388 std::unique_ptr<PermissionBubbleView> PermissionBubbleView::Create(
388 Browser* browser) { 389 Browser* browser) {
389 return make_scoped_ptr(new PermissionBubbleViewViews(browser)); 390 return base::WrapUnique(new PermissionBubbleViewViews(browser));
390 } 391 }
391 392
392 views::View* PermissionBubbleViewViews::GetAnchorView() { 393 views::View* PermissionBubbleViewViews::GetAnchorView() {
393 BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(browser_); 394 BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(browser_);
394 395
395 if (browser_->SupportsWindowFeature(Browser::FEATURE_LOCATIONBAR)) 396 if (browser_->SupportsWindowFeature(Browser::FEATURE_LOCATIONBAR))
396 return browser_view->GetLocationBarView()->location_icon_view(); 397 return browser_view->GetLocationBarView()->location_icon_view();
397 398
398 if (browser_view->IsFullscreenBubbleVisible()) 399 if (browser_view->IsFullscreenBubbleVisible())
399 return browser_view->exclusive_access_bubble()->GetView(); 400 return browser_view->exclusive_access_bubble()->GetView();
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
469 470
470 void PermissionBubbleViewViews::Accept() { 471 void PermissionBubbleViewViews::Accept() {
471 if (delegate_) 472 if (delegate_)
472 delegate_->Accept(); 473 delegate_->Accept();
473 } 474 }
474 475
475 void PermissionBubbleViewViews::Deny() { 476 void PermissionBubbleViewViews::Deny() {
476 if (delegate_) 477 if (delegate_)
477 delegate_->Deny(); 478 delegate_->Deny();
478 } 479 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698