OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "sky/engine/config.h" | 5 #include "sky/engine/config.h" |
6 #include "sky/engine/core/script/dom_dart_state.h" | 6 #include "sky/engine/core/script/dom_dart_state.h" |
7 | 7 |
8 #include "sky/engine/core/dom/Document.h" | 8 #include "sky/engine/core/dom/Document.h" |
9 #include "sky/engine/core/script/dart_loader.h" | 9 #include "sky/engine/core/script/dart_loader.h" |
| 10 #include "sky/engine/tonic/dart_builtin.h" |
10 | 11 |
11 namespace blink { | 12 namespace blink { |
12 | 13 |
13 DOMDartState::DOMDartState(Document* document) | 14 DOMDartState::DOMDartState(Document* document) |
14 : document_(document), loader_(adoptPtr(new DartLoader(this))) { | 15 : document_(document), loader_(adoptPtr(new DartLoader(this))) { |
15 } | 16 } |
16 | 17 |
17 DOMDartState::~DOMDartState() { | 18 DOMDartState::~DOMDartState() { |
18 } | 19 } |
19 | 20 |
20 void DOMDartState::DidSetIsolate() { | 21 void DOMDartState::DidSetIsolate() { |
21 Scope dart_scope(this); | 22 Scope dart_scope(this); |
22 x_handle_.Set(this, Dart_NewStringFromCString("x")); | 23 x_handle_.Set(this, Dart_NewStringFromCString("x")); |
23 y_handle_.Set(this, Dart_NewStringFromCString("y")); | 24 y_handle_.Set(this, Dart_NewStringFromCString("y")); |
24 value_handle_.Set(this, Dart_NewStringFromCString("_value")); | 25 value_handle_.Set(this, Dart_NewStringFromCString("_value")); |
| 26 |
| 27 Dart_Handle sky_library = DartBuiltin::LookupLibrary("dart:sky"); |
| 28 color_class_.Set(this, Dart_GetType(sky_library, ToDart("Color"), 0, 0)); |
25 } | 29 } |
26 | 30 |
27 DOMDartState* DOMDartState::Current() { | 31 DOMDartState* DOMDartState::Current() { |
28 return static_cast<DOMDartState*>(DartState::Current()); | 32 return static_cast<DOMDartState*>(DartState::Current()); |
29 } | 33 } |
30 | 34 |
31 Document* DOMDartState::CurrentDocument() { | 35 Document* DOMDartState::CurrentDocument() { |
32 return Current()->document_.get(); | 36 return Current()->document_.get(); |
33 } | 37 } |
34 | 38 |
35 LocalFrame* DOMDartState::CurrentFrame() { | 39 LocalFrame* DOMDartState::CurrentFrame() { |
36 DCHECK(Current()->document_); | 40 DCHECK(Current()->document_); |
37 return Current()->document_->frame(); | 41 return Current()->document_->frame(); |
38 } | 42 } |
39 | 43 |
40 LocalDOMWindow* DOMDartState::CurrentWindow() { | 44 LocalDOMWindow* DOMDartState::CurrentWindow() { |
41 DCHECK(Current()->document_); | 45 DCHECK(Current()->document_); |
42 return Current()->document_->domWindow(); | 46 return Current()->document_->domWindow(); |
43 } | 47 } |
44 | 48 |
45 } // namespace blink | 49 } // namespace blink |
OLD | NEW |