| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). | 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
| 7 * met: | 7 * met: |
| 8 * | 8 * |
| 9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 22 matching lines...) Expand all Loading... |
| 33 #define ChromeClientImpl_h | 33 #define ChromeClientImpl_h |
| 34 | 34 |
| 35 #include "core/page/ChromeClient.h" | 35 #include "core/page/ChromeClient.h" |
| 36 #include "modules/navigatorcontentutils/NavigatorContentUtilsClient.h" | 36 #include "modules/navigatorcontentutils/NavigatorContentUtilsClient.h" |
| 37 #include "platform/PopupMenu.h" | 37 #include "platform/PopupMenu.h" |
| 38 #include "platform/weborigin/KURL.h" | 38 #include "platform/weborigin/KURL.h" |
| 39 #include "public/platform/WebColor.h" | 39 #include "public/platform/WebColor.h" |
| 40 #include "public/web/WebNavigationPolicy.h" | 40 #include "public/web/WebNavigationPolicy.h" |
| 41 #include "wtf/PassOwnPtr.h" | 41 #include "wtf/PassOwnPtr.h" |
| 42 | 42 |
| 43 namespace WebCore { | 43 namespace blink { |
| 44 class AXObject; | 44 class AXObject; |
| 45 class ColorChooser; | 45 class ColorChooser; |
| 46 class ColorChooserClient; | 46 class ColorChooserClient; |
| 47 class Element; | 47 class Element; |
| 48 class Event; | 48 class Event; |
| 49 class FileChooser; | 49 class FileChooser; |
| 50 class GraphicsLayerFactory; | 50 class GraphicsLayerFactory; |
| 51 class HTMLFormControlElement; | 51 class HTMLFormControlElement; |
| 52 class HTMLInputElement; | 52 class HTMLInputElement; |
| 53 class KeyboardEvent; | 53 class KeyboardEvent; |
| 54 class PopupMenuClient; | 54 class PopupMenuClient; |
| 55 class RenderBox; | 55 class RenderBox; |
| 56 class SecurityOrigin; | 56 class SecurityOrigin; |
| 57 class DateTimeChooser; | 57 class DateTimeChooser; |
| 58 class DateTimeChooserClient; | 58 class DateTimeChooserClient; |
| 59 struct WindowFeatures; | 59 struct WindowFeatures; |
| 60 } | 60 } |
| 61 | 61 |
| 62 namespace blink { | 62 namespace blink { |
| 63 class WebColorChooser; | 63 class WebColorChooser; |
| 64 class WebColorChooserClient; | 64 class WebColorChooserClient; |
| 65 class WebViewImpl; | 65 class WebViewImpl; |
| 66 struct WebCursorInfo; | 66 struct WebCursorInfo; |
| 67 struct WebPopupMenuInfo; | 67 struct WebPopupMenuInfo; |
| 68 | 68 |
| 69 // Handles window-level notifications from WebCore on behalf of a WebView. | 69 // Handles window-level notifications from WebCore on behalf of a WebView. |
| 70 class ChromeClientImpl FINAL : public WebCore::ChromeClient { | 70 class ChromeClientImpl FINAL : public blink::ChromeClient { |
| 71 public: | 71 public: |
| 72 explicit ChromeClientImpl(WebViewImpl* webView); | 72 explicit ChromeClientImpl(WebViewImpl* webView); |
| 73 virtual ~ChromeClientImpl(); | 73 virtual ~ChromeClientImpl(); |
| 74 | 74 |
| 75 virtual void* webView() const OVERRIDE; | 75 virtual void* webView() const OVERRIDE; |
| 76 | 76 |
| 77 // ChromeClient methods: | 77 // ChromeClient methods: |
| 78 virtual void chromeDestroyed() OVERRIDE; | 78 virtual void chromeDestroyed() OVERRIDE; |
| 79 virtual void setWindowRect(const WebCore::FloatRect&) OVERRIDE; | 79 virtual void setWindowRect(const blink::FloatRect&) OVERRIDE; |
| 80 virtual WebCore::FloatRect windowRect() OVERRIDE; | 80 virtual blink::FloatRect windowRect() OVERRIDE; |
| 81 virtual WebCore::FloatRect pageRect() OVERRIDE; | 81 virtual blink::FloatRect pageRect() OVERRIDE; |
| 82 virtual void focus() OVERRIDE; | 82 virtual void focus() OVERRIDE; |
| 83 virtual bool canTakeFocus(WebCore::FocusType) OVERRIDE; | 83 virtual bool canTakeFocus(blink::FocusType) OVERRIDE; |
| 84 virtual void takeFocus(WebCore::FocusType) OVERRIDE; | 84 virtual void takeFocus(blink::FocusType) OVERRIDE; |
| 85 virtual void focusedNodeChanged(WebCore::Node*) OVERRIDE; | 85 virtual void focusedNodeChanged(blink::Node*) OVERRIDE; |
| 86 virtual void focusedFrameChanged(WebCore::LocalFrame*) OVERRIDE; | 86 virtual void focusedFrameChanged(blink::LocalFrame*) OVERRIDE; |
| 87 virtual WebCore::Page* createWindow( | 87 virtual blink::Page* createWindow( |
| 88 WebCore::LocalFrame*, const WebCore::FrameLoadRequest&, const WebCore::W
indowFeatures&, WebCore::NavigationPolicy, WebCore::ShouldSendReferrer) OVERRIDE
; | 88 blink::LocalFrame*, const blink::FrameLoadRequest&, const blink::WindowF
eatures&, blink::NavigationPolicy, blink::ShouldSendReferrer) OVERRIDE; |
| 89 virtual void show(WebCore::NavigationPolicy) OVERRIDE; | 89 virtual void show(blink::NavigationPolicy) OVERRIDE; |
| 90 virtual bool canRunModal() OVERRIDE; | 90 virtual bool canRunModal() OVERRIDE; |
| 91 virtual void runModal() OVERRIDE; | 91 virtual void runModal() OVERRIDE; |
| 92 virtual void setToolbarsVisible(bool) OVERRIDE; | 92 virtual void setToolbarsVisible(bool) OVERRIDE; |
| 93 virtual bool toolbarsVisible() OVERRIDE; | 93 virtual bool toolbarsVisible() OVERRIDE; |
| 94 virtual void setStatusbarVisible(bool) OVERRIDE; | 94 virtual void setStatusbarVisible(bool) OVERRIDE; |
| 95 virtual bool statusbarVisible() OVERRIDE; | 95 virtual bool statusbarVisible() OVERRIDE; |
| 96 virtual void setScrollbarsVisible(bool) OVERRIDE; | 96 virtual void setScrollbarsVisible(bool) OVERRIDE; |
| 97 virtual bool scrollbarsVisible() OVERRIDE; | 97 virtual bool scrollbarsVisible() OVERRIDE; |
| 98 virtual void setMenubarVisible(bool) OVERRIDE; | 98 virtual void setMenubarVisible(bool) OVERRIDE; |
| 99 virtual bool menubarVisible() OVERRIDE; | 99 virtual bool menubarVisible() OVERRIDE; |
| 100 virtual void setResizable(bool) OVERRIDE; | 100 virtual void setResizable(bool) OVERRIDE; |
| 101 virtual bool shouldReportDetailedMessageForSource(const WTF::String&) OVERRI
DE; | 101 virtual bool shouldReportDetailedMessageForSource(const WTF::String&) OVERRI
DE; |
| 102 virtual void addMessageToConsole( | 102 virtual void addMessageToConsole( |
| 103 WebCore::LocalFrame*, WebCore::MessageSource, WebCore::MessageLevel, | 103 blink::LocalFrame*, blink::MessageSource, blink::MessageLevel, |
| 104 const WTF::String& message, unsigned lineNumber, | 104 const WTF::String& message, unsigned lineNumber, |
| 105 const WTF::String& sourceID, const WTF::String& stackTrace) OVERRIDE; | 105 const WTF::String& sourceID, const WTF::String& stackTrace) OVERRIDE; |
| 106 virtual bool canRunBeforeUnloadConfirmPanel() OVERRIDE; | 106 virtual bool canRunBeforeUnloadConfirmPanel() OVERRIDE; |
| 107 virtual bool runBeforeUnloadConfirmPanel( | 107 virtual bool runBeforeUnloadConfirmPanel( |
| 108 const WTF::String& message, WebCore::LocalFrame*) OVERRIDE; | 108 const WTF::String& message, blink::LocalFrame*) OVERRIDE; |
| 109 virtual void closeWindowSoon() OVERRIDE; | 109 virtual void closeWindowSoon() OVERRIDE; |
| 110 virtual void runJavaScriptAlert(WebCore::LocalFrame*, const WTF::String&) OV
ERRIDE; | 110 virtual void runJavaScriptAlert(blink::LocalFrame*, const WTF::String&) OVER
RIDE; |
| 111 virtual bool runJavaScriptConfirm(WebCore::LocalFrame*, const WTF::String&)
OVERRIDE; | 111 virtual bool runJavaScriptConfirm(blink::LocalFrame*, const WTF::String&) OV
ERRIDE; |
| 112 virtual bool runJavaScriptPrompt( | 112 virtual bool runJavaScriptPrompt( |
| 113 WebCore::LocalFrame*, const WTF::String& message, | 113 blink::LocalFrame*, const WTF::String& message, |
| 114 const WTF::String& defaultValue, WTF::String& result) OVERRIDE; | 114 const WTF::String& defaultValue, WTF::String& result) OVERRIDE; |
| 115 virtual void setStatusbarText(const WTF::String& message) OVERRIDE; | 115 virtual void setStatusbarText(const WTF::String& message) OVERRIDE; |
| 116 virtual bool tabsToLinks() OVERRIDE; | 116 virtual bool tabsToLinks() OVERRIDE; |
| 117 virtual WebCore::IntRect windowResizerRect() const OVERRIDE; | 117 virtual blink::IntRect windowResizerRect() const OVERRIDE; |
| 118 virtual void invalidateContentsAndRootView(const WebCore::IntRect&) OVERRIDE
; | 118 virtual void invalidateContentsAndRootView(const blink::IntRect&) OVERRIDE; |
| 119 virtual void invalidateContentsForSlowScroll(const WebCore::IntRect&) OVERRI
DE; | 119 virtual void invalidateContentsForSlowScroll(const blink::IntRect&) OVERRIDE
; |
| 120 virtual void scheduleAnimation() OVERRIDE; | 120 virtual void scheduleAnimation() OVERRIDE; |
| 121 virtual void scroll() OVERRIDE; | 121 virtual void scroll() OVERRIDE; |
| 122 virtual WebCore::IntRect rootViewToScreen(const WebCore::IntRect&) const OVE
RRIDE; | 122 virtual blink::IntRect rootViewToScreen(const blink::IntRect&) const OVERRID
E; |
| 123 virtual WebScreenInfo screenInfo() const OVERRIDE; | 123 virtual WebScreenInfo screenInfo() const OVERRIDE; |
| 124 virtual void contentsSizeChanged(WebCore::LocalFrame*, const WebCore::IntSiz
e&) const OVERRIDE; | 124 virtual void contentsSizeChanged(blink::LocalFrame*, const blink::IntSize&)
const OVERRIDE; |
| 125 virtual void deviceOrPageScaleFactorChanged() const OVERRIDE; | 125 virtual void deviceOrPageScaleFactorChanged() const OVERRIDE; |
| 126 virtual void layoutUpdated(WebCore::LocalFrame*) const OVERRIDE; | 126 virtual void layoutUpdated(blink::LocalFrame*) const OVERRIDE; |
| 127 virtual void mouseDidMoveOverElement( | 127 virtual void mouseDidMoveOverElement( |
| 128 const WebCore::HitTestResult&, unsigned modifierFlags) OVERRIDE; | 128 const blink::HitTestResult&, unsigned modifierFlags) OVERRIDE; |
| 129 virtual void setToolTip(const WTF::String& tooltipText, WebCore::TextDirecti
on) OVERRIDE; | 129 virtual void setToolTip(const WTF::String& tooltipText, blink::TextDirection
) OVERRIDE; |
| 130 virtual void dispatchViewportPropertiesDidChange(const WebCore::ViewportDesc
ription&) const OVERRIDE; | 130 virtual void dispatchViewportPropertiesDidChange(const blink::ViewportDescri
ption&) const OVERRIDE; |
| 131 virtual void print(WebCore::LocalFrame*) OVERRIDE; | 131 virtual void print(blink::LocalFrame*) OVERRIDE; |
| 132 virtual void annotatedRegionsChanged() OVERRIDE; | 132 virtual void annotatedRegionsChanged() OVERRIDE; |
| 133 virtual bool paintCustomOverhangArea(WebCore::GraphicsContext*, const WebCor
e::IntRect&, const WebCore::IntRect&, const WebCore::IntRect&) OVERRIDE; | 133 virtual bool paintCustomOverhangArea(blink::GraphicsContext*, const blink::I
ntRect&, const blink::IntRect&, const blink::IntRect&) OVERRIDE; |
| 134 virtual PassOwnPtr<WebCore::ColorChooser> createColorChooser(WebCore::LocalF
rame*, WebCore::ColorChooserClient*, const WebCore::Color&) OVERRIDE; | 134 virtual PassOwnPtr<blink::ColorChooser> createColorChooser(blink::LocalFrame
*, blink::ColorChooserClient*, const blink::Color&) OVERRIDE; |
| 135 virtual PassRefPtrWillBeRawPtr<WebCore::DateTimeChooser> openDateTimeChooser
(WebCore::DateTimeChooserClient*, const WebCore::DateTimeChooserParameters&) OVE
RRIDE; | 135 virtual PassRefPtrWillBeRawPtr<blink::DateTimeChooser> openDateTimeChooser(b
link::DateTimeChooserClient*, const blink::DateTimeChooserParameters&) OVERRIDE; |
| 136 virtual void openTextDataListChooser(WebCore::HTMLInputElement&) OVERRIDE; | 136 virtual void openTextDataListChooser(blink::HTMLInputElement&) OVERRIDE; |
| 137 virtual void runOpenPanel(WebCore::LocalFrame*, PassRefPtr<WebCore::FileChoo
ser>) OVERRIDE; | 137 virtual void runOpenPanel(blink::LocalFrame*, PassRefPtr<blink::FileChooser>
) OVERRIDE; |
| 138 virtual void enumerateChosenDirectory(WebCore::FileChooser*) OVERRIDE; | 138 virtual void enumerateChosenDirectory(blink::FileChooser*) OVERRIDE; |
| 139 virtual void setCursor(const WebCore::Cursor&) OVERRIDE; | 139 virtual void setCursor(const blink::Cursor&) OVERRIDE; |
| 140 virtual void needTouchEvents(bool needTouchEvents) OVERRIDE; | 140 virtual void needTouchEvents(bool needTouchEvents) OVERRIDE; |
| 141 virtual void setTouchAction(WebCore::TouchAction) OVERRIDE; | 141 virtual void setTouchAction(blink::TouchAction) OVERRIDE; |
| 142 | 142 |
| 143 virtual WebCore::GraphicsLayerFactory* graphicsLayerFactory() const OVERRIDE
; | 143 virtual blink::GraphicsLayerFactory* graphicsLayerFactory() const OVERRIDE; |
| 144 | 144 |
| 145 // Pass 0 as the GraphicsLayer to detatch the root layer. | 145 // Pass 0 as the GraphicsLayer to detatch the root layer. |
| 146 virtual void attachRootGraphicsLayer(WebCore::GraphicsLayer*) OVERRIDE; | 146 virtual void attachRootGraphicsLayer(blink::GraphicsLayer*) OVERRIDE; |
| 147 | 147 |
| 148 virtual void enterFullScreenForElement(WebCore::Element*) OVERRIDE; | 148 virtual void enterFullScreenForElement(blink::Element*) OVERRIDE; |
| 149 virtual void exitFullScreenForElement(WebCore::Element*) OVERRIDE; | 149 virtual void exitFullScreenForElement(blink::Element*) OVERRIDE; |
| 150 | 150 |
| 151 virtual void clearCompositedSelectionBounds() OVERRIDE; | 151 virtual void clearCompositedSelectionBounds() OVERRIDE; |
| 152 | 152 |
| 153 // ChromeClient methods: | 153 // ChromeClient methods: |
| 154 virtual void postAccessibilityNotification(WebCore::AXObject*, WebCore::AXOb
jectCache::AXNotification) OVERRIDE; | 154 virtual void postAccessibilityNotification(blink::AXObject*, blink::AXObject
Cache::AXNotification) OVERRIDE; |
| 155 virtual String acceptLanguages() OVERRIDE; | 155 virtual String acceptLanguages() OVERRIDE; |
| 156 | 156 |
| 157 // ChromeClientImpl: | 157 // ChromeClientImpl: |
| 158 void setCursorForPlugin(const WebCursorInfo&); | 158 void setCursorForPlugin(const WebCursorInfo&); |
| 159 void setNewWindowNavigationPolicy(WebNavigationPolicy); | 159 void setNewWindowNavigationPolicy(WebNavigationPolicy); |
| 160 | 160 |
| 161 virtual bool hasOpenedPopup() const OVERRIDE; | 161 virtual bool hasOpenedPopup() const OVERRIDE; |
| 162 virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::LocalFrame&,
WebCore::PopupMenuClient*) const OVERRIDE; | 162 virtual PassRefPtr<blink::PopupMenu> createPopupMenu(blink::LocalFrame&, bli
nk::PopupMenuClient*) const OVERRIDE; |
| 163 WebCore::PagePopup* openPagePopup(WebCore::PagePopupClient*, const WebCore::
IntRect&); | 163 blink::PagePopup* openPagePopup(blink::PagePopupClient*, const blink::IntRec
t&); |
| 164 void closePagePopup(WebCore::PagePopup*); | 164 void closePagePopup(blink::PagePopup*); |
| 165 virtual void setPagePopupDriver(WebCore::PagePopupDriver*) OVERRIDE; | 165 virtual void setPagePopupDriver(blink::PagePopupDriver*) OVERRIDE; |
| 166 virtual void resetPagePopupDriver() OVERRIDE; | 166 virtual void resetPagePopupDriver() OVERRIDE; |
| 167 | 167 |
| 168 virtual bool shouldRunModalDialogDuringPageDismissal(const DialogType&, cons
t String& dialogMessage, WebCore::Document::PageDismissalType) const OVERRIDE; | 168 virtual bool shouldRunModalDialogDuringPageDismissal(const DialogType&, cons
t String& dialogMessage, blink::Document::PageDismissalType) const OVERRIDE; |
| 169 | 169 |
| 170 virtual bool requestPointerLock() OVERRIDE; | 170 virtual bool requestPointerLock() OVERRIDE; |
| 171 virtual void requestPointerUnlock() OVERRIDE; | 171 virtual void requestPointerUnlock() OVERRIDE; |
| 172 | 172 |
| 173 virtual void didAssociateFormControls(const WillBeHeapVector<RefPtrWillBeMem
ber<WebCore::Element> >&) OVERRIDE; | 173 virtual void didAssociateFormControls(const WillBeHeapVector<RefPtrWillBeMem
ber<blink::Element> >&) OVERRIDE; |
| 174 virtual void didChangeValueInTextField(WebCore::HTMLFormControlElement&) OVE
RRIDE; | 174 virtual void didChangeValueInTextField(blink::HTMLFormControlElement&) OVERR
IDE; |
| 175 virtual void didEndEditingOnTextField(WebCore::HTMLInputElement&) OVERRIDE; | 175 virtual void didEndEditingOnTextField(blink::HTMLInputElement&) OVERRIDE; |
| 176 virtual void handleKeyboardEventOnTextField(WebCore::HTMLInputElement&, WebC
ore::KeyboardEvent&) OVERRIDE; | 176 virtual void handleKeyboardEventOnTextField(blink::HTMLInputElement&, blink:
:KeyboardEvent&) OVERRIDE; |
| 177 | 177 |
| 178 // FIXME: Remove this method once we have input routing in the browser | 178 // FIXME: Remove this method once we have input routing in the browser |
| 179 // process. See http://crbug.com/339659. | 179 // process. See http://crbug.com/339659. |
| 180 virtual void forwardInputEvent(WebCore::Frame*, WebCore::Event*) OVERRIDE; | 180 virtual void forwardInputEvent(blink::Frame*, blink::Event*) OVERRIDE; |
| 181 | 181 |
| 182 virtual void didCancelCompositionOnSelectionChange() OVERRIDE; | 182 virtual void didCancelCompositionOnSelectionChange() OVERRIDE; |
| 183 virtual void willSetInputMethodState() OVERRIDE; | 183 virtual void willSetInputMethodState() OVERRIDE; |
| 184 virtual void didUpdateTextOfFocusedElementByNonUserInput() OVERRIDE; | 184 virtual void didUpdateTextOfFocusedElementByNonUserInput() OVERRIDE; |
| 185 virtual void showImeIfNeeded() OVERRIDE; | 185 virtual void showImeIfNeeded() OVERRIDE; |
| 186 | 186 |
| 187 private: | 187 private: |
| 188 virtual bool isChromeClientImpl() const OVERRIDE { return true; } | 188 virtual bool isChromeClientImpl() const OVERRIDE { return true; } |
| 189 | 189 |
| 190 WebNavigationPolicy getNavigationPolicy(); | 190 WebNavigationPolicy getNavigationPolicy(); |
| 191 void setCursor(const WebCursorInfo&); | 191 void setCursor(const WebCursorInfo&); |
| 192 | 192 |
| 193 WebViewImpl* m_webView; // weak pointer | 193 WebViewImpl* m_webView; // weak pointer |
| 194 bool m_toolbarsVisible; | 194 bool m_toolbarsVisible; |
| 195 bool m_statusbarVisible; | 195 bool m_statusbarVisible; |
| 196 bool m_scrollbarsVisible; | 196 bool m_scrollbarsVisible; |
| 197 bool m_menubarVisible; | 197 bool m_menubarVisible; |
| 198 bool m_resizable; | 198 bool m_resizable; |
| 199 | 199 |
| 200 WebCore::PagePopupDriver* m_pagePopupDriver; | 200 blink::PagePopupDriver* m_pagePopupDriver; |
| 201 }; | 201 }; |
| 202 | 202 |
| 203 DEFINE_TYPE_CASTS(ChromeClientImpl, WebCore::ChromeClient, client, client->isChr
omeClientImpl(), client.isChromeClientImpl()); | 203 DEFINE_TYPE_CASTS(ChromeClientImpl, blink::ChromeClient, client, client->isChrom
eClientImpl(), client.isChromeClientImpl()); |
| 204 | 204 |
| 205 } // namespace blink | 205 } // namespace blink |
| 206 | 206 |
| 207 #endif | 207 #endif |
| OLD | NEW |