| OLD | NEW |
| 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 1690 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1701 | 1701 |
| 1702 - (id)initWithRenderWidgetHostViewMac:(RenderWidgetHostViewMac*)r { | 1702 - (id)initWithRenderWidgetHostViewMac:(RenderWidgetHostViewMac*)r { |
| 1703 self = [super initWithFrame:NSZeroRect]; | 1703 self = [super initWithFrame:NSZeroRect]; |
| 1704 if (self) { | 1704 if (self) { |
| 1705 self.acceptsTouchEvents = YES; | 1705 self.acceptsTouchEvents = YES; |
| 1706 editCommand_helper_.reset(new RenderWidgetHostViewMacEditCommandHelper); | 1706 editCommand_helper_.reset(new RenderWidgetHostViewMacEditCommandHelper); |
| 1707 editCommand_helper_->AddEditingSelectorsToClass([self class]); | 1707 editCommand_helper_->AddEditingSelectorsToClass([self class]); |
| 1708 | 1708 |
| 1709 renderWidgetHostView_.reset(r); | 1709 renderWidgetHostView_.reset(r); |
| 1710 canBeKeyView_ = YES; | 1710 canBeKeyView_ = YES; |
| 1711 opaque_ = YES; |
| 1711 focusedPluginIdentifier_ = -1; | 1712 focusedPluginIdentifier_ = -1; |
| 1712 | 1713 |
| 1713 // OpenGL support: | 1714 // OpenGL support: |
| 1714 if ([self respondsToSelector: | 1715 if ([self respondsToSelector: |
| 1715 @selector(setWantsBestResolutionOpenGLSurface:)]) { | 1716 @selector(setWantsBestResolutionOpenGLSurface:)]) { |
| 1716 [self setWantsBestResolutionOpenGLSurface:YES]; | 1717 [self setWantsBestResolutionOpenGLSurface:YES]; |
| 1717 } | 1718 } |
| 1718 [[NSNotificationCenter defaultCenter] | 1719 [[NSNotificationCenter defaultCenter] |
| 1719 addObserver:self | 1720 addObserver:self |
| 1720 selector:@selector(didChangeScreenParameters:) | 1721 selector:@selector(didChangeScreenParameters:) |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1789 } | 1790 } |
| 1790 | 1791 |
| 1791 - (BOOL)acceptsFirstMouse:(NSEvent*)theEvent { | 1792 - (BOOL)acceptsFirstMouse:(NSEvent*)theEvent { |
| 1792 return [self acceptsMouseEventsWhenInactive]; | 1793 return [self acceptsMouseEventsWhenInactive]; |
| 1793 } | 1794 } |
| 1794 | 1795 |
| 1795 - (void)setCloseOnDeactivate:(BOOL)b { | 1796 - (void)setCloseOnDeactivate:(BOOL)b { |
| 1796 closeOnDeactivate_ = b; | 1797 closeOnDeactivate_ = b; |
| 1797 } | 1798 } |
| 1798 | 1799 |
| 1800 - (void)setOpaque:(BOOL)opaque { |
| 1801 opaque_ = opaque; |
| 1802 } |
| 1803 |
| 1799 - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent { | 1804 - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent { |
| 1800 NSWindow* window = [self window]; | 1805 NSWindow* window = [self window]; |
| 1801 // If this is a background window, don't handle mouse movement events. This | 1806 // If this is a background window, don't handle mouse movement events. This |
| 1802 // is the expected behavior on the Mac as evidenced by other applications. | 1807 // is the expected behavior on the Mac as evidenced by other applications. |
| 1803 if ([theEvent type] == NSMouseMoved && | 1808 if ([theEvent type] == NSMouseMoved && |
| 1804 ![self acceptsMouseEventsWhenInactive] && | 1809 ![self acceptsMouseEventsWhenInactive] && |
| 1805 ![window isKeyWindow]) { | 1810 ![window isKeyWindow]) { |
| 1806 return YES; | 1811 return YES; |
| 1807 } | 1812 } |
| 1808 | 1813 |
| (...skipping 1551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3360 if (!string) return NO; | 3365 if (!string) return NO; |
| 3361 | 3366 |
| 3362 // If the user is currently using an IME, confirm the IME input, | 3367 // If the user is currently using an IME, confirm the IME input, |
| 3363 // and then insert the text from the service, the same as TextEdit and Safari. | 3368 // and then insert the text from the service, the same as TextEdit and Safari. |
| 3364 [self confirmComposition]; | 3369 [self confirmComposition]; |
| 3365 [self insertText:string]; | 3370 [self insertText:string]; |
| 3366 return YES; | 3371 return YES; |
| 3367 } | 3372 } |
| 3368 | 3373 |
| 3369 - (BOOL)isOpaque { | 3374 - (BOOL)isOpaque { |
| 3370 return YES; | 3375 return opaque_; |
| 3371 } | 3376 } |
| 3372 | 3377 |
| 3373 // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding | 3378 // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding |
| 3374 // regions that are not draggable. (See ControlRegionView in | 3379 // regions that are not draggable. (See ControlRegionView in |
| 3375 // native_app_window_cocoa.mm). This requires the render host view to be | 3380 // native_app_window_cocoa.mm). This requires the render host view to be |
| 3376 // draggable by default. | 3381 // draggable by default. |
| 3377 - (BOOL)mouseDownCanMoveWindow { | 3382 - (BOOL)mouseDownCanMoveWindow { |
| 3378 return YES; | 3383 return YES; |
| 3379 } | 3384 } |
| 3380 | 3385 |
| 3381 @end | 3386 @end |
| OLD | NEW |