diff --git a/res/layout/advanced_settings.xml b/res/layout/advanced_settings.xml index e040133..86908b1 100644 --- a/res/layout/advanced_settings.xml +++ b/res/layout/advanced_settings.xml @@ -13,11 +13,11 @@ android:id="@+id/r1" android:layout_width="match_parent" android:layout_height="wrap_content" + android:background="?android:attr/listChoiceBackgroundIndicator" android:minHeight="60dp" - android:paddingTop="10dp" android:paddingBottom="10dp" - android:background="?android:attr/listChoiceBackgroundIndicator" - android:paddingRight="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > - + + android:paddingRight="10dp" + android:paddingTop="10dp" > - + + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + android:paddingRight="10dp" + android:paddingTop="10dp" > + + + + + + + + + + + + + + + android:paddingTop="10dp" > + android:paddingTop="10dp" > + android:paddingTop="10dp" > + android:paddingTop="10dp" > + android:paddingTop="10dp" > - + \ No newline at end of file diff --git a/res/values/strings.xml b/res/values/strings.xml index bb95ff1..2148b38 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -178,4 +178,5 @@ Grayscale Inverted Grayscale Normal + Sync history with Google diff --git a/src/acr/browser/lightning/AdvancedSettingsActivity.java b/src/acr/browser/lightning/AdvancedSettingsActivity.java index f2a1aa7..9bd4a50 100644 --- a/src/acr/browser/lightning/AdvancedSettingsActivity.java +++ b/src/acr/browser/lightning/AdvancedSettingsActivity.java @@ -29,18 +29,12 @@ public class AdvancedSettingsActivity extends Activity { // mPreferences variables private static final int API = android.os.Build.VERSION.SDK_INT; - private SharedPreferences mPreferences; - private SharedPreferences.Editor mEditPrefs; - private CheckBox cb1, cb2, cb3, cb4, cb5, cb6, cb7, cb8, cb9, cb10, cb11, cbIncognitoCookies, cbSearchSuggestions, cbClearHistoryExit, cbClearCookiesExit; - private Context mContext; - private boolean mSystemBrowser; - private Handler messageHandler; @Override @@ -88,7 +82,7 @@ public class AdvancedSettingsActivity extends Activity { r5 = (RelativeLayout) findViewById(R.id.r5); r6 = (RelativeLayout) findViewById(R.id.r6); r7 = (RelativeLayout) findViewById(R.id.r7); - r8 = (RelativeLayout) findViewById(R.id.r8); + r8 = (RelativeLayout) findViewById(R.id.rClearHistory); r9 = (RelativeLayout) findViewById(R.id.r9); r10 = (RelativeLayout) findViewById(R.id.r10); r11 = (RelativeLayout) findViewById(R.id.r11); @@ -178,11 +172,38 @@ public class AdvancedSettingsActivity extends Activity { cbSearchSuggestions(cbSearchSuggestions); TextView importBookmarks = (TextView) findViewById(R.id.isImportAvailable); + TextView syncHistory = (TextView) findViewById(R.id.isBrowserAvailable); + + RelativeLayout layoutSyncHistory = (RelativeLayout) findViewById(R.id.rBrowserHistory); + final CheckBox cbSyncHistory = (CheckBox) findViewById(R.id.cbBrowserHistory); + layoutSyncHistory.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + cbSyncHistory.setChecked(!cbSyncHistory.isChecked()); + } + + }); + cbSyncHistory.setOnCheckedChangeListener(new OnCheckedChangeListener() { + + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + mEditPrefs.putBoolean(PreferenceConstants.SYNC_HISTORY, isChecked).apply(); + } + + }); if (!mSystemBrowser) { + cbSyncHistory.setChecked(false); + cbSyncHistory.setEnabled(false); importBookmarks.setText(getResources().getString(R.string.stock_browser_unavailable)); + syncHistory.setText(getResources().getString(R.string.stock_browser_unavailable)); } else { + cbSyncHistory.setEnabled(true); + cbSyncHistory.setChecked(mPreferences + .getBoolean(PreferenceConstants.SYNC_HISTORY, true)); importBookmarks.setText(getResources().getString(R.string.stock_browser_available)); + syncHistory.setText(getResources().getString(R.string.stock_browser_available)); } messageHandler = new MessageHandler(mContext); diff --git a/src/acr/browser/lightning/BrowserActivity.java b/src/acr/browser/lightning/BrowserActivity.java index da26e3a..c2b8ff2 100644 --- a/src/acr/browser/lightning/BrowserActivity.java +++ b/src/acr/browser/lightning/BrowserActivity.java @@ -394,7 +394,7 @@ public class BrowserActivity extends Activity implements BrowserController { } }); - + mNewTab.setOnLongClickListener(new OnLongClickListener() { @Override @@ -1734,7 +1734,8 @@ public class BrowserActivity extends Activity implements BrowserController { Runnable update = new Runnable() { @Override public void run() { - if (isSystemBrowserAvailable()) { + if (isSystemBrowserAvailable() + && mPreferences.getBoolean(PreferenceConstants.SYNC_HISTORY, true)) { try { Browser.updateVisitedHistory(getContentResolver(), url, true); } catch (NullPointerException ignored) { @@ -1775,26 +1776,15 @@ public class BrowserActivity extends Activity implements BrowserController { } } }; - if (url != null) { - if (!url.startsWith(Constants.FILE)) { - new Thread(update).start(); - - } + if (url != null && !url.startsWith(Constants.FILE)) { + new Thread(update).start(); } } - /** - * 1, 2, 3, testing... is there a system browser that has some nice - * bookmarks for us? - */ public boolean isSystemBrowserAvailable() { return mSystemBrowser; } - /** - * 1, 2, 3, testing... is there a system browser that has some nice - * bookmarks for us? helper method for isSystemBrowserAvailable - */ public boolean getSystemBrowser() { Cursor c = null; String[] columns = new String[] { "url", "title" }; diff --git a/src/acr/browser/lightning/PreferenceConstants.java b/src/acr/browser/lightning/PreferenceConstants.java index cecfba7..439f1f7 100644 --- a/src/acr/browser/lightning/PreferenceConstants.java +++ b/src/acr/browser/lightning/PreferenceConstants.java @@ -39,7 +39,8 @@ public final class PreferenceConstants { public static final String CLEAR_COOKIES_EXIT = "clearCookiesExit"; public static final String SAVE_URL = "saveUrl"; public static final String RENDERING_MODE = "renderMode"; - + public static final String SYNC_HISTORY = "syncHistory"; + public static final String USE_PROXY = "useProxy"; public static final String USE_PROXY_HOST = "useProxyHost"; public static final String USE_PROXY_PORT = "useProxyPort";