package com.byoutline.secretsauce.activities;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebView;
import android.webkit.WebViewClient;
/**
* WebView that hides flick redirect (which normally require pressing back twice
* to get back to application)
*
* @author Sebastian Kacprzak <sebastian.kacprzak at byoutline.com>
*/
public class WebViewFlickrActivity extends WebViewActivityV7 {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Do not launch external browser for redirect.
webview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
});
}
/**
* Overridden to use {@link #onBackPressed()} instead of webview back
* if there is only one element left in history.
*
* @param keyCode
* @param event
* @return
*/
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
boolean canGoBack = webview.canGoBackOrForward(-2);
boolean isBack = keyCode == KeyEvent.KEYCODE_BACK;
if (isBack && canGoBack) {
webview.goBack();
return true;
} else if (isBack) {
onBackPressed();
return true;
}
return super.onKeyDown(keyCode, event);
}
}