Scroll to the beginning of the URL text box when it loses focus. https://redmine...
authorSoren Stoutner <soren@stoutner.com>
Tue, 30 Oct 2018 21:11:54 +0000 (14:11 -0700)
committerSoren Stoutner <soren@stoutner.com>
Tue, 30 Oct 2018 21:11:54 +0000 (14:11 -0700)
15 files changed:
.idea/dictionaries/soren.xml
app/src/free/java/com/stoutner/privacybrowser/helpers/AdHelper.java
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/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java
app/src/main/res/layout/domain_settings_fragment.xml
app/src/main/res/layout/url_app_bar.xml

index 3a9ec86..55f7313 100644 (file)
@@ -14,6 +14,7 @@
       <w>apng</w>
       <w>appbarlayout</w>
       <w>aren</w>
+      <w>autofill</w>
       <w>autoselected</w>
       <w>bebdb</w>
       <w>becerra</w>
index 2411207..d1638c7 100644 (file)
@@ -111,6 +111,8 @@ public class AdHelper {
 
         // Request a new ad.
         AdRequest adRequest = new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, adSettingsBundle).build();
+        // Pixel test ads.
+        // AdRequest adRequest = new AdRequest.Builder().addTestDevice("20DAEEF7662E2238C99A509BE5D78A26").addNetworkExtrasBundle(AdMobAdapter.class, adSettingsBundle).build();
         // Pixel 2 XL test ads.
         // AdRequest adRequest = new AdRequest.Builder().addTestDevice("137D42984218CEECDFD11927BB7D6416").addNetworkExtrasBundle(AdMobAdapter.class, adSettingsBundle).build();
         adView.loadAd(adRequest);
index 65c1d19..f850d89 100644 (file)
@@ -29,7 +29,7 @@
 
     <body>
         <h3>2.13 (version code 36)</h3>
-        <p>29. Oktober 2018 - Mindest-API 19, Ziel-API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29. Oktober 2018</a> - Mindest-API 19, Ziel-API 28</p>
         <ul>
             <li>Add <a href="https://redmine.stoutner.com/issues/23">importing and exporting</a> of bookmarks and settings (includes the <a href="https://redmine.stoutner.com/issues/280">read storage permission</a>).</li>
             <li>Switch <a href="https://redmine.stoutner.com/issues/165">default loading of URLs</a> from HTTP to HTTPS.</li>
index 279efa1..da222af 100644 (file)
@@ -29,7 +29,7 @@
 
     <body>
         <h3>2.13 (version code 36)</h3>
-        <p>29. Oktober 2018 - Mindest-API 19, Ziel-API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29. Oktober 2018</a> - Mindest-API 19, Ziel-API 28</p>
         <ul>
             <li>Add <a href="https://redmine.stoutner.com/issues/23">importing and exporting</a> of bookmarks and settings (includes the <a href="https://redmine.stoutner.com/issues/280">read storage permission</a>).</li>
             <li>Switch <a href="https://redmine.stoutner.com/issues/165">default loading of URLs</a> from HTTP to HTTPS.</li>
index 803c5c3..1d61841 100644 (file)
@@ -25,7 +25,7 @@
 
     <body>
         <h3>2.13 (version code 36)</h3>
-        <p>29 October 2018 - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 October 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Add <a href="https://redmine.stoutner.com/issues/23">importing and exporting</a> of bookmarks and settings (includes the <a href="https://redmine.stoutner.com/issues/280">read storage permission</a>).</li>
             <li>Switch <a href="https://redmine.stoutner.com/issues/165">default loading of URLs</a> from HTTP to HTTPS.</li>
index 022786e..938b50a 100644 (file)
@@ -25,7 +25,7 @@
 
     <body>
         <h3>2.13 (version code 36)</h3>
-        <p>29 October 2018 - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 October 2018</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Add <a href="https://redmine.stoutner.com/issues/23">importing and exporting</a> of bookmarks and settings (includes the <a href="https://redmine.stoutner.com/issues/280">read storage permission</a>).</li>
             <li>Switch <a href="https://redmine.stoutner.com/issues/165">default loading of URLs</a> from HTTP to HTTPS.</li>
