| 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 #include "sky/engine/tonic/dart_builtin.h" |
| 11 | 11 |
| 12 namespace blink { | 12 namespace blink { |
| 13 | 13 |
| 14 DOMDartState::DOMDartState(Document* document, const KURL& url) | 14 DOMDartState::DOMDartState(Document* document, const KURL& url) |
| 15 : document_(document), url_(url), loader_(adoptPtr(new DartLoader(this))) { | 15 : document_(document), url_(url), loader_(adoptPtr(new DartLoader(this))) { |
| 16 } | 16 } |
| 17 | 17 |
| 18 DOMDartState::~DOMDartState() { | 18 DOMDartState::~DOMDartState() { |
| 19 // We've already destroyed the isolate. Revoke any weak ptrs held by |
| 20 // DartPersistentValues so they don't try to enter the destroyed isolate to |
| 21 // clean themselves up. |
| 22 weak_factory_.InvalidateWeakPtrs(); |
| 19 } | 23 } |
| 20 | 24 |
| 21 void DOMDartState::DidSetIsolate() { | 25 void DOMDartState::DidSetIsolate() { |
| 22 Scope dart_scope(this); | 26 Scope dart_scope(this); |
| 23 x_handle_.Set(this, ToDart("x")); | 27 x_handle_.Set(this, ToDart("x")); |
| 24 y_handle_.Set(this, ToDart("y")); | 28 y_handle_.Set(this, ToDart("y")); |
| 25 value_handle_.Set(this, ToDart("_value")); | 29 value_handle_.Set(this, ToDart("_value")); |
| 26 | 30 |
| 27 Dart_Handle sky_library = DartBuiltin::LookupLibrary("dart:sky"); | 31 Dart_Handle sky_library = DartBuiltin::LookupLibrary("dart:sky"); |
| 28 color_class_.Set(this, Dart_GetType(sky_library, ToDart("Color"), 0, 0)); | 32 color_class_.Set(this, Dart_GetType(sky_library, ToDart("Color"), 0, 0)); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 40 DCHECK(Current()->document_); | 44 DCHECK(Current()->document_); |
| 41 return Current()->document_->frame(); | 45 return Current()->document_->frame(); |
| 42 } | 46 } |
| 43 | 47 |
| 44 LocalDOMWindow* DOMDartState::CurrentWindow() { | 48 LocalDOMWindow* DOMDartState::CurrentWindow() { |
| 45 DCHECK(Current()->document_); | 49 DCHECK(Current()->document_); |
| 46 return Current()->document_->domWindow(); | 50 return Current()->document_->domWindow(); |
| 47 } | 51 } |
| 48 | 52 |
| 49 } // namespace blink | 53 } // namespace blink |
| OLD | NEW |