From c33d9694df1e3d67cdcfeaa24b8429fdbffa074a Mon Sep 17 00:00:00 2001 From: root Date: Mon, 14 Sep 2020 12:00:43 +0300 Subject: [PATCH] Xposed Dex for One UI 2.5 with changes: Immersive Apps, Hide NoSIM icon, Hide Tasks Button, Hide Taskbar Separators, Taskbar Fixes and Hide Battery Percentage options. --- README.md | 29 ++ bin/com.pijulius.xposeddex.apk | Bin 22778 -> 19367 bytes res/values/strings.xml | 22 +- res/xml/settings.xml | 47 +-- .../pijulius/xposeddex/SettingsActivity.java | 38 +-- src/com/pijulius/xposeddex/XposedDex.java | 270 +++--------------- 6 files changed, 89 insertions(+), 317 deletions(-) diff --git a/README.md b/README.md index d05d674..75d267b 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,32 @@ +# XposedDex One UI 2.5 +Samsung Dex modifications through Xposed + +1. Make Apps Immersive, +Will remove window titlebar for maximized applications. + +2. Hide NoSIM Icon, +Removes the NoSIM icon from statusbar. + +3. Fix Samsung Browser, +Enables secret mode (as it's disabled if Magisk installed) and disable always visible scroll bar (looks ugly under dark mode). + +4. Hide Tasks Button, +Remove the tasks button on the taskbar. + +5. Hide Taskbar Separators, +Removes empty gaps (separators) from taskbar. + +6. Taskbar Fixes, +Add small space above app docks running marker. + +7. Hide Battery Percentage, +Removes the battery percentage from statusbar. + +NOTE: All changes require a restart. + +IMPORTANT: Requires Magisk and edXposed installed on your tablet. +Only tested with One UI 2.5, Android 10, Build T865XXU4BTI1 so latest release for Tab S6 + # XposedDex One UI 2.1 Samsung Dex modifications through Xposed diff --git a/bin/com.pijulius.xposeddex.apk b/bin/com.pijulius.xposeddex.apk index bfce233d9e958f342fc16e17c50cc1997a580276..dfed0ae1f6b44496641e7be45d92b27dfd30055c 100644 GIT binary patch delta 8586 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 VPp1B_-Y074FZZ|zjJ1BZ{vV?8i8ufN delta 11942 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
@QOuE+hG@^_Kc
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
ZGwDAggL2?Mu2&ifK}xiU`8rR!{{zwG$2Xposed Samsung Dex
 
 	Samsung Dex
-	Immersive Apps
-	Apps for which to remove window titlebar when maximized.
-	Fix Keyboard
-	Enables floating mode for non qwerty keyboard layouts too.
+	Make Apps Immersive
+	Will remove window titlebar for maximized applications.
 	Fix Samsung Browser
 	Enables secret mode and disable always visible scroll bar.
-	Fix Weather
-	Keep displaying weather icon in the statusbar.
 
 	Dex Taskbar
-	Fix Taskbar
-	Disable setting black backgrounds for statusbar and taskbar buttons on maximized applications.
-	Hide Dex Logo
-	Removes the Dex logo from the taskbar.
+	Taskbar Fixes
+	Add small space above app docks running marker.
 	Hide Tasks Button
 	Removes the Tasks button from the taskbar.
 	Hide NoSIM Icon
 	Removes the NoSIM icon from statusbar.
-	Hide StatusBar Separators
-	Removes empty gaps from statusbar to make it more compact.
-	Hide App Overflow Buttons
-	Removes left and right arrows when to many apps are open.
+	Hide Battery Percentage
+	Removes the battery percentage from statusbar.
+	Hide Taskbar Separators
+	Removes empty gaps (separators) from taskbar.
 
 
\ No newline at end of file
diff --git a/res/xml/settings.xml b/res/xml/settings.xml
index b5d3384..6d48538 100644
--- a/res/xml/settings.xml
+++ b/res/xml/settings.xml
@@ -5,19 +5,12 @@
 	
 
-		
-
 		
+			android:title="@string/settings_make_apps_immersive"
+			android:key="makeAppsImmersive" />
 
 		
 
-		
-
 	
 
 	
 
-		
-
 		
 
 		
+			android:title="@string/settings_hide_battery_percentage"
+			android:key="hideBatteryPercentage" />
 
 		
+			android:name="@string/settings_hide_taskbar_separators"
+			android:summary="@string/settings_hide_taskbar_separators_sum"
+			android:defaultValue="true"
+			android:title="@string/settings_hide_taskbar_separators"
+			android:key="hideTaskbarSeparators" />
 
 	
 
diff --git a/src/com/pijulius/xposeddex/SettingsActivity.java b/src/com/pijulius/xposeddex/SettingsActivity.java
index c8f0924..0df5d6f 100644
--- a/src/com/pijulius/xposeddex/SettingsActivity.java
+++ b/src/com/pijulius/xposeddex/SettingsActivity.java
@@ -1,18 +1,13 @@
 package com.pijulius.xposeddex;
 
 import java.io.File;
-import java.util.HashSet;
-import java.util.List;
 
 import android.content.Context;
-import android.content.Intent;
 import android.content.SharedPreferences;
 import android.content.SharedPreferences.Editor;
 import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
-import android.content.pm.ResolveInfo;
 import android.os.AsyncTask;
 import android.os.Bundle;
-import android.preference.MultiSelectListPreference;
 import android.preference.PreferenceActivity;
 import android.preference.PreferenceFragment;
 
@@ -41,33 +36,6 @@ public void onCreate(Bundle savedInstanceState) {
 			super.onCreate(savedInstanceState);
 
 			addPreferencesFromResource(R.xml.settings);
-
-			MultiSelectListPreference immersiveApps =
-					(MultiSelectListPreference) findPreference("immersiveApps");
-
-			Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
-			mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
-
-			List pkgAppsList =
-					getActivity().getPackageManager().queryIntentActivities(mainIntent, 0);
-
-			String[] allApps = new String[pkgAppsList.size()];
-			String[] allPackages = new String[pkgAppsList.size()];
-
-			int i = 0;
-			for (ResolveInfo ri : pkgAppsList) {
-				if (ri.activityInfo == null)
-					continue;
-
-				allApps[i] = ri.activityInfo.loadLabel(
-						getActivity().getPackageManager()).toString();
-				allPackages[i] = ri.activityInfo.packageName;
-
-				i++;
-			}
-
-			immersiveApps.setEntries(allApps);
-			immersiveApps.setEntryValues(allPackages);
 		}
 	}
 
@@ -75,11 +43,7 @@ public void onCreate(Bundle savedInstanceState) {
 	public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
 		Editor editor = protectedPreferences.edit();
 
-		if ("immersiveApps".equals(key))
-			editor.putStringSet(key, sharedPreferences.getStringSet(key, new HashSet()));
-		else
-			editor.putBoolean(key, sharedPreferences.getBoolean(key, true));
-
+		editor.putBoolean(key, sharedPreferences.getBoolean(key, true));
 		editor.apply();
 
 		AsyncTask.execute(new Runnable() {
diff --git a/src/com/pijulius/xposeddex/XposedDex.java b/src/com/pijulius/xposeddex/XposedDex.java
index eaf05f8..efdda53 100644
--- a/src/com/pijulius/xposeddex/XposedDex.java
+++ b/src/com/pijulius/xposeddex/XposedDex.java
@@ -3,15 +3,7 @@
 import static de.robv.android.xposed.XposedHelpers.findClass;
 
 import java.io.File;
-import java.util.HashSet;
-import java.util.Set;
-
-import android.app.Activity;
-import android.content.res.Configuration;
-import android.content.res.XResources;
-import android.graphics.Color;
-import android.graphics.drawable.ColorDrawable;
-import android.graphics.drawable.Drawable;
+
 import android.view.View;
 import android.view.ViewGroup.MarginLayoutParams;
 import de.robv.android.xposed.IXposedHookInitPackageResources;
@@ -42,19 +34,11 @@ public void handleLoadPackage(LoadPackageParam lpparam) throws Throwable {
 		if (settings == null)
 			settings = new XSharedPreferences(new File(settingsFile));
 
-		immersiveApps(lpparam);
-
-		if (settings.getBoolean("fixTaskbar", true))
-			taskbarFixes(lpparam);
-
-		if (settings.getBoolean("fixKeyboard", true))
-			keyboardFixes(lpparam);
+		if (settings.getBoolean("makeAppsImmersive", true))
+			makeAppsImmersive(lpparam);
 
 		if (settings.getBoolean("fixSBrowser", true))
 			sbrowserFixes(lpparam);
-
-		if (settings.getBoolean("fixWeather", true))
-			weatherFixes(lpparam);
 	}
 
 	@Override
@@ -63,72 +47,16 @@ public void handleInitPackageResources(InitPackageResourcesParam resparam) throw
 			settings = new XSharedPreferences(new File(settingsFile));
 
 		taskbarResourceFixes(resparam);
-
-		if (settings.getBoolean("fixKeyboard", true))
-			keyboardResourceFixes(resparam);
-	}
-
-	public void immersiveApps(LoadPackageParam lpparam) {
-		// Make selected apps to be in immersive mode
-		XposedBridge.hookAllMethods(Activity.class, "onStart", new XC_MethodHook() {
-			@Override
-			protected void afterHookedMethod(MethodHookParam param) throws Throwable {
-				Activity activity = (Activity)param.thisObject;
-				if (activity == null)
-					return;
-
-				settings.reload();
-
-				Set immersiveApps = settings.getStringSet("immersiveApps", new HashSet());
-
-				if (!immersiveApps.contains(activity.getPackageName()))
-					return;
-
-				activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
-			}
-		});
-
-		XposedBridge.hookAllMethods(Activity.class, "onWindowFocusChanged", new XC_MethodHook() {
-			@Override
-			protected void afterHookedMethod(MethodHookParam param) throws Throwable {
-				Activity activity = (Activity)param.thisObject;
-				if (activity == null)
-					return;
-
-				Set immersiveApps = settings.getStringSet("immersiveApps", new HashSet());
-
-				if (!immersiveApps.contains(activity.getPackageName()))
-					return;
-
-				activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
-			}
-		});
 	}
 
-	public void taskbarFixes(LoadPackageParam lpparam) {
-		// Taskbar fixes, disable setting the black backgrounds when an app is maximized
-		if (!lpparam.packageName.equals("com.samsung.desktopsystemui"))
-			return;
-
-		Class hookClass = null;
-
-		hookClass = findClass("com.samsung.desktopsystemui.statusbar.phone.taskbar.views.TaskBarView",
-				lpparam.classLoader);
-
-		XposedBridge.hookAllMethods(hookClass, "setDarkBackground", new XC_MethodHook() {
-			@Override
-			protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
-				param.setResult(false);
-			}
-		});
-
-		hookClass = findClass("com.samsung.desktopsystemui.statusbar.phone.taskbar.desk.DeskStatusBarView",
+	public void makeAppsImmersive(LoadPackageParam lpparam) {
+		Class hookClass = findClass("com.android.internal.policy.MultiWindowDecorSupport",
 				lpparam.classLoader);
 
-		XposedBridge.hookAllMethods(hookClass, "setDarkBackground", new XC_MethodHook() {
+		XposedBridge.hookAllMethods(hookClass, "isImmersiveMode", new XC_MethodHook() {
 			@Override
 			protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
-				param.setResult(false);
+				param.setResult(true);
 			}
 		});
 	}
@@ -137,35 +65,16 @@ public void taskbarResourceFixes(InitPackageResourcesParam resparam) {
 		if (!resparam.packageName.equals("com.samsung.desktopsystemui"))
 			return;
 
-		final boolean hideDexLogo = settings.getBoolean("hideDexLogo", true);
 		final boolean hideTasksButton = settings.getBoolean("hideTasksButton", true);
-		final boolean hideAppOverflowButtons = settings.getBoolean("hideAppOverflowButtons", true);
-		final boolean hideStatusBarSeparators = settings.getBoolean("hideStatusBarSeparators", true);
+		final boolean hideTaskbarSeparators = settings.getBoolean("hideTaskbarSeparators", true);
+		final boolean spaceAboveAppDock = settings.getBoolean("fixTaskbar", true);
 
-		if (hideDexLogo || hideTasksButton || hideAppOverflowButtons || hideStatusBarSeparators) {
+		if (hideTasksButton || hideTaskbarSeparators || spaceAboveAppDock) {
 			resparam.res.hookLayout("com.samsung.desktopsystemui", "layout", "taskbar", new XC_LayoutInflated() {
 				@Override
 				public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam) throws Throwable {
 					View view = null;
 
-					if (hideDexLogo) {
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"dex_community", "id", "com.samsung.desktopsystemui"));
-
-						view.setVisibility(View.GONE);
-						view.getLayoutParams().width = 0;
-
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"dex_community_divider", "id", "com.samsung.desktopsystemui"));
-
-						view.setVisibility(View.GONE);
-						view.getLayoutParams().width = 0;
-
-						MarginLayoutParams marginParams = (MarginLayoutParams)view.getLayoutParams();
-						marginParams.setMarginStart(0);
-						marginParams.setMarginEnd(0);
-					}
-
 					if (hideTasksButton) {
 						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
 							"recent_apps", "id", "com.samsung.desktopsystemui"));
@@ -178,35 +87,18 @@ public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam)
 						marginParams.setMarginEnd(0);
 					}
 
-					if (hideAppOverflowButtons) {
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"button_scroll_left", "id", "com.samsung.desktopsystemui"));
-
-						view.setVisibility(View.GONE);
-						view.getLayoutParams().width = 0;
-
+					if (hideTaskbarSeparators) {
 						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"button_scroll_right", "id", "com.samsung.desktopsystemui"));
+							"all_apps_divider", "id", "com.samsung.desktopsystemui"));
 
 						view.setVisibility(View.GONE);
 						view.getLayoutParams().width = 0;
-					}
-
-					if (hideStatusBarSeparators) {
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"size_control", "id", "com.samsung.desktopsystemui"));
+						view.setPadding(0, 0, 0, 0);
 
 						MarginLayoutParams marginParams = (MarginLayoutParams)view.getLayoutParams();
 						marginParams.setMarginStart(0);
 						marginParams.setMarginEnd(0);
 
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"desk_status_bar_container", "id", "com.samsung.desktopsystemui"));
-
-						marginParams = (MarginLayoutParams)view.getLayoutParams();
-						marginParams.setMarginStart(0);
-						marginParams.setMarginEnd(0);
-
 						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
 							"taskbar_divider", "id", "com.samsung.desktopsystemui"));
 
@@ -217,67 +109,20 @@ public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam)
 						marginParams = (MarginLayoutParams)view.getLayoutParams();
 						marginParams.setMarginStart(0);
 						marginParams.setMarginEnd(0);
+					}
 
+					if (spaceAboveAppDock) {
 						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"global_function", "id", "com.samsung.desktopsystemui"));
+							"appdock_container", "id", "com.samsung.desktopsystemui"));
 
-						view.setPadding(0, view.getPaddingTop(), view.getPaddingRight(), view.getPaddingBottom());
+						view.setPadding(0, 4, 0, 0);
 					}
 				}
 			});
-
-			if (hideStatusBarSeparators) {
-				resparam.res.hookLayout("com.samsung.desktopsystemui", "layout", "desk_status_bar", new XC_LayoutInflated() {
-					@Override
-					public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam) throws Throwable {
-						View view = null;
-
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"notification_icon_area", "id", "com.samsung.desktopsystemui"));
-
-						view.setPadding(0, view.getPaddingTop(), 0, view.getPaddingBottom());
-
-						MarginLayoutParams marginParams = (MarginLayoutParams)view.getLayoutParams();
-						marginParams.setMarginStart(0);
-						marginParams.setMarginEnd(0);
-
-						view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
-							"system_icon_area_outer", "id", "com.samsung.desktopsystemui"));
-
-						view.setPadding(0, view.getPaddingTop(), 0, view.getPaddingBottom());
-					}
-				});
-
-				resparam.res.setReplacement(
-					"com.samsung.desktopsystemui", "drawable", "desk_panel_view_bg", new XResources.DrawableLoader() {
-						@Override
-						public Drawable newDrawable(XResources res, int id) throws Throwable {
-							return new ColorDrawable(Color.TRANSPARENT);
-						}
-					});
-
-				resparam.res.setReplacement(
-					"com.samsung.desktopsystemui", "drawable", "quick_connect_hidden_icon", new XResources.DrawableLoader() {
-						@SuppressWarnings("deprecation")
-						@Override
-						public Drawable newDrawable(XResources res, int id) throws Throwable {
-							return res.getDrawable(android.R.drawable.arrow_up_float);
-						}
-					});
-
-				resparam.res.setReplacement(
-					"com.samsung.desktopsystemui", "drawable", "stat_notify_more_for_desk", new XResources.DrawableLoader() {
-						@SuppressWarnings("deprecation")
-						@Override
-						public Drawable newDrawable(XResources res, int id) throws Throwable {
-							return res.getDrawable(android.R.drawable.arrow_up_float);
-						}
-					});
-			}
 		}
 
 		if (settings.getBoolean("hideNoSIMIcon", true)) {
-			resparam.res.hookLayout("com.samsung.desktopsystemui", "layout", "desk_signal_cluster_view", new XC_LayoutInflated() {
+			resparam.res.hookLayout("com.samsung.desktopsystemui", "layout", "desk_signal_cluster_view_25", new XC_LayoutInflated() {
 				@Override
 				public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam) throws Throwable {
 					View view = null;
@@ -302,43 +147,34 @@ public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam)
 				}
 			});
 		}
-	}
-
-	public void keyboardFixes(LoadPackageParam lpparam) {
-		// Fix floating keyboard for none qwery layouts too
-		if (!lpparam.packageName.equals("com.samsung.android.honeyboard"))
-			return;
 
-		Class hookClass = null;
-
-		// context, keyboardtype/ , com/samsung/android/honeyboard/base/i/b/a;->i()Z,
-		// if-eqz, const-string "KeyboardViewType.VIEW_FLOATING"
-		// else, const-string "KeyboardViewType.VIEW_NORMAL"
-		hookClass = findClass("com.samsung.android.honeyboard.base.i.b.a",
-				lpparam.classLoader);
+		if (settings.getBoolean("hideBatteryPercentage", true)) {
+			resparam.res.hookLayout("com.samsung.desktopsystemui", "layout", "battery_percentage_view", new XC_LayoutInflated() {
+				@Override
+				public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam) throws Throwable {
+					View view = null;
 
-		XposedBridge.hookAllMethods(hookClass, "i", new XC_MethodHook() {
-			@Override
-			protected void afterHookedMethod(MethodHookParam param) throws Throwable {
-				param.setResult(true);
-			}
-		});
-	}
+					view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
+						"battery_percentage_view", "id", "com.samsung.desktopsystemui"));
 
-	public void keyboardResourceFixes(InitPackageResourcesParam resparam) {
-		if (!resparam.packageName.equals("com.samsung.android.honeyboard"))
-			return;
+					view.setVisibility(View.GONE);
+				}
+			});
 
-		resparam.res.setReplacement(
-			"com.samsung.android.honeyboard", "drawable", "desktop_decor_caption_title", new XResources.DrawableLoader() {
+			resparam.res.hookLayout("com.samsung.desktopsystemui", "layout", "desk_system_icons", new XC_LayoutInflated() {
 				@Override
-				public Drawable newDrawable(XResources res, int id) throws Throwable {
-					if ((res.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES)
-						return new ColorDrawable(Color.BLACK);
+				public void handleLayoutInflated(XC_LayoutInflated.LayoutInflatedParam liparam) throws Throwable {
+					View view = null;
+
+					view = (View)liparam.view.findViewById(liparam.res.getIdentifier(
+						"system_icons_battery_container", "id", "com.samsung.desktopsystemui"));
 
-					return new ColorDrawable(Color.LTGRAY);
+					MarginLayoutParams marginParams = (MarginLayoutParams)view.getLayoutParams();
+					marginParams.setMarginStart(10);
+					marginParams.setMarginEnd(10);
 				}
 			});
+		}
 	}
 
 	public void sbrowserFixes(LoadPackageParam lpparam) {
@@ -368,34 +204,4 @@ protected void afterHookedMethod(MethodHookParam param) throws Throwable {
 			}
 		});
 	}
-
-	public void weatherFixes(LoadPackageParam lpparam) {
-		// Enable weather statusbar notification in Dex
-		if (!lpparam.packageName.equals("com.sec.android.daemonapp"))
-			return;
-
-		Class hookClass = null;
-
-		hookClass = findClass("com.sec.android.daemonapp.app.notification.NotificationUtil",
-				lpparam.classLoader);
-
-		XposedBridge.hookAllMethods(hookClass, "isDesktopMode", new XC_MethodHook() {
-			@Override
-			protected void afterHookedMethod(MethodHookParam param) throws Throwable {
-				param.setResult(false);
-			}
-		});
-
-		//hookClass = findClass("com.samsung.android.weather.infrastructure.system.android.DesktopModeManager",
-		//hookClass = findClass("com.samsung.android.weather.infrastructure.system.sdl.DesktopModeManager",
-		hookClass = findClass("com.samsung.android.weather.infrastructure.system.sep.DesktopModeManager",
-				lpparam.classLoader);
-
-		XposedBridge.hookAllMethods(hookClass, "isDesktopMode", new XC_MethodHook() {
-			@Override
-			protected void afterHookedMethod(MethodHookParam param) throws Throwable {
-				param.setResult(false);
-			}
-		});
-	}
 }