From 0cd7d6d74ad684c740ae95b878eb9800bbbc6dfa Mon Sep 17 00:00:00 2001 From: Anthony Restaino Date: Sat, 22 Jun 2013 22:44:45 -0400 Subject: [PATCH] 2.5.0.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pre-release push of code to github. not guaranteed to work the way you want. This is what is fixed to far: - added History viewer - added better bookmarks (fixed bug in fullscreen mode) - better full screen URL bar handling - added some more animations - incognito mode -notify user of SSL errors -popup tabs now work -fixed bug where certain sites wouldn’t display until touched --- AndroidManifest.xml | 17 +- Barebones.apk | Bin 0 -> 107929 bytes ic_launcher-web.png | Bin 108309 -> 0 bytes ic_launcher.png | Bin 108864 -> 0 bytes lightning_final.png | Bin 0 -> 97415 bytes res/anim/down.xml | 8 + res/anim/up.xml | 8 + res/drawable-hdpi/ic_launcher.png | Bin 5957 -> 5425 bytes res/drawable-mdpi/ic_launcher.png | Bin 3086 -> 3221 bytes res/drawable-xhdpi/ic_launcher.png | Bin 8522 -> 7843 bytes res/drawable-xhdpi/incognito.png | Bin 0 -> 486 bytes res/layout/activity_main.xml | 4 +- res/layout/settings.xml | 2 +- res/menu-de/menu.xml | 2 +- res/menu-es/menu.xml | 2 +- res/menu-fr/menu.xml | 2 +- res/menu-it/menu.xml | 2 +- res/menu-zh-rCN/menu.xml | 2 +- res/menu-zh-rTW/menu.xml | 2 +- res/menu/incognito_menu.xml | 8 + res/menu/menu.xml | 4 +- res/values-fr/strings.xml | 2 +- src/acr/browser/barebones/Barebones.java | 1636 +++++++------ src/acr/browser/barebones/BookmarkPage.java | 24 + src/acr/browser/barebones/CustomWebView.java | 55 + .../browser/barebones/DatabaseHandler.java | 8 +- src/acr/browser/barebones/FinalVars.java | 14 +- src/acr/browser/barebones/HistoryItem.java | 8 +- src/acr/browser/barebones/HistoryPage.java | 18 + src/acr/browser/barebones/IncognitoMode.java | 2067 +++++++++++++++++ src/acr/browser/barebones/Settings.java | 56 +- src/acr/browser/barebones/SpaceTokenizer.java | 61 + 32 files changed, 3112 insertions(+), 900 deletions(-) create mode 100644 Barebones.apk delete mode 100644 ic_launcher-web.png delete mode 100644 ic_launcher.png create mode 100644 lightning_final.png create mode 100644 res/anim/down.xml create mode 100644 res/anim/up.xml create mode 100644 res/drawable-xhdpi/incognito.png create mode 100644 res/menu/incognito_menu.xml create mode 100644 src/acr/browser/barebones/BookmarkPage.java create mode 100644 src/acr/browser/barebones/CustomWebView.java create mode 100644 src/acr/browser/barebones/HistoryPage.java create mode 100644 src/acr/browser/barebones/IncognitoMode.java create mode 100644 src/acr/browser/barebones/SpaceTokenizer.java diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 161dc40..75951c4 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="43" + android:versionName="2.5.0.0" > + + + + + + + UyQK8+Ql#nHqEJ-0-h*q>{ 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 z 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≫>z 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 diff --git a/ic_launcher.png b/ic_launcher.png deleted file mode 100644 index aea82cb9e14e14f1f1d82b06ae34a14772509119..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 108864 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�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

