Index: ui/views/controls/native/native_view_host.cc |
diff --git a/ui/views/controls/native/native_view_host.cc b/ui/views/controls/native/native_view_host.cc |
index 7ec512a5e50e110a7080e8772f2577dc3a5c07da..649ff1a59ebe505b1c6827d0d5431805cd1a93b9 100644 |
--- a/ui/views/controls/native/native_view_host.cc |
+++ b/ui/views/controls/native/native_view_host.cc |
@@ -33,6 +33,7 @@ NativeViewHost::NativeViewHost() |
: native_view_(NULL), |
fast_resize_(false), |
fast_resize_at_last_layout_(false), |
+ fast_resize_gravity_(GRAVITY_NORTHWEST), |
focus_view_(NULL) { |
} |
@@ -54,6 +55,7 @@ void NativeViewHost::Attach(gfx::NativeView native_view) { |
Widget* widget = Widget::GetWidgetForNativeView(native_view); |
if (widget) |
widget->SetNativeWindowProperty(kWidgetNativeViewHostKey, this); |
+ native_wrapper_->NativeViewAttached(); |
} |
void NativeViewHost::Detach() { |
@@ -65,6 +67,74 @@ void NativeViewHost::SetPreferredSize(const gfx::Size& size) { |
PreferredSizeChanged(); |
} |
+float NativeViewHost::GetWidthScaleFactor() const { |
+ float ret_val = 0.0; |
+ switch (fast_resize_gravity_) { |
+ case GRAVITY_NORTHWEST: |
+ ret_val = 0.0; |
sky
2013/09/26 22:10:54
There is no point in assigning to ret_val, break,
rharrison
2013/09/30 20:48:45
Done.
|
+ break; |
+ case GRAVITY_NORTH: |
+ ret_val = 0.5; |
+ break; |
+ case GRAVITY_NORTHEAST: |
+ ret_val = 1.0; |
+ break; |
+ case GRAVITY_EAST: |
+ ret_val = 1.0; |
+ break; |
+ case GRAVITY_SOUTHEAST: |
+ ret_val = 1.0; |
+ break; |
+ case GRAVITY_SOUTH: |
+ ret_val = 0.5; |
+ break; |
+ case GRAVITY_SOUTHWEST: |
+ ret_val = 0.0; |
+ break; |
+ case GRAVITY_WEST: |
+ ret_val = 0.0; |
+ break; |
+ case GRAVITY_CENTER: |
+ ret_val = 0.5; |
+ break; |
+ } |
+ return ret_val; |
+} |
+ |
+float NativeViewHost::GetHeightScaleFactor() const { |
+ float ret_val = 0.0; |
+ switch (fast_resize_gravity_) { |
+ case GRAVITY_NORTHWEST: |
+ ret_val = 0.0; |
+ break; |
+ case GRAVITY_NORTH: |
+ ret_val = 0.0; |
+ break; |
+ case GRAVITY_NORTHEAST: |
+ ret_val = 0.0; |
+ break; |
+ case GRAVITY_EAST: |
+ ret_val = 0.5; |
+ break; |
+ case GRAVITY_SOUTHEAST: |
+ ret_val = 1.0; |
+ break; |
+ case GRAVITY_SOUTH: |
+ ret_val = 1.0; |
+ break; |
+ case GRAVITY_SOUTHWEST: |
+ ret_val = 1.0; |
+ break; |
+ case GRAVITY_WEST: |
+ ret_val = 0.5; |
+ break; |
+ case GRAVITY_CENTER: |
+ ret_val = 0.5; |
+ break; |
+ } |
+ return ret_val; |
+} |
+ |
void NativeViewHost::NativeViewDestroyed() { |
// Detach so we can clear our state and notify the native_wrapper_ to release |
// ref on the native view. |