Create an `Open with` menu item. https://redmine.stoutner.com/issues/362
authorSoren Stoutner <soren@stoutner.com>
Sat, 12 Jan 2019 20:22:34 +0000 (13:22 -0700)
committerSoren Stoutner <soren@stoutner.com>
Sat, 12 Jan 2019 20:22:34 +0000 (13:22 -0700)
27 files changed:
app/src/free/res/values-es/strings.xml
app/src/free/res/values-it/strings.xml
app/src/free/res/values-ru/strings.xml
app/src/main/assets/de/about_changelog_dark.html
app/src/main/assets/de/about_changelog_light.html
app/src/main/assets/en/about_changelog_dark.html
app/src/main/assets/en/about_changelog_light.html
app/src/main/assets/es/about_changelog_dark.html
app/src/main/assets/es/about_changelog_light.html
app/src/main/assets/it/about_changelog_dark.html
app/src/main/assets/it/about_changelog_light.html
app/src/main/assets/ru/about_changelog_dark.html
app/src/main/assets/ru/about_changelog_light.html
app/src/main/assets/tr/about_changelog_dark.html
app/src/main/assets/tr/about_changelog_light.html
app/src/main/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java
app/src/main/res/menu/webview_options_menu.xml
app/src/main/res/values-de/strings.xml
app/src/main/res/values-es/strings.xml
app/src/main/res/values-it/strings.xml
app/src/main/res/values-ru/strings.xml
app/src/main/res/values-tr/strings.xml
app/src/main/res/values/strings.xml
fastlane/metadata/android/es-ES/changelogs/39.txt
fastlane/metadata/android/it-IT/changelogs/39.txt
fastlane/metadata/android/ru-RU/changelogs/39.txt
fastlane/metadata/android/tr-TR/changelogs/39.txt

index e06c7ee..cf0a11f 100644 (file)
@@ -27,7 +27,7 @@
     <!-- Ad Consent. -->
     <string name="ad_consent_text">Navegador Privado Gratuíto muestra un anuncio de banner en la parte inferior de la pantalla.
         Estos anuncios proceden del conjunto de proveedores habituales de Google y están configurados para que no sean personalizados.
-        \n\nLa versión estándar de Navegador Privado no contiene anuncios.</string>
+        \n\nLa versión estándar de Navegador Privado no contiene anuncios de aplicaciones.</string>
     <string name="close_browser">Cerrar el navegador</string>
     <string name="accept_ads">Aceptar anuncios</string>
 </resources>
\ No newline at end of file
index 12cd684..3224de1 100644 (file)
@@ -27,7 +27,7 @@
     <!-- Ad Consent. -->
     <string name="ad_consent_text">Privacy Browser Free mostra un banner pubblicitario nella parte inferiore dello schermo.
         Questi annunci provengono dai provider normalmente utilizzati da Google e sono configurati in modo da non essere personalizzati.
-        \n\nLa versione standard di Privacy Browser non contiene annunci.</string>
+        \n\nLa versione standard di Privacy Browser non contiene annunci di applicazioni.</string>
     <string name="close_browser">Chiudi il Browser</string>
     <string name="accept_ads">Accetta gli Annunci</string>
 </resources>
\ No newline at end of file
index 5b87709..e9f49c0 100644 (file)
@@ -24,8 +24,8 @@
 
     <!-- Ad Consent. -->
     <string name="ad_consent_text">Privacy Browser Free отображает рекламный баннер в нижней части экрана.
-        Ð ÐµÐºÐ»Ð°Ð¼Ð° Ð¿Ð¾Ñ\81Ñ\82Ñ\83паеÑ\82 Ð¾Ñ\82 Ñ\88иÑ\80око Ð¸Ñ\81полÑ\8cзÑ\83емÑ\8bÑ\85 Google Ð¿Ð¾Ñ\81Ñ\82авÑ\89иков и настроена так, чтобы исключить персонализацию.
-        \n\nСтандартная версия Privacy Browser не содержит рекламы.</string>
+        Ð­Ñ\82а Ñ\80еклама Ð¿Ð¾Ñ\81Ñ\82Ñ\83паеÑ\82 Ð¾Ñ\82 Google и настроена так, чтобы исключить персонализацию.
+        \n\nСтандартная версия Privacy Browser не содержит рекламы приложений.</string>
     <string name="close_browser">Закрыть браузер</string>
     <string name="accept_ads">Разрешить рекламу</string>
 </resources>
