OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 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 | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 11 matching lines...) Expand all Loading... |
22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
23 * SUCH DAMAGE. | 23 * SUCH DAMAGE. |
24 */ | 24 */ |
25 | 25 |
26 #ifndef ValidationMessageClientImpl_h | 26 #ifndef ValidationMessageClientImpl_h |
27 #define ValidationMessageClientImpl_h | 27 #define ValidationMessageClientImpl_h |
28 | 28 |
29 #include "core/page/ValidationMessageClient.h" | 29 #include "core/page/ValidationMessageClient.h" |
30 #include "platform/Timer.h" | 30 #include "platform/Timer.h" |
31 #include "platform/geometry/IntRect.h" | 31 #include "platform/geometry/IntRect.h" |
| 32 #include "platform/heap/Handle.h" |
32 #include "wtf/text/WTFString.h" | 33 #include "wtf/text/WTFString.h" |
33 | 34 |
34 namespace WebCore { | 35 namespace WebCore { |
35 class FrameView; | 36 class FrameView; |
36 } | 37 } |
37 | 38 |
38 namespace blink { | 39 namespace blink { |
39 | 40 |
40 class WebViewImpl; | 41 class WebViewImpl; |
41 | 42 |
42 class ValidationMessageClientImpl FINAL : public WebCore::ValidationMessageClien
t { | 43 class ValidationMessageClientImpl FINAL : public NoBaseWillBeGarbageCollectedFin
alized<ValidationMessageClientImpl>, public WebCore::ValidationMessageClient { |
| 44 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(ValidationMessageClientImpl); |
43 public: | 45 public: |
44 static PassOwnPtr<ValidationMessageClientImpl> create(WebViewImpl&); | 46 static PassOwnPtrWillBeRawPtr<ValidationMessageClientImpl> create(WebViewImp
l&); |
45 virtual ~ValidationMessageClientImpl(); | 47 virtual ~ValidationMessageClientImpl(); |
46 | 48 |
| 49 virtual void trace(WebCore::Visitor*) OVERRIDE; |
| 50 |
47 private: | 51 private: |
48 ValidationMessageClientImpl(WebViewImpl&); | 52 ValidationMessageClientImpl(WebViewImpl&); |
49 void checkAnchorStatus(WebCore::Timer<ValidationMessageClientImpl>*); | 53 void checkAnchorStatus(WebCore::Timer<ValidationMessageClientImpl>*); |
50 WebCore::FrameView* currentView(); | 54 WebCore::FrameView* currentView(); |
51 | 55 |
52 virtual void showValidationMessage(const WebCore::Element& anchor, const Str
ing& message) OVERRIDE; | 56 virtual void showValidationMessage(const WebCore::Element& anchor, const Str
ing& message) OVERRIDE; |
53 virtual void hideValidationMessage(const WebCore::Element& anchor) OVERRIDE; | 57 virtual void hideValidationMessage(const WebCore::Element& anchor) OVERRIDE; |
54 virtual bool isValidationMessageVisible(const WebCore::Element& anchor) OVER
RIDE; | 58 virtual bool isValidationMessageVisible(const WebCore::Element& anchor) OVER
RIDE; |
55 virtual void documentDetached(const WebCore::Document&) OVERRIDE; | 59 virtual void documentDetached(const WebCore::Document&) OVERRIDE; |
56 virtual void willBeDestroyed() OVERRIDE; | 60 virtual void willBeDestroyed() OVERRIDE; |
57 | 61 |
58 WebViewImpl& m_webView; | 62 WebViewImpl& m_webView; |
59 const WebCore::Element* m_currentAnchor; | 63 RawPtrWillBeMember<const WebCore::Element> m_currentAnchor; |
60 String m_message; | 64 String m_message; |
61 WebCore::IntRect m_lastAnchorRectInScreen; | 65 WebCore::IntRect m_lastAnchorRectInScreen; |
62 float m_lastPageScaleFactor; | 66 float m_lastPageScaleFactor; |
63 double m_finishTime; | 67 double m_finishTime; |
64 WebCore::Timer<ValidationMessageClientImpl> m_timer; | 68 WebCore::Timer<ValidationMessageClientImpl> m_timer; |
65 }; | 69 }; |
66 | 70 |
67 } | 71 } |
68 | 72 |
69 #endif | 73 #endif |
OLD | NEW |