aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/me
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/me')
-rw-r--r--app/src/main/java/me/brysonsteck/wiimmfiwatcher/AboutFragment.java46
-rw-r--r--app/src/main/java/me/brysonsteck/wiimmfiwatcher/MainActivity.java22
-rw-r--r--app/src/main/java/me/brysonsteck/wiimmfiwatcher/WatchCodeFragment.java2
-rw-r--r--app/src/main/java/me/brysonsteck/wiimmfiwatcher/database/FriendCodeDao.java4
-rw-r--r--app/src/main/java/me/brysonsteck/wiimmfiwatcher/viewmodel/FriendCodeViewModel.java8
5 files changed, 82 insertions, 0 deletions
diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/AboutFragment.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/AboutFragment.java
index 7851977..4cd51fd 100644
--- a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/AboutFragment.java
+++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/AboutFragment.java
@@ -1,7 +1,11 @@
package me.brysonsteck.wiimmfiwatcher;
+import android.annotation.SuppressLint;
import android.os.Bundle;
+import android.text.Html;
+import android.text.method.LinkMovementMethod;
import android.view.View;
+import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -10,9 +14,51 @@ import androidx.fragment.app.Fragment;
public class AboutFragment extends Fragment {
public AboutFragment() { super(R.layout.about_fragment); }
+ @SuppressLint("SetTextI18n")
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
+
+ TextView aboutWatcher = view.findViewById(R.id.about_watcher_text);
+ TextView aboutMe = view.findViewById(R.id.about_me_text);
+ TextView github = view.findViewById(R.id.github_text);
+ TextView donations = view.findViewById(R.id.donations_text);
+ TextView contact = view.findViewById(R.id.contact_text);
+ TextView bugs = view.findViewById(R.id.bugs_text);
+
+ aboutWatcher.setText("Wiimmfi Watcher is an UNOFFICIAL application created for a school project that I have decided to turn into a full application. " +
+ "This application was made to provide an easy shortcut to the Wiimmfi website and display data in a mobile friendly way, since the official website doesn't have a mobile friendly version. " +
+ "Free and open source, you can watch your Wiimmfi Mario Kart Wii matches on your phone in a quick and easy way. " +
+ "");
+
+ aboutMe.setText("Hi there! My name is Bryson Steck. I am a student studying Computer Science at Utah State University. This is my first official application that I'm maintaining. " +
+ "This whole \"application on the Google Play Store\" thing is new to me, so please be patient as I am learning how to maintain something like this. " +
+ "I hope you enjoy my first application!");
+
+ github.setClickable(true);
+ github.setMovementMethod(LinkMovementMethod.getInstance());
+ String githubLink = "<a href='https://github.com/brysonsteck/wiimmfi-watcher/tree/master'>here.</a>";
+
+// github.setText("All of the code in this project is open source on my GitHub repository " + Html.fromHtml(githubLink) + " You are free to use this code and expand upon it under the GNU General Public License.");
+ github.setText(R.string.github);
+// donations.setMovementMethod(LinkMovementMethod.getInstance());
+// String donationsLink = "<a href='https://github.com/brysonsteck/wiimmfi-watcher/tree/master'>here.</a>";
+ donations.setText("Since this application is free and the code is open source, I do not receive income from maintaining this app. Because of that, I'd appreciate any donation in the following methods:\n\n" +
+ "PayPal: @bryzinga\n" +
+ "Venmo: @brysonsteck\n" +
+ "Bitcoin: 1Kbnp5JMTKd7a3Zs2WWm2JMCjfVb5tpcky\n" +
+ "Litecoin: LRboJVNzoJCjXHmwN6RQgyvYEQjjaFzEA7\n" +
+ "Dogecoin: DMx362YBEBYw1uDGetX3svdg8RypHsWTCS");
+
+ contact.setText("If you would like to get ahold of me for any reason unrelated to bug reports or this app in general, you can contact me through email at steck.bryson@gmail.com " +
+ "or on Discord at bryzinga#9971.");
+
+// String todoList = "<a href='https://github.com/brysonsteck/wiimmfi-watcher/blob/master/TODO.md'>todo list.</a>";
+// String issueGithub = "<a href='https://github.com/brysonsteck/wiimmfi-watcher/issues'>here.</a>";
+// bugs.setText("Speaking of bugs, did you find a bug? First, make sure that the issue you found is not listed on my " + Html.fromHtml(todoList) +
+// "It's possible I'm already aware of it or working on it. If your issue is not addressed on the todo list, then you can create an issue on my GitHub repository " + Html.fromHtml(issueGithub) +
+// "If you aren't sure how to use GitHub, you can also fill out this Google Forum.");
+ bugs.setText(R.string.bugs);
}
}
diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/MainActivity.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/MainActivity.java
index e48486e..c3933ee 100644
--- a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/MainActivity.java
+++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/MainActivity.java
@@ -7,8 +7,15 @@ import android.view.View;
import androidx.appcompat.app.AppCompatActivity;
import androidx.databinding.ObservableArrayList;
+import androidx.lifecycle.ViewModelProvider;
+import androidx.room.Room;
+import androidx.sqlite.db.SimpleSQLiteQuery;
+
+import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton;
+
import me.brysonsteck.wiimmfiwatcher.database.AppDatabase;
import me.brysonsteck.wiimmfiwatcher.model.FriendCode;
+import me.brysonsteck.wiimmfiwatcher.viewmodel.FriendCodeViewModel;
public class MainActivity extends AppCompatActivity {
ObservableArrayList<FriendCode> recentFCList = new ObservableArrayList<>();
@@ -27,7 +34,22 @@ public class MainActivity extends AppCompatActivity {
}
setContentView(R.layout.activity_main);
+ database = Room.databaseBuilder(this, AppDatabase.class, "friend-codes-db").build();
View aboutButton = findViewById(R.id.about_button);
+ ExtendedFloatingActionButton clearButton = findViewById(R.id.clear_button);
+ FriendCodeViewModel viewModel = new ViewModelProvider(MainActivity.this).get(FriendCodeViewModel.class);
+ clearButton.setOnClickListener(new View.OnClickListener() {
+
+
+ @Override
+ public void onClick(View view) {
+ new Thread(() -> {
+ database.clearAllTables();
+ database.query(new SimpleSQLiteQuery("DELETE FROM friendcode"));
+ });
+ }
+ });
+
aboutButton.setOnClickListener((about) -> {
getSupportFragmentManager().beginTransaction()
diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/WatchCodeFragment.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/WatchCodeFragment.java
index 942da0f..414519c 100644
--- a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/WatchCodeFragment.java
+++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/WatchCodeFragment.java
@@ -14,6 +14,7 @@ import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
+import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton;
import com.google.android.material.textview.MaterialTextView;
import me.brysonsteck.wiimmfiwatcher.model.FriendCode;
@@ -108,5 +109,6 @@ public class WatchCodeFragment extends Fragment {
});
+
}
}
diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/database/FriendCodeDao.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/database/FriendCodeDao.java
index 24e8762..1b0788e 100644
--- a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/database/FriendCodeDao.java
+++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/database/FriendCodeDao.java
@@ -27,4 +27,8 @@ public interface FriendCodeDao {
@Delete
public void delete(FriendCode friendCode);
+
+ @Query("DELETE FROM friendcode")
+ public void nukeTable();
+
}
diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/viewmodel/FriendCodeViewModel.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/viewmodel/FriendCodeViewModel.java
index ae300c0..87db049 100644
--- a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/viewmodel/FriendCodeViewModel.java
+++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/viewmodel/FriendCodeViewModel.java
@@ -1,6 +1,7 @@
package me.brysonsteck.wiimmfiwatcher.viewmodel;
import android.app.Application;
+import android.database.sqlite.SQLiteDatabase;
import androidx.databinding.ObservableArrayList;
import androidx.lifecycle.AndroidViewModel;
@@ -45,6 +46,13 @@ public class FriendCodeViewModel extends AndroidViewModel {
return entries;
}
+ public boolean deleteAll() {
+ for (FriendCode entry: entries) {
+ db.getFriendCodeDao().nukeTable();
+ }
+ return true;
+ }
+
public void saveFriendCode(String name, String friendCode) {
saving.setValue(true);
new Thread(() -> {