\ No newline at end of file
index 329805c..4f12ed2 100644 (file)
@@ -29,7 +29,7 @@
 
     <body>
         <h3>2.15.1 (version code 39)</h3>
-        <p>27. Dezember 2018 - Mindest-API 19, Ziel-API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27. Dezember 2018</a> - Mindest-API 19, Ziel-API 28</p>
         <ul>
             <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
         </ul>
index 0c249e3..2604f4b 100644 (file)
@@ -29,7 +29,7 @@
 
     <body>
         <h3>2.15.1 (version code 39)</h3>
-        <p>27. Dezember 2018 - Mindest-API 19, Ziel-API 28</p>
+        <p><a href=https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f>27. Dezember 2018</a> - Mindest-API 19, Ziel-API 28</p>
         <ul>
             <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
         </ul>
index 712e415..1a80f5a 100644 (file)
@@ -25,7 +25,7 @@
 
     <body>
         <h3>2.15.1 (version code 39)</h3>
-        <p>27 December 2018 - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 December 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
         </ul>
index c09d04c..5cd2363 100644 (file)
@@ -25,7 +25,7 @@
 
     <body>
         <h3>2.15.1 (version code 39)</h3>
-        <p>27 December 2018 - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 December 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
         </ul>
index 43bb903..04005de 100644 (file)
@@ -27,9 +27,9 @@
 
     <body>
         <h3>2.15.1 (código de versión 39)</h3>
-        <p>27 de diciembre de 2018 - API mínimo 19, API dirigido 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 de diciembre de 2018</a> - API mínimo 19, API dirigido 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>Corregir un error que provocaba que <a href="https://redmine.stoutner.com/issues/364">algunos dispositivos se bloquearan</a> al abrir una actividad secundaria.</li>
         </ul>
 
         <h3>2.15 (código de versión 38)</h3>
index 410b5e4..7bf2e1c 100644 (file)
@@ -27,9 +27,9 @@
 
     <body>
         <h3>2.15.1 (código de versión 39)</h3>
-        <p>27 de diciembre de 2018 - API mínimo 19, API dirigido 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 de diciembre de 2018</a> - API mínimo 19, API dirigido 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>Corregir un error que provocaba que <a href="https://redmine.stoutner.com/issues/364">algunos dispositivos se bloquearan</a> al abrir una actividad secundaria.</li>
         </ul>
 
         <h3>2.15 (código de versión 38)</h3>
index 176d55e..e62dc45 100644 (file)
@@ -27,9 +27,9 @@
 
     <body>
         <h3>2.15.1 (versione codice 39)</h3>
-        <p>27 Dicembre 2018 - minima API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 Dicembre 2018</a> - minima API 19, target API 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>Correzione di un baco che provocava <a href="https://redmine.stoutner.com/issues/364">il crash di alcuni dispositivi</a> aprendo una attivita' secondaria.</li>
         </ul>
 
         <h3>2.15 (versione codice 38)</h3>
index f536e28..fea366f 100644 (file)
@@ -27,9 +27,9 @@
 
     <body>
         <h3>2.15.1 (versione codice 39)</h3>
-        <p>27 Dicembre 2018 - minima API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 Dicembre 2018</a> - minima API 19, target API 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>Correzione di un baco che provocava <a href="https://redmine.stoutner.com/issues/364">il crash di alcuni dispositivi</a> aprendo una attivita' secondaria.</li>
         </ul>
 
         <h3>2.15 (versione codice 38)</h3>
