From: Damyan Ivanov Date: Sun, 28 Jun 2020 13:23:56 +0000 (+0300) Subject: fix focused comment text color on re-configuration; stop using Colors.defaultTextColor* X-Git-Tag: v0.14.1~7 X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=commitdiff_plain;h=2a10026b966907fa60376778295ce6818458b3d0 fix focused comment text color on re-configuration; stop using Colors.defaultTextColor* --- diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java index 9af8baca..3049bac4 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java @@ -30,6 +30,7 @@ import android.widget.EditText; import android.widget.FrameLayout; import android.widget.TextView; +import androidx.annotation.ColorInt; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.constraintlayout.widget.ConstraintLayout; @@ -69,6 +70,7 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder private NewTransactionModel.Item item; private TextView tvDate; private AutoCompleteTextView tvDescription; + private TextView tvDummy; private AutoCompleteTextView tvAccount; private TextView tvComment; private EditText tvAmount; @@ -107,6 +109,7 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder tvCurrency = itemView.findViewById(R.id.currency); tvDate = itemView.findViewById(R.id.new_transaction_date); tvDescription = itemView.findViewById(R.id.new_transaction_description); + tvDummy = itemView.findViewById(R.id.dummy_text); lHead = itemView.findViewById(R.id.ntr_data); lPadding = itemView.findViewById(R.id.ntr_padding); final View commentLayout = itemView.findViewById(R.id.comment_layout); @@ -166,10 +169,10 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder } if (id == R.id.comment) { - commentFocusChanged(commentLayout, tvComment, hasFocus); + commentFocusChanged(tvComment, hasFocus); } else if (id == R.id.transaction_comment) { - commentFocusChanged(transactionCommentLayout, tvTransactionComment, hasFocus); + commentFocusChanged(tvTransactionComment, hasFocus); } }; @@ -292,6 +295,8 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder } }; editableObserver = this::setEditable; + commentFocusChanged(tvTransactionComment, false); + commentFocusChanged(tvComment, false); focusedAccountObserver = index -> { if ((index == null) || !index.equals(getAdapterPosition()) || itemView.hasFocus()) return; @@ -430,15 +435,18 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder tvAmount.setMinEms(valid ? 4 : 5); }; } - private void commentFocusChanged(View layout, TextView textView, boolean hasFocus) { - int textColor; + private void commentFocusChanged(TextView textView, boolean hasFocus) { + @ColorInt int textColor; + textColor = tvDummy.getTextColors() + .getDefaultColor(); if (hasFocus) { - textColor = Colors.defaultTextColor; textView.setTypeface(null, Typeface.NORMAL); textView.setHint(R.string.transaction_account_comment_hint); } else { - textColor = Colors.defaultTextColorDisabled; + int alpha = (textColor >> 24 & 0xff); + alpha = 3 * alpha / 4; + textColor = (alpha << 24) | (0x00ffffff & textColor); textView.setTypeface(null, Typeface.ITALIC); textView.setHint(""); if (Misc.isEmptyOrNull(textView.getText())) { diff --git a/app/src/main/res/layout/new_transaction_row.xml b/app/src/main/res/layout/new_transaction_row.xml index af8281e2..e85b3c66 100644 --- a/app/src/main/res/layout/new_transaction_row.xml +++ b/app/src/main/res/layout/new_transaction_row.xml @@ -1,5 +1,5 @@