Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b5c49c8b authored by Ben Murdoch's avatar Ben Murdoch Committed by Steve Block
Browse files

Add a splash screen to the webruntime.

Bug: 2766920
Change-Id: Ie40627aa50e849b49177f79aa129242eb1d2f2a8
parent c9eecb27
Loading
Loading
Loading
Loading
+16 −1
Original line number Original line Diff line number Diff line
@@ -16,22 +16,25 @@


package android.webruntime;
package android.webruntime;


import android.Manifest;
import android.app.Activity;
import android.app.Activity;
import android.content.Intent;
import android.content.Intent;
import android.content.ComponentName;
import android.content.ComponentName;
import android.content.pm.ActivityInfo;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager;
import android.Manifest;
import android.content.res.Resources;
import android.net.Uri;
import android.net.Uri;
import android.os.Bundle;
import android.os.Bundle;
import android.util.Log;
import android.util.Log;
import android.view.KeyEvent;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.view.Window;
import android.webkit.GeolocationPermissions;
import android.webkit.GeolocationPermissions;
import android.webkit.WebChromeClient;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebViewClient;
import android.widget.ImageView;
import android.widget.Toast;
import android.widget.Toast;


import com.android.internal.R;
import com.android.internal.R;
@@ -49,6 +52,7 @@ public class WebRuntimeActivity extends Activity


    private WebView mWebView;
    private WebView mWebView;
    private URL mBaseUrl;
    private URL mBaseUrl;
    private ImageView mSplashScreen;


    /** Called when the activity is first created. */
    /** Called when the activity is first created. */
    @Override
    @Override
@@ -92,6 +96,9 @@ public class WebRuntimeActivity extends Activity
        getWindow().requestFeature(Window.FEATURE_NO_TITLE);
        getWindow().requestFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.web_runtime);
        setContentView(R.layout.web_runtime);
        mWebView = (WebView) findViewById(R.id.webview);
        mWebView = (WebView) findViewById(R.id.webview);
        mSplashScreen = (ImageView) findViewById(R.id.splashscreen);
        mSplashScreen.setImageResource(
                getResources().getIdentifier("splash_screen", "drawable", getPackageName()));
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.setWebViewClient(new WebViewClient() {
        mWebView.setWebViewClient(new WebViewClient() {
            @Override
            @Override
@@ -113,6 +120,14 @@ public class WebRuntimeActivity extends Activity
                startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
                startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
                return true;
                return true;
            }
            }

            @Override
            public void onPageFinished(WebView view, String url) {
                if (mSplashScreen.getVisibility() == View.VISIBLE) {
                    mSplashScreen.setVisibility(View.GONE);
                    mSplashScreen = null;
                }
            }
        });
        });


        // Use a custom WebChromeClient with geolocation permissions handling to always
        // Use a custom WebChromeClient with geolocation permissions handling to always
+10 −3
Original line number Original line Diff line number Diff line
@@ -14,16 +14,23 @@
     limitations under the License.
     limitations under the License.
-->
-->


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_height="fill_parent"
    >
    >

    <WebView
    <WebView
        android:id="@+id/webview"
        android:id="@+id/webview"
        android:layout_width="fill_parent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_height="fill_parent"
    />
    />
</LinearLayout>

    <ImageView
        android:id="@+id/splashscreen"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:scaleType="fitStart"
    />

</FrameLayout>