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

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_mac.mm

Issue 1234193002: Simplify InputMethodWin initialization. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/renderer_host/render_widget_host_view_mac.h" 5 #include "content/browser/renderer_host/render_widget_host_view_mac.h"
6 6
7 #import <objc/runtime.h> 7 #import <objc/runtime.h>
8 #include <OpenGL/gl.h> 8 #include <OpenGL/gl.h>
9 #include <QuartzCore/QuartzCore.h> 9 #include <QuartzCore/QuartzCore.h>
10 10
(...skipping 2536 matching lines...) Expand 10 before | Expand all | Expand 10 after
2547 return NO; 2547 return NO;
2548 2548
2549 return canBeKeyView_; 2549 return canBeKeyView_;
2550 } 2550 }
2551 2551
2552 - (BOOL)becomeFirstResponder { 2552 - (BOOL)becomeFirstResponder {
2553 if (!renderWidgetHostView_->render_widget_host_) 2553 if (!renderWidgetHostView_->render_widget_host_)
2554 return NO; 2554 return NO;
2555 2555
2556 renderWidgetHostView_->render_widget_host_->Focus(); 2556 renderWidgetHostView_->render_widget_host_->Focus();
2557 renderWidgetHostView_->render_widget_host_->SetInputMethodActive(true);
2558 renderWidgetHostView_->SetTextInputActive(true); 2557 renderWidgetHostView_->SetTextInputActive(true);
2559 2558
2560 // Cancel any onging composition text which was left before we lost focus. 2559 // Cancel any onging composition text which was left before we lost focus.
2561 // TODO(suzhe): We should do it in -resignFirstResponder: method, but 2560 // TODO(suzhe): We should do it in -resignFirstResponder: method, but
2562 // somehow that method won't be called when switching among different tabs. 2561 // somehow that method won't be called when switching among different tabs.
2563 // See http://crbug.com/47209 2562 // See http://crbug.com/47209
2564 [self cancelComposition]; 2563 [self cancelComposition];
2565 2564
2566 NSNumber* direction = [NSNumber numberWithUnsignedInteger: 2565 NSNumber* direction = [NSNumber numberWithUnsignedInteger:
2567 [[self window] keyViewSelectionDirection]]; 2566 [[self window] keyViewSelectionDirection]];
2568 NSDictionary* userInfo = 2567 NSDictionary* userInfo =
2569 [NSDictionary dictionaryWithObject:direction 2568 [NSDictionary dictionaryWithObject:direction
2570 forKey:kSelectionDirection]; 2569 forKey:kSelectionDirection];
2571 [[NSNotificationCenter defaultCenter] 2570 [[NSNotificationCenter defaultCenter]
2572 postNotificationName:kViewDidBecomeFirstResponder 2571 postNotificationName:kViewDidBecomeFirstResponder
2573 object:self 2572 object:self
2574 userInfo:userInfo]; 2573 userInfo:userInfo];
2575 2574
2576 return YES; 2575 return YES;
2577 } 2576 }
2578 2577
2579 - (BOOL)resignFirstResponder { 2578 - (BOOL)resignFirstResponder {
2580 renderWidgetHostView_->SetTextInputActive(false); 2579 renderWidgetHostView_->SetTextInputActive(false);
2581 if (!renderWidgetHostView_->render_widget_host_) 2580 if (!renderWidgetHostView_->render_widget_host_)
2582 return YES; 2581 return YES;
2583 2582
2584 if (closeOnDeactivate_) 2583 if (closeOnDeactivate_)
2585 renderWidgetHostView_->KillSelf(); 2584 renderWidgetHostView_->KillSelf();
2586 2585
2587 renderWidgetHostView_->render_widget_host_->SetInputMethodActive(false);
2588 renderWidgetHostView_->render_widget_host_->Blur(); 2586 renderWidgetHostView_->render_widget_host_->Blur();
2589 2587
2590 // We should cancel any onging composition whenever RWH's Blur() method gets 2588 // We should cancel any onging composition whenever RWH's Blur() method gets
2591 // called, because in this case, webkit will confirm the ongoing composition 2589 // called, because in this case, webkit will confirm the ongoing composition
2592 // internally. 2590 // internally.
2593 [self cancelComposition]; 2591 [self cancelComposition];
2594 2592
2595 return YES; 2593 return YES;
2596 } 2594 }
2597 2595
(...skipping 706 matching lines...) Expand 10 before | Expand all | Expand 10 after
3304 3302
3305 // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding 3303 // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding
3306 // regions that are not draggable. (See ControlRegionView in 3304 // regions that are not draggable. (See ControlRegionView in
3307 // native_app_window_cocoa.mm). This requires the render host view to be 3305 // native_app_window_cocoa.mm). This requires the render host view to be
3308 // draggable by default. 3306 // draggable by default.
3309 - (BOOL)mouseDownCanMoveWindow { 3307 - (BOOL)mouseDownCanMoveWindow {
3310 return YES; 3308 return YES;
3311 } 3309 }
3312 3310
3313 @end 3311 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698