OLD | NEW |
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 "ash/system/web_notification/ash_popup_alignment_delegate.h" | 5 #include "ash/system/web_notification/ash_popup_alignment_delegate.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "ash/common/shelf/shelf_types.h" | 10 #include "ash/common/shelf/shelf_types.h" |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 test::AshTestBase::TearDown(); | 48 test::AshTestBase::TearDown(); |
49 } | 49 } |
50 | 50 |
51 void SetKeyboardBounds(const gfx::Rect& new_bounds) { | 51 void SetKeyboardBounds(const gfx::Rect& new_bounds) { |
52 Shelf::ForPrimaryDisplay() | 52 Shelf::ForPrimaryDisplay() |
53 ->shelf_layout_manager() | 53 ->shelf_layout_manager() |
54 ->OnKeyboardBoundsChanging(new_bounds); | 54 ->OnKeyboardBoundsChanging(new_bounds); |
55 } | 55 } |
56 | 56 |
57 protected: | 57 protected: |
58 enum Position { | 58 enum Position { TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT, OUTSIDE }; |
59 TOP_LEFT, | |
60 TOP_RIGHT, | |
61 BOTTOM_LEFT, | |
62 BOTTOM_RIGHT, | |
63 OUTSIDE | |
64 }; | |
65 | 59 |
66 AshPopupAlignmentDelegate* alignment_delegate() { | 60 AshPopupAlignmentDelegate* alignment_delegate() { |
67 return alignment_delegate_.get(); | 61 return alignment_delegate_.get(); |
68 } | 62 } |
69 | 63 |
70 void UpdateWorkArea(AshPopupAlignmentDelegate* alignment_delegate, | 64 void UpdateWorkArea(AshPopupAlignmentDelegate* alignment_delegate, |
71 const display::Display& display) { | 65 const display::Display& display) { |
72 alignment_delegate->StartObserving(display::Screen::GetScreen(), display); | 66 alignment_delegate->StartObserving(display::Screen::GetScreen(), display); |
73 // Update the layout | 67 // Update the layout |
74 alignment_delegate->OnDisplayWorkAreaInsetsChanged(); | 68 alignment_delegate->OnDisplayWorkAreaInsetsChanged(); |
(...skipping 18 matching lines...) Expand all Loading... |
93 work_area.right() < point.x() || work_area.bottom() < point.y()) { | 87 work_area.right() < point.x() || work_area.bottom() < point.y()) { |
94 return OUTSIDE; | 88 return OUTSIDE; |
95 } | 89 } |
96 | 90 |
97 if (center_point.x() < point.x()) | 91 if (center_point.x() < point.x()) |
98 return (center_point.y() < point.y()) ? BOTTOM_RIGHT : TOP_RIGHT; | 92 return (center_point.y() < point.y()) ? BOTTOM_RIGHT : TOP_RIGHT; |
99 else | 93 else |
100 return (center_point.y() < point.y()) ? BOTTOM_LEFT : TOP_LEFT; | 94 return (center_point.y() < point.y()) ? BOTTOM_LEFT : TOP_LEFT; |
101 } | 95 } |
102 | 96 |
103 gfx::Rect GetWorkArea() { | 97 gfx::Rect GetWorkArea() { return alignment_delegate_->work_area_; } |
104 return alignment_delegate_->work_area_; | |
105 } | |
106 | 98 |
107 std::unique_ptr<views::Widget> CreateTestWidget(int container_id) { | 99 std::unique_ptr<views::Widget> CreateTestWidget(int container_id) { |
108 std::unique_ptr<views::Widget> widget(new views::Widget); | 100 std::unique_ptr<views::Widget> widget(new views::Widget); |
109 views::Widget::InitParams params; | 101 views::Widget::InitParams params; |
110 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 102 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
111 params.bounds = gfx::Rect(0, 0, 50, 50); | 103 params.bounds = gfx::Rect(0, 0, 50, 50); |
112 WmShell::Get() | 104 WmShell::Get() |
113 ->GetPrimaryRootWindow() | 105 ->GetPrimaryRootWindow() |
114 ->GetRootWindowController() | 106 ->GetRootWindowController() |
115 ->ConfigureWidgetInitParamsForContainer(widget.get(), container_id, | 107 ->ConfigureWidgetInitParamsForContainer(widget.get(), container_id, |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
336 SetKeyboardBounds(keyboard_bounds); | 328 SetKeyboardBounds(keyboard_bounds); |
337 int keyboard_baseline = alignment_delegate()->GetBaseLine(); | 329 int keyboard_baseline = alignment_delegate()->GetBaseLine(); |
338 EXPECT_NE(baseline, keyboard_baseline); | 330 EXPECT_NE(baseline, keyboard_baseline); |
339 EXPECT_GT(keyboard_bounds.y(), keyboard_baseline); | 331 EXPECT_GT(keyboard_bounds.y(), keyboard_baseline); |
340 | 332 |
341 SetKeyboardBounds(gfx::Rect()); | 333 SetKeyboardBounds(gfx::Rect()); |
342 EXPECT_EQ(baseline, alignment_delegate()->GetBaseLine()); | 334 EXPECT_EQ(baseline, alignment_delegate()->GetBaseLine()); |
343 } | 335 } |
344 | 336 |
345 } // namespace ash | 337 } // namespace ash |
OLD | NEW |