Create a dark theme for `MainWebViewActivity`.
[PrivacyBrowser.git] / app / src / main / AndroidManifest.xml
index 924d8da8b5f6adce5e8cc1c11a778f56969063dc..300e30458d0047a690e8d629700c640e41edc662 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 
 <!--
-  Copyright 2015-2016 Soren Stoutner <soren@stoutner.com>.
+  Copyright © 2015-2017 Soren Stoutner <soren@stoutner.com>.
 
   This file is part of Privacy Browser <https://www.stoutner.com/privacy-browser>.
 
@@ -19,7 +19,8 @@
   along with Privacy Browser.  If not, see <http://www.gnu.org/licenses/>. -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="com.stoutner.privacybrowser" >
+          xmlns:tools="http://schemas.android.com/tools"
+          package="com.stoutner.privacybrowser" >
 
     <!-- Required to load websites. -->
     <uses-permission android:name="android.permission.INTERNET" />
     <application
         android:label="@string/privacy_browser"
         android:icon="@mipmap/privacy_browser"
-        android:theme="@style/PrivacyBrowser"
         android:allowBackup="false"
-        android:fullBackupContent="false" >
+        android:fullBackupContent="false"
+        android:supportsRtl="true" >
 
-        <!-- If `android:name="android.webkit.WebView.MetricsOptOut"` is not `true` then `WebViews` will upload metrics to Google.
-            https://developer.android.com/reference/android/webkit/WebView.html -->
+        <!-- If `android:name="android.webkit.WebView.MetricsOptOut"` is not `true` then `WebViews` will upload metrics to Google.  <https://developer.android.com/reference/android/webkit/WebView.html> -->
         <meta-data
             android:name="android.webkit.WebView.MetricsOptOut"
             android:value="true" />
 
-        <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes, which preserves scroll location in the WebView.
+        <!-- The theme has to be defined here or an ugly title bar is displayed when the app launches.
+            `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes, which preserves scroll location in the WebView.
             `android:launchMode="singleTask"` makes the app launch in a new task instead of inside the task of the program that sends it an intent.
             It also makes it reuse an existing Privacy Browser activity if available instead of launching a new one.
-            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot. -->
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
         <activity
-            android:name=".MainWebViewActivity"
+            android:name=".activities.MainWebViewActivity"
             android:label="@string/privacy_browser"
+            android:theme="@style/PrivacyBrowserLight"
             android:configChanges="orientation|screenSize"
             android:launchMode="singleTask"
             android:screenOrientation="fullUser"
-            android:persistableMode="persistNever" >
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" >
 
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
 
 
         <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes.
-            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot. -->
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
         <activity
-            android:name=".BookmarksActivity"
+            android:name=".activities.BookmarksActivity"
             android:label="@string/bookmarks"
-            android:theme="@style/PrivacyBrowser.SecondaryActivity"
-            android:parentActivityName=".MainWebViewActivity"
+            android:theme="@style/PrivacyBrowserLight.SecondaryActivity"
+            android:parentActivityName=".activities.MainWebViewActivity"
             android:configChanges="orientation|screenSize"
             android:screenOrientation="fullUser"
-            android:persistableMode="persistNever" />
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
 
         <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes.
-            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot. -->
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
         <activity
-            android:name=".BookmarksDatabaseViewActivity"
+            android:name=".activities.BookmarksDatabaseViewActivity"
             android:label="@string/bookmarks_database_view"
-            android:theme="@style/PrivacyBrowser.SecondaryActivity"
-            android:parentActivityName=".BookmarksActivity"
+            android:theme="@style/PrivacyBrowserLight.SecondaryActivity"
+            android:parentActivityName=".activities.BookmarksActivity"
             android:configChanges="orientation|screenSize"
             android:screenOrientation="fullUser"
-            android:persistableMode="persistNever" />
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
 
         <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes.
-            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot. -->
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
         <activity
-            android:name=".SettingsActivity"
+            android:name=".activities.SettingsActivity"
             android:label="@string/privacy_browser_settings"
             android:theme="@style/Settings"
-            android:parentActivityName=".MainWebViewActivity"
+            android:parentActivityName=".activities.MainWebViewActivity"
             android:configChanges="orientation|screenSize"
             android:screenOrientation="fullUser"
-            android:persistableMode="persistNever" />
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
+
+        <!-- `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
+        <activity
+            android:name=".activities.DomainsActivity"
+            android:label="@string/domains"
+            android:theme="@style/PrivacyBrowserLight.SecondaryActivity"
+            android:parentActivityName=".activities.MainWebViewActivity"
+            android:screenOrientation="fullUser"
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
+
+        <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes.
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21.
+             `android:windowSoftInputMode="stateAlwaysHidden"` removes the keyboard from the screen, which is displayed because `ScrollViews` always focus the first `EditText` despite being told not to. -->
+        <activity
+            android:name=".activities.DomainSettingsActivity"
+            android:label="@string/domain_settings"
+            android:theme="@style/PrivacyBrowserLight.SecondaryActivity"
+            android:parentActivityName=".activities.DomainsActivity"
+            android:configChanges="orientation|screenSize"
+            android:screenOrientation="fullUser"
+            android:windowSoftInputMode="stateAlwaysHidden"
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
 
         <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes.
-            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot. -->
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
         <activity
-            android:name=".GuideActivity"
+            android:name=".activities.GuideActivity"
             android:label="@string/privacy_browser_guide"
-            android:theme="@style/PrivacyBrowser.SecondaryActivity"
-            android:parentActivityName=".MainWebViewActivity"
+            android:theme="@style/PrivacyBrowserLight.SecondaryActivity"
+            android:parentActivityName=".activities.MainWebViewActivity"
             android:configChanges="orientation|screenSize"
             android:screenOrientation="fullUser"
-            android:persistableMode="persistNever" />
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
 
         <!-- `android:configChanges="orientation|screenSize"` makes the activity not reload when the orientation changes.
-            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot. -->
+            `android:persistableMode="persistNever"` removes Privacy Browser from the recents screen on a device reboot.
+            `tools:ignore="unusedAttribute"` removes the lint warning that `persistableMode` does not apply to API < 21. -->
         <activity
-            android:name=".AboutActivity"
+            android:name=".activities.AboutActivity"
             android:label="@string/about_privacy_browser"
-            android:theme="@style/PrivacyBrowser.SecondaryActivity"
-            android:parentActivityName=".MainWebViewActivity"
+            android:theme="@style/PrivacyBrowserLight.SecondaryActivity"
+            android:parentActivityName=".activities.MainWebViewActivity"
             android:configChanges="orientation|screenSize"
             android:screenOrientation="fullUser"
-            android:persistableMode="persistNever" />
+            android:persistableMode="persistNever"
+            tools:ignore="UnusedAttribute" />
     </application>
 </manifest>