index 28d8824..92a779c 100644 (file)
@@ -27,7 +27,7 @@
 
     <body>
         <h3>2.13 (código de versión 36)</h3>
-        <p>29 de octubre de 2018 - API mínimo 19, API dirigido 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 de octubre de 2018</a> - API mínimo 19, API dirigido 28</p>
         <ul>
             <li>Añadir la <a href="https://redmine.stoutner.com/issues/23">importación y exportación</a> de favoritos y ajustes (incluye el <a href="https://redmine.stoutner.com/issues/280">permiso de almacenamiento de lectura</a>).</li>
             <li>Cambiar la <a href="https://redmine.stoutner.com/issues/165">carga predeterminada de URLs</a> de HTTP a HTTPS.</li>
index 1cbe206..806f5af 100644 (file)
@@ -27,7 +27,7 @@
 
     <body>
         <h3>2.13 (código de versión 36)</h3>
-        <p>29 de octubre de 2018 - API mínimo 19, API dirigido 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 de octubre de 2018</a> - API mínimo 19, API dirigido 28</p>
         <ul>
             <li>Añadir la <a href="https://redmine.stoutner.com/issues/23">importación y exportación</a> de favoritos y ajustes (incluye el <a href="https://redmine.stoutner.com/issues/280">permiso de almacenamiento de lectura</a>).</li>
             <li>Cambiar la <a href="https://redmine.stoutner.com/issues/165">carga predeterminada de URLs</a> de HTTP a HTTPS.</li>
index 25ff991..c388b8d 100644 (file)
@@ -27,7 +27,7 @@
 
     <body>
         <h3>2.13 (versione codice 36)</h3>
-        <p>29 Ottobre 2018 - minima API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 Ottobre 2018</a> - minima API 19, target API 28</p>
         <ul>
             <li>Aggiunta la funzionalità di <a href="https://redmine.stoutner.com/issues/23">importazione e esportazione</a> dei segnalibri e delle impostazioni (include il <a href="https://redmine.stoutner.com/issues/280">permesso di lettura della memoria</a>).</li>
             <li>Modificato il <a href="https://redmine.stoutner.com/issues/165">caricamento di default delle URL</a> da HTTP a HTTPS.</li>
index d597981..46c3ff9 100644 (file)
@@ -27,7 +27,7 @@
 
     <body>
         <h3>2.13 (versione codice 36)</h3>
-        <p>29 Ottobre 2018 - minima API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 Ottobre 2018</a> - minima API 19, target API 28</p>
         <ul>
             <li>Aggiunta la funzionalità di <a href="https://redmine.stoutner.com/issues/23">importazione e esportazione</a> dei segnalibri e delle impostazioni (include il <a href="https://redmine.stoutner.com/issues/280">permesso di lettura della memoria</a>).</li>
             <li>Modificato il <a href="https://redmine.stoutner.com/issues/165">caricamento di default delle URL</a> da HTTP a HTTPS.</li>
index 366a8af..3985986 100644 (file)
@@ -25,7 +25,7 @@
 
     <body>
         <h3>2.13 (код версии 36)</h3>
-        <p>29 октября 2018 года - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 октября 2018 года</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Добавлен <a href="https://redmine.stoutner.com/issues/23">импорт и экспорт</a> закладок и настроек (включая <a href="https://redmine.stoutner.com/issues/280">разрешение на чтение хранилища</a>).</li>
             <li>Загрузка <a href="https://redmine.stoutner.com/issues/165">URL-адресов по умолчанию переключена</a> с HTTP на HTTPS.</li>
index ac3bfd5..ae86af3 100644 (file)
@@ -25,7 +25,7 @@
 
     <body>
         <h3>2.13 (код версии 36)</h3>
