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

Unified Diff: sky/shell/ui/internals.cc

Issue 1208273003: Stocks.apk should have icons when run offline (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sky/shell/ui/internals.h ('k') | sky/viewer/internals.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/shell/ui/internals.cc
diff --git a/sky/shell/ui/internals.cc b/sky/shell/ui/internals.cc
index 039c323a9012e835cb92f795463f3ff21ce0f286..e87b7520a05768458f5e57159452db7d2f23396e 100644
--- a/sky/shell/ui/internals.cc
+++ b/sky/shell/ui/internals.cc
@@ -29,6 +29,11 @@ Internals* GetInternals() {
void NotifyTestComplete(Dart_NativeArguments args) {
}
+void TakeRootBundleHandle(Dart_NativeArguments args) {
+ Dart_SetIntegerReturnValue(
+ args, GetInternals()->TakeRootBundleHandle().value());
+}
+
void TakeShellProxyHandle(Dart_NativeArguments args) {
Dart_SetIntegerReturnValue(args, 0);
}
@@ -48,10 +53,11 @@ void TakeServiceRegistry(Dart_NativeArguments args) {
const DartBuiltin::Natives kNativeFunctions[] = {
{"notifyTestComplete", NotifyTestComplete, 1},
- {"takeShellProxyHandle", TakeShellProxyHandle, 0},
+ {"takeRootBundleHandle", TakeRootBundleHandle, 0},
+ {"takeServiceRegistry", TakeServiceRegistry, 0},
{"takeServicesProvidedByEmbedder", TakeServicesProvidedByEmbedder, 0},
{"takeServicesProvidedToEmbedder", TakeServicesProvidedToEmbedder, 0},
- {"takeServiceRegistry", TakeServiceRegistry, 0},
+ {"takeShellProxyHandle", TakeShellProxyHandle, 0},
};
const DartBuiltin& GetBuiltin() {
@@ -75,17 +81,21 @@ const char kLibraryName[] = "dart:sky.internals";
} // namespace
void Internals::Create(Dart_Isolate isolate,
- mojo::ServiceProviderPtr service_provider) {
+ mojo::ServiceProviderPtr service_provider,
+ mojo::asset_bundle::AssetBundlePtr root_bundle) {
DartState* state = DartState::From(isolate);
- state->SetUserData(&kInternalsKey, new Internals(service_provider.Pass()));
+ state->SetUserData(&kInternalsKey, new Internals(service_provider.Pass(),
+ root_bundle.Pass()));
Dart_Handle library =
Dart_LookupLibrary(Dart_NewStringFromCString(kLibraryName));
CHECK(!LogIfError(library));
CHECK(!LogIfError(Dart_SetNativeResolver(library, Resolver, Symbolizer)));
}
-Internals::Internals(mojo::ServiceProviderPtr platform_service_provider)
- : service_provider_impl_(GetProxy(&service_provider_)),
+Internals::Internals(mojo::ServiceProviderPtr platform_service_provider,
+ mojo::asset_bundle::AssetBundlePtr root_bundle)
+ : root_bundle_(root_bundle.Pass()),
+ service_provider_impl_(GetProxy(&service_provider_)),
platform_service_provider_(platform_service_provider.Pass()) {
service_provider_impl_.set_fallback_service_provider(
platform_service_provider_.get());
@@ -106,5 +116,9 @@ mojo::Handle Internals::TakeServicesProvidedByEmbedder() {
return service_provider_.PassInterface().PassHandle().release();
}
+mojo::Handle Internals::TakeRootBundleHandle() {
+ return root_bundle_.PassInterface().PassHandle().release();
+}
+
} // namespace shell
} // namespace sky
« no previous file with comments | « sky/shell/ui/internals.h ('k') | sky/viewer/internals.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698