60 lines
2.0 KiB
Java
60 lines
2.0 KiB
Java
package org.mercury_im.messenger.ui.roster.contacts;
|
|
|
|
import android.app.AlertDialog;
|
|
import android.app.Dialog;
|
|
import android.content.DialogInterface;
|
|
import android.os.Bundle;
|
|
import android.view.LayoutInflater;
|
|
import android.view.View;
|
|
import android.widget.ArrayAdapter;
|
|
import android.widget.Spinner;
|
|
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.appcompat.app.AppCompatDialogFragment;
|
|
import androidx.lifecycle.LiveData;
|
|
|
|
import org.mercury_im.messenger.R;
|
|
import org.mercury_im.messenger.entity.Account;
|
|
|
|
import java.util.List;
|
|
|
|
public class AddContactDialogFragment extends AppCompatDialogFragment {
|
|
|
|
private final LiveData<List<Account>> accounts;
|
|
|
|
public AddContactDialogFragment(LiveData<List<Account>> accountList) {
|
|
this.accounts = accountList;
|
|
}
|
|
|
|
@NonNull
|
|
@Override
|
|
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
|
|
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
|
LayoutInflater inflater = requireActivity().getLayoutInflater();
|
|
|
|
View dialogView = inflater.inflate(R.layout.dialog_add_contact, null);
|
|
Spinner spinner = dialogView.findViewById(R.id.spinner);
|
|
spinner.setAdapter(
|
|
new ArrayAdapter<>(requireActivity(), R.layout.support_simple_spinner_dropdown_item, accounts.getValue()));
|
|
|
|
builder.setMessage("Add Contact")
|
|
.setView(dialogView)
|
|
.setCancelable(false)
|
|
.setPositiveButton("Add", new DialogInterface.OnClickListener() {
|
|
@Override
|
|
public void onClick(DialogInterface dialog, int which) {
|
|
|
|
}
|
|
})
|
|
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
|
|
@Override
|
|
public void onClick(DialogInterface dialog, int which) {
|
|
AddContactDialogFragment.this.onCancel(dialog);
|
|
}
|
|
});
|
|
|
|
return builder.create();
|
|
}
|
|
}
|