From 2abb9ca5578efa6e73d2bca8fdb7338752754ea7 Mon Sep 17 00:00:00 2001 From: Bryson Steck Date: Wed, 9 Jun 2021 22:19:58 -0600 Subject: organization --- .../wiimmfiwatcher/fragments/WatchCodeAdapter.java | 85 ++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 app/src/main/java/me/brysonsteck/wiimmfiwatcher/fragments/WatchCodeAdapter.java (limited to 'app/src/main/java/me/brysonsteck/wiimmfiwatcher/fragments/WatchCodeAdapter.java') diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/fragments/WatchCodeAdapter.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/fragments/WatchCodeAdapter.java new file mode 100644 index 0000000..400436b --- /dev/null +++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/fragments/WatchCodeAdapter.java @@ -0,0 +1,85 @@ +package me.brysonsteck.wiimmfiwatcher.fragments; + +import android.app.ProgressDialog; +import android.content.Context; +import android.content.Intent; +import android.content.res.Configuration; +import android.graphics.Color; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.databinding.ObservableArrayList; +import androidx.recyclerview.widget.RecyclerView; + +import com.google.android.material.button.MaterialButton; +import com.google.android.material.textview.MaterialTextView; + +import java.util.ArrayList; + +import me.brysonsteck.wiimmfiwatcher.R; +import me.brysonsteck.wiimmfiwatcher.model.FriendCode; +import me.brysonsteck.wiimmfiwatcher.wiimmfi.WiimmfiActivity; + +public class WatchCodeAdapter extends RecyclerView.Adapter{ + ObservableArrayList entries; + Context context; + MaterialTextView errorText; + ProgressDialog progressBar; + ArrayList recentCodes; + + public WatchCodeAdapter(Context context, ObservableArrayList entries, + MaterialTextView errorText, ProgressDialog progressBar) { + this.context = context; + this.entries = entries; + this.errorText = errorText; + this.progressBar = progressBar; + this.recentCodes = new ArrayList<>(); + } + + @NonNull + @Override + public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recent_friend_codes_item, parent, false); + return new ViewHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull ViewHolder holder, int position) { + String currentFC = entries.get(position).friendCode; + MaterialButton fcButton = holder.itemView.findViewById(R.id.recent_friend_code_button); + int nightModeFlags = + context.getResources().getConfiguration().uiMode & + Configuration.UI_MODE_NIGHT_MASK; + if (nightModeFlags == Configuration.UI_MODE_NIGHT_YES) { + // Night mode is active, we're using dark theme + fcButton.setBackgroundColor(Color.parseColor("#313131")); + } + fcButton.setText(currentFC); + fcButton.setOnClickListener(view -> { + progressBar.setCancelable(true); + progressBar.setMessage(holder.itemView.getResources().getString(R.string.locating_text, currentFC)); + progressBar.setProgressStyle(ProgressDialog.STYLE_SPINNER); + progressBar.setProgress(0); + progressBar.setMax(100); + progressBar.show(); + errorText.setText(""); + Intent intent = new Intent(view.getContext(), WiimmfiActivity.class); + intent.putExtra("friendCode", currentFC); + context.startActivity(intent); + }); + } + + + @Override + public int getItemCount() { + return entries.size(); + } + + class ViewHolder extends RecyclerView.ViewHolder { + public ViewHolder(@NonNull View itemView) { + super(itemView); + } + } +} -- cgit v1.2.3