y*f$m4F$$0 zv)>?mN`Uodd|MM&I^+W{;?K6WltZ2=q{=DlahxqSz>4T%X!i6g*5;-brqyvCgo8^j zLQ-;d%T4WME?an;ZZ21Q4k|8%fRWOKCnqq|ts451sGeO8d}Q}elta=GOAW9XM98H-aygpr{u(c z@DeY0Y5pC+z*$c6f5Z;6AU!|Wp{E=@)tEDVIa6dZO=Pl4Gxq$>ZSR8RQh3wi-`)2IL4U6UCY-hof$2Cq@2NuH_W?|BWu zv=Yr=smr-%8CPDPII?bwpitf@sW*za-nL>AQa`x+AZ){f#pW@DRm&VM~k2k=Nnd+G8t?Kd&DeBNUZSEj%Jy zR)^+>$1V5%t?CYQQ4pF_PMh_Ex-a8vX&Y;u0|i{n*Z!?!0=81U%DM_umEeG}rX?vb zHn*7%_G|#A0`Z9nn^6#uDGi&JzEVp4K%$6Xin25nMw-jhCvEmE8nc?mS8k*1)qa@< zJov=_NB>?35(8|+U-n)eZEliiKJ0nHAcOz6{yo*m5IMLrZ}+A$lhL12O#QP9z=^i+PNB zf+_ZM5n>FBZ6nz^Ejy`6hP$@0K>I6|k0~8MbZ}L^xrk<@TEe{$xtq{YF8b&-O?f)M z`^w?gIy@_IX>VlT4j)vQA&!WMtb>kl-jYH`$R$Pxr!Y5mdez^q{K~lr|MU|ols}t% zC*p$tZMh}3rC6a`=TyJr9gVLAnhh~$SoOw#l<_#RbrY(CjLf>dlk<3p`>5S(-{oDEGlPv$HAz%x^|>fAoIwQ1~c&D7O9SnItk{x|wmy7v?UCkKClT|W#V7l+Tn20z6jyxy3 zDsia=l7z>2Bu0lw4SSx_@3^?mOw~i`(^VNEpzSF?(KotI|l z)lj3UHgr!)!otdw8%RO!;z4-*Wm(!b@}E6u%IAo}u_sMakcM5H`0x++2GbW+S)#D9 z7t)sJuala;M4#}Oj)r2BqKW(ic1ISS*6%$x#(P~g)sujqNlu>Oi_T~I?mh6sYd=R? zqSWgjs%H#Ep(d_%UHh_pFs3#Z-Xdw<#On5%sf(BG+s=IId^T9Zw3R8wx=h#b({P?> zVYC!l-T|!kDy1rA8=XYe_~#EpQ36qb)#@94=}-U&x5ky5G5%7um^p129~T%ieJ$Io zdyphI>BJxSWbcDa87*dy4Zzi%MttM#ijU+@=X)iiCbM5gMBkPID6$zEOF9@6r>`@G-_Idt-^v{cu5B%RSgRPPaavS28ja0I1ndqlviYMi^s;khd z^5hdFaVF@yI8bOAI6^#9&KEAY%s}K68Dof&+}#MO>i=$^W-^4VxVEQVn`AKEVO5BayazN~sDw zjCoJ=Y#LD5$°cp0vCEC+y?nF~DUxAiGg+TzWqOGt5!9fbUgUrM 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 diff --git a/lightning_final.png b/lightning_final.png new file mode 100644 index 0000000000000000000000000000000000000000..f2839721eb4fb54784bbc14050bc6e8e6c9a609c GIT binary patch literal 97415 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 + + + + + \ No newline at end of file diff --git a/res/anim/up.xml b/res/anim/up.xml new file mode 100644 index 0000000..4f8e748 --- /dev/null +++ b/res/anim/up.xml @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/res/drawable-hdpi/ic_launcher.png b/res/drawable-hdpi/ic_launcher.png index 3b9f85eeb2d9fc47ad9f79043e23abd3c6d1519a..4f30b97353c1492ee76434aea9d0052afaa36e31 100644 GIT binary patch delta 5377 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 uiVKJX8@7QA;APpoX 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 O00007s7ur<2LFwp<863beht5W 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 Ye>Pi6nqAWj0ssI207*qoM6N<$g4tRwJpcdz delta 8499 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 ZFfgYjM*Mi(Ar6cN22WQ%mvv4FO#poM$Q}Ry literal 0 HcmV?d00001 diff --git a/res/layout/activity_main.xml b/res/layout/activity_main.xml index 4c1141e..4aecd7f 100644 --- a/res/layout/activity_main.xml +++ b/res/layout/activity_main.xml @@ -33,7 +33,8 @@ + android:layout_height="match_parent" + android:orientation="horizontal"> @@ -103,7 +104,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" - android:layout_toRightOf="@+id/forward" android:paddingBottom="10dp" android:paddingLeft="10dp" android:paddingRight="10dp" diff --git a/res/layout/settings.xml b/res/layout/settings.xml index f7343af..f8bc446 100644 --- a/res/layout/settings.xml +++ b/res/layout/settings.xml @@ -27,7 +27,7 @@ android:layout_height="wrap_content"> - + diff --git a/res/menu-es/menu.xml b/res/menu-es/menu.xml index d872064..382547e 100644 --- a/res/menu-es/menu.xml +++ b/res/menu-es/menu.xml @@ -1,7 +1,7 @@ - + diff --git a/res/menu-fr/menu.xml b/res/menu-fr/menu.xml index 427d597..bc76997 100644 --- a/res/menu-fr/menu.xml +++ b/res/menu-fr/menu.xml @@ -1,6 +1,6 @@ - + diff --git a/res/menu-it/menu.xml b/res/menu-it/menu.xml index 5b5df5a..598c1d7 100644 --- a/res/menu-it/menu.xml +++ b/res/menu-it/menu.xml @@ -1,6 +1,6 @@ - + diff --git a/res/menu-zh-rCN/menu.xml b/res/menu-zh-rCN/menu.xml index 50c8aa1..0b585ed 100644 --- a/res/menu-zh-rCN/menu.xml +++ b/res/menu-zh-rCN/menu.xml @@ -1,6 +1,6 @@ - + diff --git a/res/menu-zh-rTW/menu.xml b/res/menu-zh-rTW/menu.xml index b3a6137..af22832 100644 --- a/res/menu-zh-rTW/menu.xml +++ b/res/menu-zh-rTW/menu.xml @@ -1,7 +1,7 @@ - + diff --git a/res/menu/incognito_menu.xml b/res/menu/incognito_menu.xml new file mode 100644 index 0000000..25f63c9 --- /dev/null +++ b/res/menu/incognito_menu.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/res/menu/menu.xml b/res/menu/menu.xml index bd946f1..56f6c43 100644 --- a/res/menu/menu.xml +++ b/res/menu/menu.xml @@ -1,11 +1,11 @@ - + - + \ No newline at end of file diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index 7c006dc..a8e427f 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -15,4 +15,4 @@ Les paramètres ne s\'appliqueront qu\'aux nouveaux onglets Activer le mode plein écran Activer JavaScript - + \ No newline at end of file diff --git a/src/acr/browser/barebones/Barebones.java b/src/acr/browser/barebones/Barebones.java index ce05767..c992c6d 100644 --- a/src/acr/browser/barebones/Barebones.java +++ b/src/acr/browser/barebones/Barebones.java @@ -39,9 +39,6 @@ import android.os.Environment; import android.os.Handler; import android.os.Message; import android.provider.Browser; -import android.text.SpannableString; -import android.text.Spanned; -import android.text.TextUtils; import android.util.DisplayMetrics; import android.util.Log; import android.view.Gravity; @@ -56,16 +53,15 @@ import android.view.View.OnClickListener; import android.view.View.OnKeyListener; import android.view.View.OnLongClickListener; import android.view.View.OnTouchListener; -import android.view.ViewGroup; import android.view.WindowManager; import android.view.animation.Animation; import android.view.animation.Animation.AnimationListener; import android.view.animation.AnimationUtils; import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputMethodManager; +import android.webkit.CookieManager; import android.webkit.DownloadListener; import android.webkit.GeolocationPermissions; -import android.webkit.HttpAuthHandler; import android.webkit.SslErrorHandler; import android.webkit.URLUtil; import android.webkit.ValueCallback; @@ -80,6 +76,7 @@ import android.webkit.WebStorage.QuotaUpdater; import android.webkit.WebView; import android.webkit.WebView.HitTestResult; import android.webkit.WebViewClient; +import android.webkit.WebViewDatabase; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.FrameLayout; @@ -87,12 +84,10 @@ import android.widget.HorizontalScrollView; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.MultiAutoCompleteTextView; -import android.widget.MultiAutoCompleteTextView.Tokenizer; import android.widget.PopupMenu; import android.widget.PopupMenu.OnMenuItemClickListener; import android.widget.ProgressBar; import android.widget.RelativeLayout; -import android.widget.ScrollView; import android.widget.SimpleAdapter; import android.widget.TextView; import android.widget.TextView.OnEditorActionListener; @@ -101,24 +96,44 @@ import android.widget.Toast; public class Barebones extends Activity { @SuppressLint("SetJavaScriptEnabled") - public class AnthonyChromeClient extends WebChromeClient { + public class CustomChromeClient extends WebChromeClient { private Bitmap mDefaultVideoPoster; private View mVideoProgressView; + @Override + public void onExceededDatabaseQuota(String url, + String databaseIdentifier, long quota, + long estimatedDatabaseSize, long totalQuota, + QuotaUpdater quotaUpdater) { + quotaUpdater.updateQuota(totalQuota + estimatedDatabaseSize); + super.onExceededDatabaseQuota(url, databaseIdentifier, quota, + estimatedDatabaseSize, totalQuota, quotaUpdater); + } + + @Override + public void onReachedMaxAppCacheSize(long requiredStorage, long quota, + QuotaUpdater quotaUpdater) { + quotaUpdater.updateQuota(quota+requiredStorage); + super.onReachedMaxAppCacheSize(requiredStorage, quota, quotaUpdater); + } + + @Override + public void onCloseWindow(WebView window) { + browserHandler.sendEmptyMessage(2); + super.onCloseWindow(window); + } + @Override public Bitmap getDefaultVideoPoster() { - // Log.i(LOGTAG, "here in on getDefaultVideoPoster"); if (mDefaultVideoPoster == null) { mDefaultVideoPoster = BitmapFactory.decodeResource( getResources(), android.R.color.black); } return mDefaultVideoPoster; - } + } @Override public View getVideoLoadingProgressView() { - // Log.i(LOGTAG, "here in on getVideoLoadingPregressView"); - if (mVideoProgressView == null) { LayoutInflater inflater = LayoutInflater.from(getBaseContext()); mVideoProgressView = inflater.inflate( @@ -127,26 +142,30 @@ public class Barebones extends Activity { return mVideoProgressView; } - @Override - public void onCloseWindow(WebView window) { - super.onCloseWindow(window); - } - @Override public boolean onCreateWindow(WebView view, boolean isDialog, - boolean isUserGesture, Message resultMsg) { - return true; + boolean isUserGesture, final Message resultMsg) { + + newTab(number,"",true,false); + WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj; + transport.setWebView(main[pageId]); + resultMsg.sendToTarget(); + browserHandler.postDelayed(new Runnable() { + public void run() { + main[pageId].loadUrl(getUrl.getText().toString()); + } + }, 500); + return true; } @Override public void onGeolocationPermissionsShowPrompt(final String origin, final GeolocationPermissions.Callback callback) { - if (allowLocation == true) { - callback.invoke(origin, true, false); - } else if (allowLocation == false) { + if (!allowLocation) { callback.invoke(origin, false, false); - } else { + } + if (allowLocation) { Log.i("Barebones: ", "onGeolocationPermissionsShowPrompt()"); @@ -161,7 +180,6 @@ public class Barebones extends Activity { @Override public void onClick(DialogInterface dialog, int id) { - // origin, allow, remember callback.invoke(origin, true, remember); } }) @@ -170,12 +188,11 @@ public class Barebones extends Activity { @Override public void onClick(DialogInterface dialog, int id) { - // origin, allow, remember callback.invoke(origin, false, remember); } }); AlertDialog alert = builder.create(); - // alert.show(); + alert.show(); } } @@ -192,6 +209,7 @@ public class Barebones extends Activity { background.removeView(mCustomView); mCustomView = null; background.setVisibility(View.VISIBLE); + uBar.setVisibility(View.VISIBLE); mCustomViewCallback.onCustomViewHidden(); main[pageId].setVisibility(View.VISIBLE); @@ -199,29 +217,11 @@ public class Barebones extends Activity { // Log.i(LOGTAG, "set it to webVew"); } - @Override - public void onProgressChanged(WebView view, int newProgress) { - /* - * int num = view.getId(); if (num == pageId) { if (newProgress == - * 100) { progressBar.setVisibility(View.GONE); - * refresh.setVisibility(View.VISIBLE); - * main[num].getSettings().setCacheMode( WebSettings.LOAD_DEFAULT); - * - * } else { refresh.setVisibility(View.INVISIBLE); - * progressBar.setVisibility(View.VISIBLE); } } - */ - super.onProgressChanged(view, newProgress); - } - - @Override - public void onReachedMaxAppCacheSize(long requiredStorage, long quota, - QuotaUpdater quotaUpdater) { - super.onReachedMaxAppCacheSize(requiredStorage, quota, quotaUpdater); - } - @Override public void onReceivedIcon(WebView view, Bitmap favicon) { - setFavicon(view.getId(), favicon); + if (!incognito[view.getId()]) { + setFavicon(view.getId(), favicon); + } super.onReceivedIcon(view, favicon); } @@ -230,7 +230,7 @@ public class Barebones extends Activity { numberPage = view.getId(); urlTitle[numberPage].setText(title); urlToLoad[numberPage][1] = title; - if (title != null) { + if (title != null && !incognito[numberPage]) { updateHistory(urlToLoad[numberPage][0], title); } super.onReceivedTitle(view, title); @@ -241,7 +241,7 @@ public class Barebones extends Activity { CustomViewCallback callback) { // Log.i(LOGTAG, "here in on ShowCustomView"); main[pageId].setVisibility(View.GONE); - + uBar.setVisibility(View.GONE); // if a view already exists then immediately terminate the new one if (mCustomView != null) { callback.onCustomViewHidden(); @@ -259,12 +259,12 @@ public class Barebones extends Activity { WebChromeClient.CustomViewCallback callback) { // Log.i(LOGTAG, "here in on ShowCustomView"); main[pageId].setVisibility(View.GONE); + uBar.setVisibility(View.GONE); // if a view already exists then immediately terminate the new one if (mCustomView != null) { callback.onCustomViewHidden(); return; } - background.addView(view); mCustomView = view; mCustomViewCallback = callback; @@ -279,7 +279,7 @@ public class Barebones extends Activity { i.setType("image/*"); Barebones.this.startActivityForResult( Intent.createChooser(i, "Image Browser"), - FILECHOOSER_RESULTCODE); + 1); } public void openFileChooser(ValueCallback uploadMsg, @@ -290,7 +290,7 @@ public class Barebones extends Activity { i.setType("image/*"); Barebones.this.startActivityForResult( Intent.createChooser(i, "Image Browser"), - FILECHOOSER_RESULTCODE); + 1); } public void openFileChooser(ValueCallback uploadMsg, @@ -301,11 +301,11 @@ public class Barebones extends Activity { i.setType("image/*"); Barebones.this.startActivityForResult( Intent.createChooser(i, "Image Browser"), - FILECHOOSER_RESULTCODE); + 1); } } - public class AnthonyDownload implements DownloadListener { + private class CustomDownloadListener implements DownloadListener { @Override public void onDownloadStart(final String url, String userAgent, @@ -342,7 +342,7 @@ public class Barebones extends Activity { Log.e("Barebones", "Problem downloading"); Toast.makeText(CONTEXT, "Error Downloading File", Toast.LENGTH_SHORT).show(); - } catch (SecurityException e) { + } catch (SecurityException ignored) { } } @@ -351,66 +351,96 @@ public class Barebones extends Activity { } - public class AnthonyWebViewClient extends WebViewClient { + private class CustomWebViewClient extends WebViewClient { @Override - public void doUpdateVisitedHistory(WebView view, final String url, - final boolean isReload) { + public boolean shouldOverrideUrlLoading(WebView view, String url) { + if (url.contains("market://") + || url.contains("play.google.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } else if (url.contains("youtube.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } else if (url.contains("maps.google.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } + return false; } @Override public void onPageFinished(WebView view, final String url) { - progressBar.setVisibility(View.INVISIBLE); - refresh.setVisibility(View.VISIBLE); + if (view.isShown()) { + view.invalidate(); + progressBar.setVisibility(View.GONE); + refresh.setVisibility(View.VISIBLE); + if(showFullScreen&&uBar.isShown()){ + uBar.startAnimation(slideUp); + + } + } view.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); + pageIsLoading = false; } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { - refresh.setVisibility(View.INVISIBLE); - progressBar.setVisibility(View.VISIBLE); - pageIsLoading = true; + numberPage = view.getId(); if (view.isShown()) { - getUrl.setText(url); - + refresh.setVisibility(View.INVISIBLE); + progressBar.setVisibility(View.VISIBLE); + setUrlText(url); + pageIsLoading = true; } - urlTitle[numberPage].setCompoundDrawables(webpageOther, null, - exitTab, null); - if (favicon != null) { - setFavicon(view.getId(), favicon); + if (incognito[numberPage]) { + urlTitle[numberPage].setCompoundDrawables(incognitoPage, null, + exitTab, null); + } else { + urlTitle[numberPage].setCompoundDrawables(webpageOther, null, + exitTab, null); + if (favicon != null) { + setFavicon(view.getId(), favicon); + } } getUrl.setPadding(tenPad, 0, tenPad, 0); urlToLoad[numberPage][0] = url; - if (uBarShows == false) { + if (!uBar.isShown()&&showFullScreen) { uBar.startAnimation(slideDown); - uBarShows = true; } } @Override - public void onReceivedHttpAuthRequest(WebView view, - HttpAuthHandler handler, String host, String realm) { - // handler.proceed(username, password); - super.onReceivedHttpAuthRequest(view, handler, host, realm); - } - - @Override - public void onReceivedLoginRequest(WebView view, String realm, - String account, String args) { - - super.onReceivedLoginRequest(view, realm, account, args); - } - - @Override - public void onReceivedSslError(WebView view, SslErrorHandler handler, + public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) { - - handler.proceed(); + AlertDialog.Builder builder = new AlertDialog.Builder(CONTEXT); + builder.setTitle("Warning"); + builder.setMessage( + "The certificate of the site is not trusted. Proceed anyway?") + .setCancelable(true) + .setPositiveButton("Yes", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, + int id) { + handler.proceed(); + } + }) + .setNegativeButton("No", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, + int id) { + handler.cancel(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); super.onReceivedSslError(view, handler, error); } @@ -418,384 +448,314 @@ public class Barebones extends Activity { public void onScaleChanged(WebView view, float oldScale, float newScale) { view.getSettings().setLayoutAlgorithm( - LayoutAlgorithm.NARROW_COLUMNS); + LayoutAlgorithm.NORMAL); super.onScaleChanged(view, oldScale, newScale); } - } - - static public class BookmarkListener implements OnClickListener { @Override - public void onClick(View arg0) { - int number = arg0.getId(); - background.addView(main[pageId]); - pageIdIsVisible = true; - main[pageId].startAnimation(fadeIn); - if (showFullScreen) { - background.addView(uBar); - uBar.startAnimation(fadeIn); - } - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - isBookmarkShowing = false; - - uBar.bringToFront(); - main[pageId].loadUrl(bUrl[number]); + public void onFormResubmission(WebView view, final Message dontResend, + final Message resend) { + AlertDialog.Builder builder = new AlertDialog.Builder(CONTEXT); + builder.setTitle("Resend Data"); + builder.setMessage( + "Would you like to resend data?") + .setCancelable(true) + .setPositiveButton("Yes", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, + int id) { + + resend.sendToTarget(); + } + }) + .setNegativeButton("No", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, + int id) { + + dontResend.sendToTarget(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + super.onFormResubmission(view, dontResend, resend); } - } - public class BookmarkLongClick implements OnLongClickListener { + private void generateHistory(final CustomWebView view) { - @Override - public boolean onLongClick(final View arg0) { - DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - switch (which) { - case DialogInterface.BUTTON_POSITIVE: { - int delete = arg0.getId(); - File book = new File(getBaseContext().getFilesDir(), - "bookmarks"); - File bookUrl = new File(getBaseContext().getFilesDir(), - "bookurl"); - int n = 0; - try { - BufferedWriter bookWriter = new BufferedWriter( - new FileWriter(book)); - BufferedWriter urlWriter = new BufferedWriter( - new FileWriter(bookUrl)); - while (bUrl[n] != null && n < (MAX_BOOKMARKS - 1)) { - if (delete != n) { - bookWriter.write(bTitle[n]); - urlWriter.write(bUrl[n]); - bookWriter.newLine(); - urlWriter.newLine(); - } - n++; - } - bookWriter.close(); - urlWriter.close(); - } catch (FileNotFoundException e) { - } catch (IOException e) { - } - for (int p = 0; p < MAX_BOOKMARKS; p++) { - bUrl[p] = null; - bTitle[p] = null; - } - try { - BufferedReader readBook = new BufferedReader( - new FileReader(book)); - BufferedReader readUrl = new BufferedReader( - new FileReader(bookUrl)); - String t, u; - int z = 0; - while ((t = readBook.readLine()) != null - && (u = readUrl.readLine()) != null - && z < MAX_BOOKMARKS) { - bUrl[z] = u; - bTitle[z] = t; - z++; - } - readBook.close(); - readUrl.close(); - } catch (FileNotFoundException e) { - } catch (IOException e) { - } - // scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - isBookmarkShowing = false; - openBookmarks(); + Thread history = new Thread(new Runnable() { - break; - } - case DialogInterface.BUTTON_NEGATIVE: { + @Override + public void run() { + String historyHtml = HistoryPage.Heading; + Cursor historyCursor = null; + String[][] h = new String[50][3]; - break; - } - default: + try { + SQLiteDatabase s = historyHandler.getReadableDatabase(); + historyCursor = s.query("history", // URI + // of + columns, // Which columns to return + null, // Which rows to return (all rows) + null, // Selection arguments (none) + null, null, null); - break; - } + handler.sendEmptyMessage(1); + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { } - }; - - AlertDialog.Builder builder = new AlertDialog.Builder(CONTEXT); // dialog - builder.setMessage("Do you want to delete this bookmark?") - .setPositiveButton("Yes", dialogClickListener) - .setNegativeButton("No", dialogClickListener).show(); - return allowLocation; - - } - - } - - public class SpaceTokenizer implements Tokenizer { - @Override - public int findTokenEnd(CharSequence text, int cursor) { - int i = cursor; - int len = text.length(); + list = new ArrayList>(); + try { + if (historyCursor != null) { + if (historyCursor.moveToLast()) { + // Variable for holding the retrieved URL + urlColumn = historyCursor.getColumnIndex("url"); + titleColumn = historyCursor.getColumnIndex("title"); + // Reference to the the column containing the URL + int n = 0; + do { - while (i < len) { - if (text.charAt(i) == ' ') { - return i; - } else { - i++; + h[n][0] = historyCursor.getString(urlColumn); + h[n][2] = h[n][0].substring(0, + Math.min(100, h[n][0].length())) + + "..."; + h[n][1] = historyCursor.getString(titleColumn); + historyHtml += (HistoryPage.Part1 + h[n][0] + + HistoryPage.Part2 + h[n][1] + + HistoryPage.Part3 + h[n][2] + HistoryPage.Part4); + n++; + } while (n < 49 && historyCursor.moveToPrevious()); + } + } + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { } - } - return len; - } - - @Override - public int findTokenStart(CharSequence text, int cursor) { - int i = cursor; - - while (i > 0 && text.charAt(i - 1) != ' ') { - i--; - } - while (i < cursor && text.charAt(i) == ' ') { - i++; - } - - return i; - } - - @Override - public CharSequence terminateToken(CharSequence text) { - int i = text.length(); - - while (i > 0 && text.charAt(i - 1) == ' ') { - i--; - } - - if (i > 0 && text.charAt(i - 1) == ' ') { - return text; - } else { - if (text instanceof Spanned) { - SpannableString sp = new SpannableString(text + " "); - TextUtils.copySpansFrom((Spanned) text, 0, text.length(), - Object.class, sp, 0); - return sp; - } else { - return text + " "; + historyHtml += BookmarkPage.End; + File historyWebPage = new File(getBaseContext().getFilesDir(), + "history.html"); + try { + FileWriter hWriter = new FileWriter(historyWebPage, false); + hWriter.write(historyHtml); + hWriter.close(); + } catch (IOException e) { + e.printStackTrace(); } - } - } - } - - public class TabClick implements OnClickListener { - - @SuppressWarnings("deprecation") - @Override - public void onClick(View v) { - id = v.getId(); - if (API < 16) { - urlTitle[pageId].setBackgroundDrawable(inactive); - } else if (API > 15) { - urlTitle[pageId].setBackground(inactive); - } - urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); - - if (isBookmarkShowing) { - - background.addView(main[id]); - main[id].startAnimation(fadeIn); - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - isBookmarkShowing = false; - uBar.bringToFront(); - } else if (!isBookmarkShowing) { - if (!showFullScreen) { - background.addView(main[id]); - main[id].startAnimation(fadeIn); - main[pageId].startAnimation(fadeOut); - pageIdIsVisible = false; - background.removeView(main[pageId]); - uBar.bringToFront(); - } else if (API >= 12) { - pageIdIsVisible = false; - main[id].setAlpha(0f); - main[id].clearAnimation(); - background.addView(main[id]); - main[id].animate().alpha(1f) - .setDuration(mShortAnimationDuration); - main[id].clearAnimation(); - background.removeView(main[pageId]); - uBar.bringToFront(); - } else { - pageIdIsVisible = false; - background.removeView(main[pageId]); - background.addView(main[id]); + if (uBar.isShown()) { + urlTitle[pageId].setText("History"); + setUrlText(""); + getUrl.setPadding(tenPad, 0, tenPad, 0); } - uBar.bringToFront(); - } - pageId = id; - pageIdIsVisible = true; - getUrl.setText(urlToLoad[pageId][0]); - getUrl.setPadding(tenPad, 0, tenPad, 0); - if (API < 16) { - urlTitle[pageId].setBackgroundDrawable(active); - } else if (API > 15) { - urlTitle[pageId].setBackground(active); + + view.loadUrl("file:///" + historyWebPage); } - urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); - } + }); + history.run(); } - public class TabLongClick implements OnLongClickListener { - - @Override - public boolean onLongClick(View v) { - int id = v.getId(); - if (pageId == id && isBookmarkShowing) { - - background.addView(main[pageId]); - // main[pageId].startAnimation(fadeIn); - if (showFullScreen) { - background.addView(uBar); - // uBar.startAnimation(fadeIn); - } - // scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - uBar.bringToFront(); - isBookmarkShowing = false; - } - pageIdIsVisible = true; - deleteTab(id); - - return true; + private void setUrlText(String url) { + if (!url.contains("file:///" + getBaseContext().getFilesDir() + + "/bookmarks.html") + && !url.contains("file:///" + getBaseContext().getFilesDir() + + "/history.html")) { + getUrl.setText(url); + } else { + getUrl.setText(""); } - } - public class TabTouch implements OnTouchListener { + private class TabTouchListener implements OnTouchListener { @SuppressWarnings("deprecation") @Override public boolean onTouch(View v, MotionEvent event) { - pageIdIsVisible = false; id = v.getId(); - main[id].clearAnimation(); - main[pageId].clearAnimation(); - xPress = false; - x = (int) event.getX(); - y = (int) event.getY(); - edge = new Rect(); + background.clearDisappearingChildren(); + boolean xPress = false; + int x = (int) event.getX(); + int y = (int) event.getY(); + Rect edge = new Rect(); v.getLocalVisibleRect(edge); - if (x >= (edge.right - bounds.width() - v.getPaddingRight() - fuzz*3/2) - && x <= (edge.right - v.getPaddingRight() + fuzz*3/2) - && y >= (v.getPaddingTop() - fuzz/2) - && y <= (v.getHeight() - v.getPaddingBottom() + fuzz/2)) { - xPress = true; - } - urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); if (event.getAction() == MotionEvent.ACTION_UP) { + if (x >= (edge.right - bounds.width() - v.getPaddingRight() - fuzz * 3 / 2) + && x <= (edge.right - v.getPaddingRight() + fuzz * 3 / 2) + && y >= (v.getPaddingTop() - fuzz / 2) + && y <= (v.getHeight() - v.getPaddingBottom() + fuzz / 2)) { + xPress = true; + } if (id == pageId) { if (xPress) { - if (isBookmarkShowing) { - background.removeView(scrollBookmarks); - isBookmarkShowing = false; - - } else if (!isBookmarkShowing) { - - } deleteTab(id); uBar.bringToFront(); - } else if (!xPress) { - } } else if (id != pageId) { if (xPress) { deleteTab(id); - } else if (!xPress) { + } else { if (API < 16) { urlTitle[pageId].setBackgroundDrawable(inactive); } else if (API > 15) { urlTitle[pageId].setBackground(inactive); } urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); - - if (isBookmarkShowing) { - + if (!showFullScreen) { background.addView(main[id]); main[id].startAnimation(fadeIn); - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - isBookmarkShowing = false; + main[pageId].startAnimation(fadeOut); + background.removeView(main[pageId]); uBar.bringToFront(); - } else if (!isBookmarkShowing) { - if (!showFullScreen) { - background.addView(main[id]); - main[id].startAnimation(fadeIn); - main[pageId].startAnimation(fadeOut); - pageIdIsVisible = false; - background.removeView(main[pageId]); - uBar.bringToFront(); - } else if (API >= 12) { - pageIdIsVisible = false; - main[id].setAlpha(0f); - main[id].clearAnimation(); - background.addView(main[id]); + } else if (API >= 12) { + main[id].setAlpha(0f); + background.addView(main[id]); + try { main[id].animate().alpha(1f) .setDuration(mShortAnimationDuration); - main[pageId].clearAnimation(); - background.removeView(main[pageId]); - - uBar.bringToFront(); - } else { - pageIdIsVisible = false; - background.removeView(main[pageId]); - background.addView(main[id]); + } catch (NullPointerException ignored) { } + background.removeView(main[pageId]); uBar.bringToFront(); + } else { + background.removeView(main[pageId]); + background.addView(main[id]); } + uBar.bringToFront(); + pageId = id; - pageIdIsVisible = true; - getUrl.setText(urlToLoad[pageId][0]); + setUrlText(urlToLoad[pageId][0]); getUrl.setPadding(tenPad, 0, tenPad, 0); + if (API < 16) { + urlTitle[pageId].setBackgroundDrawable(active); + } else if (API > 15) { + urlTitle[pageId].setBackground(active); + } + if (main[pageId].getProgress() < 100) { + refresh.setVisibility(View.INVISIBLE); + progressBar.setVisibility(View.VISIBLE); + } else { + progressBar.setVisibility(View.GONE); + refresh.setVisibility(View.VISIBLE); + } + tabScroll.smoothScrollTo(urlTitle[pageId].getLeft(), 0); + main[pageId].invalidate(); } } - if (API < 16) { - urlTitle[pageId].setBackgroundDrawable(active); - } else if (API > 15) { - urlTitle[pageId].setBackground(active); - } } uBar.bringToFront(); urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); - - pageIdIsVisible = true; return true; } } - public class WebPageLongClick implements OnLongClickListener { + private void deleteBookmark(String url) { + File book = new File(getBaseContext().getFilesDir(), "bookmarks"); + File bookUrl = new File(getBaseContext().getFilesDir(), "bookurl"); + int n = 0; + try { + BufferedWriter bookWriter = new BufferedWriter(new FileWriter(book)); + BufferedWriter urlWriter = new BufferedWriter(new FileWriter( + bookUrl)); + while (bUrl[n] != null && n < (MAX_BOOKMARKS - 1)) { + if (!bUrl[n].equalsIgnoreCase(url)) { + bookWriter.write(bTitle[n]); + urlWriter.write(bUrl[n]); + bookWriter.newLine(); + urlWriter.newLine(); + } + n++; + } + bookWriter.close(); + urlWriter.close(); + } catch (FileNotFoundException e) { + } catch (IOException e) { + } + for (int p = 0; p < MAX_BOOKMARKS; p++) { + bUrl[p] = null; + bTitle[p] = null; + } + try { + BufferedReader readBook = new BufferedReader(new FileReader(book)); + BufferedReader readUrl = new BufferedReader(new FileReader(bookUrl)); + String t, u; + int z = 0; + while ((t = readBook.readLine()) != null + && (u = readUrl.readLine()) != null && z < MAX_BOOKMARKS) { + bUrl[z] = u; + bTitle[z] = t; + z++; + } + readBook.close(); + readUrl.close(); + } catch (IOException ignored) { + } + openBookmarks(main[pageId]); + } + + private class WebPageLongClickListener implements OnLongClickListener { @Override public boolean onLongClick(View v) { final HitTestResult result = main[pageId].getHitTestResult(); - boolean image = false; - if (result.getType() == HitTestResult.IMAGE_TYPE && API > 8) { - image = true; - } + if (main[pageId].getUrl().contains( + "file:///" + getBaseContext().getFilesDir() + + "/bookmarks.html")) { + if (result.getExtra() != null) { + DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: { + int num = pageId; + newTab(number, result.getExtra(), false, false); + // urlTitle[num].performClick(); + pageId = num; + break; + } + case DialogInterface.BUTTON_NEGATIVE: { + main[pageId].loadUrl(result.getExtra()); + break; + } + case DialogInterface.BUTTON_NEUTRAL: { - if (result.getExtra() != null) { - if (image) { + deleteBookmark(result.getExtra()); + break; + } + } + } + }; + + AlertDialog.Builder builder = new AlertDialog.Builder( + CONTEXT); // dialog + builder.setMessage( + "What would you like to do with this link?") + .setPositiveButton("Open in New Tab", + dialogClickListener) + .setNegativeButton("Open Normally", + dialogClickListener) + .setNeutralButton("Delete", dialogClickListener) + .show(); + } + return true; + } else if (result.getExtra() != null) { + if (result.getType() == 5 && API > 8) { DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { switch (which) { case DialogInterface.BUTTON_POSITIVE: { int num = pageId; - newTab(number, result.getExtra(), false); + newTab(number, result.getExtra(), false, false); // urlTitle[num].performClick(); pageId = num; break; @@ -849,7 +809,7 @@ public class Barebones extends Activity { Toast.makeText(CONTEXT, "Error Downloading File", Toast.LENGTH_SHORT).show(); - } catch (SecurityException e) { + } catch (SecurityException ignored) { } } @@ -878,7 +838,7 @@ public class Barebones extends Activity { switch (which) { case DialogInterface.BUTTON_POSITIVE: { int num = pageId; - newTab(number, result.getExtra(), false); + newTab(number, result.getExtra(), false, false); // urlTitle[num].performClick(); pageId = num; break; @@ -924,105 +884,110 @@ public class Barebones extends Activity { } // variables to differentiate free from paid - static final int MAX_TABS = FinalVars.MAX_TABS; - static final int MAX_BOOKMARKS = FinalVars.MAX_BOOKMARKS; - static final boolean PAID_VERSION = FinalVars.PAID_VERSION; - public final Context CONTEXT = Barebones.this; - public static final String HOMEPAGE = FinalVars.HOMEPAGE; - public static final String SEARCH = FinalVars.GOOGLE_SEARCH; - // variable declaration - static Rect edge; - static SimpleAdapter adapter; - static MultiAutoCompleteTextView getUrl; - static final TextView[] urlTitle = new TextView[MAX_TABS]; - static final AnthonyWebView[] main = new AnthonyWebView[MAX_TABS]; - static Rect bounds; - static private ValueCallback mUploadMessage; - static ImageView refresh; - static ProgressBar progressBar; - static Drawable icon; - static Drawable webpage, webpageOther; - static Drawable exitTab; - static final int FILECHOOSER_RESULTCODE = 1; - static int numberPage, x, y; - static final int fuzz = 10; - static int number, pageId = 0, agentPicker; - static int enableFlash, lastVisibleWebView; - static int height56, height32; - static int height, width, pixels, leftPad, rightPad, pixelHeight; - static int bookHeight; - static final int API = FinalVars.API; - static int mShortAnimationDuration; - static int id, tenPad; - static int hitTest; - static int urlColumn, titleColumn; - static View mCustomView = null; - static CustomViewCallback mCustomViewCallback; - static boolean xPress; - static boolean tabsAreDisplayed = true, isPhone = false; - static boolean pageIsLoading = false, java; - static boolean allowLocation, savePasswords, deleteHistory, saveTabs; - static boolean showFullScreen, pageIdIsVisible = true; - static boolean urlBarShows = true; - static boolean isBookmarkShowing = false; - static boolean uBarShows = true; - static boolean noStockBrowser = true; - static SharedPreferences settings; - static SharedPreferences.Editor edit; - static String desktop, mobile, user; - static String urlA, title; - static String[] memoryURL = new String[MAX_TABS]; - static final String[] bUrl = new String[MAX_BOOKMARKS]; - static final String[] bTitle = new String[MAX_BOOKMARKS]; - static String[] columns; - static String homepage, str; - static final String preferences = "settings"; - static String query, userAgent; - static final String[][] urlToLoad = new String[MAX_TABS][2]; - static FrameLayout background; - static ScrollView scrollBookmarks; - static RelativeLayout uBar, bg; - static RelativeLayout refreshLayout; - static HorizontalScrollView tabScroll; + private static final int MAX_TABS = FinalVars.MAX_TABS; + private static final int MAX_BOOKMARKS = FinalVars.MAX_BOOKMARKS; + private static final boolean PAID_VERSION = FinalVars.PAID_VERSION; + private final Context CONTEXT = Barebones.this; + private static final String HOMEPAGE = FinalVars.HOMEPAGE; + private static final String SEARCH = FinalVars.GOOGLE_SEARCH; + private static SimpleAdapter adapter; + private static MultiAutoCompleteTextView getUrl; + private static final TextView[] urlTitle = new TextView[MAX_TABS]; + private static final CustomWebView[] main = new CustomWebView[MAX_TABS]; + private static Rect bounds; + private static ValueCallback mUploadMessage; + private static ImageView refresh; + private static ProgressBar progressBar; + private static Drawable webpageOther; + private static Drawable incognitoPage; + private static Drawable exitTab; + private static int numberPage; + private static final int fuzz = 10; + private static int number; + private static int pageId = 0; + private static int agentPicker; + private static int enableFlash; + private static int height32; + private static int height; + private static int width; + private static int pixels; + private static int leftPad; + private static int rightPad; + private static final int API = FinalVars.API; + private static int mShortAnimationDuration; + private static int id; + private static int tenPad; + private static int urlColumn; + private static int titleColumn; + private static int closeWindow; + private static View mCustomView = null; + private static CustomViewCallback mCustomViewCallback; + private static final boolean[] incognito = new boolean[MAX_TABS]; + private static boolean isPhone = false; + private static boolean pageIsLoading = false; + private static boolean allowLocation; + private static boolean savePasswords; + private static boolean deleteHistory; + private static boolean saveTabs; + static boolean showFullScreen; + private static boolean noStockBrowser = true; + private static SharedPreferences settings; + private static SharedPreferences.Editor edit; + private static String desktop; + private static String mobile; + private static String user; + private static String urlA; + private static String title; + private static String[] memoryURL = new String[MAX_TABS]; + private static final String[] bUrl = new String[MAX_BOOKMARKS]; + private static final String[] bTitle = new String[MAX_BOOKMARKS]; + private static String[] columns; + private static String homepage; + private static String str; + private static final String preferences = "settings"; + private static String query; + private static String userAgent; + private static final String[][] urlToLoad = new String[MAX_TABS][2]; + private static FrameLayout background; + static RelativeLayout uBar; + private static HorizontalScrollView tabScroll; static Animation slideUp; static Animation slideDown; - static Animation fadeOut, fadeIn; - static long clock = 0; - static long timeBetweenDownPress = System.currentTimeMillis(); - static TextView txt; + private static Animation fadeOut; + private static Animation fadeIn; + private static TextView txt; - static Uri bookmarks; - static List> list; - static Map map; + private static CookieManager cookieManager; - static Handler handler; + private static Uri bookmarks; + private static List> list; + private static Map map; - static DatabaseHandler historyHandler; + private static Handler handler, browserHandler; - static StringBuilder sb; + private static DatabaseHandler historyHandler; - static Runnable update; + private static StringBuilder sb; - static SQLiteDatabase s; + private static Runnable update; - static float widthInInches, heightInInches; + private static SQLiteDatabase s; - static double sizeInInches; + private static Drawable inactive; - public static Drawable inactive; + private static Drawable active; - public static Drawable active; + private static LinearLayout tabLayout; - public static LinearLayout tabLayout; - - public static String[] GetArray(String input, String delimiter) { - return input.split(delimiter); + private static String[] GetArray(String input) { + return input.split("\\|\\$\\|SEPARATOR\\|\\$\\|"); } - public static void setFavicon(int id, Bitmap favicon) { - icon = null; + @SuppressWarnings("unused") + private static void setFavicon(int id, Bitmap favicon) { + Drawable icon = null; icon = new BitmapDrawable(null, favicon); - icon.setBounds(0, 0, width * 1 / 2, height * 1 / 2); + icon.setBounds(0, 0, width / 2, height / 2); if (icon != null) { urlTitle[id].setCompoundDrawables(icon, null, exitTab, null); } else { @@ -1031,13 +996,25 @@ public class Barebones extends Activity { } } - public Barebones() { - super(); - } - - public void addBookmark() { + void addBookmark() { File book = new File(getBaseContext().getFilesDir(), "bookmarks"); File bookUrl = new File(getBaseContext().getFilesDir(), "bookurl"); + try { + BufferedReader readUrlRead = new BufferedReader(new FileReader(bookUrl)); + String u; + int n = 0; + while ((u = readUrlRead.readLine()) != null && n < MAX_BOOKMARKS) { + if(u.contentEquals(urlToLoad[pageId][0])){ + + readUrlRead.close(); + return; + } + n++; + } + readUrlRead.close(); + } catch (FileNotFoundException ignored) { + } catch (IOException ignored) { + } try { BufferedWriter bookWriter = new BufferedWriter(new FileWriter(book, true)); @@ -1049,20 +1026,20 @@ public class Barebones extends Activity { urlWriter.newLine(); bookWriter.close(); urlWriter.close(); - } catch (FileNotFoundException e) { - } catch (IOException e) { - } catch (NullPointerException e) { + } catch (FileNotFoundException ignored) { + } catch (IOException ignored) { + } catch (NullPointerException ignored) { } } @SuppressLint("SetJavaScriptEnabled") - public AnthonyWebView BrowserSettings(AnthonyWebView view) { + CustomWebView browserSettings(CustomWebView view) { view.setAnimationCacheEnabled(false); view.setDrawingCacheEnabled(false); view.setDrawingCacheBackgroundColor(getResources().getColor( android.R.color.background_light)); // view.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH); - // view.setAlwaysDrawnWithCacheEnabled(true); + view.setWillNotCacheDrawing(true); view.setFocusable(true); view.setFocusableInTouchMode(true); @@ -1070,14 +1047,15 @@ public class Barebones extends Activity { WebSettings webViewSettings = view.getSettings(); - java = settings.getBoolean("java", true); + boolean java = settings.getBoolean("java", true); if (java) { webViewSettings.setJavaScriptEnabled(true); - webViewSettings.setJavaScriptCanOpenWindowsAutomatically(true); + webViewSettings.setJavaScriptCanOpenWindowsAutomatically(false); } + webViewSettings.setBlockNetworkImage(false); webViewSettings.setAllowFileAccess(true); webViewSettings.setLightTouchEnabled(true); - webViewSettings.setSupportMultipleWindows(false); + webViewSettings.setSupportMultipleWindows(true); webViewSettings.setDomStorageEnabled(true); webViewSettings.setAppCacheEnabled(true); webViewSettings.setAppCachePath(getApplicationContext().getFilesDir() @@ -1107,8 +1085,9 @@ public class Barebones extends Activity { webViewSettings.setUserAgentString(userAgent); savePasswords = settings.getBoolean("passwords", false); - if (savePasswords == true) { + if (savePasswords) { webViewSettings.setSavePassword(true); + webViewSettings.setSaveFormData(true); } webViewSettings.setBuiltInZoomControls(true); @@ -1121,17 +1100,16 @@ public class Barebones extends Activity { webViewSettings.setDisplayZoomControls(false); webViewSettings.setAllowContentAccess(true); } - webViewSettings.setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS); + webViewSettings.setLayoutAlgorithm(LayoutAlgorithm.NORMAL); webViewSettings.setLoadsImagesAutomatically(true); - // webViewSettings.setCacheMode(WebSettings.LOAD_NO_CACHE); return view; } - public boolean deleteDir(File dir) { + boolean deleteDir(File dir) { if (dir != null && dir.isDirectory()) { String[] children = dir.list(); - for (int i = 0; i < children.length; i++) { - boolean success = deleteDir(new File(dir, children[i])); + for (String aChildren : children) { + boolean success = deleteDir(new File(dir, aChildren)); if (!success) { return false; } @@ -1143,40 +1121,54 @@ public class Barebones extends Activity { } @SuppressWarnings("deprecation") - public void deleteTab(int id) { - int leftId = id; - pageIdIsVisible = false; - main[id].stopLoading(); - main[id].clearHistory(); - urlToLoad[id][0] = null; - urlToLoad[id][1] = null; + void deleteTab(final int del) { + main[del].stopLoading(); + main[del].clearHistory(); + main[del].clearView(); + urlToLoad[del][0] = null; + urlToLoad[del][1] = null; if (API >= 11) { - main[id].onPause(); + main[del].onPause(); } - main[id].clearView(); - boolean right = false, left = false; + // background.clearDisappearingChildren(); if (API < 16) { - urlTitle[id].setBackgroundDrawable(active); + urlTitle[del].setBackgroundDrawable(active); } else { - urlTitle[id].setBackground(active); + urlTitle[del].setBackground(active); } - urlTitle[id].setPadding(leftPad, 0, rightPad, 0); - urlTitle[id].setVisibility(View.GONE); - if (id == pageId) { + urlTitle[del].setPadding(leftPad, 0, rightPad, 0); + Animation yolo = AnimationUtils.loadAnimation(this, R.anim.down); - if (isBookmarkShowing) { - if (showFullScreen) { - background.addView(uBar); - // uBar.startAnimation(fadeIn); - uBar.bringToFront(); - } - // scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - uBar.bringToFront(); - isBookmarkShowing = false; + yolo.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + urlTitle[del].setVisibility(View.GONE); + findNewView(del); + main[del] = null; + } + + @Override + public void onAnimationRepeat(Animation animation) { + } + + @Override + public void onAnimationStart(Animation animation) { + } - } else if (main[id].isShown()) { + }); + urlTitle[del].startAnimation(yolo); + + } + + @SuppressWarnings("deprecation") + void findNewView(int id) { + int leftId = id; + boolean right = false, left = false; + if (id == pageId) { + + if (main[id].isShown()) { background.removeView(main[id]); } for (; id <= (number - 1); id++) { @@ -1191,14 +1183,14 @@ public class Barebones extends Activity { } urlTitle[id].setPadding(leftPad, 0, rightPad, 0); pageId = id; - getUrl.setText(urlToLoad[pageId][0]); + setUrlText(urlToLoad[pageId][0]); getUrl.setPadding(tenPad, 0, tenPad, 0); right = true; break; } } - if (right == false) { + if (!right) { for (; leftId >= 0; leftId--) { if (urlTitle[leftId].isShown()) { @@ -1212,7 +1204,7 @@ public class Barebones extends Activity { } urlTitle[leftId].setPadding(leftPad, 0, rightPad, 0); pageId = leftId; - getUrl.setText(urlToLoad[pageId][0]); + setUrlText(urlToLoad[pageId][0]); getUrl.setPadding(tenPad, 0, tenPad, 0); left = true; break; @@ -1226,16 +1218,13 @@ public class Barebones extends Activity { right = left = true; } - if (right == false && left == false) { + if (!(right || left)) { finish(); - } else { - pageIdIsVisible = true; - // main[pageId].invalidate(); } - + tabScroll.smoothScrollTo(urlTitle[pageId].getLeft(), 0); } - public void enter() { + void enter() { getUrl.setOnKeyListener(new OnKeyListener() { @Override @@ -1279,7 +1268,7 @@ public class Barebones extends Activity { } @SuppressLint("HandlerLeak") - public void enterUrl() { + void enterUrl() { getUrl = (MultiAutoCompleteTextView) findViewById(R.id.enterUrl); getUrl.setPadding(tenPad, 0, tenPad, 0); getUrl.setTextColor(getResources().getColor(android.R.color.black)); @@ -1296,9 +1285,8 @@ public class Barebones extends Activity { R.layout.two_line_autocomplete, new String[] { "title", "url" }, new int[] { R.id.title, R.id.url }); - if (adapter != null) { - getUrl.setAdapter(adapter); - } + + getUrl.setAdapter(adapter); break; } @@ -1323,9 +1311,9 @@ public class Barebones extends Activity { bookmarks = Browser.BOOKMARKS_URI; c = getContentResolver().query(bookmarks, columns, null, null, null); - } catch (SQLiteException e) { - } catch (IllegalStateException e) { - } catch (NullPointerException e) { + } catch (SQLiteException ignored) { + } catch (IllegalStateException ignored) { + } catch (NullPointerException ignored) { } if (c != null) { @@ -1335,7 +1323,7 @@ public class Barebones extends Activity { noStockBrowser = true; Log.e("Barebones", "did not detect AOSP browser"); } - + c.close(); try { managedCursor = null; @@ -1349,16 +1337,16 @@ public class Barebones extends Activity { handler.sendEmptyMessage(1); - } catch (SQLiteException e) { - } catch (NullPointerException e) { - } catch (IllegalStateException e) { + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { } list = new ArrayList>(); try { if (managedCursor != null) { - if (managedCursor.moveToFirst()) { + if (managedCursor.moveToLast()) { // Variable for holding the retrieved URL @@ -1372,22 +1360,23 @@ public class Barebones extends Activity { map.put("title", title); map.put("url", urlA); list.add(map); - } while (managedCursor.moveToNext()); + } while (managedCursor.moveToPrevious()); } } - } catch (SQLiteException e) { - } catch (NullPointerException e) { - } catch (IllegalStateException e) { + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { } - + managedCursor.close(); } }); + updateAutoComplete.setPriority(3); try { updateAutoComplete.start(); - } catch (NullPointerException e) { - } catch (SQLiteMisuseException e) { - } catch (IllegalStateException e) { + } catch (NullPointerException ignored) { + } catch (SQLiteMisuseException ignored) { + } catch (IllegalStateException ignored) { } getUrl.setThreshold(2); @@ -1400,15 +1389,8 @@ public class Barebones extends Activity { try { txt = (TextView) arg1.findViewById(R.id.url); str = txt.getText().toString(); - if (!pageIdIsVisible && isBookmarkShowing) { - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - background.addView(main[pageId]); - pageIdIsVisible = true; - isBookmarkShowing = false; - } main[pageId].loadUrl(str); - getUrl.setText(str); + setUrlText(str); getUrl.setPadding(tenPad, 0, tenPad, 0); InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(getUrl.getWindowToken(), 0); @@ -1425,7 +1407,7 @@ public class Barebones extends Activity { // clicked } - public void exit() { + void back() { ImageView exit = (ImageView) findViewById(R.id.exit); exit.setBackgroundResource(R.drawable.button); if (isPhone) { @@ -1436,24 +1418,13 @@ public class Barebones extends Activity { @Override public void onClick(View v) { - if (isBookmarkShowing) { - background.addView(main[pageId]); - main[pageId].startAnimation(fadeIn); - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - uBar.bringToFront(); - urlTitle[pageId].setText(urlToLoad[pageId][1]); - getUrl.setText(urlToLoad[pageId][0]); - getUrl.setPadding(tenPad, 0, tenPad, 0); - pageIdIsVisible = true; - isBookmarkShowing = false; + + if (main[pageId].canGoBack()) { + main[pageId].goBack(); } else { - if (main[pageId].canGoBack()) { - main[pageId].goBack(); - } else { - deleteTab(pageId); - } + deleteTab(pageId); } + } }); @@ -1471,27 +1442,35 @@ public class Barebones extends Activity { @Override public void finish() { - pageIdIsVisible = false; + background.clearDisappearingChildren(); + tabScroll.clearDisappearingChildren(); try { - deleteHistory = settings.getBoolean("history", false); - if (deleteHistory == true) { + if (deleteHistory) { + cookieManager.removeAllCookie(); + main[0].clearCache(true); + WebViewDatabase m = WebViewDatabase.getInstance(this); + m.clearFormData(); + m.clearHttpAuthUsernamePassword(); + m.clearUsernamePassword(); CONTEXT.deleteDatabase("historyManager"); if (!noStockBrowser) { - Browser.clearHistory(getContentResolver()); + try { + Browser.clearHistory(getContentResolver()); + } catch (NullPointerException ignored) { + } } + trimCache(CONTEXT); } - trimCache(CONTEXT); + } catch (Exception e) { + Log.e("Lightning", "Error Clearing data"); } - main[pageId].pauseTimers(); - if (API >= 11) { - main[pageId].onPause(); - } + super.finish(); } - public void forward() { + void forward() { ImageView forward = (ImageView) findViewById(R.id.forward); forward.setBackgroundResource(R.drawable.button); if (isPhone) { @@ -1504,15 +1483,13 @@ public class Barebones extends Activity { public void onClick(View v) { if (main[pageId].canGoForward()) { main[pageId].goForward(); - } else { - } } }); } - public void goBookmarks() { + void goBookmarks(CustomWebView view) { File book = new File(getBaseContext().getFilesDir(), "bookmarks"); File bookUrl = new File(getBaseContext().getFilesDir(), "bookurl"); try { @@ -1524,22 +1501,24 @@ public class Barebones extends Activity { && (u = readUrl.readLine()) != null && n < MAX_BOOKMARKS) { bUrl[n] = u; bTitle[n] = t; + n++; } readBook.close(); readUrl.close(); - } catch (FileNotFoundException e) { - } catch (IOException e) { + } catch (FileNotFoundException ignored) { + } catch (IOException ignored) { } - openBookmarks(); + openBookmarks(view); } @SuppressLint("InlinedApi") - public void init() { + void init() { DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); historyHandler = new DatabaseHandler(this); - + cookieManager = CookieManager.getInstance(); + progressBar = (ProgressBar) findViewById(R.id.progressBar1); if (API >= 11) { progressBar.setIndeterminateDrawable(getResources().getDrawable( @@ -1551,7 +1530,7 @@ public class Barebones extends Activity { showFullScreen = settings.getBoolean("fullscreen", false); uBar = (RelativeLayout) findViewById(R.id.urlBar); - bg = (RelativeLayout) findViewById(R.id.background); + RelativeLayout bg = (RelativeLayout) findViewById(R.id.background); slideUp = AnimationUtils.loadAnimation(this, R.anim.slide_up); slideDown = AnimationUtils.loadAnimation(this, R.anim.slide_down); fadeOut = AnimationUtils.loadAnimation(this, android.R.anim.fade_out); @@ -1597,18 +1576,16 @@ public class Barebones extends Activity { }); - refreshLayout = (RelativeLayout) findViewById(R.id.refreshLayout); + RelativeLayout refreshLayout = (RelativeLayout) findViewById(R.id.refreshLayout); refreshLayout.setBackgroundResource(R.drawable.button); - // get settings - WebView test = new WebView(CONTEXT); // getting default webview - + // user agent - user = test.getSettings().getUserAgentString(); - + user = new WebView(CONTEXT).getSettings().getUserAgentString(); + background = (FrameLayout) findViewById(R.id.holder); mobile = user; // setting mobile user // agent - desktop = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/20 Safari/537.17"; // setting + desktop = FinalVars.DESKTOP_USER_AGENT; // setting // desktop user agent exitTab = getResources().getDrawable(R.drawable.stop); // user // agent @@ -1618,7 +1595,6 @@ public class Barebones extends Activity { // homepage // variable - test.destroy(); userAgent = settings.getString("agent", mobile); // initializing // useragent string allowLocation = settings.getBoolean("location", false); // initializing @@ -1660,11 +1636,7 @@ public class Barebones extends Activity { tabScroll.setHorizontalScrollBarEnabled(false); if (API > 8) { tabScroll.setOverScrollMode(View.OVER_SCROLL_NEVER); // disallow - // overscroll - // (only - // available - // in 2.3 - // and up) + //overscroll } // image dimensions and initialization @@ -1672,22 +1644,29 @@ public class Barebones extends Activity { final float scale = getApplicationContext().getResources() .getDisplayMetrics().density; pixels = (int) (dps * scale + 0.5f); - pixelHeight = (int) (36 * scale + 0.5f); - bookHeight = (int) (48 * scale + 0.5f); - height56 = (int) (56 * scale + 0.5f); leftPad = (int) (17 * scale + 0.5f); rightPad = (int) (15 * scale + 0.5f); height32 = (int) (32 * scale + 0.5f); tenPad = (int) (10 * scale + 0.5f); number = 0; - webpage = getResources().getDrawable(R.drawable.webpage); + webpageOther = getResources().getDrawable(R.drawable.webpage); - webpage.setBounds(0, 0, width * 2 / 3, height * 2 / 3); - webpageOther.setBounds(0, 0, width * 1 / 2, height * 1 / 2); + incognitoPage = getResources().getDrawable(R.drawable.incognito); + webpageOther.setBounds(0, 0, width / 2, height / 2); + incognitoPage.setBounds(0, 0, width / 2, height / 2); exitTab.setBounds(0, 0, width * 2 / 3, height * 2 / 3); - initializeTabs(); // restores old tabs or creates a new one + Thread startup = new Thread(new Runnable() { + + @Override + public void run() { + initializeTabs(); // restores old tabs or creates a new one + + } + + }); + startup.run(); // new tab button ImageView newTab = (ImageView) findViewById(R.id.newTab); @@ -1695,10 +1674,10 @@ public class Barebones extends Activity { newTab.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { - newTab(number, homepage, true); + newTab(number, homepage, true, false); tabScroll.postDelayed(new Runnable() { public void run() { - tabScroll.fullScroll(HorizontalScrollView.FOCUS_RIGHT); + tabScroll.smoothScrollTo(urlTitle[pageId].getLeft(), 0); } }, 100L); @@ -1724,38 +1703,53 @@ public class Barebones extends Activity { bg.removeView(uBar); background.addView(uBar); } - + browserHandler = new Handler(){ + @Override + public void handleMessage(Message msg) { + switch(msg.what){ + case 1:{ + main[pageId].loadUrl(getUrl.getText().toString()); + break; + } + case 2:{ + deleteTab(closeWindow); + break; + } + case 3:{ + main[pageId].invalidate(); + break; + } + } + } + }; } - public void initializeTabs() { + void initializeTabs() { Intent url = getIntent(); - String URL = null; // that opens the browser - // gets the string passed into the browser - URL = url.getDataString(); + String URL = url.getDataString(); boolean oldTabs = false; if (saveTabs) { if (URL != null) { // opens a new tab with the url if its there - newTab(number, URL, true); + newTab(number, URL, true, false); main[number - 1].resumeTimers(); oldTabs = true; } - for (int num = 0; num < memoryURL.length; num++) { - - if (memoryURL[num].length() > 0) { + for (String aMemoryURL : memoryURL) { + if (aMemoryURL.length() > 0) { if (number == 0) { - newTab(number, "", !oldTabs); + newTab(number, "", !oldTabs, false); main[number - 1].resumeTimers(); main[number - 1].getSettings().setCacheMode( WebSettings.LOAD_CACHE_ELSE_NETWORK); - main[number - 1].loadUrl(memoryURL[num]); + main[number - 1].loadUrl(aMemoryURL); } else { - newTab(number, "", false); + newTab(number, "", false, false); main[number - 1].getSettings().setCacheMode( WebSettings.LOAD_CACHE_ELSE_NETWORK); - main[number - 1].loadUrl(memoryURL[num]); + main[number - 1].loadUrl(aMemoryURL); } oldTabs = true; } @@ -1763,104 +1757,112 @@ public class Barebones extends Activity { } if (!oldTabs) { - newTab(number, homepage, true); + newTab(number, homepage, true, false); main[number - 1].resumeTimers(); } } else { if (URL != null) { // opens a new tab with the url if its there - newTab(number, URL, true); + newTab(number, URL, true, false); main[number - 1].resumeTimers(); } else { // otherwise it opens the homepage - newTab(number, homepage, true); + newTab(number, homepage, true, false); main[number - 1].resumeTimers(); } } } - public void makeTab(final int pageToView, final String Url, + private CustomWebView makeTab(final int pageToView, final String Url, final boolean display) { - main[pageToView] = new AnthonyWebView(CONTEXT); - main[pageToView].setId(pageToView); + CustomWebView view = new CustomWebView(CONTEXT); + view.setId(pageToView); allowLocation = settings.getBoolean("location", false); - main[pageToView].setWebViewClient(new AnthonyWebViewClient()); - main[pageToView].setWebChromeClient(new AnthonyChromeClient()); + view.setWebViewClient(new CustomWebViewClient()); + view.setWebChromeClient(new CustomChromeClient()); if (API > 8) { - main[pageToView].setDownloadListener(new AnthonyDownload()); + view.setDownloadListener(new CustomDownloadListener()); } - main[pageToView].setOnLongClickListener(new WebPageLongClick()); - main[pageToView] = BrowserSettings(main[pageToView]); + view.setOnLongClickListener(new WebPageLongClickListener()); + view = browserSettings(view); agentPicker = settings.getInt("agentchoose", 1); switch (agentPicker) { case 1: - main[pageToView].getSettings().setUserAgentString(mobile); + view.getSettings().setUserAgentString(mobile); break; case 2: - main[pageToView].getSettings().setUserAgentString(desktop); + view.getSettings().setUserAgentString(desktop); break; case 3: userAgent = settings.getString("agent", user); - main[pageToView].getSettings().setUserAgentString(userAgent); + view.getSettings().setUserAgentString(userAgent); break; } if (display) { background.removeView(main[pageId]); - background.addView(main[pageToView]); - main[pageToView].requestFocus(); + background.addView(view); + view.requestFocus(); pageId = pageToView; } uBar.bringToFront(); - if (Url.contains("about:home") && !showFullScreen) { - pageIdIsVisible = false; - goBookmarks(); - } else if (Url.contains("about:home")) { - pageIdIsVisible = true; - main[pageToView].loadUrl("about:blank"); - + if (Url.contains("about:home")) { + goBookmarks(view); } else if (Url.contains("about:blank")) { - pageIdIsVisible = true; - main[pageToView].loadUrl("about:blank"); + + view.loadUrl("about:blank"); } else { - pageIdIsVisible = true; - main[pageToView].loadUrl(Url); + + view.loadUrl(Url); } Log.i("Barebones", "tab complete"); - + return view; } - public void newSettings() { + void newSettings() { Intent set = new Intent(FinalVars.SETTINGS_INTENT); startActivity(set); } // new tab method, takes the id of the tab to be created and the url to load @SuppressWarnings("deprecation") - public void newTab(int theId, final String theUrl, final boolean display) { + int newTab(int theId, final String theUrl, final boolean display, + final boolean incognito_mode) { Log.i("Barebones", "making tab"); - lastVisibleWebView = pageId; - if (isBookmarkShowing) { - background.addView(main[pageId]); - main[pageId].startAnimation(fadeIn); - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - uBar.bringToFront(); - isBookmarkShowing = false; - } - pageIdIsVisible = false; + + int finalID = 0; homepage = settings.getString("home", HOMEPAGE); allowLocation = settings.getBoolean("location", false); boolean isEmptyWebViewAvailable = false; for (int num = 0; num < number; num++) { if (urlTitle[num].getVisibility() == View.GONE) { - urlTitle[num].setVisibility(View.VISIBLE); - urlTitle[num].setText("about:blank"); + + final int n = num; + Animation holo = AnimationUtils.loadAnimation(this, R.anim.up); + holo.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + } + + @Override + public void onAnimationRepeat(Animation animation) { + } + + @Override + public void onAnimationStart(Animation animation) { + urlTitle[n].setVisibility(View.VISIBLE); + } + + }); + urlTitle[n].startAnimation(holo); + urlTitle[num].setText("New Tab"); + incognito[num] = incognito_mode; if (display) { if (API < 16) { urlTitle[num].setBackgroundDrawable(active); @@ -1882,28 +1884,26 @@ public class Barebones extends Activity { urlTitle[pageId].setBackground(inactive); } } + urlTitle[pageId].setCompoundDrawables(webpageOther, null, + exitTab, null); urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); - if (display) { - background.addView(main[num]); - background.removeView(main[pageId]); - pageId = num; - } + main[num] = makeTab(num, theUrl, display); + finalID = num; + pageId = num; uBar.bringToFront(); - main[num] = BrowserSettings(main[num]); + if (API >= 11) { main[num].onResume(); } - main[num].loadUrl(theUrl); - pageIdIsVisible = true; isEmptyWebViewAvailable = true; break; } } - if (isEmptyWebViewAvailable == false) { + if (!isEmptyWebViewAvailable) { if (number < MAX_TABS) { - pageIdIsVisible = false; + incognito[number] = incognito_mode; if (number > 0) { if (display) { if (API < 16) { @@ -1916,7 +1916,7 @@ public class Barebones extends Activity { } } final TextView title = new TextView(CONTEXT); - title.setText("about:blank"); + title.setText("New Tab"); if (display) { if (API < 16) { title.setBackgroundDrawable(active); @@ -1937,33 +1937,62 @@ public class Barebones extends Activity { title.setPadding(leftPad, 0, rightPad, 0); title.setId(number); title.setGravity(Gravity.CENTER_VERTICAL); - title.setCompoundDrawables(null, null, exitTab, null); + if (incognito[number]) { + title.setCompoundDrawables(incognitoPage, null, exitTab, + null); + } else { + title.setCompoundDrawables(webpageOther, null, exitTab, + null); + } Drawable[] drawables = title.getCompoundDrawables(); bounds = drawables[2].getBounds(); - title.setOnLongClickListener(new TabLongClick()); - title.setOnClickListener(new TabClick()); - title.setOnTouchListener(new TabTouch()); + title.setOnTouchListener(new TabTouchListener()); + Animation holo = AnimationUtils.loadAnimation(this, R.anim.up); tabLayout.addView(title); + title.setVisibility(View.INVISIBLE); + holo.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + } + + @Override + public void onAnimationRepeat(Animation animation) { + } + + @Override + public void onAnimationStart(Animation animation) { + title.setVisibility(View.VISIBLE); + } + + }); + title.startAnimation(holo); urlTitle[number] = title; + if (incognito[number]) { + urlTitle[number].setText("Incognito"); + + } if (theUrl != null) { - makeTab(number, theUrl, display); + main[number] = makeTab(number, theUrl, display); } else { - makeTab(number, homepage, display); + main[number] = makeTab(number, homepage, display); } + finalID = number; number = number + 1; } } - if (isEmptyWebViewAvailable == false && number >= MAX_TABS) { + if (!isEmptyWebViewAvailable && number >= MAX_TABS) { Toast.makeText(CONTEXT, "Maximum number of tabs reached...", Toast.LENGTH_SHORT).show(); } + return finalID; } @Override protected void onActivityResult(int requestCode, int resultCode, Intent intent) { - if (requestCode == FILECHOOSER_RESULTCODE) { + if (requestCode == 1) { if (null == mUploadMessage) return; Uri result = intent == null || resultCode != RESULT_OK ? null @@ -1976,24 +2005,8 @@ public class Barebones extends Activity { @Override public void onBackPressed() { - if (isBookmarkShowing) { - - if (showFullScreen && !uBar.isShown()) { - background.addView(uBar); - uBar.startAnimation(fadeIn); - uBar.bringToFront(); - } - background.addView(main[pageId]); - main[pageId].startAnimation(fadeIn); - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - urlTitle[pageId].setText(urlToLoad[pageId][1]); - getUrl.setText(urlToLoad[pageId][0]); - getUrl.setPadding(tenPad, 0, tenPad, 0); - pageIdIsVisible = true; - isBookmarkShowing = false; - uBar.bringToFront(); - } else if (main[pageId].canGoBack()) { + main[pageId].stopLoading(); + if (main[pageId].canGoBack()) { main[pageId].goBack(); } else { deleteTab(pageId); @@ -2006,22 +2019,21 @@ public class Barebones extends Activity { public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); main[pageId].getSettings().setLayoutAlgorithm( - LayoutAlgorithm.NARROW_COLUMNS); + LayoutAlgorithm.NORMAL); // main[pageId].invalidate(); } - + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // displays main xml layout settings = getSharedPreferences(preferences, 0); - edit = settings.edit(); saveTabs = settings.getBoolean("savetabs", true); if (saveTabs) { String mem = settings.getString("memory", ""); memoryURL = null; - memoryURL = GetArray(mem, "\\|\\$\\|SEPARATOR\\|\\$\\|"); + memoryURL = GetArray(mem); } inactive = getResources().getDrawable(R.drawable.bg_inactive); @@ -2031,14 +2043,14 @@ public class Barebones extends Activity { enter();// enter url bar DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); - widthInInches = metrics.widthPixels / metrics.xdpi; - heightInInches = metrics.heightPixels / metrics.ydpi; - sizeInInches = Math.sqrt(Math.pow(widthInInches, 2) + float widthInInches = metrics.widthPixels / metrics.xdpi; + float heightInInches = metrics.heightPixels / metrics.ydpi; + double sizeInInches = Math.sqrt(Math.pow(widthInInches, 2) + Math.pow(heightInInches, 2)); // 0.5" buffer for 7" devices isPhone = sizeInInches < 6.5; forward();// forward button - exit(); + back(); int first = settings.getInt("first", 0); if (first == 0) { // This dialog alerts the user to some navigation @@ -2090,10 +2102,11 @@ public class Barebones extends Activity { @Override protected void onNewIntent(Intent intent) { - String url = null; - url = intent.getDataString(); + String url = intent.getDataString(); if (url != null) { - newTab(number, url, true); + for(int n=0;n= 11) { - main[pageId].onPause(); + if (main[pageId] != null) { + if (API >= 11) { + main[pageId].onPause(); + } + main[pageId].pauseTimers(); } - main[pageId].pauseTimers(); - Thread remember = new Thread(new Runnable() { @Override @@ -2156,23 +2165,11 @@ public class Barebones extends Activity { edit.commit(); } }); + // remember.setPriority(10); remember.start(); super.onPause(); } - @Override - public boolean onPrepareOptionsMenu(Menu menu) { - - MenuItem refresh = menu.findItem(R.id.refresh); - - if (main[pageId].getProgress() < 100) { - refresh.setTitle("Stop"); - } else { - refresh.setTitle("Refresh"); - } - return super.onPrepareOptionsMenu(menu); - } - @Override protected void onResume() { super.onResume(); @@ -2183,69 +2180,36 @@ public class Barebones extends Activity { } - public void openBookmarks() { - scrollBookmarks = new ScrollView(CONTEXT); - RelativeLayout.LayoutParams g = new RelativeLayout.LayoutParams( - ViewGroup.LayoutParams.MATCH_PARENT, - ViewGroup.LayoutParams.MATCH_PARENT); - g.addRule(RelativeLayout.BELOW, R.id.relativeLayout1); - scrollBookmarks.setLayoutParams(g); - LinearLayout bookmarkLayout = new LinearLayout(CONTEXT); - bookmarkLayout.setLayoutParams(new ViewGroup.LayoutParams( - ViewGroup.LayoutParams.MATCH_PARENT, - ViewGroup.LayoutParams.WRAP_CONTENT)); - bookmarkLayout.setOrientation(LinearLayout.VERTICAL); - TextView description = new TextView(CONTEXT); - description.setHeight(height56); - description.setBackgroundColor(0xff33b5e5); - description.setTextColor(0xffffffff); - description.setText("Bookmarks"); - description.setGravity(Gravity.CENTER_VERTICAL - | Gravity.CENTER_HORIZONTAL); - description.setTextSize(bookHeight / 3); - description.setPadding(rightPad, 0, rightPad, 0); - bookmarkLayout.addView(description); - + void openBookmarks(CustomWebView view) { + String bookmarkHtml = BookmarkPage.Heading; for (int n = 0; n < MAX_BOOKMARKS; n++) { if (bUrl[n] != null) { - TextView b = new TextView(CONTEXT); - b.setId(n); - b.setSingleLine(true); - b.setGravity(Gravity.CENTER_VERTICAL); - b.setTextSize(pixelHeight / 3); - b.setBackgroundResource(R.drawable.bookmark); - b.setHeight(height56); - b.setText(bTitle[n]); - b.setCompoundDrawables(webpage, null, null, null); - b.setOnClickListener(new BookmarkListener()); - b.setOnLongClickListener(new BookmarkLongClick()); - b.setPadding(rightPad, 0, rightPad, 0); - bookmarkLayout.addView(b); - } - } - pageIdIsVisible = false; + bookmarkHtml += (BookmarkPage.Part1 + bUrl[n] + + BookmarkPage.Part2 + bUrl[n] + BookmarkPage.Part3 + + bTitle[n] + BookmarkPage.Part4); + } + } + bookmarkHtml += BookmarkPage.End; + File bookmarkWebPage = new File(getBaseContext().getFilesDir(), + "bookmarks.html"); + try { + FileWriter bookWriter = new FileWriter(bookmarkWebPage, false); + bookWriter.write(bookmarkHtml); + bookWriter.close(); + } catch (IOException e) { + e.printStackTrace(); + } + view.loadUrl("file:///" + bookmarkWebPage); if (uBar.isShown()) { urlTitle[pageId].setText("Bookmarks"); - getUrl.setText("Bookmarks"); + setUrlText(""); getUrl.setPadding(tenPad, 0, tenPad, 0); } - // main[pageId].startAnimation(fadeOut); - background.removeView(main[pageId]); - - if (showFullScreen) { - // uBar.startAnimation(fadeOut); - background.removeView(uBar); - } - scrollBookmarks.addView(bookmarkLayout); - background.addView(scrollBookmarks); - scrollBookmarks.startAnimation(fadeIn); - isBookmarkShowing = true; - } - public void options() { + void options() { ImageView options = (ImageView) findViewById(R.id.options); options.setBackgroundResource(R.drawable.button); options.setOnClickListener(new OnClickListener() { @@ -2263,15 +2227,11 @@ public class Barebones extends Activity { public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()) { - case R.id.refresh: - if (main[pageId].getProgress() < 100) { - main[pageId].stopLoading(); - } else { - main[pageId].reload(); - } + case R.id.history: + generateHistory(main[pageId]); return true; case R.id.bookmark: - if (!isBookmarkShowing) { + if (!urlToLoad[pageId][1].equals("Bookmarks")) { addBookmark(); } return true; @@ -2279,17 +2239,16 @@ public class Barebones extends Activity { newSettings(); return true; case R.id.allBookmarks: - if (!isBookmarkShowing) { - goBookmarks(); + if (!urlToLoad[pageId][1].equals("Bookmarks")) { + goBookmarks(main[pageId]); } return true; case R.id.share: share(); return true; - case R.id.forward: - if (main[pageId].canGoForward()) { - main[pageId].goForward(); - } + case R.id.incognito: + startActivity(new Intent(FinalVars.INCOGNITO_INTENT)); + //newTab(number, homepage, true, true); return true; default: return false; @@ -2300,25 +2259,6 @@ public class Barebones extends Activity { }); menu.show(); } else if (API < 11) { - /* - * LayoutInflater - * inflater=(LayoutInflater)CONTEXT.getSystemService - * (Context.LAYOUT_INFLATER_SERVICE); Display - * display=getWindowManager().getDefaultDisplay(); - * - * int width=display.getWidth()/2; int - * height=display.getHeight()/2; - * - * View pop = inflater.inflate(R.layout.menu,null,false); - * pop - * .measure(View.MeasureSpec.UNSPECIFIED,View.MeasureSpec. - * UNSPECIFIED); height=pop.getMeasuredHeight(); - * width=pop.getMeasuredWidth(); PopupWindow pu = new - * PopupWindow(pop,width,height,true); - * pu.showAtLocation(findViewById - * (v.getId()),Gravity.NO_GRAVITY - * ,v.getRight(),v.getBottom()+80); - */ openOptionsMenu(); } @@ -2335,7 +2275,7 @@ public class Barebones extends Activity { }); } - public void share() { + void share() { Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND); // set the type @@ -2355,22 +2295,17 @@ public class Barebones extends Activity { startActivity(Intent.createChooser(shareIntent, "Share this page")); } - public void testForSearch() { + void testForSearch() { String fixedQuery = query.trim(); + main[pageId].stopLoading(); boolean period = fixedQuery.contains("."); - if (isBookmarkShowing) { - scrollBookmarks.startAnimation(fadeOut); - background.removeView(scrollBookmarks); - isBookmarkShowing = false; - background.addView(main[pageId]); - main[pageId].startAnimation(fadeIn); - uBar.bringToFront(); - } - pageIdIsVisible = true; - if (fixedQuery.contains("about:home")) { - goBookmarks(); - } else if (fixedQuery.contains(" ") || period == false) { + if (fixedQuery.contains("about:home") + || fixedQuery.contains("about:bookmarks")) { + goBookmarks(main[pageId]); + } else if (fixedQuery.contains("about:history")) { + generateHistory(main[pageId]); + } else if (fixedQuery.contains(" ") || !period) { fixedQuery.replaceAll(" ", "+"); main[pageId].loadUrl(SEARCH + fixedQuery); } else if (!fixedQuery.contains("http//") @@ -2386,19 +2321,19 @@ public class Barebones extends Activity { } } - public void trimCache(Context context) { + void trimCache(Context context) { try { File dir = context.getCacheDir(); if (dir != null && dir.isDirectory()) { - // deleteDir(dir); + deleteDir(dir); } - } catch (Exception e) { + } catch (Exception ignored) { } } - public void updateHistory(final String url, final String pageTitle) { + void updateHistory(final String url, final String pageTitle) { update = new Runnable() { @Override public void run() { @@ -2406,7 +2341,7 @@ public class Barebones extends Activity { try { Browser.updateVisitedHistory(getContentResolver(), url, false); - } catch (NullPointerException e) { + } catch (NullPointerException ignored) { } } try { @@ -2431,7 +2366,12 @@ public class Barebones extends Activity { } } }; - new Thread(update).start(); + if (!url.contains("file:///" + getBaseContext().getFilesDir() + + "/bookmarks.html") + && !url.contains("file:///" + getBaseContext().getFilesDir() + + "/history.html")) { + new Thread(update).start(); + } } } diff --git a/src/acr/browser/barebones/BookmarkPage.java b/src/acr/browser/barebones/BookmarkPage.java new file mode 100644 index 0000000..85bad3c --- /dev/null +++ b/src/acr/browser/barebones/BookmarkPage.java @@ -0,0 +1,24 @@ +package acr.browser.barebones; + +class BookmarkPage { + public static final String Heading = "" + + "" + + "Bookmarks"; + public static final String Part1 = ""; + public static final String End = ""; +} diff --git a/src/acr/browser/barebones/CustomWebView.java b/src/acr/browser/barebones/CustomWebView.java new file mode 100644 index 0000000..2bc3139 --- /dev/null +++ b/src/acr/browser/barebones/CustomWebView.java @@ -0,0 +1,55 @@ +package acr.browser.barebones; + +import android.content.Context; +import android.util.Log; +import android.view.MotionEvent; +import android.view.View; +import android.view.animation.Animation; +import android.webkit.WebView; + +public final class CustomWebView extends WebView { + + private final int API = FinalVars.API; + private int hitTest; + private final boolean showFullScreen = Barebones.showFullScreen; + private final View uBar = Barebones.uBar; + private final Animation slideUp = Barebones.slideUp; + private final Animation slideDown = Barebones.slideDown; + + public CustomWebView(Context context) { + super(context); + } + + @Override + public boolean onTouchEvent(MotionEvent event) { + + switch (event.getAction()) { + case MotionEvent.ACTION_DOWN: { + hitTest = 0; + try { + hitTest = getHitTestResult().getType(); + } catch (NullPointerException ignored) { + } + if (API <= 10 && !this.hasFocus()) { + this.requestFocus(); + } + if (showFullScreen) { + if (uBar.isShown()) { + uBar.startAnimation(slideUp); + + } else if (this.getScrollY() <= 5 + && !uBar.isShown() && hitTest != 9) { + uBar.startAnimation(slideDown); + + } + } + break; + } + default: + break; + } + + return super.onTouchEvent(event); + } + +} diff --git a/src/acr/browser/barebones/DatabaseHandler.java b/src/acr/browser/barebones/DatabaseHandler.java index 19ace36..522692d 100644 --- a/src/acr/browser/barebones/DatabaseHandler.java +++ b/src/acr/browser/barebones/DatabaseHandler.java @@ -9,7 +9,7 @@ import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; -public class DatabaseHandler extends SQLiteOpenHelper { +class DatabaseHandler extends SQLiteOpenHelper { // All Static variables // Database Version @@ -75,10 +75,10 @@ public class DatabaseHandler extends SQLiteOpenHelper { if (cursor != null) cursor.moveToFirst(); - HistoryItem item = new HistoryItem(Integer.parseInt(cursor.getString(0)), - cursor.getString(1), cursor.getString(2)); + // return item - return item; + return new HistoryItem(Integer.parseInt(cursor.getString(0)), + cursor.getString(1), cursor.getString(2)); } // Getting All HistoryItems diff --git a/src/acr/browser/barebones/FinalVars.java b/src/acr/browser/barebones/FinalVars.java index 718818d..8365f08 100644 --- a/src/acr/browser/barebones/FinalVars.java +++ b/src/acr/browser/barebones/FinalVars.java @@ -1,17 +1,21 @@ package acr.browser.barebones; -public class FinalVars { +class FinalVars { public static final int MAX_TABS = 5; public static final int MAX_BOOKMARKS = 5; public static final boolean PAID_VERSION = false; - public static final int API = Integer.valueOf(android.os.Build.VERSION.SDK_INT); - public static final String YAHOO_SEARCH = "https://search.yahoo.com/search?p="; - public static final String GOOGLE_SEARCH = "https://www.google.com/search?q="; - public static final String BING_SEARCH = "https://www.bing.com/search?q="; + public static final String DESKTOP_USER_AGENT = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/20 Safari/537.17"; + public static final int API = android.os.Build.VERSION.SDK_INT; + public static final String YAHOO_SEARCH = "search.yahoo.com/search?p="; + public static final String GOOGLE_SEARCH = "https://www.google.com/search?client=lightning&q="; + public static final String BING_SEARCH = "www.bing.com/search?q="; + public static final String DUCK_SEARCH = "https://duckduckgo.com/?t=lightning&q="; + public static final String STARTPAGE_SEARCH = "https://startpage.com/do/metasearch.pl?language=english&cat=web&query="; public static final String HOMEPAGE = "https://www.google.com/"; public static final String SETTINGS_INTENT = "android.intent.action.BAREBONESSETTINGS"; + public static final String INCOGNITO_INTENT = "android.intent.action.BAREBONESINCOGNITO"; diff --git a/src/acr/browser/barebones/HistoryItem.java b/src/acr/browser/barebones/HistoryItem.java index 7265a9b..e7120b5 100644 --- a/src/acr/browser/barebones/HistoryItem.java +++ b/src/acr/browser/barebones/HistoryItem.java @@ -1,12 +1,12 @@ package acr.browser.barebones; -public class HistoryItem { +class HistoryItem { //private variables - int _id; - String _url; - String _title; + private int _id; + private String _url; + private String _title; // Empty constructor public HistoryItem(){ diff --git a/src/acr/browser/barebones/HistoryPage.java b/src/acr/browser/barebones/HistoryPage.java new file mode 100644 index 0000000..7dba450 --- /dev/null +++ b/src/acr/browser/barebones/HistoryPage.java @@ -0,0 +1,18 @@ +package acr.browser.barebones; + +public class HistoryPage { + public static final String Heading = "" + + "History"; + + public static final String Part1 = "