index 6ffd2dd..2d16376 100644 (file)
@@ -25,9 +25,9 @@
 
     <body>
         <h3>2.15.1 (код версии 39)</h3>
-        <p>27 декабря 2018 года - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 декабря 2018 года</a> - minimum API 19, target API 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>Исправлена ошибка, приводившая к сбою приложения <a href="https://redmine.stoutner.com/issues/364">на некоторых устройствах</a> при открытии дополнительной активности.</li>
         </ul>
 
         <h3>2.15 (код версии 38)</h3>
index 79bf09c..8ad5f09 100644 (file)
@@ -25,9 +25,9 @@
 
     <body>
         <h3>2.15.1 (код версии 39)</h3>
-        <p>27 декабря 2018 года - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 декабря 2018 года</a> - minimum API 19, target API 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>Исправлена ошибка, приводившая к сбою приложения <a href="https://redmine.stoutner.com/issues/364">на некоторых устройствах</a> при открытии дополнительной активности.</li>
         </ul>
 
         <h3>2.15 (код версии 38)</h3>
index fb6ce3a..21889da 100644 (file)
 
     <body>
         <h3>2.15.1 (version code 39)</h3>
-        <p>27 December 2018 - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 Aralık 2018</a> - minimum API 19, target API 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>İkinci bir işlem yaparken <a href="https://redmine.stoutner.com/issues/364">bazı cihazların çökmesine yol açan</a> problem düzeltildi.</li>
         </ul>
 
         <h3>2.15 (version code 38)</h3>
-        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=2250acd83180a9dcf1fbee80025a9d6aadbee510">24 December 2018</a> - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=2250acd83180a9dcf1fbee80025a9d6aadbee510">24 Aralık 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Domain <a href="https://redmine.stoutner.com/issues/160">ayarlarıyla kullanıcı aracısı değiştirme</a> ile ilgili sorun giderildi.</li>
             <li>Çekmece <a href="https://redmine.stoutner.com/issues/250">tasarımları çentiklerle düzeltildi</a>.</li>
@@ -52,7 +52,7 @@
         </ul>
 
         <h3>2.14 (version code 37)</h3>
-        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=57020e5c7cad1eec43c3627f136be1640d07d4aa">8 December 2018</a> - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=57020e5c7cad1eec43c3627f136be1640d07d4aa">8 Aralık 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Add <a href="https://redmine.stoutner.com/issues/338">encrypted import and export</a> options.</li>
             <li>Fix a bug when <a href="https://redmine.stoutner.com/issues/350">importing databases under certain circumstances</a>.</li>
         </ul>
 
         <h3>1.14 (version code 16)</h3>
-        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=6d3d23ab62cfdd6ef142dbdb764a6bac8fc38ce1">26 December 2016</a> - minimum API 19, target API 25</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=6d3d23ab62cfdd6ef142dbdb764a6bac8fc38ce1">26 Aralık 2016</a> - minimum API 19, target API 25</p>
         <ul>
             <li>Implement <a href="https://redmine.stoutner.com/issues/31">ad blocking</a>.</li>
             <li>Change the default user agent to PrivacyBrowser/1.0 <a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=7f0fda47dbd040262a8149e1e6d27f7abe9043ea">for real this time</a>.</li>
index 5eeb5a0..619984c 100644 (file)
 
     <body>
         <h3>2.15.1 (version code 39)</h3>
-        <p>27 December 2018 - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=df8b520d10c3fa31b603ff7c50670ab1f0728d2f">27 Aralık 2018</a> - minimum API 19, target API 28</p>
         <ul>
-            <li>Fix a bug that caused <a href="https://redmine.stoutner.com/issues/364">some devices to crash</a> when opening a secondary activity.</li>
+            <li>İkinci bir işlem yaparken <a href="https://redmine.stoutner.com/issues/364">bazı cihazların çökmesine yol açan</a> problem düzeltildi.</li>
         </ul>
 
         <h3>2.15 (version code 38)</h3>
