From: Soren Stoutner <soren@stoutner.com> Date: Fri, 9 Oct 2020 23:42:42 +0000 (-0700) Subject: Fix problems with audio still playing after a tab is closed. https://redmine.stoutne... X-Git-Tag: v3.6~14 X-Git-Url: https://gitweb.stoutner.com/?a=commitdiff_plain;h=771125363f79df7b3a6b85321a08c7c201b54661;p=PrivacyBrowserAndroid.git Fix problems with audio still playing after a tab is closed. https://redmine.stoutner.com/issues/595 --- diff --git a/app/src/main/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java b/app/src/main/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java index c49c14ca..cdb2c9fb 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java +++ b/app/src/main/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java @@ -4845,6 +4845,12 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook } private void closeCurrentTab() { + // Pause the current WebView. + currentWebView.onPause(); + + // Pause the current WebView JavaScript timers. + currentWebView.pauseTimers(); + // Get the current tab number. int currentTabNumber = tabLayout.getSelectedTabPosition(); diff --git a/app/src/main/res/layout/about_coordinatorlayout.xml b/app/src/main/res/layout/about_coordinatorlayout.xml index b9c6dc06..c4dce552 100644 --- a/app/src/main/res/layout/about_coordinatorlayout.xml +++ b/app/src/main/res/layout/about_coordinatorlayout.xml @@ -37,7 +37,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/about_toolbar" diff --git a/app/src/main/res/layout/bookmarks_coordinatorlayout.xml b/app/src/main/res/layout/bookmarks_coordinatorlayout.xml index 20a88a0e..555e1853 100644 --- a/app/src/main/res/layout/bookmarks_coordinatorlayout.xml +++ b/app/src/main/res/layout/bookmarks_coordinatorlayout.xml @@ -36,7 +36,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/bookmarks_toolbar" diff --git a/app/src/main/res/layout/bookmarks_databaseview_coordinatorlayout.xml b/app/src/main/res/layout/bookmarks_databaseview_coordinatorlayout.xml index 49a913f3..f6474bb1 100644 --- a/app/src/main/res/layout/bookmarks_databaseview_coordinatorlayout.xml +++ b/app/src/main/res/layout/bookmarks_databaseview_coordinatorlayout.xml @@ -36,7 +36,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/bookmarks_databaseview_toolbar" diff --git a/app/src/main/res/layout/domains_coordinatorlayout.xml b/app/src/main/res/layout/domains_coordinatorlayout.xml index 3fb00720..60d14cb8 100644 --- a/app/src/main/res/layout/domains_coordinatorlayout.xml +++ b/app/src/main/res/layout/domains_coordinatorlayout.xml @@ -36,7 +36,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/domains_toolbar" diff --git a/app/src/main/res/layout/guide_coordinatorlayout.xml b/app/src/main/res/layout/guide_coordinatorlayout.xml index 5140dcc0..d3ac643c 100644 --- a/app/src/main/res/layout/guide_coordinatorlayout.xml +++ b/app/src/main/res/layout/guide_coordinatorlayout.xml @@ -37,7 +37,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/guide_toolbar" diff --git a/app/src/main/res/layout/import_export_coordinatorlayout.xml b/app/src/main/res/layout/import_export_coordinatorlayout.xml index 58033286..f5bcfe58 100644 --- a/app/src/main/res/layout/import_export_coordinatorlayout.xml +++ b/app/src/main/res/layout/import_export_coordinatorlayout.xml @@ -37,7 +37,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/import_export_toolbar" diff --git a/app/src/main/res/layout/logcat_coordinatorlayout.xml b/app/src/main/res/layout/logcat_coordinatorlayout.xml index 12345a76..2c605a33 100644 --- a/app/src/main/res/layout/logcat_coordinatorlayout.xml +++ b/app/src/main/res/layout/logcat_coordinatorlayout.xml @@ -36,7 +36,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/logcat_toolbar" diff --git a/app/src/main/res/layout/main_framelayout.xml b/app/src/main/res/layout/main_framelayout.xml index 3711e724..f912025d 100644 --- a/app/src/main/res/layout/main_framelayout.xml +++ b/app/src/main/res/layout/main_framelayout.xml @@ -53,7 +53,7 @@ android:id="@+id/appbar_layout" android:layout_height="wrap_content" android:layout_width="match_parent" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <!-- The toolbar. It is initially `visibility="gone"` so it doesn't display while the blocklists are loading. --> <androidx.appcompat.widget.Toolbar diff --git a/app/src/main/res/layout/requests_coordinatorlayout.xml b/app/src/main/res/layout/requests_coordinatorlayout.xml index 8df71310..7ca548f9 100644 --- a/app/src/main/res/layout/requests_coordinatorlayout.xml +++ b/app/src/main/res/layout/requests_coordinatorlayout.xml @@ -36,7 +36,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <androidx.appcompat.widget.Toolbar android:id="@+id/requests_toolbar" diff --git a/app/src/main/res/layout/view_source_coordinatorlayout.xml b/app/src/main/res/layout/view_source_coordinatorlayout.xml index 603c1784..f8c1c8b6 100644 --- a/app/src/main/res/layout/view_source_coordinatorlayout.xml +++ b/app/src/main/res/layout/view_source_coordinatorlayout.xml @@ -39,7 +39,7 @@ android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?android:attr/colorBackground" - android:theme="@style/ThemeOverlay.AppCompat.DayNight.ActionBar" > + android:theme="@style/PrivacyBrowserAppBar" > <!-- The frame layout allows the toolbar and the progress bar to occupy the same space. --> <FrameLayout diff --git a/app/src/main/res/values-night-v23/styles.xml b/app/src/main/res/values-night-v23/styles.xml index 2d2f1ec0..fbc06cc0 100644 --- a/app/src/main/res/values-night-v23/styles.xml +++ b/app/src/main/res/values-night-v23/styles.xml @@ -67,6 +67,10 @@ <item name="lockBlueIcon">@drawable/lock_night</item> </style> + <style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" > + <item name="android:textColorHighlight">@color/violet_700</item> + </style> + <style name="PrivacyBrowserSettings" parent="Theme.AppCompat.DayNight" > <!-- Main Items. --> <item name="android:statusBarColor">?android:attr/colorBackground</item> diff --git a/app/src/main/res/values-night-v27/styles.xml b/app/src/main/res/values-night-v27/styles.xml index 00b22081..42e31ec8 100644 --- a/app/src/main/res/values-night-v27/styles.xml +++ b/app/src/main/res/values-night-v27/styles.xml @@ -69,6 +69,10 @@ <item name="lockBlueIcon">@drawable/lock_night</item> </style> + <style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" > + <item name="android:textColorHighlight">@color/violet_700</item> + </style> + <style name="PrivacyBrowserSettings" parent="Theme.AppCompat.DayNight" > <!-- Main Items. --> <item name="android:navigationBarColor">?android:attr/colorBackground</item> diff --git a/app/src/main/res/values-night/styles.xml b/app/src/main/res/values-night/styles.xml index ba21706c..0dbf04fa 100644 --- a/app/src/main/res/values-night/styles.xml +++ b/app/src/main/res/values-night/styles.xml @@ -65,6 +65,10 @@ <item name="lockBlueIcon">@drawable/lock_night</item> </style> + <style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" > + <item name="android:textColorHighlight">@color/violet_700</item> + </style> + <style name="PrivacyBrowserSettings" parent="Theme.AppCompat.DayNight" > <!-- Colors. --> <item name="colorAccent">@color/violet_500</item> diff --git a/app/src/main/res/values-v23/styles.xml b/app/src/main/res/values-v23/styles.xml index ff8de443..5c22d038 100644 --- a/app/src/main/res/values-v23/styles.xml +++ b/app/src/main/res/values-v23/styles.xml @@ -67,6 +67,10 @@ <item name="lockBlueIcon">@drawable/lock_day</item> </style> + <style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" > + <item name="android:textColorHighlight">@color/blue_200</item> + </style> + <style name="PrivacyBrowserSettings" parent="Theme.AppCompat.DayNight" > <!-- Main Items. --> <item name="android:statusBarColor">?android:attr/colorBackground</item> diff --git a/app/src/main/res/values-v27/styles.xml b/app/src/main/res/values-v27/styles.xml index b56b1179..7fa4b5c8 100644 --- a/app/src/main/res/values-v27/styles.xml +++ b/app/src/main/res/values-v27/styles.xml @@ -69,6 +69,10 @@ <item name="lockBlueIcon">@drawable/lock_day</item> </style> + <style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" > + <item name="android:textColorHighlight">@color/blue_200</item> + </style> + <style name="PrivacyBrowserSettings" parent="Theme.AppCompat.DayNight" > <!-- Main Items. --> <item name="android:navigationBarColor">?android:attr/colorBackground</item> diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index f57308ae..21d99f63 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -65,6 +65,10 @@ <item name="lockBlueIcon">@drawable/lock_day</item> </style> + <style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" > + <item name="android:textColorHighlight">@color/blue_200</item> + </style> + <style name="PrivacyBrowserSettings" parent="Theme.AppCompat.DayNight" > <!-- Colors. --> <item name="colorAccent">@color/blue_700</item>