From 163eaf961286807bc5cd31175de6f1b72fa8cd07 Mon Sep 17 00:00:00 2001 From: Eric House Date: Thu, 4 Apr 2019 18:51:11 -0700 Subject: [PATCH] fix invite-how alert not scrolling By setting a custom view I wasn't using I broke scrolling of the AlertDialog's list view which I was using. Known bug apparently.... --- .../eehouse/android/xw4/ConfirmThenAlert.java | 4 +-- .../eehouse/android/xw4/DlgDelegateAlert.java | 27 +++++++++++-------- .../eehouse/android/xw4/EnableSMSAlert.java | 3 +-- .../android/xw4/InviteChoicesAlert.java | 4 +-- .../eehouse/android/xw4/NotAgainAlert.java | 4 +-- .../org/eehouse/android/xw4/OkOnlyAlert.java | 3 +-- 6 files changed, 23 insertions(+), 22 deletions(-) diff --git a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmThenAlert.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmThenAlert.java index 516c63bc0..c875d674a 100644 --- a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmThenAlert.java +++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmThenAlert.java @@ -41,9 +41,9 @@ public class ConfirmThenAlert extends DlgDelegateAlert { @Override public void populateBuilder( Context context, DlgState state, - AlertDialog.Builder builder, - NotAgainView naView ) + AlertDialog.Builder builder ) { + NotAgainView naView = addNAView( state, builder ); OnClickListener lstnr = mkCallbackClickListener( naView ); builder.setTitle( state.m_titleId == 0 ? R.string.query_title : state.m_titleId ) diff --git a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegateAlert.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegateAlert.java index dddd37a15..5f45b7270 100644 --- a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegateAlert.java +++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegateAlert.java @@ -64,27 +64,32 @@ abstract class DlgDelegateAlert extends XWDialogFragment { } abstract void populateBuilder( Context context, DlgState state, - AlertDialog.Builder builder, - NotAgainView naView ); + AlertDialog.Builder builder ); Dialog create( AlertDialog.Builder builder ) { return builder.create(); } + protected NotAgainView addNAView( DlgState state, AlertDialog.Builder builder ) + { + Context context = getActivity(); + NotAgainView naView = + ((NotAgainView)LocUtils.inflate( context, R.layout.not_again_view )) + .setMessage( state.m_msg ) + .setShowNACheckbox( 0 != state.m_prefsNAKey ); + + builder.setView( naView ); + + return naView; + } + @Override public final Dialog onCreateDialog( Bundle sis ) { Context context = getActivity(); DlgState state = getState( sis ); - NotAgainView naView = - ((NotAgainView)LocUtils.inflate( context, R.layout.not_again_view )) - .setMessage( state.m_msg ) - .setShowNACheckbox( 0 != state.m_prefsNAKey ); + AlertDialog.Builder builder = LocUtils.makeAlertBuilder( context ); - AlertDialog.Builder builder = LocUtils.makeAlertBuilder( context ) - .setView( naView ) - ; - - populateBuilder( context, state, builder, naView ); + populateBuilder( context, state, builder ); return create( builder ); } diff --git a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/EnableSMSAlert.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/EnableSMSAlert.java index efb1cc16f..bc084421a 100644 --- a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/EnableSMSAlert.java +++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/EnableSMSAlert.java @@ -47,8 +47,7 @@ public class EnableSMSAlert extends DlgDelegateAlert { @Override public void populateBuilder( Context context, final DlgState state, - AlertDialog.Builder builder, - NotAgainView naView ) + AlertDialog.Builder builder ) { View layout = LocUtils.inflate( context, R.layout.confirm_sms ); mSpinner = (Spinner)layout.findViewById( R.id.confirm_sms_reasons ); diff --git a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/InviteChoicesAlert.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/InviteChoicesAlert.java index afd13ae2d..b3f13360c 100644 --- a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/InviteChoicesAlert.java +++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/InviteChoicesAlert.java @@ -35,7 +35,6 @@ import java.util.List; import org.eehouse.android.xw4.DBUtils.SentInvitesInfo; import org.eehouse.android.xw4.DlgDelegate.Action; import org.eehouse.android.xw4.DlgDelegate.ActionPair; -import org.eehouse.android.xw4.DlgDelegate.ConfirmThenBuilder; import org.eehouse.android.xw4.DlgDelegate.DlgClickNotify.InviteMeans; import org.eehouse.android.xw4.DlgDelegate.NotAgainBuilder; import org.eehouse.android.xw4.Perms23.Perm; @@ -54,8 +53,7 @@ public class InviteChoicesAlert extends DlgDelegateAlert { @Override public void populateBuilder( final Context context, final DlgState state, - AlertDialog.Builder builder, - NotAgainView naView ) + AlertDialog.Builder builder ) { final ArrayList means = new ArrayList(); diff --git a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/NotAgainAlert.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/NotAgainAlert.java index 55962c505..5a83acfb2 100644 --- a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/NotAgainAlert.java +++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/NotAgainAlert.java @@ -47,9 +47,9 @@ public class NotAgainAlert extends DlgDelegateAlert { @Override public void populateBuilder( Context context, DlgState state, - AlertDialog.Builder builder, - NotAgainView naView ) + AlertDialog.Builder builder ) { + NotAgainView naView = addNAView( state, builder ); builder.setTitle( R.string.newbie_title ) .setPositiveButton( android.R.string.ok, mkCallbackClickListener( naView ) ); diff --git a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/OkOnlyAlert.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/OkOnlyAlert.java index afc1491ab..9b53ef991 100644 --- a/xwords4/android/app/src/main/java/org/eehouse/android/xw4/OkOnlyAlert.java +++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/OkOnlyAlert.java @@ -47,8 +47,7 @@ public class OkOnlyAlert extends DlgDelegateAlert { @Override public void populateBuilder( Context context, DlgState state, - AlertDialog.Builder builder, - NotAgainView naView ) + AlertDialog.Builder builder ) { builder.setTitle( state.m_titleId == 0 ? R.string.info_title : state.m_titleId ) .setPositiveButton( android.R.string.ok, null )