"; + public static final String Part3 = "

"; + public static final String Part4 = "

"; + public static final String End = ""; +} diff --git a/src/acr/browser/barebones/IncognitoMode.java b/src/acr/browser/barebones/IncognitoMode.java new file mode 100644 index 0000000..6f5fced --- /dev/null +++ b/src/acr/browser/barebones/IncognitoMode.java @@ -0,0 +1,2067 @@ +package acr.browser.barebones; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import android.annotation.SuppressLint; +import android.app.Activity; +import android.app.AlertDialog; +import android.app.DownloadManager; +import android.content.ClipData; +import android.content.ClipboardManager; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.SharedPreferences; +import android.content.res.Configuration; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteException; +import android.database.sqlite.SQLiteMisuseException; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Rect; +import android.graphics.drawable.BitmapDrawable; +import android.graphics.drawable.Drawable; +import android.net.Uri; +import android.net.http.SslError; +import android.os.Bundle; +import android.os.Environment; +import android.os.Handler; +import android.os.Message; +import android.util.DisplayMetrics; +import android.util.Log; +import android.view.Gravity; +import android.view.KeyEvent; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.view.MotionEvent; +import android.view.View; +import android.view.View.OnClickListener; +import android.view.View.OnKeyListener; +import android.view.View.OnLongClickListener; +import android.view.View.OnTouchListener; +import android.view.WindowManager; +import android.view.animation.Animation; +import android.view.animation.Animation.AnimationListener; +import android.view.animation.AnimationUtils; +import android.view.inputmethod.EditorInfo; +import android.view.inputmethod.InputMethodManager; +import android.webkit.CookieManager; +import android.webkit.CookieSyncManager; +import android.webkit.DownloadListener; +import android.webkit.GeolocationPermissions; +import android.webkit.SslErrorHandler; +import android.webkit.URLUtil; +import android.webkit.ValueCallback; +import android.webkit.WebChromeClient; +import android.webkit.WebChromeClient.CustomViewCallback; +import android.webkit.WebIconDatabase; +import android.webkit.WebSettings; +import android.webkit.WebSettings.LayoutAlgorithm; +import android.webkit.WebSettings.PluginState; +import android.webkit.WebSettings.RenderPriority; +import android.webkit.WebStorage.QuotaUpdater; +import android.webkit.WebView; +import android.webkit.WebView.HitTestResult; +import android.webkit.WebViewClient; +import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; +import android.widget.FrameLayout; +import android.widget.HorizontalScrollView; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.MultiAutoCompleteTextView; +import android.widget.PopupMenu; +import android.widget.PopupMenu.OnMenuItemClickListener; +import android.widget.ProgressBar; +import android.widget.RelativeLayout; +import android.widget.SimpleAdapter; +import android.widget.TextView; +import android.widget.TextView.OnEditorActionListener; +import android.widget.Toast; + +public class IncognitoMode extends Activity { + + @SuppressLint("SetJavaScriptEnabled") + public class CustomChromeClient extends WebChromeClient { + private Bitmap mDefaultVideoPoster; + private View mVideoProgressView; + + @Override + public void onExceededDatabaseQuota(String url, + String databaseIdentifier, long quota, + long estimatedDatabaseSize, long totalQuota, + QuotaUpdater quotaUpdater) { + // TODO Auto-generated method stub + quotaUpdater.updateQuota(totalQuota + estimatedDatabaseSize); + super.onExceededDatabaseQuota(url, databaseIdentifier, quota, + estimatedDatabaseSize, totalQuota, quotaUpdater); + } + + @Override + public void onReachedMaxAppCacheSize(long requiredStorage, long quota, + QuotaUpdater quotaUpdater) { + // TODO Auto-generated method stub + quotaUpdater.updateQuota(quota+requiredStorage); + super.onReachedMaxAppCacheSize(requiredStorage, quota, quotaUpdater); + } + + @Override + public Bitmap getDefaultVideoPoster() { + // Log.i(LOGTAG, "here in on getDefaultVideoPoster"); + if (mDefaultVideoPoster == null) { + mDefaultVideoPoster = BitmapFactory.decodeResource( + getResources(), android.R.color.black); + } + return mDefaultVideoPoster; + } + + @Override + public View getVideoLoadingProgressView() { + // Log.i(LOGTAG, "here in on getVideoLoadingPregressView"); + + if (mVideoProgressView == null) { + LayoutInflater inflater = LayoutInflater.from(getBaseContext()); + mVideoProgressView = inflater.inflate( + android.R.layout.simple_spinner_item, null); + } + return mVideoProgressView; + } + + @Override + public boolean onCreateWindow(WebView view, boolean isDialog, + boolean isUserGesture, final Message resultMsg) { + if (isUserGesture) { + WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj; + transport.setWebView(main[pageId]); + resultMsg.sendToTarget(); + Thread get = new Thread(new Runnable(){ + + @Override + public void run() { + // TODO Auto-generated method stub + try { + Thread.sleep(200); + main[pageId].loadUrl(getUrl.getText().toString()); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + }); + get.start(); + return true; + } + return false; + } + + @Override + public void onGeolocationPermissionsShowPrompt(final String origin, + final GeolocationPermissions.Callback callback) { + + if (!allowLocation) { + callback.invoke(origin, false, false); + } + if (allowLocation) { + + Log.i("IncognitoMode: ", "onGeolocationPermissionsShowPrompt()"); + + final boolean remember = true; + AlertDialog.Builder builder = new AlertDialog.Builder(CONTEXT); + builder.setTitle("Locations"); + builder.setMessage( + origin + " Would like to use your Current Location ") + .setCancelable(true) + .setPositiveButton("Allow", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, + int id) { + // origin, allow, remember + callback.invoke(origin, true, remember); + } + }) + .setNegativeButton("Don't Allow", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, + int id) { + // origin, allow, remember + callback.invoke(origin, false, remember); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + } + } + + @Override + public void onHideCustomView() { + + if (mCustomView == null) + return; + + // Hide the custom view. + mCustomView.setVisibility(View.GONE); + + // Remove the custom view from its container. + background.removeView(mCustomView); + mCustomView = null; + background.setVisibility(View.VISIBLE); + uBar.setVisibility(View.VISIBLE); + mCustomViewCallback.onCustomViewHidden(); + + main[pageId].setVisibility(View.VISIBLE); + + // Log.i(LOGTAG, "set it to webVew"); + } + + + @Override + public void onReceivedTitle(final WebView view, final String title) { + numberPage = view.getId(); + urlTitle[numberPage].setText(title); + urlToLoad[numberPage][1] = title; + super.onReceivedTitle(view, title); + } + + @Override + public void onShowCustomView(View view, int requestedOrientation, + CustomViewCallback callback) { + // Log.i(LOGTAG, "here in on ShowCustomView"); + main[pageId].setVisibility(View.GONE); + uBar.setVisibility(View.GONE); + // if a view already exists then immediately terminate the new one + if (mCustomView != null) { + callback.onCustomViewHidden(); + return; + } + + background.addView(view); + mCustomView = view; + mCustomViewCallback = callback; + background.setVisibility(View.VISIBLE); + } + + @Override + public void onShowCustomView(View view, + WebChromeClient.CustomViewCallback callback) { + // Log.i(LOGTAG, "here in on ShowCustomView"); + main[pageId].setVisibility(View.GONE); + uBar.setVisibility(View.GONE); + // if a view already exists then immediately terminate the new one + if (mCustomView != null) { + callback.onCustomViewHidden(); + return; + } + background.addView(view); + mCustomView = view; + mCustomViewCallback = callback; + background.setVisibility(View.VISIBLE); + } + + public void openFileChooser(ValueCallback uploadMsg) { + + mUploadMessage = uploadMsg; + Intent i = new Intent(Intent.ACTION_GET_CONTENT); + i.addCategory(Intent.CATEGORY_OPENABLE); + i.setType("image/*"); + IncognitoMode.this.startActivityForResult( + Intent.createChooser(i, "Image Browser"), + 1); + } + + public void openFileChooser(ValueCallback uploadMsg, + String acceptType) { + mUploadMessage = uploadMsg; + Intent i = new Intent(Intent.ACTION_GET_CONTENT); + i.addCategory(Intent.CATEGORY_OPENABLE); + i.setType("image/*"); + IncognitoMode.this.startActivityForResult( + Intent.createChooser(i, "Image Browser"), + 1); + } + + public void openFileChooser(ValueCallback uploadMsg, + String acceptType, String capture) { + mUploadMessage = uploadMsg; + Intent i = new Intent(Intent.ACTION_GET_CONTENT); + i.addCategory(Intent.CATEGORY_OPENABLE); + i.setType("image/*"); + IncognitoMode.this.startActivityForResult( + Intent.createChooser(i, "Image Browser"), + 1); + } + } + + private class CustomDownloadListener implements DownloadListener { + + @Override + public void onDownloadStart(final String url, String userAgent, + final String contentDisposition, final String mimetype, + long contentLength) { + try { + Thread downloader = new Thread(new Runnable() { + @SuppressLint("InlinedApi") + @Override + public void run() { + DownloadManager download = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); + Uri nice = Uri.parse(url); + DownloadManager.Request it = new DownloadManager.Request( + nice); + String fileName = URLUtil.guessFileName(url, + contentDisposition, mimetype); + if (API >= 11) { + it.allowScanningByMediaScanner(); + it.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); + } + + it.setDestinationInExternalPublicDir( + Environment.DIRECTORY_DOWNLOADS, fileName); + Log.i("IncognitoMode", "Downloading" + fileName); + download.enqueue(it); + } + }); + downloader.run(); + } catch (NullPointerException e) { + Log.e("IncognitoMode", "Problem downloading"); + Toast.makeText(CONTEXT, "Error Downloading File", + Toast.LENGTH_SHORT).show(); + } catch (IllegalArgumentException e) { + Log.e("IncognitoMode", "Problem downloading"); + Toast.makeText(CONTEXT, "Error Downloading File", + Toast.LENGTH_SHORT).show(); + } catch (SecurityException ignored) { + + } + } + + // } + + } + + private class CustomWebViewClient extends WebViewClient { + + @Override + public boolean shouldOverrideUrlLoading(WebView view, String url) { + + if (url.contains("plus.google.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } else if (url.contains("market://") + || url.contains("play.google.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } else if (url.contains("youtube.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } else if (url.contains("maps.google.com")) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + return true; + } + + return false; + } + + @Override + public void onPageFinished(WebView view, final String url) { + if (view.isShown()) { + view.postInvalidate(); + progressBar.setVisibility(View.GONE); + refresh.setVisibility(View.VISIBLE); + if(showFullScreen&&uBar.isShown()){ + uBar.startAnimation(slideUp); + + } + } + view.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); + + pageIsLoading = false; + + } + + @Override + public void onPageStarted(WebView view, String url, Bitmap favicon) { + + numberPage = view.getId(); + if (view.isShown()) { + refresh.setVisibility(View.INVISIBLE); + progressBar.setVisibility(View.VISIBLE); + setUrlText(url); + pageIsLoading = true; + } + urlTitle[numberPage].setCompoundDrawables(incognitoPage, null, + exitTab, null); + + getUrl.setPadding(tenPad, 0, tenPad, 0); + urlToLoad[numberPage][0] = url; + + if (!uBar.isShown()&&showFullScreen) { + uBar.startAnimation(slideDown); + } + } + + @Override + public void onReceivedSslError(WebView view, SslErrorHandler handler, + SslError error) { + handler.proceed(); + super.onReceivedSslError(view, handler, error); + } + + @Override + public void onScaleChanged(WebView view, float oldScale, float newScale) { + + view.getSettings().setLayoutAlgorithm( + LayoutAlgorithm.NORMAL); + super.onScaleChanged(view, oldScale, newScale); + } + } + + private void generateHistory(final CustomWebView view) { + + Thread history = new Thread(new Runnable() { + + @Override + public void run() { + String historyHtml = HistoryPage.Heading; + Cursor historyCursor = null; + String[][] h = new String[50][3]; + + try { + SQLiteDatabase s = historyHandler.getReadableDatabase(); + historyCursor = s.query("history", // URI + // of + columns, // Which columns to return + null, // Which rows to return (all rows) + null, // Selection arguments (none) + null, null, null); + + handler.sendEmptyMessage(1); + + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { + } + + list = new ArrayList>(); + try { + if (historyCursor != null) { + if (historyCursor.moveToLast()) { + // Variable for holding the retrieved URL + urlColumn = historyCursor.getColumnIndex("url"); + titleColumn = historyCursor.getColumnIndex("title"); + // Reference to the the column containing the URL + int n = 0; + do { + + h[n][0] = historyCursor.getString(urlColumn); + h[n][2] = h[n][0].substring(0, + Math.min(100, h[n][0].length())) + + "..."; + h[n][1] = historyCursor.getString(titleColumn); + historyHtml += (HistoryPage.Part1 + h[n][0] + + HistoryPage.Part2 + h[n][1] + + HistoryPage.Part3 + h[n][2] + HistoryPage.Part4); + n++; + } while (n < 49 && historyCursor.moveToPrevious()); + } + } + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { + } + + historyHtml += BookmarkPage.End; + File historyWebPage = new File(getBaseContext().getFilesDir(), + "history.html"); + try { + FileWriter hWriter = new FileWriter(historyWebPage, false); + hWriter.write(historyHtml); + hWriter.close(); + } catch (IOException e) { + e.printStackTrace(); + } + if (uBar.isShown()) { + urlTitle[pageId].setText("History"); + setUrlText(""); + getUrl.setPadding(tenPad, 0, tenPad, 0); + } + + view.loadUrl("file:///" + historyWebPage); + } + + }); + history.run(); + } + + private void setUrlText(String url) { + if (!url.contains("file:///" + getBaseContext().getFilesDir() + + "/bookmarks.html") + && !url.contains("file:///" + getBaseContext().getFilesDir() + + "/history.html")) { + getUrl.setText(url); + } else { + getUrl.setText(""); + } + } + + private class TabTouchListener implements OnTouchListener { + + @SuppressWarnings("deprecation") + @Override + public boolean onTouch(View v, MotionEvent event) { + id = v.getId(); + background.clearDisappearingChildren(); + boolean xPress = false; + int x = (int) event.getX(); + int y = (int) event.getY(); + Rect edge = new Rect(); + v.getLocalVisibleRect(edge); + + urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); + if (event.getAction() == MotionEvent.ACTION_UP) { + if (x >= (edge.right - bounds.width() - v.getPaddingRight() - fuzz * 3 / 2) + && x <= (edge.right - v.getPaddingRight() + fuzz * 3 / 2) + && y >= (v.getPaddingTop() - fuzz / 2) + && y <= (v.getHeight() - v.getPaddingBottom() + fuzz / 2)) { + xPress = true; + } + if (id == pageId) { + if (xPress) { + deleteTab(id); + uBar.bringToFront(); + } + } else if (id != pageId) { + if (xPress) { + deleteTab(id); + } else { + if (API < 16) { + urlTitle[pageId].setBackgroundDrawable(inactive); + } else if (API > 15) { + urlTitle[pageId].setBackground(inactive); + } + urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); + if (!showFullScreen) { + background.addView(main[id]); + main[id].startAnimation(fadeIn); + main[pageId].startAnimation(fadeOut); + background.removeView(main[pageId]); + uBar.bringToFront(); + } else if (API >= 12) { + main[id].setAlpha(0f); + background.addView(main[id]); + try { + main[id].animate().alpha(1f) + .setDuration(mShortAnimationDuration); + } catch (NullPointerException ignored) { + } + background.removeView(main[pageId]); + uBar.bringToFront(); + } else { + background.removeView(main[pageId]); + background.addView(main[id]); + } + uBar.bringToFront(); + + pageId = id; + setUrlText(urlToLoad[pageId][0]); + getUrl.setPadding(tenPad, 0, tenPad, 0); + if (API < 16) { + urlTitle[pageId].setBackgroundDrawable(active); + } else if (API > 15) { + urlTitle[pageId].setBackground(active); + } + if (main[pageId].getProgress() < 100) { + refresh.setVisibility(View.INVISIBLE); + progressBar.setVisibility(View.VISIBLE); + } else { + progressBar.setVisibility(View.GONE); + refresh.setVisibility(View.VISIBLE); + } + tabScroll.smoothScrollTo(urlTitle[pageId].getLeft(), 0); + main[pageId].invalidate(); + } + } + + } + uBar.bringToFront(); + urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); + return true; + } + + } + + private void deleteBookmark(String url) { + File book = new File(getBaseContext().getFilesDir(), "bookmarks"); + File bookUrl = new File(getBaseContext().getFilesDir(), "bookurl"); + int n = 0; + try { + BufferedWriter bookWriter = new BufferedWriter(new FileWriter(book)); + BufferedWriter urlWriter = new BufferedWriter(new FileWriter( + bookUrl)); + while (bUrl[n] != null && n < (MAX_BOOKMARKS - 1)) { + if (!bUrl[n].equalsIgnoreCase(url)) { + bookWriter.write(bTitle[n]); + urlWriter.write(bUrl[n]); + bookWriter.newLine(); + urlWriter.newLine(); + } + n++; + } + bookWriter.close(); + urlWriter.close(); + } catch (FileNotFoundException e) { + } catch (IOException e) { + } + for (int p = 0; p < MAX_BOOKMARKS; p++) { + bUrl[p] = null; + bTitle[p] = null; + } + try { + BufferedReader readBook = new BufferedReader(new FileReader(book)); + BufferedReader readUrl = new BufferedReader(new FileReader(bookUrl)); + String t, u; + int z = 0; + while ((t = readBook.readLine()) != null + && (u = readUrl.readLine()) != null && z < MAX_BOOKMARKS) { + bUrl[z] = u; + bTitle[z] = t; + z++; + } + readBook.close(); + readUrl.close(); + } catch (IOException ignored) { + } + openBookmarks(main[pageId]); + } + + private class WebPageLongClickListener implements OnLongClickListener { + + @Override + public boolean onLongClick(View v) { + final HitTestResult result = main[pageId].getHitTestResult(); + if (main[pageId].getUrl().contains( + "file:///" + getBaseContext().getFilesDir() + + "/bookmarks.html")) { + if (result.getExtra() != null) { + DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: { + int num = pageId; + newTab(number, result.getExtra(), false, true); + // urlTitle[num].performClick(); + pageId = num; + break; + } + case DialogInterface.BUTTON_NEGATIVE: { + main[pageId].loadUrl(result.getExtra()); + break; + } + case DialogInterface.BUTTON_NEUTRAL: { + + deleteBookmark(result.getExtra()); + break; + } + } + } + }; + + AlertDialog.Builder builder = new AlertDialog.Builder( + CONTEXT); // dialog + builder.setMessage( + "What would you like to do with this link?") + .setPositiveButton("Open in New Tab", + dialogClickListener) + .setNegativeButton("Open Normally", + dialogClickListener) + .setNeutralButton("Delete", dialogClickListener) + .show(); + } + return true; + } else if (result.getExtra() != null) { + if (result.getType() == 5 && API > 8) { + DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: { + int num = pageId; + newTab(number, result.getExtra(), false, true); + // urlTitle[num].performClick(); + pageId = num; + break; + } + case DialogInterface.BUTTON_NEGATIVE: { + main[pageId].loadUrl(result.getExtra()); + break; + } + case DialogInterface.BUTTON_NEUTRAL: { + if (API > 8) { + try { + Thread down = new Thread( + new Runnable() { + @SuppressLint("InlinedApi") + @Override + public void run() { + + DownloadManager download = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); + Uri nice = Uri.parse(result + .getExtra()); + DownloadManager.Request it = new DownloadManager.Request( + nice); + String fileName = URLUtil.guessFileName( + result.getExtra(), + null, null); + + if (API >= 11) { + it.allowScanningByMediaScanner(); + it.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); + } + + it.setDestinationInExternalPublicDir( + Environment.DIRECTORY_DOWNLOADS, + fileName); + Log.i("IncognitoMode", + "Downloading" + + fileName); + download.enqueue(it); + } + }); + down.run(); + } catch (NullPointerException e) { + Log.e("IncognitoMode", + "Problem downloading"); + Toast.makeText(CONTEXT, + "Error Downloading File", + Toast.LENGTH_SHORT).show(); + } catch (IllegalArgumentException e) { + Log.e("IncognitoMode", + "Problem downloading"); + Toast.makeText(CONTEXT, + "Error Downloading File", + Toast.LENGTH_SHORT).show(); + } catch (SecurityException ignored) { + + } + } + break; + } + } + } + }; + + AlertDialog.Builder builder = new AlertDialog.Builder( + CONTEXT); // dialog + builder.setMessage( + "What would you like to do with this link?") + .setPositiveButton("Open in New Tab", + dialogClickListener) + .setNegativeButton("Open Normally", + dialogClickListener) + .setNeutralButton("Download Image", + dialogClickListener).show(); + + } else { + DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { + @SuppressWarnings("deprecation") + @Override + public void onClick(DialogInterface dialog, int which) { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: { + int num = pageId; + newTab(number, result.getExtra(), false, true); + // urlTitle[num].performClick(); + pageId = num; + break; + } + case DialogInterface.BUTTON_NEGATIVE: { + main[pageId].loadUrl(result.getExtra()); + break; + } + case DialogInterface.BUTTON_NEUTRAL: { + + if (API < 11) { + android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); + clipboard.setText(result.getExtra()); + } else { + ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); + ClipData clip = ClipData.newPlainText( + "label", result.getExtra()); + clipboard.setPrimaryClip(clip); + } + break; + } + } + } + }; + + AlertDialog.Builder builder = new AlertDialog.Builder( + CONTEXT); // dialog + builder.setMessage( + "What would you like to do with this link?") + .setPositiveButton("Open in New Tab", + dialogClickListener) + .setNegativeButton("Open Normally", + dialogClickListener) + .setNeutralButton("Copy link", dialogClickListener) + .show(); + } + return true; + } else { + return false; + } + } + + } + + // variables to differentiate free from paid + private static final int MAX_TABS = FinalVars.MAX_TABS; + private static final int MAX_BOOKMARKS = FinalVars.MAX_BOOKMARKS; + private static final boolean PAID_VERSION = FinalVars.PAID_VERSION; + private final Context CONTEXT = IncognitoMode.this; + private static final String HOMEPAGE = FinalVars.HOMEPAGE; + private static final String SEARCH = FinalVars.GOOGLE_SEARCH; + private static SimpleAdapter adapter; + private static MultiAutoCompleteTextView getUrl; + private static final TextView[] urlTitle = new TextView[MAX_TABS]; + private static final CustomWebView[] main = new CustomWebView[MAX_TABS]; + private static Rect bounds; + private static ValueCallback mUploadMessage; + private static ImageView refresh; + private static ProgressBar progressBar; + private static Drawable webpageOther; + private static Drawable incognitoPage; + private static Drawable exitTab; + private static int numberPage; + private static final int fuzz = 10; + private static int number; + private static int pageId = 0; + private static int agentPicker; + private static int enableFlash; + private static int height32; + private static int height; + private static int width; + private static int pixels; + private static int leftPad; + private static int rightPad; + private static final int API = FinalVars.API; + private static int mShortAnimationDuration; + private static int id; + private static int tenPad; + private static int urlColumn; + private static int titleColumn; + private static View mCustomView = null; + private static CustomViewCallback mCustomViewCallback; + private static boolean isPhone = false; + private static boolean pageIsLoading = false; + private static boolean allowLocation; + static boolean showFullScreen; + private static SharedPreferences settings; + private static SharedPreferences.Editor edit; + private static String desktop; + private static String mobile; + private static String user; + private static String urlA; + private static String title; + private static final String[] bUrl = new String[MAX_BOOKMARKS]; + private static final String[] bTitle = new String[MAX_BOOKMARKS]; + private static String[] columns; + private static String homepage; + private static String str; + private static final String preferences = "settings"; + private static String query; + private static String userAgent; + private static final String[][] urlToLoad = new String[MAX_TABS][2]; + private static FrameLayout background; + static RelativeLayout uBar; + private static HorizontalScrollView tabScroll; + static Animation slideUp; + static Animation slideDown; + private static Animation fadeOut; + private static Animation fadeIn; + private static TextView txt; + + private static CookieManager cookieManager; + + private static List> list; + private static Map map; + + private static Handler handler; + + private static DatabaseHandler historyHandler; + + private static Drawable inactive; + + private static Drawable active; + + private static LinearLayout tabLayout; + + @SuppressWarnings("unused") + private static void setFavicon(int id, Bitmap favicon) { + Drawable icon = null; + icon = new BitmapDrawable(null, favicon); + icon.setBounds(0, 0, width / 2, height / 2); + if (icon != null) { + urlTitle[id].setCompoundDrawables(icon, null, exitTab, null); + } else { + urlTitle[id] + .setCompoundDrawables(webpageOther, null, exitTab, null); + } + } + + @SuppressLint("SetJavaScriptEnabled") + CustomWebView browserSettings(CustomWebView view) { + view.setAnimationCacheEnabled(false); + view.setDrawingCacheEnabled(false); + view.setDrawingCacheBackgroundColor(getResources().getColor( + android.R.color.background_light)); + // view.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH); + + view.setWillNotCacheDrawing(true); + view.setFocusable(true); + view.setFocusableInTouchMode(true); + view.setSaveEnabled(true); + + WebSettings webViewSettings = view.getSettings(); + + boolean java = settings.getBoolean("java", true); + if (java) { + webViewSettings.setJavaScriptEnabled(true); + webViewSettings.setJavaScriptCanOpenWindowsAutomatically(false); + } + webViewSettings.setBlockNetworkImage(false); + webViewSettings.setAllowFileAccess(true); + webViewSettings.setLightTouchEnabled(true); + webViewSettings.setSupportMultipleWindows(false); + webViewSettings.setDomStorageEnabled(true); + webViewSettings.setAppCacheEnabled(true); + webViewSettings.setAppCachePath(getApplicationContext().getFilesDir() + .getAbsolutePath() + "/incognito_cache"); + webViewSettings.setRenderPriority(RenderPriority.HIGH); + webViewSettings.setGeolocationEnabled(true); + webViewSettings.setGeolocationDatabasePath(getApplicationContext() + .getFilesDir().getAbsolutePath()+"/incognito_geolocation"); + webViewSettings.setDatabaseEnabled(true); + webViewSettings.setDatabasePath(getApplicationContext().getFilesDir() + .getAbsolutePath() + "/incognito_databases"); + enableFlash = settings.getInt("enableflash", 0); + switch (enableFlash) { + case 0: + break; + case 1: { + webViewSettings.setPluginState(PluginState.ON_DEMAND); + break; + } + case 2: { + webViewSettings.setPluginState(PluginState.ON); + break; + } + default: + break; + } + + webViewSettings.setUserAgentString(userAgent); + webViewSettings.setSavePassword(false); + webViewSettings.setSaveFormData(false); + + webViewSettings.setBuiltInZoomControls(true); + webViewSettings.setSupportZoom(true); + webViewSettings.setUseWideViewPort(true); + webViewSettings.setLoadWithOverviewMode(true); // Seems to be causing + // the performance + // to drop + if (API >= 11) { + webViewSettings.setDisplayZoomControls(false); + webViewSettings.setAllowContentAccess(true); + } + webViewSettings.setLayoutAlgorithm(LayoutAlgorithm.NORMAL); + webViewSettings.setLoadsImagesAutomatically(true); + return view; + } + + boolean deleteDir(File dir) { + if (dir != null && dir.isDirectory()) { + String[] children = dir.list(); + for (String aChildren : children) { + boolean success = deleteDir(new File(dir, aChildren)); + if (!success) { + return false; + } + } + } + + // The directory is now empty so delete it + return dir.delete(); + } + + @SuppressWarnings("deprecation") + void deleteTab(final int del) { + main[del].stopLoading(); + main[del].clearHistory(); + main[del].clearView(); + urlToLoad[del][0] = null; + urlToLoad[del][1] = null; + if (API >= 11) { + main[del].onPause(); + } + + // background.clearDisappearingChildren(); + if (API < 16) { + urlTitle[del].setBackgroundDrawable(active); + } else { + urlTitle[del].setBackground(active); + } + urlTitle[del].setPadding(leftPad, 0, rightPad, 0); + Animation yolo = AnimationUtils.loadAnimation(this, R.anim.down); + + yolo.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + urlTitle[del].setVisibility(View.GONE); + findNewView(del); + main[del] = null; + } + + @Override + public void onAnimationRepeat(Animation animation) { + } + + @Override + public void onAnimationStart(Animation animation) { + } + + }); + urlTitle[del].startAnimation(yolo); + + } + + @SuppressWarnings("deprecation") + void findNewView(int id) { + int leftId = id; + boolean right = false, left = false; + if (id == pageId) { + + if (main[id].isShown()) { + background.removeView(main[id]); + } + for (; id <= (number - 1); id++) { + if (urlTitle[id].isShown()) { + background.addView(main[id]); + main[id].setVisibility(View.VISIBLE); + uBar.bringToFront(); + if (API < 16) { + urlTitle[id].setBackgroundDrawable(active); + } else { + urlTitle[id].setBackground(active); + } + urlTitle[id].setPadding(leftPad, 0, rightPad, 0); + pageId = id; + setUrlText(urlToLoad[pageId][0]); + getUrl.setPadding(tenPad, 0, tenPad, 0); + right = true; + break; + } + + } + if (!right) { + for (; leftId >= 0; leftId--) { + + if (urlTitle[leftId].isShown()) { + background.addView(main[leftId]); + main[leftId].setVisibility(View.VISIBLE); + // uBar.bringToFront(); + if (API < 16) { + urlTitle[leftId].setBackgroundDrawable(active); + } else { + urlTitle[leftId].setBackground(active); + } + urlTitle[leftId].setPadding(leftPad, 0, rightPad, 0); + pageId = leftId; + setUrlText(urlToLoad[pageId][0]); + getUrl.setPadding(tenPad, 0, tenPad, 0); + left = true; + break; + } + + } + + } + + } else { + right = left = true; + } + + if (!(right || left)) { + finish(); + } + tabScroll.smoothScrollTo(urlTitle[pageId].getLeft(), 0); + } + + void enter() { + getUrl.setOnKeyListener(new OnKeyListener() { + + @Override + public boolean onKey(View arg0, int arg1, KeyEvent arg2) { + + switch (arg1) { + case KeyEvent.KEYCODE_ENTER: + query = getUrl.getText().toString(); + InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + imm.hideSoftInputFromWindow(getUrl.getWindowToken(), 0); + testForSearch(); + return true; + default: + break; + } + return false; + } + + }); + getUrl.setOnEditorActionListener(new OnEditorActionListener() { + + @Override + public boolean onEditorAction(TextView arg0, int actionId, + KeyEvent arg2) { + if (actionId == EditorInfo.IME_ACTION_GO + || actionId == EditorInfo.IME_ACTION_DONE + || actionId == EditorInfo.IME_ACTION_NEXT + || actionId == EditorInfo.IME_ACTION_SEND + || actionId == EditorInfo.IME_ACTION_SEARCH + || (arg2.getAction() == KeyEvent.KEYCODE_ENTER)) { + query = getUrl.getText().toString(); + InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + imm.hideSoftInputFromWindow(getUrl.getWindowToken(), 0); + testForSearch(); + return true; + } + return false; + } + + }); + } + + @SuppressLint("HandlerLeak") + void enterUrl() { + getUrl = (MultiAutoCompleteTextView) findViewById(R.id.enterUrl); + getUrl.setPadding(tenPad, 0, tenPad, 0); + getUrl.setTextColor(getResources().getColor(android.R.color.black)); + getUrl.setPadding(tenPad, 0, tenPad, 0); + getUrl.setBackgroundResource(R.drawable.book); + getUrl.setPadding(tenPad, 0, tenPad, 0); + handler = new Handler() { + + @Override + public void handleMessage(Message msg) { + switch (msg.what) { + case 1: { + adapter = new SimpleAdapter(CONTEXT, list, + R.layout.two_line_autocomplete, new String[] { + "title", "url" }, new int[] { R.id.title, + R.id.url }); + + getUrl.setAdapter(adapter); + + break; + } + case 2: { + + break; + } + } + } + }; + + Thread updateAutoComplete = new Thread(new Runnable() { + + @Override + public void run() { + + Cursor managedCursor = null; + columns = new String[] { "url", "title" }; + try { + + managedCursor = null; + SQLiteDatabase s = historyHandler.getReadableDatabase(); + managedCursor = s.query("history", // URI + // of + columns, // Which columns to return + null, // Which rows to return (all rows) + null, // Selection arguments (none) + null, null, null); + + handler.sendEmptyMessage(1); + + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { + } + + list = new ArrayList>(); + try { + if (managedCursor != null) { + + if (managedCursor.moveToLast()) { + + // Variable for holding the retrieved URL + + urlColumn = managedCursor.getColumnIndex("url"); + titleColumn = managedCursor.getColumnIndex("title"); + // Reference to the the column containing the URL + do { + urlA = managedCursor.getString(urlColumn); + title = managedCursor.getString(titleColumn); + map = new HashMap(); + map.put("title", title); + map.put("url", urlA); + list.add(map); + } while (managedCursor.moveToPrevious()); + } + } + } catch (SQLiteException ignored) { + } catch (NullPointerException ignored) { + } catch (IllegalStateException ignored) { + } + managedCursor.close(); + } + + }); + updateAutoComplete.setPriority(3); + try { + updateAutoComplete.start(); + } catch (NullPointerException ignored) { + } catch (SQLiteMisuseException ignored) { + } catch (IllegalStateException ignored) { + } + + getUrl.setThreshold(2); + getUrl.setTokenizer(new SpaceTokenizer()); + getUrl.setOnItemClickListener(new OnItemClickListener() { + + @Override + public void onItemClick(AdapterView arg0, View arg1, int arg2, + long arg3) { + try { + txt = (TextView) arg1.findViewById(R.id.url); + str = txt.getText().toString(); + main[pageId].loadUrl(str); + setUrlText(str); + getUrl.setPadding(tenPad, 0, tenPad, 0); + InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + imm.hideSoftInputFromWindow(getUrl.getWindowToken(), 0); + } catch (NullPointerException e) { + + Log.e("IncognitoMode Error: ", + "NullPointerException on item click"); + } + } + + }); + + getUrl.setSelectAllOnFocus(true); // allows edittext to select all when + // clicked + } + + void back() { + ImageView exit = (ImageView) findViewById(R.id.exit); + exit.setBackgroundResource(R.drawable.button); + if (isPhone) { + RelativeLayout relativeLayout1 = (RelativeLayout) findViewById(R.id.relativeLayout1); + relativeLayout1.removeView(exit); + } + exit.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + + if (main[pageId].canGoBack()) { + main[pageId].goBack(); + } else { + deleteTab(pageId); + } + + } + + }); + exit.setOnLongClickListener(new OnLongClickListener() { + + @Override + public boolean onLongClick(View v) { + finish(); + return true; + } + + }); + + } + + @Override + public void finish() { + background.clearDisappearingChildren(); + tabScroll.clearDisappearingChildren(); + main[0].clearCache(true); + cookieManager.setAcceptCookie(true); + super.finish(); + } + + void forward() { + ImageView forward = (ImageView) findViewById(R.id.forward); + forward.setBackgroundResource(R.drawable.button); + if (isPhone) { + RelativeLayout relativeLayout1 = (RelativeLayout) findViewById(R.id.relativeLayout1); + relativeLayout1.removeView(forward); + } + forward.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + if (main[pageId].canGoForward()) { + main[pageId].goForward(); + } + } + + }); + } + + void goBookmarks(CustomWebView view) { + File book = new File(getBaseContext().getFilesDir(), "bookmarks"); + File bookUrl = new File(getBaseContext().getFilesDir(), "bookurl"); + try { + BufferedReader readBook = new BufferedReader(new FileReader(book)); + BufferedReader readUrl = new BufferedReader(new FileReader(bookUrl)); + String t, u; + int n = 0; + while ((t = readBook.readLine()) != null + && (u = readUrl.readLine()) != null && n < MAX_BOOKMARKS) { + bUrl[n] = u; + bTitle[n] = t; + + n++; + } + readBook.close(); + readUrl.close(); + } catch (FileNotFoundException ignored) { + } catch (IOException ignored) { + } + openBookmarks(view); + } + + @SuppressLint("InlinedApi") + void init() { + DisplayMetrics metrics = new DisplayMetrics(); + getWindowManager().getDefaultDisplay().getMetrics(metrics); + historyHandler = new DatabaseHandler(this); + CookieSyncManager.createInstance(CONTEXT); + cookieManager = CookieManager.getInstance(); + cookieManager.setAcceptCookie(false); + + progressBar = (ProgressBar) findViewById(R.id.progressBar1); + if (API >= 11) { + progressBar.setIndeterminateDrawable(getResources().getDrawable( + R.drawable.ics_animation)); + } else { + progressBar.setIndeterminateDrawable(getResources().getDrawable( + R.drawable.ginger_animation)); + } + + showFullScreen = settings.getBoolean("fullscreen", false); + uBar = (RelativeLayout) findViewById(R.id.urlBar); + RelativeLayout bg = (RelativeLayout) findViewById(R.id.background); + slideUp = AnimationUtils.loadAnimation(this, R.anim.slide_up); + slideDown = AnimationUtils.loadAnimation(this, R.anim.slide_down); + fadeOut = AnimationUtils.loadAnimation(this, android.R.anim.fade_out); + fadeIn = AnimationUtils.loadAnimation(this, android.R.anim.fade_in); + mShortAnimationDuration = getResources().getInteger( + android.R.integer.config_mediumAnimTime); + slideUp.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation arg0) { + + uBar.setVisibility(View.GONE); + } + + @Override + public void onAnimationRepeat(Animation arg0) { + + } + + @Override + public void onAnimationStart(Animation arg0) { + + } + + }); + slideDown.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + + } + + @Override + public void onAnimationRepeat(Animation animation) { + + } + + @Override + public void onAnimationStart(Animation animation) { + + uBar.setVisibility(View.VISIBLE); + } + + }); + + RelativeLayout refreshLayout = (RelativeLayout) findViewById(R.id.refreshLayout); + refreshLayout.setBackgroundResource(R.drawable.button); + + // user agent + user = new WebView(CONTEXT).getSettings().getUserAgentString(); + + background = (FrameLayout) findViewById(R.id.holder); + mobile = user; // setting mobile user + // agent + desktop = FinalVars.DESKTOP_USER_AGENT; // setting + // desktop user agent + exitTab = getResources().getDrawable(R.drawable.stop); // user + // agent + homepage = settings.getString("home", HOMEPAGE); // initializing + // the + // stored + // homepage + // variable + + userAgent = settings.getString("agent", mobile); // initializing + // useragent string + allowLocation = settings.getBoolean("location", false); // initializing + // location + // variable + + enableFlash = settings.getInt("enableflash", 0); // enable flash + // boolean + agentPicker = settings.getInt("agentchoose", 1); // which user agent to + // use, 1=mobile, + // 2=desktop, + // 3=custom + + + // initializing variables declared + + height = getResources().getDrawable(R.drawable.loading) + .getMinimumHeight(); + width = getResources().getDrawable(R.drawable.loading) + .getMinimumWidth(); + + // hides keyboard so it doesn't default pop up + this.getWindow().setSoftInputMode( + WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); + + // opens icondatabase so that favicons can be stored + WebIconDatabase.getInstance().open( + getDir("icons", MODE_PRIVATE).getPath()); + + // scroll view containing tabs + tabLayout = (LinearLayout) findViewById(R.id.tabLayout); + tabScroll = (HorizontalScrollView) findViewById(R.id.tabScroll); + tabScroll.setBackgroundColor(getResources().getColor(R.color.black)); + tabScroll.setHorizontalScrollBarEnabled(false); + if (API > 8) { + tabScroll.setOverScrollMode(View.OVER_SCROLL_NEVER); // disallow + //overscroll + } + + // image dimensions and initialization + final int dps = 175; + final float scale = getApplicationContext().getResources() + .getDisplayMetrics().density; + pixels = (int) (dps * scale + 0.5f); + leftPad = (int) (17 * scale + 0.5f); + rightPad = (int) (15 * scale + 0.5f); + height32 = (int) (32 * scale + 0.5f); + tenPad = (int) (10 * scale + 0.5f); + number = 0; + + + webpageOther = getResources().getDrawable(R.drawable.webpage); + incognitoPage = getResources().getDrawable(R.drawable.incognito); + webpageOther.setBounds(0, 0, width / 2, height / 2); + incognitoPage.setBounds(0, 0, width / 2, height / 2); + exitTab.setBounds(0, 0, width * 2 / 3, height * 2 / 3); + + Thread startup = new Thread(new Runnable() { + + @Override + public void run() { + initializeTabs(); // restores old tabs or creates a new one + + } + + }); + startup.run(); + + // new tab button + ImageView newTab = (ImageView) findViewById(R.id.newTab); + newTab.setBackgroundResource(R.drawable.button); + newTab.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + newTab(number, homepage, true, true); + tabScroll.postDelayed(new Runnable() { + public void run() { + tabScroll.smoothScrollTo(urlTitle[pageId].getLeft(), 0); + } + }, 100L); + + } + }); + refresh = (ImageView) findViewById(R.id.refresh); + refreshLayout.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View arg0) { + + if (pageIsLoading) { + main[pageId].stopLoading(); + } else { + main[pageId].reload(); + } + } + + }); + + enterUrl(); + if (showFullScreen) { + bg.removeView(uBar); + background.addView(uBar); + } + + } + + void initializeTabs() { + Intent url = getIntent(); + String URL = url.getDataString(); + if (URL != null) { + // opens a new tab with the url if its there + newTab(number, URL, true, true); + main[number - 1].resumeTimers(); + + } else { + // otherwise it opens the homepage + newTab(number, homepage, true, true); + main[number - 1].resumeTimers(); + + } + + } + + private CustomWebView makeTab(final int pageToView, final String Url, + final boolean display) { + CustomWebView view = new CustomWebView(CONTEXT); + view.setId(pageToView); + allowLocation = settings.getBoolean("location", false); + view.setWebViewClient(new CustomWebViewClient()); + view.setWebChromeClient(new CustomChromeClient()); + if (API > 8) { + view.setDownloadListener(new CustomDownloadListener()); + } + + view.setOnLongClickListener(new WebPageLongClickListener()); + view = browserSettings(view); + agentPicker = settings.getInt("agentchoose", 1); + switch (agentPicker) { + case 1: + view.getSettings().setUserAgentString(mobile); + break; + case 2: + view.getSettings().setUserAgentString(desktop); + break; + case 3: + userAgent = settings.getString("agent", user); + view.getSettings().setUserAgentString(userAgent); + break; + } + if (display) { + background.removeView(main[pageId]); + background.addView(view); + view.requestFocus(); + pageId = pageToView; + } + uBar.bringToFront(); + if (Url.contains("about:home")) { + goBookmarks(view); + } else if (Url.contains("about:blank")) { + + view.loadUrl("about:blank"); + + } else { + + view.loadUrl(Url); + + } + Log.i("IncognitoMode", "tab complete"); + return view; + } + + void newSettings() { + Intent set = new Intent(FinalVars.SETTINGS_INTENT); + startActivity(set); + } + + // new tab method, takes the id of the tab to be created and the url to load + @SuppressWarnings("deprecation") + int newTab(int theId, final String theUrl, final boolean display, + final boolean incognito_mode) { + Log.i("IncognitoMode", "making tab"); + + int finalID = 0; + homepage = settings.getString("home", HOMEPAGE); + allowLocation = settings.getBoolean("location", false); + boolean isEmptyWebViewAvailable = false; + + for (int num = 0; num < number; num++) { + if (urlTitle[num].getVisibility() == View.GONE) { + + final int n = num; + Animation holo = AnimationUtils.loadAnimation(this, R.anim.up); + holo.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + } + + @Override + public void onAnimationRepeat(Animation animation) { + } + + @Override + public void onAnimationStart(Animation animation) { + urlTitle[n].setVisibility(View.VISIBLE); + } + + }); + urlTitle[n].startAnimation(holo); + urlTitle[num].setText("New Tab"); + if (display) { + if (API < 16) { + urlTitle[num].setBackgroundDrawable(active); + } else { + urlTitle[num].setBackground(active); + } + } else { + if (API < 16) { + urlTitle[num].setBackgroundDrawable(inactive); + } else { + urlTitle[num].setBackground(inactive); + } + } + urlTitle[num].setPadding(leftPad, 0, rightPad, 0); + if (display) { + if (API < 16) { + urlTitle[pageId].setBackgroundDrawable(inactive); + } else { + urlTitle[pageId].setBackground(inactive); + } + } + urlTitle[pageId].setCompoundDrawables(webpageOther, null, + exitTab, null); + urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); + main[num] = makeTab(num, theUrl, display); + finalID = num; + pageId = num; + + uBar.bringToFront(); + + if (API >= 11) { + main[num].onResume(); + } + + isEmptyWebViewAvailable = true; + break; + } + } + if (!isEmptyWebViewAvailable) { + if (number < MAX_TABS) { + if (number > 0) { + if (display) { + if (API < 16) { + urlTitle[pageId].setBackgroundDrawable(inactive); + } else { + urlTitle[pageId].setBackground(inactive); + } + + urlTitle[pageId].setPadding(leftPad, 0, rightPad, 0); + } + } + final TextView title = new TextView(CONTEXT); + title.setText("New Tab"); + if (display) { + if (API < 16) { + title.setBackgroundDrawable(active); + } else { + title.setBackground(active); + } + } else { + if (API < 16) { + title.setBackgroundDrawable(inactive); + } else { + title.setBackground(inactive); + } + } + title.setSingleLine(true); + title.setGravity(Gravity.CENTER_VERTICAL); + title.setHeight(height32); + title.setWidth(pixels); + title.setPadding(leftPad, 0, rightPad, 0); + title.setId(number); + title.setGravity(Gravity.CENTER_VERTICAL); + + title.setCompoundDrawables(incognitoPage, null, exitTab, + null); + + Drawable[] drawables = title.getCompoundDrawables(); + bounds = drawables[2].getBounds(); + title.setOnTouchListener(new TabTouchListener()); + Animation holo = AnimationUtils.loadAnimation(this, R.anim.up); + tabLayout.addView(title); + title.setVisibility(View.INVISIBLE); + holo.setAnimationListener(new AnimationListener() { + + @Override + public void onAnimationEnd(Animation animation) { + } + + @Override + public void onAnimationRepeat(Animation animation) { + } + + @Override + public void onAnimationStart(Animation animation) { + title.setVisibility(View.VISIBLE); + } + + }); + title.startAnimation(holo); + urlTitle[number] = title; + + urlTitle[number].setText("Incognito"); + + + if (theUrl != null) { + main[number] = makeTab(number, theUrl, display); + } else { + main[number] = makeTab(number, homepage, display); + } + finalID = number; + number = number + 1; + } + } + if (!isEmptyWebViewAvailable && number >= MAX_TABS) { + Toast.makeText(CONTEXT, "Maximum number of tabs reached...", + Toast.LENGTH_SHORT).show(); + } + return finalID; + + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, + Intent intent) { + if (requestCode == 1) { + if (null == mUploadMessage) + return; + Uri result = intent == null || resultCode != RESULT_OK ? null + : intent.getData(); + mUploadMessage.onReceiveValue(result); + mUploadMessage = null; + + } + } + + @Override + public void onBackPressed() { + if (main[pageId].canGoBack()) { + main[pageId].goBack(); + } else { + deleteTab(pageId); + uBar.bringToFront(); + } + + } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + super.onConfigurationChanged(newConfig); + main[pageId].getSettings().setLayoutAlgorithm( + LayoutAlgorithm.NORMAL); + // main[pageId].invalidate(); + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); // displays main xml layout + settings = getSharedPreferences(preferences, 0); + edit = settings.edit(); + + + inactive = getResources().getDrawable(R.drawable.bg_inactive); + active = getResources().getDrawable(R.drawable.bg_press); + init(); // sets up random stuff + options(); // allows options to be opened + enter();// enter url bar + DisplayMetrics metrics = new DisplayMetrics(); + getWindowManager().getDefaultDisplay().getMetrics(metrics); + float widthInInches = metrics.widthPixels / metrics.xdpi; + float heightInInches = metrics.heightPixels / metrics.ydpi; + double sizeInInches = Math.sqrt(Math.pow(widthInInches, 2) + + Math.pow(heightInInches, 2)); + // 0.5" buffer for 7" devices + isPhone = sizeInInches < 6.5; + forward();// forward button + back(); + int first = settings.getInt("first", 0); + + if (first == 0) { // This dialog alerts the user to some navigation + // techniques + DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: + break; + + } + } + }; + + AlertDialog.Builder builder = new AlertDialog.Builder(CONTEXT); // dialog + builder.setTitle("Browser Tips"); + builder.setMessage( + "\nLong-press back button to exit browser" + + "\n\nSet your homepage in settings to about:blank to set a blank page as your default" + + "\n\nSet the homepage to about:home to set bookmarks as your homepage" + + "\n\nLong-press a link to open in a new tab" + + "\n\nCheck out the settings for more stuff!") + .setPositiveButton("Ok", dialogClickListener).show(); + edit.putInt("first", 1); + edit.commit(); + } + } + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + + MenuInflater inflater = getMenuInflater(); + inflater.inflate(R.menu.incognito_menu, menu); + + return true; + } + + @Override + public boolean onKeyLongPress(int keyCode, KeyEvent event) { + + if (keyCode == KeyEvent.KEYCODE_BACK) { + finish(); + return true; + } + return super.onKeyLongPress(keyCode, event); + } + + @Override + protected void onNewIntent(Intent intent) { + + String url = intent.getDataString(); + if (url != null) { + newTab(number, url, true, true); + } + super.onNewIntent(intent); + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + + switch (item.getItemId()) { + case R.id.history: + generateHistory(main[pageId]); + return true; + case R.id.bookmark: + return true; + case R.id.settings: + return true; + case R.id.allBookmarks: + if (!urlToLoad[pageId][1].equals("Bookmarks")) { + goBookmarks(main[pageId]); + } + return true; + case R.id.share: + return true; + case R.id.incognito: + newTab(number, homepage, true, true); + return true; + default: + return super.onOptionsItemSelected(item); + } + } + + @Override + protected void onPause() { + if (main[pageId] != null) { + if (API >= 11) { + main[pageId].onPause(); + } + main[pageId].pauseTimers(); + } + super.onPause(); + } + + @Override + protected void onResume() { + super.onResume(); + if (API >= 11) { + main[pageId].onResume(); + } + main[0].resumeTimers(); + + } + + void openBookmarks(CustomWebView view) { + String bookmarkHtml = BookmarkPage.Heading; + for (int n = 0; n < MAX_BOOKMARKS; n++) { + if (bUrl[n] != null) { + bookmarkHtml += (BookmarkPage.Part1 + bUrl[n] + + BookmarkPage.Part2 + bUrl[n] + BookmarkPage.Part3 + + bTitle[n] + BookmarkPage.Part4); + } + } + bookmarkHtml += BookmarkPage.End; + File bookmarkWebPage = new File(getBaseContext().getFilesDir(), + "bookmarks.html"); + try { + FileWriter bookWriter = new FileWriter(bookmarkWebPage, false); + bookWriter.write(bookmarkHtml); + bookWriter.close(); + } catch (IOException e) { + e.printStackTrace(); + } + view.loadUrl("file:///" + bookmarkWebPage); + + if (uBar.isShown()) { + urlTitle[pageId].setText("Bookmarks"); + setUrlText(""); + getUrl.setPadding(tenPad, 0, tenPad, 0); + } + + } + + void options() { + ImageView options = (ImageView) findViewById(R.id.options); + options.setBackgroundResource(R.drawable.button); + options.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + + if (API >= 11) { + PopupMenu menu = new PopupMenu(CONTEXT, v); + MenuInflater inflate = menu.getMenuInflater(); + inflate.inflate(R.menu.incognito_menu, menu.getMenu()); + menu.setOnMenuItemClickListener(new OnMenuItemClickListener() { + + @Override + public boolean onMenuItemClick(MenuItem item) { + + switch (item.getItemId()) { + case R.id.history: + generateHistory(main[pageId]); + return true; + case R.id.bookmark: + return true; + case R.id.settings: + return true; + case R.id.allBookmarks: + if (!urlToLoad[pageId][1].equals("Bookmarks")) { + goBookmarks(main[pageId]); + } + return true; + case R.id.share: + return true; + case R.id.incognito: + newTab(number, homepage, true, true); + return true; + default: + return false; + } + + } + + }); + menu.show(); + } else if (API < 11) { + + openOptionsMenu(); + } + } + + }); + options.setOnLongClickListener(new OnLongClickListener() { + + @Override + public boolean onLongClick(View arg0) { + return true; + } + + }); + } + + void testForSearch() { + String fixedQuery = query.trim(); + main[pageId].stopLoading(); + boolean period = fixedQuery.contains("."); + + if (fixedQuery.contains("about:home") + || fixedQuery.contains("about:bookmarks")) { + goBookmarks(main[pageId]); + } else if (fixedQuery.contains("about:history")) { + generateHistory(main[pageId]); + } else if (fixedQuery.contains(" ") || !period) { + fixedQuery.replaceAll(" ", "+"); + main[pageId].loadUrl(SEARCH + fixedQuery); + } else if (!fixedQuery.contains("http//") + && !fixedQuery.contains("https//") + && !fixedQuery.contains("http://") + && !fixedQuery.contains("https://")) { + fixedQuery = "http://" + fixedQuery; + main[pageId].loadUrl(fixedQuery); + } else { + fixedQuery = fixedQuery.replaceAll("http//", "http://"); + fixedQuery = fixedQuery.replaceAll("https//", "https://"); + main[pageId].loadUrl(fixedQuery); + } + } + + void trimCache(Context context) { + try { + File dir = context.getCacheDir(); + + if (dir != null && dir.isDirectory()) { + deleteDir(dir); + } + } catch (Exception ignored) { + + } + } +} diff --git a/src/acr/browser/barebones/Settings.java b/src/acr/browser/barebones/Settings.java index 19ba7d6..9ff720a 100644 --- a/src/acr/browser/barebones/Settings.java +++ b/src/acr/browser/barebones/Settings.java @@ -25,14 +25,20 @@ import android.widget.TextView; import android.widget.TextView.OnEditorActionListener; public class Settings extends Activity { - public static final String preferences = "settings"; - static boolean allowLocation, deleteHistory; - static int enableFlash; - static boolean savePasswords, fullScreen, java, saveTabs; - static String userAgent, homepage; - static EditText agent,h; - static SharedPreferences.Editor edit; - static int agentPicker; + private static final String preferences = "settings"; + private static boolean allowLocation; + private static boolean deleteHistory; + private static int enableFlash; + private static boolean savePasswords; + private static boolean fullScreen; + private static boolean java; + private static boolean saveTabs; + private static String userAgent; + private static String homepage; + private static EditText agent; + private static EditText h; + private static SharedPreferences.Editor edit; + private static int agentPicker; @Override public void onCreate(Bundle savedInstanceState) { @@ -132,7 +138,7 @@ public class Settings extends Activity { java(); } - public void saveTabs(){ + void saveTabs(){ final CheckBox tab = (CheckBox)findViewById(R.id.saveTabs); if(saveTabs){ tab.setChecked(true); @@ -157,7 +163,7 @@ public class Settings extends Activity { }); } - public void getHome() { + void getHome() { h = (EditText) findViewById(R.id.homePage); TextView t = (TextView) findViewById(R.id.textView3); @@ -177,7 +183,7 @@ public class Settings extends Activity { String home; home = h.getText().toString(); if(!home.contains("about:blank")&&!home.contains("about:home")){ - if(home.contains("http://")==false&&home.contains("https://")==false){ + if(!home.contains("http://") && !home.contains("https://")){ home = "http://"+home; }} edit.putString("home", home); @@ -201,7 +207,7 @@ public class Settings extends Activity { || actionId == EditorInfo.IME_ACTION_SEND||actionId==EditorInfo.IME_ACTION_SEARCH||event.getAction()==KeyEvent.KEYCODE_ENTER) { String home = h.getText().toString(); if(!h.getText().toString().contains("about:blank")&&!h.getText().toString().contains("about:home")){ - if(h.getText().toString().contains("http://")==false&&h.getText().toString().contains("https://")==false){ + if(!h.getText().toString().contains("http://") && !h.getText().toString().contains("https://")){ home = "http://"+h.getText().toString(); }} edit.putString("home", home); @@ -245,7 +251,7 @@ public class Settings extends Activity { } - public void back() { + void back() { ImageView back = (ImageView) findViewById(R.id.back); back.setBackgroundResource(R.drawable.button); back.setOnClickListener(new OnClickListener() { @@ -260,7 +266,7 @@ public class Settings extends Activity { } String home = h.getText().toString(); if(!h.getText().toString().contains("about:blank")&&!h.getText().toString().contains("about:home")){ - if(h.getText().toString().contains("http://")==false&&h.getText().toString().contains("https://")==false){ + if(!h.getText().toString().contains("http://") && !h.getText().toString().contains("https://")){ home = "http://"+h.getText().toString(); }} edit.putString("home", home); @@ -270,7 +276,7 @@ public class Settings extends Activity { }); } - public void java(){ + void java(){ final CheckBox full = (CheckBox)findViewById(R.id.java); if(java){ full.setChecked(true); @@ -294,7 +300,7 @@ public class Settings extends Activity { }); } -public void full(){ +void full(){ final CheckBox full = (CheckBox)findViewById(R.id.fullScreen); if(fullScreen){ full.setChecked(true); @@ -318,7 +324,7 @@ public void full(){ }); } - public void flash() { + void flash() { final CheckBox fla = (CheckBox) findViewById(R.id.flash); if (enableFlash == 1||enableFlash==2) { fla.setChecked(true); @@ -384,9 +390,9 @@ public void full(){ }); } - public void location() { + void location() { CheckBox loc = (CheckBox) findViewById(R.id.location); - if (allowLocation == true) { + if (allowLocation) { loc.setChecked(true); } else { loc.setChecked(false); @@ -409,7 +415,7 @@ public void full(){ } - public void getText() { + void getText() { agent.setOnKeyListener(new OnKeyListener(){ @Override @@ -452,9 +458,9 @@ public void full(){ }); } - public void passwords() { + void passwords() { CheckBox pass = (CheckBox) findViewById(R.id.password); - if (savePasswords == true) { + if (savePasswords) { pass.setChecked(true); } else { pass.setChecked(false); @@ -476,9 +482,9 @@ public void full(){ }); } - public void clearHistory() { + void clearHistory() { CheckBox clearHist = (CheckBox) findViewById(R.id.historyClear); - if (deleteHistory == true) { + if (deleteHistory) { clearHist.setChecked(true); } else { clearHist.setChecked(false); @@ -511,7 +517,7 @@ public void full(){ } String home = h.getText().toString(); if(!h.getText().toString().contains("about:blank")&&!h.getText().toString().contains("about:home")){ - if(h.getText().toString().contains("http://")==false&&h.getText().toString().contains("https://")==false){ + if(!h.getText().toString().contains("http://") && !h.getText().toString().contains("https://")){ home = "http://"+h.getText().toString(); }} edit.putString("home", home); diff --git a/src/acr/browser/barebones/SpaceTokenizer.java b/src/acr/browser/barebones/SpaceTokenizer.java new file mode 100644 index 0000000..ba03e88 --- /dev/null +++ b/src/acr/browser/barebones/SpaceTokenizer.java @@ -0,0 +1,61 @@ +package acr.browser.barebones; + +import android.text.SpannableString; +import android.text.Spanned; +import android.text.TextUtils; +import android.widget.MultiAutoCompleteTextView.Tokenizer; + +public class SpaceTokenizer implements Tokenizer { + + @Override + public int findTokenEnd(CharSequence text, int cursor) { + int i = cursor; + int len = text.length(); + + while (i < len) { + if (text.charAt(i) == ' ') { + return i; + } else { + i++; + } + } + + return len; + } + + @Override + public int findTokenStart(CharSequence text, int cursor) { + int i = cursor; + + while (i > 0 && text.charAt(i - 1) != ' ') { + i--; + } + while (i < cursor && text.charAt(i) == ' ') { + i++; + } + + return i; + } + + @Override + public CharSequence terminateToken(CharSequence text) { + int i = text.length(); + + while (i > 0 && text.charAt(i - 1) == ' ') { + i--; + } + + if (i > 0 && text.charAt(i - 1) == ' ') { + return text; + } else { + if (text instanceof Spanned) { + SpannableString sp = new SpannableString(text + " "); + TextUtils.copySpansFrom((Spanned) text, 0, text.length(), + Object.class, sp, 0); + return sp; + } else { + return text + " "; + } + } + } +}