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

Side by Side Diff: Source/bindings/v8/CustomElementHelpers.cpp

Issue 18778002: Inherit EventTarget interface instead of duplicating its code (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix the regressions 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
OLDNEW
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 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 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 return v8::Handle<v8::Object>(); 62 return v8::Handle<v8::Object>();
63 63
64 CustomElementBinding* customElementBinding = perContextData->customElementBi nding(definition->type()); 64 CustomElementBinding* customElementBinding = perContextData->customElementBi nding(definition->type());
65 65
66 v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext , customElementBinding->wrapperType(), impl.get(), isolate); 66 v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext , customElementBinding->wrapperType(), impl.get(), isolate);
67 if (wrapper.IsEmpty()) 67 if (wrapper.IsEmpty())
68 return v8::Handle<v8::Object>(); 68 return v8::Handle<v8::Object>();
69 69
70 wrapper->SetPrototype(customElementBinding->prototype()); 70 wrapper->SetPrototype(customElementBinding->prototype());
71 71
72 V8DOMWrapper::associateObjectWithWrapper(impl, customElementBinding->wrapper Type(), wrapper, isolate, WrapperConfiguration::Dependent); 72 V8DOMWrapper::associateObjectWithWrapper<V8Element>(impl, customElementBindi ng->wrapperType(), wrapper, isolate, WrapperConfiguration::Dependent);
73 return wrapper; 73 return wrapper;
74 } 74 }
75 75
76 v8::Handle<v8::Object> CustomElementHelpers::CreateWrapperFunction::invoke(Eleme nt* element, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) const 76 v8::Handle<v8::Object> CustomElementHelpers::CreateWrapperFunction::invoke(Eleme nt* element, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) const
77 { 77 {
78 if (element->isHTMLElement()) { 78 if (element->isHTMLElement()) {
79 if (m_html) 79 if (m_html)
80 return m_html(toHTMLElement(element), creationContext, isolate); 80 return m_html(toHTMLElement(element), creationContext, isolate);
81 return createV8HTMLFallbackWrapper(toHTMLUnknownElement(toHTMLElement(el ement)), creationContext, isolate); 81 return createV8HTMLFallbackWrapper(toHTMLUnknownElement(toHTMLElement(el ement)), creationContext, isolate);
82 } else if (element->isSVGElement()) { 82 } else if (element->isSVGElement()) {
(...skipping 17 matching lines...) Expand all
100 ASSERT(0); 100 ASSERT(0);
101 return v8::Handle<v8::Object>(); 101 return v8::Handle<v8::Object>();
102 } 102 }
103 } else { 103 } else {
104 // It's a type extension 104 // It's a type extension
105 return createTypeExtensionUpgradeCandidateWrapper.invoke(element.get(), creationContext, isolate); 105 return createTypeExtensionUpgradeCandidateWrapper.invoke(element.get(), creationContext, isolate);
106 } 106 }
107 } 107 }
108 108
109 } // namespace WebCore 109 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698