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

Unified Diff: chrome/browser/ui/views/apps/chrome_native_app_window_views.cc

Issue 503383002: Allow component IME extension use app.window and add 'ime' window type for app window (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase and init the window with correct parent instead of reparent afterwards Created 6 years, 3 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
Index: chrome/browser/ui/views/apps/chrome_native_app_window_views.cc
diff --git a/chrome/browser/ui/views/apps/chrome_native_app_window_views.cc b/chrome/browser/ui/views/apps/chrome_native_app_window_views.cc
index 18765b787549a89f94b9773205bb0a61688f8397..86da907b9471d39748284418f7b18cd0c718e6e0 100644
--- a/chrome/browser/ui/views/apps/chrome_native_app_window_views.cc
+++ b/chrome/browser/ui/views/apps/chrome_native_app_window_views.cc
@@ -38,6 +38,7 @@
#include "ash/frame/custom_frame_view_ash.h"
#include "ash/screen_util.h"
#include "ash/shell.h"
+#include "ash/shell_window_ids.h"
#include "ash/wm/immersive_fullscreen_controller.h"
#include "ash/wm/panels/panel_frame_view.h"
#include "ash/wm/window_properties.h"
@@ -226,6 +227,14 @@ void ChromeNativeAppWindowViews::InitializeDefaultWindow(
#endif
OnBeforeWidgetInit(&init_params, widget());
+#if defined(USE_ASH)
benwells 2014/09/09 00:02:30 This will compile on most platforms. Is it a probl
bshe 2014/09/10 22:34:55 Restricted to chromeos only as IME is ChromeOS onl
+ if (create_params.is_ime_window) {
+ // Puts ime windows to ime window container.
benwells 2014/09/09 00:02:30 Nit: s/to/into/ .... or something.
bshe 2014/09/10 22:34:55 Done.
+ init_params.parent = ash::Shell::GetContainer(
+ ash::Shell::GetPrimaryRootWindow(),
+ ash::kShellWindowId_ImeWindowParentContainer);
+ }
+#endif
widget()->Init(init_params);
// The frame insets are required to resolve the bounds specifications
@@ -254,6 +263,11 @@ void ChromeNativeAppWindowViews::InitializeDefaultWindow(
wm::SetShadowType(widget()->GetNativeWindow(), wm::SHADOW_TYPE_NONE);
}
+#if defined(USE_ASH)
benwells 2014/09/09 00:02:30 I think this part should defitely restrict on the
bshe 2014/09/10 22:34:55 Done.
+ if (create_params.is_ime_window)
+ return;
+#endif
+
// Register accelarators supported by app windows.
// TODO(jeremya/stevenjb): should these be registered for panels too?
views::FocusManager* focus_manager = GetFocusManager();

Powered by Google App Engine
This is Rietveld 408576698