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

Unified Diff: samples/android_sample/jni/dart_host.h

Issue 11434046: Android rayshader sample. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 1 month 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 | « samples/android_sample/jni/context.h ('k') | samples/android_sample/jni/dart_host.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: samples/android_sample/jni/dart_host.h
===================================================================
--- samples/android_sample/jni/dart_host.h (revision 0)
+++ samples/android_sample/jni/dart_host.h (revision 0)
@@ -0,0 +1,58 @@
+#ifndef DART_HOST_H
+#define DART_HOST_H
+
+#include <android_native_app_glue.h>
+#include "bin/dartutils.h"
+#include "include/dart_api.h"
+#include "jni/activity_handler.h"
+#include "jni/context.h"
+#include "jni/graphics.h"
+#include "jni/input_service.h"
+#include "jni/timer.h"
+#include "jni/vm_glue.h"
+
+// Currently the life cycle management is very crude. We conservatively
+// shutdown the main isolate when we lose focus and create a new one when
+// we resume. This needs to be improved later when we understand this better,
+// and we need some hooks to tell the Dart script to save/restore state
+// (and an API that will support that).
+
+class DartHost : public ActivityHandler {
+ public:
+ explicit DartHost(Context* context);
+ virtual ~DartHost();
+
+ protected:
+ int32_t OnActivate();
+ void OnDeactivate();
+ int32_t OnStep();
+
+ void OnStart();
+ void OnResume();
+ void OnPause();
+ void OnStop();
+ void OnDestroy();
+
+ void OnSaveState(void** data, size_t size);
+ void OnConfigurationChanged();
+ void OnLowMemory();
+ void OnCreateWindow();
+ void OnDestroyWindow();
+ void OnGainedFocus();
+ void OnLostFocus();
+
+ private:
+ void Clear();
+ int32_t Activate();
+ void Deactivate();
+
+ ANativeWindow_Buffer window_buffer_;
+ InputHandler* input_handler_;
+ Timer* timer_;
+ Graphics* graphics_;
+ VMGlue* vm_glue_;
+ bool active_;
+};
+
+#endif
+
« no previous file with comments | « samples/android_sample/jni/context.h ('k') | samples/android_sample/jni/dart_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698