| Index: chrome/browser/ui/touch/frame/touch_browser_frame_view.cc
|
| diff --git a/chrome/browser/ui/touch/frame/touch_browser_frame_view.cc b/chrome/browser/ui/touch/frame/touch_browser_frame_view.cc
|
| index 50a2f3359c8d38388aa2cbe2413e4dfef9eb3d31..a6d35b130480f66b3cf250b784d3d86c0b714ba9 100644
|
| --- a/chrome/browser/ui/touch/frame/touch_browser_frame_view.cc
|
| +++ b/chrome/browser/ui/touch/frame/touch_browser_frame_view.cc
|
| @@ -65,6 +65,9 @@ TouchBrowserFrameView::TouchBrowserFrameView(BrowserFrame* frame,
|
| registrar_.Add(this,
|
| NotificationType::TAB_CONTENTS_DESTROYED,
|
| NotificationService::AllSources());
|
| + registrar_.Add(this,
|
| + NotificationType::HIDE_KEYBOARD_INVOKED,
|
| + NotificationService::AllSources());
|
|
|
| browser_view->browser()->tabstrip_model()->AddObserver(this);
|
|
|
| @@ -275,6 +278,14 @@ void TouchBrowserFrameView::Observe(NotificationType type,
|
| Source<TabContents>(source).ptr()->property_bag());
|
| } else if (type == NotificationType::PREF_CHANGED) {
|
| OpaqueBrowserFrameView::Observe(type, source, details);
|
| + } else if (type == NotificationType::HIDE_KEYBOARD_INVOKED) {
|
| + TabContents* tab_contents =
|
| + browser_view()->browser()->GetSelectedTabContents();
|
| + if (tab_contents) {
|
| + GetFocusedStateAccessor()->SetProperty(tab_contents->property_bag(),
|
| + false);
|
| + }
|
| + UpdateKeyboardAndLayout(false);
|
| }
|
| }
|
|
|
|
|