-        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=2250acd83180a9dcf1fbee80025a9d6aadbee510">24 December 2018</a> - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=2250acd83180a9dcf1fbee80025a9d6aadbee510">24 Aralık 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Domain <a href="https://redmine.stoutner.com/issues/160">ayarlarıyla kullanıcı aracısı değiştirme</a> ile ilgili sorun giderildi.</li>
             <li>Çekmece <a href="https://redmine.stoutner.com/issues/250">tasarımları çentiklerle düzeltildi</a>.</li>
@@ -52,7 +52,7 @@
         </ul>
 
         <h3>2.14 (version code 37)</h3>
-        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=57020e5c7cad1eec43c3627f136be1640d07d4aa">8 December 2018</a> - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=57020e5c7cad1eec43c3627f136be1640d07d4aa">8 Aralık 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Add <a href="https://redmine.stoutner.com/issues/338">encrypted import and export</a> options.</li>
             <li>Fix a bug when <a href="https://redmine.stoutner.com/issues/350">importing databases under certain circumstances</a>.</li>
         </ul>
 
         <h3>1.14 (version code 16)</h3>
-        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=6d3d23ab62cfdd6ef142dbdb764a6bac8fc38ce1">26 December 2016</a> - minimum API 19, target API 25</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=6d3d23ab62cfdd6ef142dbdb764a6bac8fc38ce1">26 Aralık 2016</a> - minimum API 19, target API 25</p>
         <ul>
             <li>Implement <a href="https://redmine.stoutner.com/issues/31">ad blocking</a>.</li>
             <li>Change the default user agent to PrivacyBrowser/1.0 <a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=7f0fda47dbd040262a8149e1e6d27f7abe9043ea">for real this time</a>.</li>
