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

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

Issue 300863002: mac: History swiping doesn't work right with iframes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix unit tests. Created 6 years, 6 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 <QuartzCore/QuartzCore.h> 8 #include <QuartzCore/QuartzCore.h>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 return methodDescription.name != NULL || methodDescription.types != NULL; 151 return methodDescription.name != NULL || methodDescription.types != NULL;
152 } 152 }
153 153
154 // Private methods: 154 // Private methods:
155 @interface RenderWidgetHostViewCocoa () 155 @interface RenderWidgetHostViewCocoa ()
156 @property(nonatomic, assign) NSRange selectedRange; 156 @property(nonatomic, assign) NSRange selectedRange;
157 @property(nonatomic, assign) NSRange markedRange; 157 @property(nonatomic, assign) NSRange markedRange;
158 158
159 + (BOOL)shouldAutohideCursorForEvent:(NSEvent*)event; 159 + (BOOL)shouldAutohideCursorForEvent:(NSEvent*)event;
160 - (id)initWithRenderWidgetHostViewMac:(RenderWidgetHostViewMac*)r; 160 - (id)initWithRenderWidgetHostViewMac:(RenderWidgetHostViewMac*)r;
161 - (void)gotUnhandledWheelEvent; 161 - (void)processedWheelEvent:(const blink::WebMouseWheelEvent&)event
162 consumed:(BOOL)consumed;
163
162 - (void)scrollOffsetPinnedToLeft:(BOOL)left toRight:(BOOL)right; 164 - (void)scrollOffsetPinnedToLeft:(BOOL)left toRight:(BOOL)right;
163 - (void)setHasHorizontalScrollbar:(BOOL)has_horizontal_scrollbar; 165 - (void)setHasHorizontalScrollbar:(BOOL)has_horizontal_scrollbar;
164 - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv; 166 - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv;
165 - (void)windowDidChangeBackingProperties:(NSNotification*)notification; 167 - (void)windowDidChangeBackingProperties:(NSNotification*)notification;
166 - (void)windowChangedGlobalFrame:(NSNotification*)notification; 168 - (void)windowChangedGlobalFrame:(NSNotification*)notification;
167 - (void)drawWithDirtyRect:(CGRect)dirtyRect 169 - (void)drawWithDirtyRect:(CGRect)dirtyRect
168 inContext:(CGContextRef)context; 170 inContext:(CGContextRef)context;
169 - (void)checkForPluginImeCancellation; 171 - (void)checkForPluginImeCancellation;
170 - (void)updateScreenProperties; 172 - (void)updateScreenProperties;
171 - (void)setResponderDelegate: 173 - (void)setResponderDelegate:
(...skipping 1853 matching lines...) Expand 10 before | Expand all | Expand 10 after
2025 mouse_locked_ = false; 2027 mouse_locked_ = false;
2026 2028
2027 // Unlock position of mouse cursor and unhide it. 2029 // Unlock position of mouse cursor and unhide it.
2028 CGAssociateMouseAndMouseCursorPosition(YES); 2030 CGAssociateMouseAndMouseCursorPosition(YES);
2029 [NSCursor unhide]; 2031 [NSCursor unhide];
2030 2032
2031 if (render_widget_host_) 2033 if (render_widget_host_)
2032 render_widget_host_->LostMouseLock(); 2034 render_widget_host_->LostMouseLock();
2033 } 2035 }
2034 2036
2035 void RenderWidgetHostViewMac::UnhandledWheelEvent( 2037 void RenderWidgetHostViewMac::ProcessedWheelEvent(
2036 const blink::WebMouseWheelEvent& event) { 2038 const blink::WebMouseWheelEvent& event,
2039 bool consumed) {
2037 // Only record a wheel event as unhandled if JavaScript handlers got a chance 2040 // Only record a wheel event as unhandled if JavaScript handlers got a chance
2038 // to see it (no-op wheel events are ignored by the event dispatcher) 2041 // to see it (no-op wheel events are ignored by the event dispatcher)
2039 if (event.deltaX || event.deltaY) 2042 if (event.deltaX || event.deltaY)
2040 [cocoa_view_ gotUnhandledWheelEvent]; 2043 [cocoa_view_ processedWheelEvent:event consumed:consumed];
2041 } 2044 }
2042 2045
2043 bool RenderWidgetHostViewMac::Send(IPC::Message* message) { 2046 bool RenderWidgetHostViewMac::Send(IPC::Message* message) {
2044 if (render_widget_host_) 2047 if (render_widget_host_)
2045 return render_widget_host_->Send(message); 2048 return render_widget_host_->Send(message);
2046 delete message; 2049 delete message;
2047 return false; 2050 return false;
2048 } 2051 }
2049 2052
2050 void RenderWidgetHostViewMac::SoftwareFrameWasFreed( 2053 void RenderWidgetHostViewMac::SoftwareFrameWasFreed(
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after
2561 responderDelegate_.reset([delegate retain]); 2564 responderDelegate_.reset([delegate retain]);
2562 } 2565 }
2563 2566
2564 - (void)resetCursorRects { 2567 - (void)resetCursorRects {
2565 if (currentCursor_) { 2568 if (currentCursor_) {
2566 [self addCursorRect:[self visibleRect] cursor:currentCursor_]; 2569 [self addCursorRect:[self visibleRect] cursor:currentCursor_];
2567 [currentCursor_ setOnMouseEntered:YES]; 2570 [currentCursor_ setOnMouseEntered:YES];
2568 } 2571 }
2569 } 2572 }
2570 2573
2571 - (void)gotUnhandledWheelEvent { 2574 - (void)processedWheelEvent:(const blink::WebMouseWheelEvent&)event
2572 if (responderDelegate_ && 2575 consumed:(BOOL)consumed {
2573 [responderDelegate_ 2576 [responderDelegate_ rendererHandledWheelEvent:event consumed:consumed];
2574 respondsToSelector:@selector(gotUnhandledWheelEvent)]) {
2575 [responderDelegate_ gotUnhandledWheelEvent];
2576 }
2577 } 2577 }
2578 2578
2579 - (void)scrollOffsetPinnedToLeft:(BOOL)left toRight:(BOOL)right { 2579 - (void)scrollOffsetPinnedToLeft:(BOOL)left toRight:(BOOL)right {
2580 if (responderDelegate_ && 2580 if (responderDelegate_ &&
2581 [responderDelegate_ 2581 [responderDelegate_
2582 respondsToSelector:@selector(scrollOffsetPinnedToLeft:toRight:)]) { 2582 respondsToSelector:@selector(scrollOffsetPinnedToLeft:toRight:)]) {
2583 [responderDelegate_ scrollOffsetPinnedToLeft:left toRight:right]; 2583 [responderDelegate_ scrollOffsetPinnedToLeft:left toRight:right];
2584 } 2584 }
2585 } 2585 }
2586 2586
(...skipping 1798 matching lines...) Expand 10 before | Expand all | Expand 10 after
4385 4385
4386 // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding 4386 // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding
4387 // regions that are not draggable. (See ControlRegionView in 4387 // regions that are not draggable. (See ControlRegionView in
4388 // native_app_window_cocoa.mm). This requires the render host view to be 4388 // native_app_window_cocoa.mm). This requires the render host view to be
4389 // draggable by default. 4389 // draggable by default.
4390 - (BOOL)mouseDownCanMoveWindow { 4390 - (BOOL)mouseDownCanMoveWindow {
4391 return YES; 4391 return YES;
4392 } 4392 }
4393 4393
4394 @end 4394 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698