From ef1744ac52ec89b6077568757705eb8f9bb20ff4 Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Tue, 21 Mar 2023 21:47:31 -0500 Subject: [PATCH] Allow experimental suffix/prefix-label extensions --- src/cheogram/res/layout/command_text_field.xml | 1 + .../siacs/conversations/entities/Conversation.java | 12 ++++++++++++ src/main/res/values/dimens.xml | 1 + 3 files changed, 14 insertions(+) diff --git a/src/cheogram/res/layout/command_text_field.xml b/src/cheogram/res/layout/command_text_field.xml index 13af8548deba73b68e50412e677027a4a91df801..84c829fd7cd89d8fb1ac8c6a47f30ea595f897d6 100644 --- a/src/cheogram/res/layout/command_text_field.xml +++ b/src/cheogram/res/layout/command_text_field.xml @@ -9,6 +9,7 @@ android:paddingLeft="8dp" android:paddingRight="8dp" android:paddingBottom="16dp" + app:suffixTextAppearance="@style/Widget.Conversations.EditText" app:errorTextAppearance="@style/TextAppearance.Conversations.Design.Error" app:hintTextAppearance="@style/TextAppearance.Conversations.Design.Hint" app:helperTextTextAppearance="@style/TextAppearance.Conversations.Status" diff --git a/src/main/java/eu/siacs/conversations/entities/Conversation.java b/src/main/java/eu/siacs/conversations/entities/Conversation.java index a6fb44ecb8d8ac0a0de9b5dee87386bd09f1f8fd..57d433ca6872b78c1297a4173a58f3d43f981139 100644 --- a/src/main/java/eu/siacs/conversations/entities/Conversation.java +++ b/src/main/java/eu/siacs/conversations/entities/Conversation.java @@ -2059,6 +2059,18 @@ public class Conversation extends AbstractEntity implements Blockable, Comparabl binding.textinputLayout.setErrorEnabled(field.error != null); if (field.error != null) binding.textinputLayout.setError(field.error); + binding.textinput.setTextAlignment(View.TEXT_ALIGNMENT_GRAVITY); + String suffixLabel = field.el.findChildContent("x", "https://ns.cheogram.com/suffix-label"); + if (suffixLabel != null) { + binding.textinputLayout.setSuffixText(suffixLabel); + binding.textinput.setTextAlignment(View.TEXT_ALIGNMENT_TEXT_END); + } + + String prefixLabel = field.el.findChildContent("x", "https://ns.cheogram.com/prefix-label"); + if (prefixLabel != null) { + binding.textinputLayout.setPrefixText(prefixLabel); + } + mValue = field.getValue(); binding.textinput.setText(mValue.getContent()); setupInputType(field.el, binding.textinput, binding.textinputLayout); diff --git a/src/main/res/values/dimens.xml b/src/main/res/values/dimens.xml index 16a8cef1ac844d79e10e7aab61292cc6f4f4a8d6..f8b031c28392d64d25b23d63e3600b383ac33d51 100644 --- a/src/main/res/values/dimens.xml +++ b/src/main/res/values/dimens.xml @@ -51,4 +51,5 @@ 16dp 4dp 20sp + 0dp