diff --git a/app/src/main/java/acr/browser/lightning/app/AppComponent.java b/app/src/main/java/acr/browser/lightning/app/AppComponent.java index 3683d5f..17f7c12 100644 --- a/app/src/main/java/acr/browser/lightning/app/AppComponent.java +++ b/app/src/main/java/acr/browser/lightning/app/AppComponent.java @@ -19,6 +19,7 @@ import acr.browser.lightning.download.LightningDownloadListener; import acr.browser.lightning.fragment.BookmarkSettingsFragment; import acr.browser.lightning.fragment.BookmarksFragment; import acr.browser.lightning.fragment.DebugSettingsFragment; +import acr.browser.lightning.fragment.GeneralSettingsFragment; import acr.browser.lightning.fragment.LightningPreferenceFragment; import acr.browser.lightning.fragment.PrivacySettingsFragment; import acr.browser.lightning.fragment.TabsFragment; @@ -88,4 +89,6 @@ public interface AppComponent { void inject(SearchEngineProvider searchEngineProvider); + void inject(GeneralSettingsFragment generalSettingsFragment); + } diff --git a/app/src/main/java/acr/browser/lightning/fragment/GeneralSettingsFragment.java b/app/src/main/java/acr/browser/lightning/fragment/GeneralSettingsFragment.java index b6627cb..77446c0 100644 --- a/app/src/main/java/acr/browser/lightning/fragment/GeneralSettingsFragment.java +++ b/app/src/main/java/acr/browser/lightning/fragment/GeneralSettingsFragment.java @@ -22,10 +22,18 @@ import android.view.View; import android.webkit.URLUtil; import android.widget.EditText; +import java.util.List; + +import javax.inject.Inject; + import acr.browser.lightning.BuildConfig; import acr.browser.lightning.R; +import acr.browser.lightning.app.BrowserApp; import acr.browser.lightning.constant.Constants; import acr.browser.lightning.dialog.BrowserDialog; +import acr.browser.lightning.search.SearchEngineProvider; +import acr.browser.lightning.search.engine.BaseSearchEngine; +import acr.browser.lightning.search.engine.CustomSearch; import acr.browser.lightning.utils.FileUtils; import acr.browser.lightning.utils.ProxyUtils; import acr.browser.lightning.utils.ThemeUtils; @@ -54,12 +62,16 @@ public class GeneralSettingsFragment extends LightningPreferenceFragment impleme private int mAgentChoice; private String mHomepage; + @Inject SearchEngineProvider mSearchEngineProvider; + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Load the preferences from an XML resource addPreferencesFromResource(R.xml.preference_general); + BrowserApp.getAppComponent().inject(this); + mActivity = getActivity(); initPrefs(); @@ -107,7 +119,8 @@ public class GeneralSettingsFragment extends LightningPreferenceFragment impleme mPreferenceManager.setFlashSupport(0); } - setSearchEngineSummary(mPreferenceManager.getSearchChoice()); + BaseSearchEngine currentSearchEngine = mSearchEngineProvider.getCurrentSearchEngine(); + setSearchEngineSummary(currentSearchEngine); downloadloc.setSummary(mDownloadLocation); @@ -175,18 +188,18 @@ public class GeneralSettingsFragment extends LightningPreferenceFragment impleme cbColorMode.setChecked(mPreferenceManager.getColorModeEnabled()); } - private void searchUrlPicker() { + private void showUrlPicker(@NonNull final CustomSearch customSearch) { BrowserDialog.showEditText(mActivity, - R.string.custom_url, - R.string.custom_url, + R.string.search_engine_custom, + R.string.search_engine_custom, mPreferenceManager.getSearchUrl(), R.string.action_ok, new BrowserDialog.EditorListener() { @Override public void onClick(String text) { mPreferenceManager.setSearchUrl(text); - searchengine.setSummary(mActivity.getString(R.string.custom_url) + ": " + text); + setSearchEngineSummary(customSearch); } }); @@ -299,13 +312,24 @@ public class GeneralSettingsFragment extends LightningPreferenceFragment impleme BrowserDialog.setDialogSize(mActivity, dialog); } + @NonNull + private CharSequence[] convertSearchEngineToString(@NonNull List searchEngines) { + CharSequence[] titles = new CharSequence[searchEngines.size()]; + + for (int n = 0; n < searchEngines.size(); n++) { + titles[n] = getString(searchEngines.get(n).getTitleRes()); + } + + return titles; + } + private void searchDialog() { AlertDialog.Builder picker = new AlertDialog.Builder(mActivity); picker.setTitle(getResources().getString(R.string.title_search_engine)); - CharSequence[] chars = {getResources().getString(R.string.custom_url), "Google", - "Ask", "Bing", "Yahoo", "StartPage", "StartPage (Mobile)", - "DuckDuckGo (Privacy)", "DuckDuckGo Lite (Privacy)", "Baidu (Chinese)", - "Yandex (Russian)"}; + + final List searchEngineList = mSearchEngineProvider.getAllSearchEngines(); + + CharSequence[] chars = convertSearchEngineToString(searchEngineList); int n = mPreferenceManager.getSearchChoice(); @@ -313,8 +337,19 @@ public class GeneralSettingsFragment extends LightningPreferenceFragment impleme @Override public void onClick(DialogInterface dialog, int which) { - mPreferenceManager.setSearchChoice(which); - setSearchEngineSummary(which); + BaseSearchEngine searchEngine = searchEngineList.get(which); + + // Store the search engine preference + int preferencesIndex = mSearchEngineProvider.mapSearchEngineToPreferenceIndex(searchEngine); + mPreferenceManager.setSearchChoice(preferencesIndex); + + if (searchEngine instanceof CustomSearch) { + // Show the URL picker + showUrlPicker((CustomSearch) searchEngine); + } else { + // Set the new search engine summary + setSearchEngineSummary(searchEngine); + } } }); picker.setPositiveButton(R.string.action_ok, null); @@ -549,40 +584,11 @@ public class GeneralSettingsFragment extends LightningPreferenceFragment impleme BrowserDialog.setDialogSize(mActivity, dialog); } - private void setSearchEngineSummary(int which) { - switch (which) { - case 0: - searchUrlPicker(); - break; - case 1: - searchengine.setSummary("Google"); - break; - case 2: - searchengine.setSummary("Ask"); - break; - case 3: - searchengine.setSummary("Bing"); - break; - case 4: - searchengine.setSummary("Yahoo"); - break; - case 5: - searchengine.setSummary("StartPage"); - break; - case 6: - searchengine.setSummary("StartPage (Mobile)"); - break; - case 7: - searchengine.setSummary("DuckDuckGo"); - break; - case 8: - searchengine.setSummary("DuckDuckGo Lite"); - break; - case 9: - searchengine.setSummary("Baidu"); - break; - case 10: - searchengine.setSummary("Yandex"); + private void setSearchEngineSummary(BaseSearchEngine baseSearchEngine) { + if (baseSearchEngine instanceof CustomSearch) { + searchengine.setSummary(mPreferenceManager.getSearchUrl()); + } else { + searchengine.setSummary(getString(baseSearchEngine.getTitleRes())); } } diff --git a/app/src/main/java/acr/browser/lightning/search/SearchEngineProvider.java b/app/src/main/java/acr/browser/lightning/search/SearchEngineProvider.java index 1e27a9f..bf9dd39 100644 --- a/app/src/main/java/acr/browser/lightning/search/SearchEngineProvider.java +++ b/app/src/main/java/acr/browser/lightning/search/SearchEngineProvider.java @@ -2,6 +2,9 @@ package acr.browser.lightning.search; import android.support.annotation.NonNull; +import java.util.ArrayList; +import java.util.List; + import javax.inject.Inject; import acr.browser.lightning.app.BrowserApp; @@ -61,4 +64,49 @@ public class SearchEngineProvider { } } + public int mapSearchEngineToPreferenceIndex(@NonNull BaseSearchEngine searchEngine) { + if (searchEngine instanceof CustomSearch) { + return 0; + } else if (searchEngine instanceof GoogleSearch) { + return 1; + } else if (searchEngine instanceof AskSearch) { + return 2; + } else if (searchEngine instanceof BingSearch) { + return 3; + } else if (searchEngine instanceof YahooSearch) { + return 4; + } else if (searchEngine instanceof StartPageSearch) { + return 5; + } else if (searchEngine instanceof StartPageMobileSearch) { + return 6; + } else if (searchEngine instanceof DuckSearch) { + return 7; + } else if (searchEngine instanceof DuckLiteSearch) { + return 8; + } else if (searchEngine instanceof BaiduSearch) { + return 9; + } else if (searchEngine instanceof YandexSearch) { + return 10; + } else { + throw new UnsupportedOperationException("Unknown search engine provided: " + searchEngine.getClass()); + } + } + + @NonNull + public List getAllSearchEngines() { + return new ArrayList(11) {{ + add(new CustomSearch(mPreferenceManager.getSearchUrl())); + add(new GoogleSearch()); + add(new AskSearch()); + add(new BingSearch()); + add(new YahooSearch()); + add(new StartPageSearch()); + add(new StartPageMobileSearch()); + add(new DuckSearch()); + add(new DuckLiteSearch()); + add(new BaiduSearch()); + add(new YandexSearch()); + }}; + } + } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/AskSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/AskSearch.java index 27aa160..a20c805 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/AskSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/AskSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -8,7 +9,7 @@ import acr.browser.lightning.constant.Constants; public class AskSearch extends BaseSearchEngine { public AskSearch() { - super("file:///android_asset/ask.png", Constants.ASK_SEARCH); + super("file:///android_asset/ask.png", Constants.ASK_SEARCH, R.string.search_engine_ask); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/BaiduSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/BaiduSearch.java index bc46e7d..2f4db83 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/BaiduSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/BaiduSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -10,7 +11,7 @@ import acr.browser.lightning.constant.Constants; public class BaiduSearch extends BaseSearchEngine { public BaiduSearch() { - super("file:///android_asset/baidu.png", Constants.BAIDU_SEARCH); + super("file:///android_asset/baidu.png", Constants.BAIDU_SEARCH, R.string.search_engine_baidu); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/BaseSearchEngine.java b/app/src/main/java/acr/browser/lightning/search/engine/BaseSearchEngine.java index 009d22a..2844ee9 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/BaseSearchEngine.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/BaseSearchEngine.java @@ -1,23 +1,36 @@ package acr.browser.lightning.search.engine; import android.support.annotation.NonNull; +import android.support.annotation.StringRes; import acr.browser.lightning.utils.Preconditions; /** * A class representative of a search engine. + *

+ * Contains three key pieces of information: + *

    + *
  • The icon shown for the search engine, should point to a local assets URL.
  • + *
  • The query URL for the search engine, the query will be appended to the end.
  • + *
  • The title string resource for the search engine.
  • + *
*/ public class BaseSearchEngine { @NonNull private final String mIconUrl; @NonNull private final String mQueryUrl; + @StringRes private final int mTitleRes; + + public BaseSearchEngine(@NonNull String iconUrl, + @NonNull String queryUrl, + @StringRes int titleRes) { - public BaseSearchEngine(@NonNull String iconUrl, @NonNull String queryUrl) { Preconditions.checkNonNull(iconUrl); Preconditions.checkNonNull(queryUrl); mIconUrl = iconUrl; mQueryUrl = queryUrl; + mTitleRes = titleRes; } @NonNull @@ -30,4 +43,9 @@ public class BaseSearchEngine { return mQueryUrl; } + @StringRes + public final int getTitleRes() { + return mTitleRes; + } + } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/BingSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/BingSearch.java index c3e95dc..3b2d17d 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/BingSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/BingSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -11,8 +12,7 @@ import acr.browser.lightning.constant.Constants; public class BingSearch extends BaseSearchEngine { public BingSearch() { - super("file:///android_asset/bing.png", Constants.BING_SEARCH); - // "http://upload.wikimedia.org/wikipedia/commons/thumb/b/b1/Bing_logo_%282013%29.svg/500px-Bing_logo_%282013%29.svg.png"; + super("file:///android_asset/bing.png", Constants.BING_SEARCH, R.string.search_engine_bing); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/CustomSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/CustomSearch.java index fb7a170..baf6e5c 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/CustomSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/CustomSearch.java @@ -2,13 +2,15 @@ package acr.browser.lightning.search.engine; import android.support.annotation.NonNull; +import acr.browser.lightning.R; + /** * A custom search engine. */ public class CustomSearch extends BaseSearchEngine { public CustomSearch(@NonNull String queryUrl) { - super("file:///android_asset/lightning.png", queryUrl); + super("file:///android_asset/lightning.png", queryUrl, R.string.search_engine_custom); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/DuckLiteSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/DuckLiteSearch.java index 81c2b31..a844031 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/DuckLiteSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/DuckLiteSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -10,7 +11,7 @@ import acr.browser.lightning.constant.Constants; public class DuckLiteSearch extends BaseSearchEngine { public DuckLiteSearch() { - super("file:///android_asset/duckduckgo.png", Constants.DUCK_LITE_SEARCH); + super("file:///android_asset/duckduckgo.png", Constants.DUCK_LITE_SEARCH, R.string.search_engine_duckduckgo_lite); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/DuckSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/DuckSearch.java index cf9d85d..dff9b7d 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/DuckSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/DuckSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -10,7 +11,7 @@ import acr.browser.lightning.constant.Constants; public class DuckSearch extends BaseSearchEngine { public DuckSearch() { - super("file:///android_asset/duckduckgo.png", Constants.DUCK_SEARCH); + super("file:///android_asset/duckduckgo.png", Constants.DUCK_SEARCH, R.string.search_engine_duckduckgo); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/GoogleSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/GoogleSearch.java index ef08792..efa6def 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/GoogleSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/GoogleSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -10,6 +11,6 @@ import acr.browser.lightning.constant.Constants; public class GoogleSearch extends BaseSearchEngine { public GoogleSearch() { - super("file:///android_asset/google.png", Constants.GOOGLE_SEARCH); + super("file:///android_asset/google.png", Constants.GOOGLE_SEARCH, R.string.search_engine_google); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/StartPageMobileSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/StartPageMobileSearch.java index e150874..a961339 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/StartPageMobileSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/StartPageMobileSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -8,7 +9,7 @@ import acr.browser.lightning.constant.Constants; public class StartPageMobileSearch extends BaseSearchEngine { public StartPageMobileSearch() { - super("file:///android_asset/startpage.png", Constants.STARTPAGE_MOBILE_SEARCH); + super("file:///android_asset/startpage.png", Constants.STARTPAGE_MOBILE_SEARCH, R.string.search_engine_startpage_mobile); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/StartPageSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/StartPageSearch.java index ef84bc1..bd48e50 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/StartPageSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/StartPageSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -8,7 +9,7 @@ import acr.browser.lightning.constant.Constants; public class StartPageSearch extends BaseSearchEngine { public StartPageSearch() { - super("file:///android_asset/startpage.png", Constants.STARTPAGE_SEARCH); + super("file:///android_asset/startpage.png", Constants.STARTPAGE_SEARCH, R.string.search_engine_startpage); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/YahooSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/YahooSearch.java index 8bfec27..74b1a81 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/YahooSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/YahooSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -11,7 +12,7 @@ import acr.browser.lightning.constant.Constants; public class YahooSearch extends BaseSearchEngine { public YahooSearch() { - super("file:///android_asset/yahoo.png", Constants.YAHOO_SEARCH); + super("file:///android_asset/yahoo.png", Constants.YAHOO_SEARCH, R.string.search_engine_yahoo); } } diff --git a/app/src/main/java/acr/browser/lightning/search/engine/YandexSearch.java b/app/src/main/java/acr/browser/lightning/search/engine/YandexSearch.java index 917fd63..ff746e7 100644 --- a/app/src/main/java/acr/browser/lightning/search/engine/YandexSearch.java +++ b/app/src/main/java/acr/browser/lightning/search/engine/YandexSearch.java @@ -1,5 +1,6 @@ package acr.browser.lightning.search.engine; +import acr.browser.lightning.R; import acr.browser.lightning.constant.Constants; /** @@ -11,7 +12,7 @@ import acr.browser.lightning.constant.Constants; public class YandexSearch extends BaseSearchEngine { public YandexSearch() { - super("file:///android_asset/yandex.png", Constants.YANDEX_SEARCH); + super("file:///android_asset/yandex.png", Constants.YANDEX_SEARCH, R.string.search_engine_yandex); } } diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 7cc7b91..01714c4 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -119,7 +119,7 @@ Maximale Reiteranzahl erreicht! Text in Zwischenablage kopiert Link in Zwischenablage kopiert - Benutzerdefinierte URL + Benutzerdefinierte URL Lokale Datei wurde beim Laden blockiert Open Source-Lizenzen Suche nach diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 42e1d34..aaa3dbe 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -103,7 +103,7 @@ Μέγιστος αριθμός καρτελών ξεπεράστηκε Το κείμενο αντιγράφτηκε Ο σύνδεσμος αντιγράφτηκε - Ειδικό URL + Ειδικό URL Τοπικά αρχεία εχουν μπλοκαριστεί απο την φόρτωση Άδειες ανοιχτού κώδικα Αναζήτηση για diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 581cf5c..5498448 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -103,7 +103,7 @@ Se ha alcanzado el máximo de pestañas El texto se ha copiado al portapapeles El enlace se ha copiado al portapapeles - Dirección personalizada + Dirección personalizada Se ha bloqueado la carga del archivo local Licencias de código abierto (open source) Buscar diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 2ca2c67..b48d517 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -125,7 +125,7 @@ Onglets maximuns atteint Texte copié dans le presse-papiers Adresse copiée dans le presse-papiers - Adresse personnalisée + Adresse personnalisée Le fichier local a été bloqué au chargement Licences open source Recherche diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index 49197e5..73e5026 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -124,7 +124,7 @@ Maximálisan megnyitható lapok száma elérve Szöveg másolva a vágólapra Link másolva a vágólapra - Egyéni URL + Egyéni URL Helyi fájl betöltése blokkolva Nyílt forráskódú licencek Keresés diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 453b540..5e5def1 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -124,7 +124,7 @@ Hai raggiunto il numero massimo di schede apribili Testo copiato negli appunti Link copiato negli appunti - URL personalizzato + URL personalizzato Caricamento file locale bloccato Licenze Open Source Cerca diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 7560a81..06edf96 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -110,7 +110,7 @@ これ以上タブは開けません テキストをクリップボードにコピーしました リンクをクリップボードにコピーしました - カスタム URL + カスタム URL ファイルを読み込めませんでした オープンソース ライセンス 検索 : diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index b1c7371..05193e1 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -102,7 +102,7 @@ 최대 탭 수에 도달했습니다 텍스트가 클립보드로 복사되었습니다 링크가 클립보드로 복사되었습니다 - 임의의 URL + 임의의 URL 로컬 파일 불러오기가 차단되었습니다 오픈 소스 라이센스 다음을 검색 diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 1220d29..ee20abd 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -124,7 +124,7 @@ Maximum aantal tabbladen bereikt Tekst gekopieerd naar klembord Link gekopieerd naar klembord - Aangepaste URL + Aangepaste URL Lokaal bestand werd geblokkeerd Open Source Licenses Zoek voor diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 16fc7bc..f97ab38 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -105,7 +105,7 @@ Maksymalna liczba otwartych kart osiągnięta Tekst został skopiowany do schowka Link został skopiowany do schowka - Własny URL + Własny URL Wczytywanie lokalnego pliku zostało zablokowane Licencje Open Source Wyszukaj diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index e19b5d9..0a4976b 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -118,7 +118,7 @@ Atingido número máximo de abas Texto copiado para a área de transferência Link copiado para a área de transferência - URL personalizado + URL personalizado Bloqueado o carregamento do arquivo local Licenças Open Source Pesquisar por diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index ba43569..42d1c35 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -123,7 +123,7 @@ Atingido o número máximo de separadores Texto copiado para a área de transferência Ligação copiada para a área de transferência - URL personalizado + URL personalizado Bloqueado o carregamento do ficheiro local Licenças Open Source Pesquisar por diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index c55010b..dc0d453 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -107,7 +107,7 @@ Достигнуто максимальное число вкладок Текст скопирован в буфер обмена Ссылка скопирована в буфер обмена - Пользовательский URL + Пользовательский URL Локальный файл недоступен для загрузки Open Source Licenses Искать diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index f4324a1..1206ed3 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -124,7 +124,7 @@ Досегнут макс. број језичака Текст копиран на клипборд Веза копирана на клипборд - Посебна адреса + Посебна адреса Учитавање локалног фајла је блокирано Лиценце отвореног кôда Тражи diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index a70a21b..d550bf1 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -108,7 +108,7 @@ Maksimum sekme sınırına ulaşıldı Yazı panoya kopyalandı Bağlantı panoya kopyalandı - Kişisel bağlantı + Kişisel bağlantı Yerel dosyanın yüklenmesi engellendi Açık Kaynak Lisansları Ara diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index a947e3f..943dc61 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -102,7 +102,7 @@ 达到最大标签数 文本已复制到剪贴板 链接已复制到剪贴板 - 自定义 URL + 自定义 URL 本地文件已被阻止加载 开源许可 搜索目标 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 3961f2a..5cb683c 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -102,7 +102,7 @@ 達到最大標籤數 文本已複製到剪貼板 鏈接已複製到剪貼板 - 自定義 URL + 自定義 URL 本地檔已被阻止加載 開源許可 搜索目標 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c890aa0..2e8b2a7 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -110,7 +110,6 @@ Max tabs reached Text copied to clipboard Link copied to clipboard - Custom URL Local file has been blocked from loading Open Source Licenses Search for @@ -253,4 +252,17 @@ Close browser Delete download Delete all downloads + + + Custom URL + Google + Ask + Bing + Yahoo + StartPage + StartPage Mobile + DuckDuckGo + DuckDuckGo Lite + Baidu + Yandex