compose: focus to/cc/bcc field on label click
This commit is contained in:
parent
38b64ea651
commit
fb4cee428a
3 changed files with 49 additions and 0 deletions
|
@ -72,6 +72,13 @@ public class RecipientMvpView implements OnFocusChangeListener, OnClickListener
|
|||
|
||||
View recipientExpander = activity.findViewById(R.id.recipient_expander);
|
||||
recipientExpander.setOnClickListener(this);
|
||||
|
||||
View toLabel = activity.findViewById(R.id.to_label);
|
||||
View ccLabel = activity.findViewById(R.id.cc_label);
|
||||
View bccLabel = activity.findViewById(R.id.bcc_label);
|
||||
toLabel.setOnClickListener(this);
|
||||
ccLabel.setOnClickListener(this);
|
||||
bccLabel.setOnClickListener(this);
|
||||
}
|
||||
|
||||
public void setPresenter(final RecipientPresenter presenter) {
|
||||
|
@ -152,6 +159,14 @@ public class RecipientMvpView implements OnFocusChangeListener, OnClickListener
|
|||
toView.requestFocus();
|
||||
}
|
||||
|
||||
public void requestFocusOnCcField() {
|
||||
ccView.requestFocus();
|
||||
}
|
||||
|
||||
public void requestFocusOnBccField() {
|
||||
bccView.requestFocus();
|
||||
}
|
||||
|
||||
public void setFontSizes(FontSizes fontSizes, int fontSize) {
|
||||
fontSizes.setViewTextSize(toView, fontSize);
|
||||
fontSizes.setViewTextSize(ccView, fontSize);
|
||||
|
@ -346,6 +361,18 @@ public class RecipientMvpView implements OnFocusChangeListener, OnClickListener
|
|||
@Override
|
||||
public void onClick(View view) {
|
||||
switch (view.getId()) {
|
||||
case R.id.to_label: {
|
||||
presenter.onClickToLabel();
|
||||
break;
|
||||
}
|
||||
case R.id.cc_label: {
|
||||
presenter.onClickCcLabel();
|
||||
break;
|
||||
}
|
||||
case R.id.bcc_label: {
|
||||
presenter.onClickBccLabel();
|
||||
break;
|
||||
}
|
||||
case R.id.recipient_expander: {
|
||||
presenter.onClickRecipientExpander();
|
||||
break;
|
||||
|
|
|
@ -282,6 +282,18 @@ public class RecipientPresenter implements PermissionPingCallback {
|
|||
return result.toArray(new Address[result.size()]);
|
||||
}
|
||||
|
||||
public void onClickToLabel() {
|
||||
recipientMvpView.requestFocusOnToField();
|
||||
}
|
||||
|
||||
public void onClickCcLabel() {
|
||||
recipientMvpView.requestFocusOnCcField();
|
||||
}
|
||||
|
||||
public void onClickBccLabel() {
|
||||
recipientMvpView.requestFocusOnBccField();
|
||||
}
|
||||
|
||||
public void onClickRecipientExpander() {
|
||||
recipientMvpView.setCcVisibility(true);
|
||||
recipientMvpView.setBccVisibility(true);
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="8dp"
|
||||
android:id="@+id/from_label"
|
||||
android:minWidth="50dp"
|
||||
android:text="@string/recipient_from"
|
||||
|
@ -211,6 +213,8 @@
|
|||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="8dp"
|
||||
android:id="@+id/to_label"
|
||||
android:labelFor="@+id/to"
|
||||
android:minWidth="50dp"
|
||||
|
@ -285,7 +289,10 @@
|
|||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="8dp"
|
||||
android:minWidth="50dp"
|
||||
android:id="@+id/cc_label"
|
||||
android:labelFor="@+id/cc"
|
||||
android:text="@string/recipient_cc"
|
||||
style="@style/ComposeTextLabel" />
|
||||
|
@ -327,7 +334,10 @@
|
|||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="8dp"
|
||||
android:minWidth="50dp"
|
||||
android:id="@+id/bcc_label"
|
||||
android:labelFor="@+id/bcc"
|
||||
android:text="@string/recipient_bcc"
|
||||
style="@style/ComposeTextLabel" />
|
||||
|
|
Loading…
Reference in a new issue