confirm before deleting chat history

This commit is contained in:
Eric House 2015-08-20 07:03:21 -07:00
parent e5cf0ee4fb
commit f4b39287a5
2 changed files with 29 additions and 9 deletions

View file

@ -2579,4 +2579,8 @@
<string name="not_again_clip_expl_fmt">The \"%1$s\" option copies an
invitation URL to the clipboard. Paste it into the app of your
choice and send it to your friend.</string>
<string name="confirm_clear_chat">Are you sure you want to delete
all chat history for this game?\n\n(This action cannot be
undone.)</string>
</resources>

View file

@ -21,16 +21,18 @@
package org.eehouse.android.xw4;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MenuInflater;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import org.eehouse.android.xw4.DlgDelegate.Action;
public class ChatDelegate extends DelegateBase
implements View.OnClickListener {
@ -82,10 +84,7 @@ public class ChatDelegate extends DelegateBase
{
boolean handled = R.id.chat_menu_clear == item.getItemId();
if ( handled ) {
DBUtils.clearChatHistory( m_activity, m_rowid );
LinearLayout layout =
(LinearLayout)findViewById( R.id.chat_history );
layout.removeAllViews();
showConfirmThen( R.string.confirm_clear_chat, Action.CLEAR_ACTION );
}
return handled;
}
@ -105,4 +104,21 @@ public class ChatDelegate extends DelegateBase
}
finish();
}
@Override
public void dlgButtonClicked( Action action, int which, Object[] params )
{
switch ( action ) {
case CLEAR_ACTION:
if ( AlertDialog.BUTTON_POSITIVE == which ) {
DBUtils.clearChatHistory( m_activity, m_rowid );
LinearLayout layout =
(LinearLayout)findViewById( R.id.chat_history );
layout.removeAllViews();
}
break;
default:
super.dlgButtonClicked( action, which, params );
}
}
}