| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2016 Google Inc. | 2 * Copyright 2016 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #ifndef Window_android_DEFINED | 8 #ifndef Window_android_DEFINED |
| 9 #define Window_android_DEFINED | 9 #define Window_android_DEFINED |
| 10 | 10 |
| 11 #include "../Window.h" | 11 #include "../Window.h" |
| 12 #include <android_native_app_glue.h> | 12 #include "surface_glue_android.h" |
| 13 | 13 |
| 14 namespace sk_app { | 14 namespace sk_app { |
| 15 | 15 |
| 16 enum { | |
| 17 /** | |
| 18 * Leave plenty of space between this item and the ones defined in the glue
layer | |
| 19 */ | |
| 20 APP_CMD_INVAL_WINDOW = 64, | |
| 21 }; | |
| 22 | |
| 23 class Window_android : public Window { | 16 class Window_android : public Window { |
| 24 public: | 17 public: |
| 25 Window_android() : Window() {} | 18 Window_android() : Window() {} |
| 26 ~Window_android() override {} | 19 ~Window_android() override {} |
| 27 | 20 |
| 28 bool init(android_app* app_state); | 21 bool init(SkiaAndroidApp* skiaAndroidApp); |
| 29 void initDisplay(ANativeWindow* window); | 22 void initDisplay(ANativeWindow* window); |
| 23 void onDisplayDestroyed(); |
| 30 | 24 |
| 31 void setTitle(const char*) override; | 25 void setTitle(const char*) override; |
| 32 void show() override {} | 26 void show() override {} |
| 33 | 27 |
| 34 bool attach(BackEndType attachType, const DisplayParams& params) override; | 28 bool attach(BackEndType attachType, const DisplayParams& params) override; |
| 35 void inval() override; | 29 void inval() override; |
| 36 | 30 |
| 37 void paintIfNeeded(); | |
| 38 | |
| 39 bool scaleContentToFit() const override { return true; } | 31 bool scaleContentToFit() const override { return true; } |
| 40 bool supportsContentRect() const override { return true; } | 32 bool supportsContentRect() const override { return true; } |
| 41 SkRect getContentRect() override { return mContentRect; } | 33 SkRect getContentRect() override { return fContentRect; } |
| 42 void setContentRect(int l, int t, int r, int b) { mContentRect.set(l,t,r,b);
} | 34 void setContentRect(int l, int t, int r, int b) { fContentRect.set(l,t,r,b);
} |
| 43 | 35 |
| 44 private: | 36 private: |
| 45 android_app* mApp = nullptr; | 37 SkiaAndroidApp* fSkiaAndroidApp = nullptr; |
| 46 SkRect mContentRect; | 38 SkRect fContentRect; |
| 47 DisplayParams fDisplayParams; | 39 DisplayParams fDisplayParams; |
| 40 bool fNativeWindowInitialized = false; |
| 48 }; | 41 }; |
| 49 | 42 |
| 50 } // namespace sk_app | 43 } // namespace sk_app |
| 51 | 44 |
| 52 #endif | 45 #endif |
| OLD | NEW |