Ash: tell the browser process of the LANGID of the active input source
This is a preparation CL to implement 'locale' property proposed in UI Events (formerly called d4e).
http://www.w3.org/TR/uievents/#idl-def-KeyboardEventInit

On Windows 8/8.1, a user can still choose per-process IME/keyboard layout model. Thus, we need to tell the browser process what IME/keyboard layout is used in the metro_driver process whenever it is changed.

BUG=168971
TEST=manually done on Windows 8.1

Review URL: https://codereview.chromium.org/109683002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239971 0039d316-1c4b-4281-b951-d872f2087c98
Ash: Use ATL to implement TsfTextStore.

This is just a cleanup CL that never changes current behavior.

This CL uses CComObjectRootEx to avoid boilerplate COM implementation code

BUG=326912
TEST=manually done on Windows 8.1

Review URL: https://codereview.chromium.org/109723002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239972 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 239972