| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2006, 2007 Apple, Inc.  All rights reserved. | 2  * Copyright (C) 2006, 2007 Apple, Inc.  All rights reserved. | 
| 3  * Copyright (C) 2012 Google, Inc.  All rights reserved. | 3  * Copyright (C) 2012 Google, Inc.  All rights reserved. | 
| 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 | 6  * modification, are permitted provided that the following conditions | 
| 7  * are met: | 7  * are met: | 
| 8  * 1. Redistributions of source code must retain the above copyright | 8  * 1. 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  * 2. Redistributions in binary form must reproduce the above copyright | 10  * 2. Redistributions in binary form must reproduce the above copyright | 
| 11  *    notice, this list of conditions and the following disclaimer in the | 11  *    notice, this list of conditions and the following disclaimer in the | 
| 12  *    documentation and/or other materials provided with the distribution. | 12  *    documentation and/or other materials provided with the distribution. | 
| 13  * | 13  * | 
| 14  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY | 14  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY | 
| 15  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 15  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
| 16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | 16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | 
| 17  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR | 17  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR | 
| 18  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, | 18  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, | 
| 19  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | 19  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | 
| 20  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | 20  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | 
| 21  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | 21  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | 
| 22  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 22  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
| 23  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 23  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
| 24  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 24  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
| 25  */ | 25  */ | 
| 26 | 26 | 
| 27 #include "web/EditorClientImpl.h" | 27 #include "web/EditorClientImpl.h" | 
| 28 | 28 | 
| 29 #include "core/editing/SelectionType.h" | 29 #include "core/editing/SelectionType.h" | 
| 30 #include "public/web/WebContentSettingsClient.h" | 30 #include "core/frame/ContentSettingsClient.h" | 
| 31 #include "public/web/WebFrameClient.h" | 31 #include "public/web/WebFrameClient.h" | 
| 32 #include "public/web/WebViewClient.h" | 32 #include "public/web/WebViewClient.h" | 
| 33 #include "web/WebLocalFrameImpl.h" | 33 #include "web/WebLocalFrameImpl.h" | 
| 34 #include "web/WebViewImpl.h" | 34 #include "web/WebViewImpl.h" | 
| 35 | 35 | 
| 36 namespace blink { | 36 namespace blink { | 
| 37 | 37 | 
| 38 EditorClientImpl::EditorClientImpl(WebViewImpl* webview) : m_webView(webview) {} | 38 EditorClientImpl::EditorClientImpl(WebViewImpl* webview) : m_webView(webview) {} | 
| 39 | 39 | 
| 40 EditorClientImpl::~EditorClientImpl() {} | 40 EditorClientImpl::~EditorClientImpl() {} | 
| 41 | 41 | 
| 42 void EditorClientImpl::respondToChangedSelection(LocalFrame* frame, | 42 void EditorClientImpl::respondToChangedSelection(LocalFrame* frame, | 
| 43                                                  SelectionType selectionType) { | 43                                                  SelectionType selectionType) { | 
| 44   WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame); | 44   WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame); | 
| 45   if (webFrame->client()) | 45   if (webFrame->client()) | 
| 46     webFrame->client()->didChangeSelection(selectionType != RangeSelection); | 46     webFrame->client()->didChangeSelection(selectionType != RangeSelection); | 
| 47 } | 47 } | 
| 48 | 48 | 
| 49 void EditorClientImpl::respondToChangedContents() { | 49 void EditorClientImpl::respondToChangedContents() { | 
| 50   if (m_webView->client()) | 50   if (m_webView->client()) | 
| 51     m_webView->client()->didChangeContents(); | 51     m_webView->client()->didChangeContents(); | 
| 52 } | 52 } | 
| 53 | 53 | 
| 54 bool EditorClientImpl::canCopyCut(LocalFrame* frame, bool defaultValue) const { | 54 bool EditorClientImpl::canCopyCut(LocalFrame* frame, bool defaultValue) const { | 
| 55   WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame); | 55   if (!frame->contentSettingsClient()) | 
| 56   if (!webFrame->contentSettingsClient()) |  | 
| 57     return defaultValue; | 56     return defaultValue; | 
| 58   return webFrame->contentSettingsClient()->allowWriteToClipboard(defaultValue); | 57   return frame->contentSettingsClient()->allowWriteToClipboard(defaultValue); | 
| 59 } | 58 } | 
| 60 | 59 | 
| 61 bool EditorClientImpl::canPaste(LocalFrame* frame, bool defaultValue) const { | 60 bool EditorClientImpl::canPaste(LocalFrame* frame, bool defaultValue) const { | 
| 62   WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame); | 61   if (!frame->contentSettingsClient()) | 
| 63   if (!webFrame->contentSettingsClient()) |  | 
| 64     return defaultValue; | 62     return defaultValue; | 
| 65   return webFrame->contentSettingsClient()->allowReadFromClipboard( | 63   return frame->contentSettingsClient()->allowReadFromClipboard(defaultValue); | 
| 66       defaultValue); |  | 
| 67 } | 64 } | 
| 68 | 65 | 
| 69 bool EditorClientImpl::handleKeyboardEvent(LocalFrame* frame) { | 66 bool EditorClientImpl::handleKeyboardEvent(LocalFrame* frame) { | 
| 70   WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame); | 67   WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame); | 
| 71   return webFrame->client()->handleCurrentKeyboardEvent(); | 68   return webFrame->client()->handleCurrentKeyboardEvent(); | 
| 72 } | 69 } | 
| 73 | 70 | 
| 74 }  // namespace blink | 71 }  // namespace blink | 
| OLD | NEW | 
|---|