Upstream version 6.34.113.0
[platform/framework/web/crosswalk.git] / src / xwalk / app / android / app_template / src / org / xwalk / app / template / AppTemplateActivity.java
1 // Copyright (c) 2013 Intel Corporation. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 package org.xwalk.app.template;
6
7 import android.graphics.Color;
8 import android.os.Build.VERSION;
9 import android.os.Build.VERSION_CODES;
10 import android.os.Bundle;
11 import android.view.WindowManager;
12 import android.view.KeyEvent;
13 import android.view.View;
14 import android.widget.TextView;
15
16 import org.xwalk.app.XWalkRuntimeActivityBase;
17
18 public class AppTemplateActivity extends XWalkRuntimeActivityBase {
19     @Override
20     public void onCreate(Bundle savedInstanceState) {
21         super.onCreate(savedInstanceState);
22     }
23
24     @Override
25     public boolean onKeyUp(int keyCode, KeyEvent event) {
26         // Passdown the key-up event to runtime view.
27         if (getRuntimeView() != null &&
28                 getRuntimeView().onKeyUp(keyCode, event)) {
29             return true;
30         }
31
32         return super.onKeyUp(keyCode, event);
33     }
34
35     @Override
36     protected void didTryLoadRuntimeView(View runtimeView) {
37         if (runtimeView != null) {
38             setContentView(runtimeView);
39             getRuntimeView().loadAppFromUrl("file:///android_asset/www/index.html");
40         } else {
41             TextView msgText = new TextView(this);
42             msgText.setText("Crosswalk failed to initialize.");
43             msgText.setTextSize(36);
44             msgText.setTextColor(Color.BLACK);
45             setContentView(msgText);
46         }
47     }
48
49     private void enterFullscreen() {
50         if (VERSION.SDK_INT >= VERSION_CODES.KITKAT &&
51                 ((getWindow().getAttributes().flags &
52                         WindowManager.LayoutParams.FLAG_FULLSCREEN) != 0)) {
53             View decorView = getWindow().getDecorView();
54             decorView.setSystemUiVisibility(
55                     View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
56                     View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
57                     View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
58                     View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
59                     View.SYSTEM_UI_FLAG_FULLSCREEN |
60                     View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
61         }
62     }
63
64     public void setIsFullscreen(boolean isFullscreen) {
65         if (isFullscreen) {
66             enterFullscreen();
67         }
68     }
69
70 }