index 0a61ce0..411972b 100644 (file)
@@ -992,7 +992,7 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
 
                                 // Setup a runnable to display `mainWebView` after a delay to allow the CSS to be applied.
                                 Runnable displayWebViewRunnable = () -> {
-                                    // Only display `mainWebView` if the progress bar is one.  This prevents the display of the `WebView` while it is still loading.
+                                    // Only display `mainWebView` if the progress bar is gone.  This prevents the display of the `WebView` while it is still loading.
                                     if (progressBar.getVisibility() == View.GONE) {
                                         mainWebView.setVisibility(View.VISIBLE);
                                     }
@@ -1611,7 +1611,7 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
 
                 // Check to see if Privacy Browser is waiting on Orbot.
                 if (!waitingForOrbot) {  // We are not waiting on Orbot, so we need to process the URL.
-                    // We need to update `formattedUrlString` at the beginning of the load, so that if the user toggles JavaScript during the load the new website is reloaded.
+                    // The formatted URL string must be updated at the beginning of the load, so that if the user toggles JavaScript during the load the new website is reloaded.
                     formattedUrlString = url;
 
                     // Display the formatted URL text.
@@ -1725,10 +1725,10 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
                         // Apply the domain settings.  This clears any settings from the previous domain.
                         applyDomainSettings(formattedUrlString, true, false);
                     } else {  // `WebView` has loaded a webpage.
-                        // Set `formattedUrlString`.
-                        formattedUrlString = url;
+                        // Set the formatted URL string.  Getting the URL from the WebView instead of using the one provided by `onPageFinished` makes websites like YouTube function correctly.
+                        formattedUrlString = mainWebView.getUrl();
 
-                        // Only update `urlTextBox` if the user is not typing in it.
+                        // Only update the URL text box if the user is not typing in it.
                         if (!urlTextBox.hasFocus()) {
                             // Display the formatted URL text.
                             urlTextBox.setText(formattedUrlString);
@@ -2881,7 +2881,33 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
                 shareIntent.setType("text/plain");
 
                 // Make it so.
-                startActivity(Intent.createChooser(shareIntent, "Share URL"));
+                startActivity(Intent.createChooser(shareIntent, getString(R.string.share_url)));
+                return true;
+
+            case R.id.open_with:
+                // Convert the URL to an URI.
+                Uri shareUri = Uri.parse(formattedUrlString);
+
+                // Get the host.
+                String shareHost = shareUri.getHost();
+
+                // Create the open with intent with `ACTION_VIEW`.
+                Intent openWithIntent = new Intent(Intent.ACTION_VIEW);
+
+                // Set the data based on the host.
+                if ((shareHost != null) && (shareHost.endsWith("youtube.com") || shareHost.equals("play.google.com") || shareHost.equals("f-droid.org"))) {  // Handle App URLs.
+                    // Set the URI but not the MIME type.  This should open all available apps.
+                    openWithIntent.setData(shareUri);
+                } else {  // Handle a generic URL.
+                    // Set the URI and the MIME type.  `"text/html"` should load browser options.
+                    openWithIntent.setDataAndType(shareUri, "text/html");
+                }
+
+                // Flag the intent to open in a new task.
+                openWithIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+
+                // Show the chooser.
+                startActivity(Intent.createChooser(openWithIntent, getString(R.string.open_with)));
                 return true;
 
             case R.id.find_on_page:
@@ -4647,7 +4673,7 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
         // Create a download intent.  Not specifying the action type will display the maximum number of options.
         Intent downloadIntent = new Intent();
 
-        // Set the URI and the mime type.  `"*/*"` will display the maximum number of options.
+        // Set the URI and the MIME type.  Specifying `text/html` displays a good number of options.
         downloadIntent.setDataAndType(Uri.parse(url), "text/html");
 
         // Flag the intent to open in a new task.
index 4c1d9c2..b7760ed 100644 (file)
         android:orderInCategory="1100"
         app:showAsAction="never" />
 
+    <item
+        android:id="@+id/open_with"
+        android:title="@string/open_with"
+        android:orderInCategory="1200"
+        app:showAsAction="never" />
+
     <item
         android:id="@+id/find_on_page"
         android:title="@string/find_on_page"
-        android:orderInCategory="1200"
+        android:orderInCategory="1300"
         app:showAsAction="never|collapseActionView" />
 
     <item
         android:id="@+id/add_to_homescreen"
         android:title="@string/add_to_home_screen"
-        android:orderInCategory="1300"
+        android:orderInCategory="1400"
         app:showAsAction="never" />
 
     <item
         android:id="@+id/refresh"
         android:title="@string/refresh"
-        android:orderInCategory="1400"
+        android:orderInCategory="1500"
         app:showAsAction="never" />
 
     <item
         android:id="@+id/ad_consent"
         android:title="@string/ad_consent"
-        android:orderInCategory="1500"
+        android:orderInCategory="1600"
         app:showAsAction="never" />
 </menu>
\ No newline at end of file
index 993e1d4..fa14fc3 100644 (file)
@@ -26,7 +26,7 @@
     <!-- Activities. -->
     <string name="privacy_browser">Privacy Browser</string>
     <string name="privacy_browser_settings">Privacy Browser Einstellungen</string>
-    <!-- For translations, `android_asset_path` should be the localization abbreviation.  For example, Spanish is `es`.  This should not be translated unless the Guide and About sections are localized. -->
+    <!-- For translations, `android_asset_path` should be the localization abbreviation.  This should not be translated unless the Guide and About sections are localized. -->
     <string name="android_asset_path">de</string>
 
     <!-- MainWebView. -->
index 83675a9..f8b816d 100644 (file)
@@ -24,7 +24,7 @@
     <!-- Activities. -->
     <string name="privacy_browser">Navegador Privado</string>
     <string name="privacy_browser_settings">Configuración de Navegador Privado</string>
-    <!-- For translations, `android_asset_path` should be the localization abbreviation.  For example, Spanish is `es`.  This should not be translated unless the Guide and About sections are localized. -->
+    <!-- For translations, `android_asset_path` should be the localization abbreviation.  This should not be translated unless the Guide and About sections are localized. -->
     <string name="android_asset_path">es</string>
 
     <!-- MainWebViewActivity. -->
index faa7f34..2b14cc0 100644 (file)
@@ -24,7 +24,7 @@
     <!-- Activities. -->
     <string name="privacy_browser">Privacy Browser</string>
     <string name="privacy_browser_settings">Impostazioni</string>
-    <!-- For translations, `android_asset_path` should be the localization abbreviation.  For example, Spanish is `es`.  This should not be translated unless the Guide and About sections are localized. -->
+    <!-- For translations, `android_asset_path` should be the localization abbreviation.  This should not be translated unless the Guide and About sections are localized. -->
     <string name="android_asset_path">it</string>
 
     <!-- MainWebView. -->
index 2d09493..fcc3280 100644 (file)
   You should have received a copy of the GNU General Public License
   along with Privacy Browser.  If not, see <http://www.gnu.org/licenses/>. -->
 
-<!-- `tools:ignore="MissingTranslation"` allows release APKs to be built if translation strings are missing.  The missing strings will fall back to English. -->
-<resources
-    xmlns:tools="http://schemas.android.com/tools"
-    tools:ignore="MissingTranslation" >
-
+<resources>
     <!-- Activities. -->
     <string name="privacy_browser">Privacy Browser</string>
     <string name="privacy_browser_settings">Настройки Privacy Browser</string>
-    <!-- For translations, `android_asset_path` should be the localization abbreviation.  For example, Spanish is `es`.  This should not be translated unless the Guide and About sections are localized. -->
+    <!-- For translations, `android_asset_path` should be the localization abbreviation.  This should not be translated unless the Guide and About sections are localized. -->
     <string name="android_asset_path">ru</string> -->
 
     <!-- MainWebView. -->
index 39e826b..c4da7c6 100644 (file)
   You should have received a copy of the GNU General Public License
   along with Privacy Browser.  If not, see <http://www.gnu.org/licenses/>. -->
 
-<!-- `tools:ignore="MissingTranslation"` allows release APKs to be built if translation strings are missing.  The missing strings will fall back to English. -->
-<resources
-    xmlns:tools="http://schemas.android.com/tools"
-    tools:ignore="MissingTranslation" >
-
+<resources>
     <!-- Activities. -->
     <string name="privacy_browser">Privacy Browser</string>
     <string name="privacy_browser_settings">Privacy Browser Ayarları</string>
index a9006c8..4d7f2a1 100644 (file)
         <string name="display_images">Display Images</string>
         <string name="view_source">View Source</string>
     <string name="share">Share</string>
+        <string name="share_url">Share URL</string>
     <string name="find_on_page">Find on Page</string>
     <string name="print">Print</string>
         <string name="privacy_browser_web_page">Privacy Browser Web Page</string>
index 8c94244..0c88a6c 100644 (file)
@@ -1 +1 @@
-• Fix a bug that caused some devices to crash when opening a secondary activity.
\ No newline at end of file
+• Corregir un error que provocaba que algunos dispositivos se bloquearan al abrir una actividad secundaria.
\ No newline at end of file
index 8c94244..f6ee494 100644 (file)
@@ -1 +1 @@
-• Fix a bug that caused some devices to crash when opening a secondary activity.
\ No newline at end of file
+• Correzione di un baco che provocava il crash di alcuni dispositivi aprendo una attivita' secondaria.
\ No newline at end of file
index 8c94244..456b311 100644 (file)
@@ -1 +1 @@
-• Fix a bug that caused some devices to crash when opening a secondary activity.
\ No newline at end of file
+• Исправлена ошибка, приводившая к сбою приложения на некоторых устройствах при открытии дополнительной активности.
\ No newline at end of file
index 8c94244..7c517e8 100644 (file)
@@ -1 +1 @@
-• Fix a bug that caused some devices to crash when opening a secondary activity.
\ No newline at end of file
+• İkinci bir işlem yaparken bazı cihazların çökmesine yol açan problem düzeltildi.
\ No newline at end of file