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

Unified Diff: ash/wm/workspace/workspace_layout_manager_unittest.cc

Issue 504793003: Resize BrowserFrameAsh and not RenderWidgetHostViewAura when keyboard bounds change. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/wm/workspace/workspace_layout_manager.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/wm/workspace/workspace_layout_manager_unittest.cc
diff --git a/ash/wm/workspace/workspace_layout_manager_unittest.cc b/ash/wm/workspace/workspace_layout_manager_unittest.cc
index a5fa688c4cd009eb53c4fb7b106738ae61a952d5..5c81eb8cc1aca340836fcc589d59650cc14ffa26 100644
--- a/ash/wm/workspace/workspace_layout_manager_unittest.cc
+++ b/ash/wm/workspace/workspace_layout_manager_unittest.cc
@@ -1034,6 +1034,56 @@ class FakeTextInputClient : public ui::DummyTextInputClient {
DISALLOW_COPY_AND_ASSIGN(FakeTextInputClient);
};
+TEST_F(WorkspaceLayoutManagerKeyboardTest, ChildWindowFocused) {
flackr 2014/08/25 20:06:51 nit: Add a description, i.e.: Tests that when a ch
rsadam 2014/08/26 14:36:49 Done.
+ gfx::Rect work_area(
+ Shell::GetScreen()->GetPrimaryDisplay().work_area());
+ gfx::Rect keyboard_bounds(work_area.x(),
+ work_area.y() + work_area.height() / 2,
+ work_area.width(),
+ work_area.height() / 2);
+
+ SetKeyboardBounds(keyboard_bounds);
+
+ aura::test::TestWindowDelegate delegate1;
+ scoped_ptr<aura::Window> parent_window(CreateTestWindowInShellWithDelegate(
+ &delegate1, -1, work_area));
+ aura::test::TestWindowDelegate delegate2;
+ scoped_ptr<aura::Window> window(CreateTestWindowInShellWithDelegate(
+ &delegate2, -1, work_area));
+ parent_window->AddChild(window.get());
+
+ aura::Window* root_window = ash::Shell::GetInstance()->GetPrimaryRootWindow();
+ FakeTextInputClient text_input_client(window.get());
+ ui::InputMethod* input_method =
+ root_window->GetProperty(aura::client::kRootWindowInputMethodKey);
+ if (switches::IsTextInputFocusManagerEnabled()) {
+ ui::TextInputFocusManager::GetInstance()->FocusTextInputClient(
+ &text_input_client);
+ } else {
+ input_method->SetFocusedTextInputClient(&text_input_client);
+ }
flackr 2014/08/25 20:06:51 Can you make methods in WorkspaceLayoutManagerKeyb
rsadam 2014/08/26 14:36:49 Done.
+
+ int available_height =
+ Shell::GetScreen()->GetPrimaryDisplay().bounds().height() -
+ keyboard_bounds.height();
+
+ gfx::Rect small_window_bound(50, 50, 100, 500);
flackr 2014/08/25 20:06:51 nit: s/small_window_bound/initial_window_bounds
rsadam 2014/08/26 14:36:49 Done.
+ parent_window->SetBounds(small_window_bound);
+ EXPECT_EQ(small_window_bound.ToString(), parent_window->bounds().ToString());
+ ShowKeyboard();
+ EXPECT_EQ(gfx::Rect(50, 0, 100, available_height).ToString(),
+ parent_window->bounds().ToString());
+ HideKeyboard();
+ EXPECT_EQ(small_window_bound.ToString(), parent_window->bounds().ToString());
+
+ if (switches::IsTextInputFocusManagerEnabled()) {
+ ui::TextInputFocusManager::GetInstance()->BlurTextInputClient(
+ &text_input_client);
+ } else {
+ input_method->SetFocusedTextInputClient(NULL);
+ }
+}
+
TEST_F(WorkspaceLayoutManagerKeyboardTest, AdjustWindowForA11yKeyboard) {
gfx::Rect work_area(
Shell::GetScreen()->GetPrimaryDisplay().work_area());
« no previous file with comments | « ash/wm/workspace/workspace_layout_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698