-        <p>29 октября 2018 года - minimum API 19, target API 28</p>
+        <p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=c44cc1c5af504b415b86654d7d03a3e78a5adf1b">29 октября 2018 года</a> - minimum API 19, target API 28</p>
         <ul>
             <li>Добавлен <a href="https://redmine.stoutner.com/issues/23">импорт и экспорт</a> закладок и настроек (включая <a href="https://redmine.stoutner.com/issues/280">разрешение на чтение хранилища</a>).</li>
             <li>Загрузка <a href="https://redmine.stoutner.com/issues/165">URL-адресов по умолчанию переключена</a> с HTTP на HTTPS.</li>
index 9bd7589..977accd 100644 (file)
@@ -564,12 +564,15 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
 
         // Remove the formatting from `urlTextBar` when the user is editing the text.
         urlTextBox.setOnFocusChangeListener((View v, boolean hasFocus) -> {
-            if (hasFocus) {  // The user is editing `urlTextBox`.
+            if (hasFocus) {  // The user is editing the URL text box.
                 // Remove the highlighting.
                 urlTextBox.getText().removeSpan(redColorSpan);
                 urlTextBox.getText().removeSpan(initialGrayColorSpan);
                 urlTextBox.getText().removeSpan(finalGrayColorSpan);
-            } else {  // The user has stopped editing `urlTextBox`.
+            } else {  // The user has stopped editing the URL text box.
+                // Move to the beginning of the string.
+                urlTextBox.setSelection(0);
+
                 // Reapply the highlighting.
                 highlightUrlText();
             }
index bcf4d03..d71868b 100644 (file)
                 <Spinner
                     android:id="@+id/domain_settings_user_agent_spinner"
                     android:layout_height="wrap_content"
-                    android:layout_width="match_parent"
-                    android:labelFor="@+id/domain_settings_custom_user_agent_edittext" />
+                    android:layout_width="match_parent" />
             </LinearLayout>
 
             <TextView
                 android:layout_marginEnd="36dp"
                 android:textSize="13sp" />
 
+            <!-- `android:autofillHints` only applies to API >= 26.  `tools:ignore="UnusedAttribute"` removes the lint warning. -->
             <EditText
-                android:id="@id/domain_settings_custom_user_agent_edittext"
+                android:id="@+id/domain_settings_custom_user_agent_edittext"
                 android:layout_height="wrap_content"
                 android:layout_width="match_parent"
                 android:layout_marginStart="40dp"
                 android:layout_marginEnd="60dp"
                 android:inputType="textUri"
-                android:hint="@string/custom_user_agent"/>
+                android:hint="@string/custom_user_agent"
+                android:autofillHints=""
+                tools:ignore="UnusedAttribute" />
         </LinearLayout>
 
         <!-- Font Size. -->
 
                     <TextView
                         android:id="@+id/saved_ssl_certificate_issued_by_cname"
-
                         android:layout_height="wrap_content"
                         android:layout_width="match_parent" />
 
index a7397c3..ef93af1 100644 (file)
@@ -38,7 +38,8 @@
         android:onClick="viewSslCertificate"
         android:contentDescription="@string/favorite_icon" />
 
-    <!-- `android:imeOptions="actionGo"` sets the keyboard to have a go key instead of a new line key.  `android:inputType="textUri"` disables spell check in the `EditText`. -->
+    <!-- `android:imeOptions="actionGo"` sets the keyboard to have a go key instead of a new line key.  `android:inputType="textUri"` disables spell check in the `EditText`.
+     `android:autofillHints` only applies to API >= 26.  `tools:ignore="UnusedAttribute"` removes the lint warning. -->
     <EditText
         android:id="@+id/url_edittext"
         android:layout_height="wrap_content"
@@ -47,5 +48,7 @@
         android:hint="@string/url_or_search_terms"
         android:imeOptions="actionGo"
         android:inputType="textUri"
-        android:selectAllOnFocus="true" />
+        android:selectAllOnFocus="true"
+        android:autofillHints=""
+        tools:ignore="UnusedAttribute" />
 </RelativeLayout>
\ No newline at end of file