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

Side by Side Diff: chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.cc

Issue 1438513003: [MD] Implement incognito colors as a NativeTheme (for Aura). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: iterate on chips Created 5 years, 1 month 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 (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 "chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h" 5 #include "chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "chrome/browser/search/search.h" 9 #include "chrome/browser/search/search.h"
10 #include "chrome/browser/themes/theme_properties.h" 10 #include "chrome/browser/themes/theme_properties.h"
(...skipping 13 matching lines...) Expand all
24 #include "ui/views/controls/image_view.h" 24 #include "ui/views/controls/image_view.h"
25 #include "ui/views/resources/grit/views_resources.h" 25 #include "ui/views/resources/grit/views_resources.h"
26 #include "ui/views/view_targeter.h" 26 #include "ui/views/view_targeter.h"
27 #include "ui/views/widget/widget.h" 27 #include "ui/views/widget/widget.h"
28 #include "ui/views/window/non_client_view.h" 28 #include "ui/views/window/non_client_view.h"
29 29
30 class OmniboxPopupContentsView::AutocompletePopupWidget 30 class OmniboxPopupContentsView::AutocompletePopupWidget
31 : public views::Widget, 31 : public views::Widget,
32 public base::SupportsWeakPtr<AutocompletePopupWidget> { 32 public base::SupportsWeakPtr<AutocompletePopupWidget> {
33 public: 33 public:
34 AutocompletePopupWidget() {} 34 explicit AutocompletePopupWidget(views::Widget* popup_parent)
35 : popup_parent_(popup_parent) {}
35 ~AutocompletePopupWidget() override {} 36 ~AutocompletePopupWidget() override {}
36 37
38 const ui::NativeTheme* GetNativeTheme() const override {
39 return popup_parent_->GetNativeTheme();
40 }
41
37 private: 42 private:
43 // The transient parent of this popup.
44 views::Widget* popup_parent_;
Peter Kasting 2015/11/14 02:46:08 Nit: Just call this |parent_| since "popup" is alr
Evan Stade 2015/11/16 19:36:33 this change reverted
45
38 DISALLOW_COPY_AND_ASSIGN(AutocompletePopupWidget); 46 DISALLOW_COPY_AND_ASSIGN(AutocompletePopupWidget);
39 }; 47 };
40 48
41 //////////////////////////////////////////////////////////////////////////////// 49 ////////////////////////////////////////////////////////////////////////////////
42 // OmniboxPopupContentsView, public: 50 // OmniboxPopupContentsView, public:
43 51
44 OmniboxPopupView* OmniboxPopupContentsView::Create( 52 OmniboxPopupView* OmniboxPopupContentsView::Create(
45 const gfx::FontList& font_list, 53 const gfx::FontList& font_list,
46 OmniboxView* omnibox_view, 54 OmniboxView* omnibox_view,
47 OmniboxEditModel* edit_model, 55 OmniboxEditModel* edit_model,
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 // rapidly we could get "stuck" trying repeatedly to animate shrinking by the 238 // rapidly we could get "stuck" trying repeatedly to animate shrinking by the
231 // last few pixels to get to one visible result. 239 // last few pixels to get to one visible result.
232 if (new_target_bounds.height() != target_bounds_.height()) 240 if (new_target_bounds.height() != target_bounds_.height())
233 size_animation_.Reset(); 241 size_animation_.Reset();
234 target_bounds_ = new_target_bounds; 242 target_bounds_ = new_target_bounds;
235 243
236 if (popup_ == NULL) { 244 if (popup_ == NULL) {
237 views::Widget* popup_parent = location_bar_view_->GetWidget(); 245 views::Widget* popup_parent = location_bar_view_->GetWidget();
238 246
239 // If the popup is currently closed, we need to create it. 247 // If the popup is currently closed, we need to create it.
240 popup_ = (new AutocompletePopupWidget)->AsWeakPtr(); 248 popup_ = (new AutocompletePopupWidget(popup_parent))->AsWeakPtr();
241 249
242 views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP); 250 views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
243 #if defined(OS_WIN) 251 #if defined(OS_WIN)
244 // On Windows use the software compositor to ensure that we don't block 252 // On Windows use the software compositor to ensure that we don't block
245 // the UI thread blocking issue during command buffer creation. We can 253 // the UI thread blocking issue during command buffer creation. We can
246 // revert this change once http://crbug.com/125248 is fixed. 254 // revert this change once http://crbug.com/125248 is fixed.
247 params.force_software_compositing = true; 255 params.force_software_compositing = true;
248 #endif 256 #endif
249 params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW; 257 params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW;
250 params.parent = popup_parent->GetNativeView(); 258 params.parent = popup_parent->GetNativeView();
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
525 size_t index = GetIndexForPoint(event.location()); 533 size_t index = GetIndexForPoint(event.location());
526 if (!HasMatchAt(index)) 534 if (!HasMatchAt(index))
527 return; 535 return;
528 omnibox_view_->OpenMatch(model_->result().match_at(index), disposition, 536 omnibox_view_->OpenMatch(model_->result().match_at(index), disposition,
529 GURL(), base::string16(), index); 537 GURL(), base::string16(), index);
530 } 538 }
531 539
532 OmniboxResultView* OmniboxPopupContentsView::result_view_at(size_t i) { 540 OmniboxResultView* OmniboxPopupContentsView::result_view_at(size_t i) {
533 return static_cast<OmniboxResultView*>(child_at(static_cast<int>(i))); 541 return static_cast<OmniboxResultView*>(child_at(static_cast<int>(i)));
534 } 542 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698