Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(197)

Side by Side Diff: Source/core/page/DOMWindowTimers.cpp

Issue 19801002: Drop [LegacyImplementedInBaseClass] attribute from WindowTimers (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/page/DOMWindowTimers.h ('k') | Source/core/page/WindowTimers.idl » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2010 Apple 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 * Copyright (C) 2013 Samsung Electronics. All rights reserved. 4 * Copyright (C) 2013 Samsung Electronics. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are 7 * modification, are permitted provided that the following conditions are
8 * met: 8 * met:
9 * 9 *
10 * * Redistributions of source code must retain the above copyright 10 * * Redistributions of source code must retain the above copyright
(...skipping 13 matching lines...) Expand all
24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */ 31 */
32 32
33 #include "config.h" 33 #include "config.h"
34 #include "core/page/DOMWindowBase64.h" 34 #include "core/page/DOMWindowTimers.h"
35 35
36 #include "wtf/text/Base64.h" 36 #include "core/dom/EventTarget.h"
37 #include "core/page/DOMTimer.h"
37 38
38 namespace WebCore { 39 namespace WebCore {
39 40
40 namespace DOMWindowBase64 { 41 namespace DOMWindowTimers {
haraken 2013/07/19 11:25:44 Why do you use a namespace instead of a class? I e
41 42
42 String btoa(void*, const String& stringToEncode, ExceptionCode& ec) 43 int setTimeout(EventTarget* eventTarget, PassOwnPtr<ScheduledAction> action, int timeout)
43 { 44 {
44 if (stringToEncode.isNull()) 45 return DOMTimer::install(eventTarget->scriptExecutionContext(), action, time out, true);
45 return String();
46
47 if (!stringToEncode.containsOnlyLatin1()) {
48 ec = InvalidCharacterError;
49 return String();
50 }
51
52 return base64Encode(stringToEncode.latin1());
53 } 46 }
54 47
55 String atob(void*, const String& encodedString, ExceptionCode& ec) 48 int setInterval(EventTarget* eventTarget, PassOwnPtr<ScheduledAction> action, in t timeout)
56 { 49 {
57 if (encodedString.isNull()) 50 return DOMTimer::install(eventTarget->scriptExecutionContext(), action, time out, false);
58 return String();
59
60 if (!encodedString.containsOnlyLatin1()) {
61 ec = InvalidCharacterError;
62 return String();
63 }
64
65 Vector<char> out;
66 if (!base64Decode(encodedString, out, Base64FailOnInvalidCharacter, Base64St rictPaddingValidation)) {
67 ec = InvalidCharacterError;
68 return String();
69 }
70
71 return String(out.data(), out.size());
72 } 51 }
73 52
74 } // namespace DOMWindowBase64 53 void clearTimeout(EventTarget* eventTarget, int timeoutID)
54 {
55 if (ScriptExecutionContext* context = eventTarget->scriptExecutionContext())
56 DOMTimer::removeByID(context, timeoutID);
57 }
58
59 void clearInterval(EventTarget* eventTarget, int timeoutID)
60 {
61 if (ScriptExecutionContext* context = eventTarget->scriptExecutionContext())
62 DOMTimer::removeByID(context, timeoutID);
63 }
64
65 } // namespace DOMWindowTimers
75 66
76 } // namespace WebCore 67 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/page/DOMWindowTimers.h ('k') | Source/core/page/WindowTimers.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698