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

Side by Side Diff: ui/views/widget/native_widget_aura.cc

Issue 9960042: Refactor screen/monitor so that gfx::Screen returns monitor object. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 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 | Annotate | Revision Log
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 "ui/views/widget/native_widget_aura.h" 5 #include "ui/views/widget/native_widget_aura.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/string_util.h" 8 #include "base/string_util.h"
9 #include "third_party/skia/include/core/SkRegion.h" 9 #include "third_party/skia/include/core/SkRegion.h"
10 #include "ui/aura/client/activation_client.h" 10 #include "ui/aura/client/activation_client.h"
(...skipping 24 matching lines...) Expand all
35 #include "ui/views/widget/tooltip_manager_aura.h" 35 #include "ui/views/widget/tooltip_manager_aura.h"
36 #include "ui/views/widget/widget_delegate.h" 36 #include "ui/views/widget/widget_delegate.h"
37 37
38 #if defined(OS_WIN) 38 #if defined(OS_WIN)
39 #include "base/win/scoped_gdi_object.h" 39 #include "base/win/scoped_gdi_object.h"
40 #include "base/win/win_util.h" 40 #include "base/win/win_util.h"
41 #include "ui/base/l10n/l10n_util_win.h" 41 #include "ui/base/l10n/l10n_util_win.h"
42 #endif 42 #endif
43 43
44 #if defined(ENABLE_DIP) 44 #if defined(ENABLE_DIP)
45 #include "ui/aura/monitor.h" 45 #include "ui/gfx/monitor.h"
46 #include "ui/aura/monitor_manager.h"
47 #endif 46 #endif
48 47
49 namespace views { 48 namespace views {
50 49
51 bool NativeWidgetAura::g_aura_desktop_hax = false; 50 bool NativeWidgetAura::g_aura_desktop_hax = false;
52 51
53 namespace { 52 namespace {
54 53
55 aura::client::WindowType GetAuraWindowTypeForWidgetType( 54 aura::client::WindowType GetAuraWindowTypeForWidgetType(
56 Widget::InitParams::Type type) { 55 Widget::InitParams::Type type) {
(...skipping 778 matching lines...) Expand 10 before | Expand all | Expand 10 after
835 bool NativeWidgetAura::CanFocus() { 834 bool NativeWidgetAura::CanFocus() {
836 return can_activate_; 835 return can_activate_;
837 } 836 }
838 837
839 void NativeWidgetAura::OnCaptureLost() { 838 void NativeWidgetAura::OnCaptureLost() {
840 delegate_->OnMouseCaptureLost(); 839 delegate_->OnMouseCaptureLost();
841 } 840 }
842 841
843 void NativeWidgetAura::OnPaint(gfx::Canvas* canvas) { 842 void NativeWidgetAura::OnPaint(gfx::Canvas* canvas) {
844 #if defined(ENABLE_DIP) 843 #if defined(ENABLE_DIP)
845 aura::Monitor* monitor = GetMonitor();
846 canvas->Save(); 844 canvas->Save();
847 float scale = monitor->GetDeviceScaleFactor(); 845 float scale = GetMonitorScaleFactor();
848 canvas->sk_canvas()->scale(SkFloatToScalar(scale), SkFloatToScalar(scale)); 846 canvas->sk_canvas()->scale(SkFloatToScalar(scale), SkFloatToScalar(scale));
849 #endif 847 #endif
850 delegate_->OnNativeWidgetPaint(canvas); 848 delegate_->OnNativeWidgetPaint(canvas);
851 #if defined(ENABLE_DIP) 849 #if defined(ENABLE_DIP)
852 canvas->Restore(); 850 canvas->Restore();
853 #endif 851 #endif
854 } 852 }
855 853
856 void NativeWidgetAura::OnWindowDestroying() { 854 void NativeWidgetAura::OnWindowDestroying() {
857 delegate_->OnNativeWidgetDestroying(); 855 delegate_->OnNativeWidgetDestroying();
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
942 //////////////////////////////////////////////////////////////////////////////// 940 ////////////////////////////////////////////////////////////////////////////////
943 // NativeWidgetAura, private: 941 // NativeWidgetAura, private:
944 942
945 void NativeWidgetAura::SetInitialFocus() { 943 void NativeWidgetAura::SetInitialFocus() {
946 // The window does not get keyboard messages unless we focus it. 944 // The window does not get keyboard messages unless we focus it.
947 if (!GetWidget()->SetInitialFocus()) 945 if (!GetWidget()->SetInitialFocus())
948 window_->Focus(); 946 window_->Focus();
949 } 947 }
950 948
951 #if defined(ENABLE_DIP) 949 #if defined(ENABLE_DIP)
952 aura::Monitor* NativeWidgetAura::GetMonitor() const { 950 float NativeWidgetAura::GetMonitorScaleFactor() const {
953 return aura::Env::GetInstance()->monitor_manager()-> 951 gfx::Monitor monitor;
954 GetMonitorNearestWindow(window_); 952 gfx::Screen::GetMonitorNearestWindow(window_, &monitor);
953 return monitor.device_scale_factor();
955 } 954 }
956 955
957 gfx::Point NativeWidgetAura::ConvertPointFromMonitor( 956 gfx::Point NativeWidgetAura::ConvertPointFromMonitor(
958 const gfx::Point& point) const { 957 const gfx::Point& point) const {
959 return point.Scale(1.0f / GetMonitor()->GetDeviceScaleFactor()); 958 return point.Scale(1.0f / GetMonitorScaleFactor());
960 } 959 }
961 960
962 gfx::Size NativeWidgetAura::ConvertSizeFromMonitor( 961 gfx::Size NativeWidgetAura::ConvertSizeFromMonitor(
963 const gfx::Size& size) const { 962 const gfx::Size& size) const {
964 return size.Scale(1.0f / GetMonitor()->GetDeviceScaleFactor()); 963 return size.Scale(1.0f / GetMonitorScaleFactor());
965 } 964 }
966 965
967 gfx::Rect NativeWidgetAura::ConvertRectFromMonitor( 966 gfx::Rect NativeWidgetAura::ConvertRectFromMonitor(
968 const gfx::Rect& rect) const { 967 const gfx::Rect& rect) const {
969 float scale = 1.0f / GetMonitor()->GetDeviceScaleFactor(); 968 float scale = 1.0f / GetMonitorScaleFactor();
970 return gfx::Rect(rect.origin().Scale(scale), rect.size().Scale(scale)); 969 return gfx::Rect(rect.origin().Scale(scale), rect.size().Scale(scale));
971 } 970 }
972 971
973 gfx::Size NativeWidgetAura::ConvertSizeToMonitor(const gfx::Size& size) const { 972 gfx::Size NativeWidgetAura::ConvertSizeToMonitor(const gfx::Size& size) const {
974 return size.Scale(GetMonitor()->GetDeviceScaleFactor()); 973 return size.Scale(GetMonitorScaleFactor());
975 } 974 }
976 975
977 gfx::Rect NativeWidgetAura::ConvertRectToMonitor(const gfx::Rect& rect) const { 976 gfx::Rect NativeWidgetAura::ConvertRectToMonitor(const gfx::Rect& rect) const {
978 float scale = GetMonitor()->GetDeviceScaleFactor(); 977 float scale = GetMonitorScaleFactor();
979 return gfx::Rect(rect.origin().Scale(scale), rect.size().Scale(scale)); 978 return gfx::Rect(rect.origin().Scale(scale), rect.size().Scale(scale));
980 } 979 }
981 #endif 980 #endif
982 981
983 //////////////////////////////////////////////////////////////////////////////// 982 ////////////////////////////////////////////////////////////////////////////////
984 // Widget, public: 983 // Widget, public:
985 984
986 // static 985 // static
987 void Widget::NotifyLocaleChanged() { 986 void Widget::NotifyLocaleChanged() {
988 // Deliberately not implemented. 987 // Deliberately not implemented.
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
1085 } 1084 }
1086 } 1085 }
1087 1086
1088 // static 1087 // static
1089 bool NativeWidgetPrivate::IsMouseButtonDown() { 1088 bool NativeWidgetPrivate::IsMouseButtonDown() {
1090 return aura::Env::GetInstance()->is_mouse_button_down(); 1089 return aura::Env::GetInstance()->is_mouse_button_down();
1091 } 1090 }
1092 1091
1093 } // namespace internal 1092 } // namespace internal
1094 } // namespace views 1093 } // namespace views
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698