diff --git a/termux-shared/src/main/java/com/termux/shared/settings/properties/SharedProperties.java b/termux-shared/src/main/java/com/termux/shared/settings/properties/SharedProperties.java index 30ec08a5..cf4a673d 100644 --- a/termux-shared/src/main/java/com/termux/shared/settings/properties/SharedProperties.java +++ b/termux-shared/src/main/java/com/termux/shared/settings/properties/SharedProperties.java @@ -553,6 +553,17 @@ public class SharedProperties { return (object == null) ? def : object; } + /** + * Get the {@link String} object itself if it is not {@code null} or empty, otherwise default. + * + * @param object The {@link String} to check. + * @param def The default {@link String}. + * @return Returns {@code object} if it is not {@code null}, otherwise returns {@code def}. + */ + public static String getDefaultIfNullOrEmpty(@androidx.annotation.Nullable String object, @androidx.annotation.Nullable String def) { + return (object == null || object.isEmpty()) ? def : object; + } + /** * Covert the {@link String} value to lowercase. * diff --git a/termux-shared/src/main/java/com/termux/shared/settings/properties/TermuxSharedProperties.java b/termux-shared/src/main/java/com/termux/shared/settings/properties/TermuxSharedProperties.java index e3031764..15228a4e 100644 --- a/termux-shared/src/main/java/com/termux/shared/settings/properties/TermuxSharedProperties.java +++ b/termux-shared/src/main/java/com/termux/shared/settings/properties/TermuxSharedProperties.java @@ -423,7 +423,7 @@ public class TermuxSharedProperties { * @return Returns the internal value for value. */ public static String getExtraKeysInternalPropertyValueFromValue(String value) { - return SharedProperties.getDefaultIfNull(value, TermuxPropertyConstants.DEFAULT_IVALUE_EXTRA_KEYS); + return SharedProperties.getDefaultIfNullOrEmpty(value, TermuxPropertyConstants.DEFAULT_IVALUE_EXTRA_KEYS); } /** @@ -433,7 +433,7 @@ public class TermuxSharedProperties { * @return Returns the internal value for value. */ public static String getExtraKeysStyleInternalPropertyValueFromValue(String value) { - return SharedProperties.getDefaultIfNull(value, TermuxPropertyConstants.DEFAULT_IVALUE_EXTRA_KEYS_STYLE); + return SharedProperties.getDefaultIfNullOrEmpty(value, TermuxPropertyConstants.DEFAULT_IVALUE_EXTRA_KEYS_STYLE); } /**