From 720a6499e8c8819234f87cad262ae896b9c801aa Mon Sep 17 00:00:00 2001 From: lkijewski Date: Fri, 24 Jan 2025 00:08:08 +0100 Subject: [PATCH] Added: Implement text scale disabling feature in terminal view The user can add `disable-terminal-view-scaling=true` entry to `termux.properties` file to disable text size scaling in terminal view. * The default value is `false`. Restarting the termux app or running the `termux-reload-settings` command will update the behavior instantaneously if changed. --- .../termux/app/terminal/TermuxTerminalViewClient.java | 4 ++-- .../src/main/java/com/termux/view/TerminalView.java | 2 +- .../main/java/com/termux/view/TerminalViewClient.java | 2 +- .../settings/properties/TermuxPropertyConstants.java | 10 +++++----- .../settings/properties/TermuxSharedProperties.java | 4 ++-- .../termux/terminal/TermuxTerminalViewClientBase.java | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java b/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java index 9672d6913f..f0828d1760 100644 --- a/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java +++ b/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java @@ -227,8 +227,8 @@ public boolean isTerminalViewSelected() { } @Override - public boolean isZoomScaleDisabled() { - return mActivity.getProperties().isZoomScaleDisabled(); + public boolean isTerminalViewScalingDisabled() { + return mActivity.getProperties().isTerminalViewScalingDisabled(); } diff --git a/terminal-view/src/main/java/com/termux/view/TerminalView.java b/terminal-view/src/main/java/com/termux/view/TerminalView.java index 68aeaa1805..4663c1dba1 100644 --- a/terminal-view/src/main/java/com/termux/view/TerminalView.java +++ b/terminal-view/src/main/java/com/termux/view/TerminalView.java @@ -187,7 +187,7 @@ public boolean onScroll(MotionEvent e, float distanceX, float distanceY) { @Override public boolean onScale(float focusX, float focusY, float scale) { - if (mEmulator == null || isSelectingText() || mClient.isZoomScaleDisabled()) return true; + if (mEmulator == null || isSelectingText() || mClient.isTerminalViewScalingDisabled()) return true; mScaleFactor *= scale; mScaleFactor = mClient.onScale(mScaleFactor); return true; diff --git a/terminal-view/src/main/java/com/termux/view/TerminalViewClient.java b/terminal-view/src/main/java/com/termux/view/TerminalViewClient.java index bfc1cc1f22..5ac65b4123 100644 --- a/terminal-view/src/main/java/com/termux/view/TerminalViewClient.java +++ b/terminal-view/src/main/java/com/termux/view/TerminalViewClient.java @@ -36,7 +36,7 @@ public interface TerminalViewClient { boolean isTerminalViewSelected(); - boolean isZoomScaleDisabled(); + boolean isTerminalViewScalingDisabled(); void copyModeChanged(boolean copyMode); diff --git a/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxPropertyConstants.java b/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxPropertyConstants.java index a4b1c836ec..9eee5eb5bf 100644 --- a/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxPropertyConstants.java +++ b/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxPropertyConstants.java @@ -82,7 +82,7 @@ * - Add `KEY_DISABLE_FILE_SHARE_RECEIVER` and `KEY_DISABLE_FILE_VIEW_RECEIVER`. * * - 0.19.0 (2025-01-23) - * - Add `KEY_DISABLE_ZOOM_SCALE`. + * - Add `disable-terminal-view-scaling`. */ /** @@ -102,8 +102,8 @@ public final class TermuxPropertyConstants { /* boolean */ - /** Defines the key for whether screen scaling are enabled. */ - public static final String KEY_DISABLE_ZOOM_SCALE = "disable-zoom-scale"; // Default: "disable-zoom-scale" + /** Defines the key for whether terminal view scaling are enabled. */ + public static final String KEY_DISABLE_TERMINAL_VIEW_SCALING = "disable-terminal-view-scaling"; // Default: "disable-terminal-view-scaling" @@ -399,7 +399,7 @@ public final class TermuxPropertyConstants { * */ public static final Set TERMUX_APP_PROPERTIES_LIST = new HashSet<>(Arrays.asList( /* boolean */ - KEY_DISABLE_ZOOM_SCALE, + KEY_DISABLE_TERMINAL_VIEW_SCALING, KEY_DISABLE_FILE_SHARE_RECEIVER, KEY_DISABLE_FILE_VIEW_RECEIVER, KEY_DISABLE_HARDWARE_KEYBOARD_SHORTCUTS, @@ -448,7 +448,7 @@ public final class TermuxPropertyConstants { * default: false */ public static final Set TERMUX_DEFAULT_FALSE_BOOLEAN_BEHAVIOUR_PROPERTIES_LIST = new HashSet<>(Arrays.asList( - KEY_DISABLE_ZOOM_SCALE, + KEY_DISABLE_TERMINAL_VIEW_SCALING, KEY_DISABLE_FILE_SHARE_RECEIVER, KEY_DISABLE_FILE_VIEW_RECEIVER, KEY_DISABLE_HARDWARE_KEYBOARD_SHORTCUTS, diff --git a/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxSharedProperties.java b/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxSharedProperties.java index 1b97c2a910..fd4fed37ae 100644 --- a/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxSharedProperties.java +++ b/termux-shared/src/main/java/com/termux/shared/termux/settings/properties/TermuxSharedProperties.java @@ -573,8 +573,8 @@ public static String getVolumeKeysBehaviourInternalPropertyValueFromValue(String - public boolean isZoomScaleDisabled() { - return (boolean) getInternalPropertyValue(TermuxPropertyConstants.KEY_DISABLE_ZOOM_SCALE, true); + public boolean isTerminalViewScalingDisabled() { + return (boolean) getInternalPropertyValue(TermuxPropertyConstants.KEY_DISABLE_TERMINAL_VIEW_SCALING, true); } public boolean shouldAllowExternalApps() { diff --git a/termux-shared/src/main/java/com/termux/shared/termux/terminal/TermuxTerminalViewClientBase.java b/termux-shared/src/main/java/com/termux/shared/termux/terminal/TermuxTerminalViewClientBase.java index 1b5cb59ded..c71a1f4ab7 100644 --- a/termux-shared/src/main/java/com/termux/shared/termux/terminal/TermuxTerminalViewClientBase.java +++ b/termux-shared/src/main/java/com/termux/shared/termux/terminal/TermuxTerminalViewClientBase.java @@ -13,7 +13,7 @@ public TermuxTerminalViewClientBase() { } @Override - public boolean isZoomScaleDisabled() { + public boolean isTerminalViewScalingDisabled() { return false; }