| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 #include "wtf/OwnPtr.h" | 60 #include "wtf/OwnPtr.h" |
| 61 #include "wtf/RefCounted.h" | 61 #include "wtf/RefCounted.h" |
| 62 #include "wtf/Vector.h" | 62 #include "wtf/Vector.h" |
| 63 | 63 |
| 64 namespace blink { | 64 namespace blink { |
| 65 | 65 |
| 66 class DataObject; | 66 class DataObject; |
| 67 class Frame; | 67 class Frame; |
| 68 class FullscreenController; | 68 class FullscreenController; |
| 69 class LinkHighlight; | 69 class LinkHighlight; |
| 70 class PopupContainer; | |
| 71 class RenderLayerCompositor; | 70 class RenderLayerCompositor; |
| 72 class UserGestureToken; | 71 class UserGestureToken; |
| 73 class WebActiveGestureAnimation; | 72 class WebActiveGestureAnimation; |
| 74 class WebDevToolsAgentPrivate; | 73 class WebDevToolsAgentPrivate; |
| 75 class WebLayerTreeView; | 74 class WebLayerTreeView; |
| 76 class WebLocalFrameImpl; | 75 class WebLocalFrameImpl; |
| 77 class WebImage; | 76 class WebImage; |
| 78 class WebPagePopupImpl; | 77 class WebPagePopupImpl; |
| 79 class WebPlugin; | 78 class WebPlugin; |
| 80 class WebSettingsImpl; | 79 class WebSettingsImpl; |
| (...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 399 | 398 |
| 400 // Start a system drag and drop operation. | 399 // Start a system drag and drop operation. |
| 401 void startDragging( | 400 void startDragging( |
| 402 LocalFrame*, | 401 LocalFrame*, |
| 403 const WebDragData& dragData, | 402 const WebDragData& dragData, |
| 404 WebDragOperationsMask mask, | 403 WebDragOperationsMask mask, |
| 405 const WebImage& dragImage, | 404 const WebImage& dragImage, |
| 406 const WebPoint& dragImageOffset); | 405 const WebPoint& dragImageOffset); |
| 407 | 406 |
| 408 // Notification that a popup was opened/closed. | 407 // Notification that a popup was opened/closed. |
| 409 void popupOpened(PopupContainer*); | |
| 410 void popupClosed(PopupContainer*); | |
| 411 PagePopup* openPagePopup(PagePopupClient*, const IntRect& originBoundsInRoot
View); | 408 PagePopup* openPagePopup(PagePopupClient*, const IntRect& originBoundsInRoot
View); |
| 412 void closePagePopup(PagePopup*); | 409 void closePagePopup(PagePopup*); |
| 413 LocalDOMWindow* pagePopupWindow() const; | 410 LocalDOMWindow* pagePopupWindow() const; |
| 414 | 411 |
| 415 // Returns the input event we're currently processing. This is used in some | 412 // Returns the input event we're currently processing. This is used in some |
| 416 // cases where the WebCore DOM event doesn't have the information we need. | 413 // cases where the WebCore DOM event doesn't have the information we need. |
| 417 static const WebInputEvent* currentInputEvent() | 414 static const WebInputEvent* currentInputEvent() |
| 418 { | 415 { |
| 419 return m_currentInputEvent; | 416 return m_currentInputEvent; |
| 420 } | 417 } |
| 421 | 418 |
| 422 GraphicsLayer* rootGraphicsLayer(); | 419 GraphicsLayer* rootGraphicsLayer(); |
| 423 void setRootGraphicsLayer(GraphicsLayer*); | 420 void setRootGraphicsLayer(GraphicsLayer*); |
| 424 void scheduleCompositingLayerSync(); | 421 void scheduleCompositingLayerSync(); |
| 425 GraphicsLayerFactory* graphicsLayerFactory() const; | 422 GraphicsLayerFactory* graphicsLayerFactory() const; |
| 426 RenderLayerCompositor* compositor() const; | 423 RenderLayerCompositor* compositor() const; |
| 427 void registerForAnimations(WebLayer*); | 424 void registerForAnimations(WebLayer*); |
| 428 void scheduleAnimation(); | 425 void scheduleAnimation(); |
| 429 | 426 |
| 430 virtual void setVisibilityState(WebPageVisibilityState, bool) override; | 427 virtual void setVisibilityState(WebPageVisibilityState, bool) override; |
| 431 | 428 |
| 432 PopupContainer* selectPopup() const { return m_selectPopup.get(); } | 429 bool hasOpenedPopup() const { return m_pagePopup; } |
| 433 bool hasOpenedPopup() const { return m_selectPopup || m_pagePopup; } | |
| 434 | 430 |
| 435 // Returns true if the event leads to scrolling. | 431 // Returns true if the event leads to scrolling. |
| 436 static bool mapKeyCodeForScroll( | 432 static bool mapKeyCodeForScroll( |
| 437 int keyCode, | 433 int keyCode, |
| 438 ScrollDirection*, | 434 ScrollDirection*, |
| 439 ScrollGranularity*); | 435 ScrollGranularity*); |
| 440 | 436 |
| 441 // Called by a full frame plugin inside this view to inform it that its | 437 // Called by a full frame plugin inside this view to inform it that its |
| 442 // zoom level has been updated. The plugin should only call this function | 438 // zoom level has been updated. The plugin should only call this function |
| 443 // if the zoom change was triggered by the browser, it's only needed in case | 439 // if the zoom change was triggered by the browser, it's only needed in case |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 551 WebString inputModeOfFocusedElement(); | 547 WebString inputModeOfFocusedElement(); |
| 552 | 548 |
| 553 // Returns true if the event was actually processed. | 549 // Returns true if the event was actually processed. |
| 554 bool keyEventDefault(const WebKeyboardEvent&); | 550 bool keyEventDefault(const WebKeyboardEvent&); |
| 555 | 551 |
| 556 bool confirmComposition(const WebString& text, ConfirmCompositionBehavior); | 552 bool confirmComposition(const WebString& text, ConfirmCompositionBehavior); |
| 557 | 553 |
| 558 // Returns true if the view was scrolled. | 554 // Returns true if the view was scrolled. |
| 559 bool scrollViewWithKeyboard(int keyCode, int modifiers); | 555 bool scrollViewWithKeyboard(int keyCode, int modifiers); |
| 560 | 556 |
| 561 void hideSelectPopup(); | |
| 562 | |
| 563 // Converts |pos| from window coordinates to contents coordinates and gets | 557 // Converts |pos| from window coordinates to contents coordinates and gets |
| 564 // the HitTestResult for it. | 558 // the HitTestResult for it. |
| 565 HitTestResult hitTestResultForWindowPos(const IntPoint&); | 559 HitTestResult hitTestResultForWindowPos(const IntPoint&); |
| 566 | 560 |
| 567 // Consolidate some common code between starting a drag over a target and | 561 // Consolidate some common code between starting a drag over a target and |
| 568 // updating a drag over a target. If we're starting a drag, |isEntering| | 562 // updating a drag over a target. If we're starting a drag, |isEntering| |
| 569 // should be true. | 563 // should be true. |
| 570 WebDragOperation dragTargetDragEnterOrOver(const WebPoint& clientPoint, | 564 WebDragOperation dragTargetDragEnterOrOver(const WebPoint& clientPoint, |
| 571 const WebPoint& screenPoint, | 565 const WebPoint& screenPoint, |
| 572 DragAction, | 566 DragAction, |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 682 bool m_imeAcceptEvents; | 676 bool m_imeAcceptEvents; |
| 683 | 677 |
| 684 // The available drag operations (copy, move link...) allowed by the source. | 678 // The available drag operations (copy, move link...) allowed by the source. |
| 685 WebDragOperation m_operationsAllowed; | 679 WebDragOperation m_operationsAllowed; |
| 686 | 680 |
| 687 // The current drag operation as negotiated by the source and destination. | 681 // The current drag operation as negotiated by the source and destination. |
| 688 // When not equal to DragOperationNone, the drag data can be dropped onto th
e | 682 // When not equal to DragOperationNone, the drag data can be dropped onto th
e |
| 689 // current drop target in this WebView (the drop target can accept the drop)
. | 683 // current drop target in this WebView (the drop target can accept the drop)
. |
| 690 WebDragOperation m_dragOperation; | 684 WebDragOperation m_dragOperation; |
| 691 | 685 |
| 692 // The popup associated with a select element. | |
| 693 RefPtrWillBePersistent<PopupContainer> m_selectPopup; | |
| 694 | |
| 695 // The popup associated with an input element. | 686 // The popup associated with an input element. |
| 696 RefPtr<WebPagePopupImpl> m_pagePopup; | 687 RefPtr<WebPagePopupImpl> m_pagePopup; |
| 697 | 688 |
| 698 OwnPtr<WebDevToolsAgentPrivate> m_devToolsAgent; | 689 OwnPtr<WebDevToolsAgentPrivate> m_devToolsAgent; |
| 699 OwnPtr<PageOverlayList> m_pageOverlays; | 690 OwnPtr<PageOverlayList> m_pageOverlays; |
| 700 | 691 |
| 701 // Whether the webview is rendering transparently. | 692 // Whether the webview is rendering transparently. |
| 702 bool m_isTransparent; | 693 bool m_isTransparent; |
| 703 | 694 |
| 704 // Whether the user can press tab to focus links. | 695 // Whether the user can press tab to focus links. |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 752 float m_topControlsLayoutHeight; | 743 float m_topControlsLayoutHeight; |
| 753 }; | 744 }; |
| 754 | 745 |
| 755 // We have no ways to check if the specified WebView is an instance of | 746 // We have no ways to check if the specified WebView is an instance of |
| 756 // WebViewImpl because WebViewImpl is the only implementation of WebView. | 747 // WebViewImpl because WebViewImpl is the only implementation of WebView. |
| 757 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); | 748 DEFINE_TYPE_CASTS(WebViewImpl, WebView, webView, true, true); |
| 758 | 749 |
| 759 } // namespace blink | 750 } // namespace blink |
| 760 | 751 |
| 761 #endif | 752 #endif |
| OLD | NEW |