summaryrefslogtreecommitdiffstats
path: root/content/browser/browser_main_runner.cc
diff options
context:
space:
mode:
authornona@chromium.org <nona@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-08 21:54:25 +0000
committernona@chromium.org <nona@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-08 21:54:25 +0000
commit7f5d4a55773c74247ce54e5e431af370d1a02c1b (patch)
tree5978a71c8067f7900c7ca4bcaa1a54897fbdece4 /content/browser/browser_main_runner.cc
parentc398cd2b6e95dc12d1bf68ec39bc54737ef1df50 (diff)
downloadchromium_src-7f5d4a55773c74247ce54e5e431af370d1a02c1b.zip
chromium_src-7f5d4a55773c74247ce54e5e431af370d1a02c1b.tar.gz
chromium_src-7f5d4a55773c74247ce54e5e431af370d1a02c1b.tar.bz2
Minimal implementation of ui::TextInputClient
On Win8/metro environment, we should share the same TSF stuff for avoiding behavior regressions. This patch does not change existing IMM32 behaviors. BUG=141611 TEST=None Review URL: https://chromiumcodereview.appspot.com/10828421 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155596 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/browser_main_runner.cc')
-rw-r--r--content/browser/browser_main_runner.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/content/browser/browser_main_runner.cc b/content/browser/browser_main_runner.cc
index 399cb58..b4ec806 100644
--- a/content/browser/browser_main_runner.cc
+++ b/content/browser/browser_main_runner.cc
@@ -19,7 +19,9 @@
#include "content/public/common/main_function_params.h"
#if defined(OS_WIN)
+#include "base/win/metro.h"
#include "base/win/scoped_com_initializer.h"
+#include "ui/base/win/tsf_bridge.h"
#endif
bool g_exited_main_message_loop = false;
@@ -81,8 +83,9 @@ class BrowserMainRunnerImpl : public content::BrowserMainRunner {
// Make this call before going multithreaded, or spawning any subprocesses.
base::allocator::SetupSubprocessAllocator();
#endif
-
com_initializer_.reset(new base::win::ScopedCOMInitializer);
+ if (base::win::IsTsfAwareRequired())
+ ui::TsfBridge::Initialize();
#endif // OS_WIN
main_loop_->CreateThreads();
@@ -111,6 +114,8 @@ class BrowserMainRunnerImpl : public content::BrowserMainRunner {
main_loop_->ShutdownThreadsAndCleanUp();
#if defined(OS_WIN)
+ if (base::win::IsTsfAwareRequired())
+ ui::TsfBridge::GetInstance()->Shutdown();
com_initializer_.reset(NULL);
#endif