chrome_render_widget_host_view_mac_delegate.h revision c2e0dbddbe15c98d52c4786dac06cb8952a8ae6d
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 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_WIDGET_HOST_VIEW_DELEGATE_H_ 6#define CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_WIDGET_HOST_VIEW_DELEGATE_H_ 7 8#import <Cocoa/Cocoa.h> 9 10#include "base/memory/scoped_ptr.h" 11#import "content/public/browser/render_widget_host_view_mac_delegate.h" 12 13namespace content { 14class RenderWidgetHost; 15} 16 17namespace ChromeRenderWidgetHostViewMacDelegateInternal { 18class SpellCheckRenderViewObserver; 19} 20 21@interface ChromeRenderWidgetHostViewMacDelegate 22 : NSObject<RenderWidgetHostViewMacDelegate> { 23 @private 24 content::RenderWidgetHost* renderWidgetHost_; // weak 25 scoped_ptr<ChromeRenderWidgetHostViewMacDelegateInternal:: 26 SpellCheckRenderViewObserver> spellingObserver_; 27 28 // If the viewport is scrolled all the way to the left or right. 29 // Used for history swiping. 30 BOOL isPinnedLeft_; 31 BOOL isPinnedRight_; 32 33 // If the main frame has a horizontal scrollbar. 34 // Used for history swiping. 35 BOOL hasHorizontalScrollbar_; 36 37 // If a scroll event came back unhandled from the renderer. Set to |NO| at 38 // the start of a scroll gesture, and then to |YES| if a scroll event comes 39 // back unhandled from the renderer. 40 // Used for history swiping. 41 BOOL gotUnhandledWheelEvent_; 42 43 // Cumulative scroll delta since scroll gesture start. Only valid during 44 // scroll gesture handling. Used for history swiping. 45 NSSize totalScrollDelta_; 46 47 // Used for continuous spell checking. 48 BOOL spellcheckEnabled_; 49 BOOL spellcheckChecked_; 50} 51 52- (id)initWithRenderWidgetHost:(content::RenderWidgetHost*)renderWidgetHost; 53 54- (void)viewGone:(NSView*)view; 55- (BOOL)handleEvent:(NSEvent*)event; 56- (void)gotUnhandledWheelEvent; 57- (void)scrollOffsetPinnedToLeft:(BOOL)left toRight:(BOOL)right; 58- (void)setHasHorizontalScrollbar:(BOOL)hasHorizontalScrollbar; 59- (BOOL)validateUserInterfaceItem:(id<NSValidatedUserInterfaceItem>)item 60 isValidItem:(BOOL*)valid; 61- (void)compositingIOSurfaceCreated; 62 63@end 64 65#endif // CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_WIDGET_HOST_VIEW_DELEGATE_H_ 66