From d9af197840781e0f38e1811e947d55a26d61b47e Mon Sep 17 00:00:00 2001 From: mopsicus Date: Wed, 28 Aug 2024 12:45:50 +0300 Subject: [PATCH] feat: custom text selection color --- .../java/com/mopsicus/umi/MobileInput.java | 5 +++++ CHANGELOG.md | 4 ++++ Documentation~/index.md | 1 + Plugins/Android/Mobileinput.aar | Bin 22760 -> 22902 bytes README.md | 1 + README.ru.md | 1 + Runtime/MobileInputField.cs | 8 +++++++- 7 files changed, 19 insertions(+), 1 deletion(-) diff --git a/Android~/plugin/src/main/java/com/mopsicus/umi/MobileInput.java b/Android~/plugin/src/main/java/com/mopsicus/umi/MobileInput.java index 29af154..2cf4ec6 100644 --- a/Android~/plugin/src/main/java/com/mopsicus/umi/MobileInput.java +++ b/Android~/plugin/src/main/java/com/mopsicus/umi/MobileInput.java @@ -278,6 +278,10 @@ private void Create(int id, JSONObject data) { int caretColor_g = (int) (255.0f * data.getDouble("caret_color_g")); int caretColor_b = (int) (255.0f * data.getDouble("caret_color_b")); int caretColor_a = (int) (255.0f * data.getDouble("caret_color_a")); + int highlightColor_r = (int) (255.0f * data.getDouble("highlight_color_r")); + int highlightColor_g = (int) (255.0f * data.getDouble("highlight_color_g")); + int highlightColor_b = (int) (255.0f * data.getDouble("highlight_color_b")); + int highlightColor_a = (int) (255.0f * data.getDouble("highlight_color_a")); String contentType = data.getString("content_type"); String inputType = data.optString("input_type"); String keyboardType = data.optString("keyboard_type"); @@ -402,6 +406,7 @@ private void Create(int id, JSONObject data) { edit.setTextColor(Color.argb(textColor_a, textColor_r, textColor_g, textColor_b)); edit.setBackgroundColor(Color.argb(backColor_a, backColor_r, backColor_g, backColor_b)); edit.setHintTextColor(Color.argb(placeHolderColor_a, placeHolderColor_r, placeHolderColor_g, placeHolderColor_b)); + edit.setHighlightColor(Color.argb(highlightColor_a, highlightColor_r, highlightColor_g, highlightColor_b)); if (!customFont.equals("default")) { try { Typeface face = Typeface.createFromAsset(Plugin.activity.getAssets(), String.format("%s.ttf", customFont)); diff --git a/CHANGELOG.md b/CHANGELOG.md index f66d2d3..9644f33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ All notable changes to this project will be documented in this file. +## [2.0.3] - 2024-08-28 +- ### Added +- Custom text selection color (Android) + ## [2.0.2] - 2024-08-27 - ### Added - Custom caret/cursor/handles color diff --git a/Documentation~/index.md b/Documentation~/index.md index 2c9ed6f..9e8e9c7 100644 --- a/Documentation~/index.md +++ b/Documentation~/index.md @@ -127,6 +127,7 @@ Many options from `TMP Input Field` will be applied to the native field. You can - placeholder text - placeholder text color - cursor/caret color +- text selection color (Android, for iOS uses cursor/caret color) - character limit - font size - text align diff --git a/Plugins/Android/Mobileinput.aar b/Plugins/Android/Mobileinput.aar index c7ca32776411e57cfca0dcef8977dee160e55187..f2d7b8212f2976335379e4feb33613ec056f9680 100644 GIT binary patch delta 21804 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 delta 21649 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

q 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 diff --git a/README.md b/README.md index f85c936..1f35a4f 100644 --- a/README.md +++ b/README.md @@ -85,6 +85,7 @@ In the inspector, you can edit several options that will be applied to the nativ - placeholder text - placeholder text color - cursor/caret color +- text selection color (Android) - character limit - font size - text align diff --git a/README.ru.md b/README.ru.md index 0415918..8cd0d40 100644 --- a/README.ru.md +++ b/README.ru.md @@ -84,6 +84,7 @@ public class Bootstrap : MonoBehaviour { - цвет текста - цвет текста подсказки - цвет курсора/каретки +- цвет выделения текста (Android) - текст подсказки - лимит символов - размер шрифта diff --git a/Runtime/MobileInputField.cs b/Runtime/MobileInputField.cs index f075f54..2e9e402 100644 --- a/Runtime/MobileInputField.cs +++ b/Runtime/MobileInputField.cs @@ -39,6 +39,7 @@ struct MobileInputConfig { public Color BackgroundColor; public bool ChangeCaret; public Color CaretColor; + public Color HighlightColor; public string ContentType; public string InputType; public string KeyboardType; @@ -425,6 +426,7 @@ void PrepareNativeEdit() { _config.Placeholder = placeHolder.text; _config.PlaceholderColor = placeHolder.color; _config.CaretColor = _inputObject.caretColor; + _config.HighlightColor = _inputObject.selectionColor; _config.ChangeCaret = _inputObject.customCaretColor; _config.CharacterLimit = _inputObject.characterLimit; var rect = GetScreenRectFromRectTransform(_inputObjectText.rectTransform); @@ -582,7 +584,11 @@ void CreateNativeEdit() { data["caret_color_r"] = InvariantCultureString(_config.CaretColor.r); data["caret_color_g"] = InvariantCultureString(_config.CaretColor.g); data["caret_color_b"] = InvariantCultureString(_config.CaretColor.b); - data["caret_color_a"] = InvariantCultureString(_config.CaretColor.a); + data["caret_color_a"] = InvariantCultureString(_config.CaretColor.a); + data["highlight_color_r"] = InvariantCultureString(_config.HighlightColor.r); + data["highlight_color_g"] = InvariantCultureString(_config.HighlightColor.g); + data["highlight_color_b"] = InvariantCultureString(_config.HighlightColor.b); + data["highlight_color_a"] = InvariantCultureString(_config.HighlightColor.a); data["caret_color"] = _config.ChangeCaret; data["multiline"] = _config.Multiline; data["input_type"] = _config.InputType;