package com.algobase.activity; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.res.Resources; import android.graphics.Bitmap; import android.graphics.Color; import android.graphics.Point; import android.os.Bundle; import android.os.Handler; import android.os.Build; import android.util.TypedValue; import android.view.Display; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.view.Window; import android.view.WindowManager; import android.webkit.WebChromeClient; import android.webkit.WebView; import android.webkit.WebViewClient; import android.webkit.DownloadListener; import android.net.Uri; import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.ScrollView; import android.widget.Toast; import com.algobase.share.dialog.*; import com.algobase.stracks.R; public class WebViewActivity extends Activity { static int full_screen = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; String home_url = "http://www.google.de"; //MyWebView webview; WebView webview; ScrollView scrollview; ProgressBar progress_bar; Display display; View decor_view; int window_width; int initial_scale = 100; Handler handler; String[] bookmark_name; String[] bookmark_url; int num_bookmarks; int current_bookmark; ImageView[] but = new ImageView[6]; int dialog_style = MyDialogBuilder.STYLE_HOLO_LIGHT; void show_toast(final String toast) { //Toast.makeText(this, toast, Toast.LENGTH_SHORT).show(); final Activity act = this; handler.post(new Runnable() { public void run() { Toast.makeText(act, toast, Toast.LENGTH_SHORT).show(); } }); } void load_url(final String url) { if (scrollview != null) { scrollview.post(new Runnable() { public void run() { scrollview.fullScroll(View.FOCUS_UP); } }); } initial_scale = 100; if (url.indexOf("biking") != -1) initial_scale = (int)(0.5 + 100*window_width/569.0f); webview.post(new Runnable() { public void run() { webview.setInitialScale(initial_scale); webview.loadUrl(url); } }); show_toast(url); } @Override public void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); //requestWindowFeature(Window.FEATURE_PROGRESS); super.onCreate(savedInstanceState); setContentView(R.layout.webview); if (Build.VERSION.SDK_INT >= 35) { View main_layout = findViewById(R.id.main_layout); Resources res = getResources(); int resId = res.getIdentifier("status_bar_height","dimen","android"); int padding_top = res.getDimensionPixelSize(resId); resId = res.getIdentifier("navigation_bar_height","dimen","android"); int padding_bottom = res.getDimensionPixelSize(resId); main_layout.setPadding(0,padding_top,0,padding_bottom); } MyDialogBuilder.setStyle(dialog_style); decor_view = getWindow().getDecorView(); decor_view.setSystemUiVisibility(full_screen); WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE); display = wm.getDefaultDisplay(); int d = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 45f, getResources().getDisplayMetrics()); Point pt = new Point(); display.getSize(pt); window_width = pt.x - d; Intent intent = getIntent(); home_url = intent.getStringExtra("url"); String bookmarks = ""; if (intent.hasExtra("bookmarks")) bookmarks = intent.getStringExtra("bookmarks"); /* if (bookmarks.equals("")) { bookmarks += "Google url=www.google.de;"; bookmarks += "Spiegel Online url=www.spiegel.de;"; } */ String[] lines = bookmarks.split(";"); int num = lines.length; bookmark_name = new String[num]; bookmark_url = new String[num]; num_bookmarks = 0; for(int i=0; i