diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 61a9130..fb7f4a8 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index d5d35ec..d27ac8f 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,6 +1,20 @@
-
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index a37515f..b6fc004 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -2,15 +2,15 @@ apply plugin: 'com.android.application'
apply plugin: 'com.google.android.gms.oss-licenses-plugin'
android {
- compileSdkVersion 30
+ compileSdkVersion 31
buildToolsVersion "30.0.3"
defaultConfig {
applicationId 'com.kangtech.tauonremote'
minSdkVersion 22
- targetSdkVersion 30
- versionCode 5
- versionName "1.0 beta3"
+ targetSdkVersion 31
+ versionCode 6
+ versionName "1.0 beta4"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
@@ -37,18 +37,18 @@ android {
dependencies {
- implementation 'androidx.appcompat:appcompat:1.2.0'
- implementation 'com.google.android.material:material:1.2.1'
- implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
+ implementation 'androidx.appcompat:appcompat:1.3.1'
+ implementation 'com.google.android.material:material:1.4.0'
+ implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
//implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.2.0'
//implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0'
implementation 'androidx.multidex:multidex:2.0.1'
- implementation 'androidx.navigation:navigation-fragment:2.3.2'
- implementation 'androidx.navigation:navigation-ui:2.3.2'
- testImplementation 'junit:junit:4.13.1'
- androidTestImplementation 'androidx.test.ext:junit:1.1.2'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
+ implementation 'androidx.navigation:navigation-fragment:2.3.5'
+ implementation 'androidx.navigation:navigation-ui:2.3.5'
+ testImplementation 'junit:junit:4.13.2'
+ androidTestImplementation 'androidx.test.ext:junit:1.1.3'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
// Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
diff --git a/app/src/main/java/com/kangtech/tauonremote/view/AddServer.java b/app/src/main/java/com/kangtech/tauonremote/view/AddServer.java
index f43b357..cdc046c 100644
--- a/app/src/main/java/com/kangtech/tauonremote/view/AddServer.java
+++ b/app/src/main/java/com/kangtech/tauonremote/view/AddServer.java
@@ -69,12 +69,12 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_server);
- //set default NIGHT/Dark theme
+/* //set default NIGHT/Dark theme
if (SharedPreferencesUtils.getBoolean("light_enable", false)) {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
} else {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
- }
+ }*/
if (SharedPreferencesUtils.getBoolean("set_server", false)) {
Intent intent = new Intent(this, MainActivity.class);
@@ -133,7 +133,7 @@ public boolean onMenuItemClick(MenuItem item) {
public void run() {
refreshLayout.setRefreshing(true);
}
- },delay);
+ }, delay);
}
}
@@ -208,7 +208,7 @@ protected Void doInBackground(Void... voids) {
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
- adapter.notifyDataSetChanged();
+ adapter.notifyDataSetChanged();
}
});
@@ -250,7 +250,7 @@ private String getJSON(String url) {
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {
- sb.append(line+"\n");
+ sb.append(line + "\n");
}
br.close();
return sb.toString();
diff --git a/app/src/main/java/com/kangtech/tauonremote/view/SettingsActivity.java b/app/src/main/java/com/kangtech/tauonremote/view/SettingsActivity.java
index 9a2ed38..849268b 100644
--- a/app/src/main/java/com/kangtech/tauonremote/view/SettingsActivity.java
+++ b/app/src/main/java/com/kangtech/tauonremote/view/SettingsActivity.java
@@ -65,7 +65,7 @@ public void onClick(View v) {
}
});
- SwitchMaterial switchMaterial = findViewById(R.id.sm_setting_light);
+/* SwitchMaterial switchMaterial = findViewById(R.id.sm_setting_light);
if (AppCompatDelegate.getDefaultNightMode() == AppCompatDelegate.MODE_NIGHT_YES) {
switchMaterial.setChecked(false);
} else {
@@ -88,7 +88,7 @@ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
}
}
- });
+ });*/
SwitchMaterial smNotif = findViewById(R.id.sm_setting_notif);
TextView tvInfoNotif = findViewById(R.id.tv_info_notif_enable);
diff --git a/app/src/main/java/com/kangtech/tauonremote/view/fragment/album/AlbumFragment.java b/app/src/main/java/com/kangtech/tauonremote/view/fragment/album/AlbumFragment.java
index 4b42149..88f8dd8 100644
--- a/app/src/main/java/com/kangtech/tauonremote/view/fragment/album/AlbumFragment.java
+++ b/app/src/main/java/com/kangtech/tauonremote/view/fragment/album/AlbumFragment.java
@@ -2,15 +2,6 @@
import android.content.Context;
import android.os.Bundle;
-
-import androidx.annotation.Nullable;
-import androidx.appcompat.widget.SearchView;
-import androidx.appcompat.widget.Toolbar;
-import androidx.fragment.app.Fragment;
-import androidx.recyclerview.widget.GridLayoutManager;
-import androidx.recyclerview.widget.LinearLayoutManager;
-import androidx.recyclerview.widget.RecyclerView;
-
import android.os.Handler;
import android.util.Log;
import android.view.LayoutInflater;
@@ -19,21 +10,26 @@
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.TextView;
-import android.widget.Toast;
+
+import androidx.annotation.NonNull;
+import androidx.appcompat.widget.SearchView;
+import androidx.appcompat.widget.Toolbar;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.kangtech.tauonremote.R;
import com.kangtech.tauonremote.adapter.AlbumListAdapter;
-import com.kangtech.tauonremote.adapter.TrackListAdapter;
import com.kangtech.tauonremote.api.ApiServiceInterface;
import com.kangtech.tauonremote.model.album.AlbumListModel;
import com.kangtech.tauonremote.util.Server;
import com.kangtech.tauonremote.util.SharedPreferencesUtils;
+import java.util.Objects;
+
import io.reactivex.Observer;
import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.annotations.NonNull;
import io.reactivex.disposables.Disposable;
import io.reactivex.schedulers.Schedulers;
@@ -52,7 +48,7 @@ public class AlbumFragment extends Fragment {
private static AlbumFragment frag;
public AlbumFragment() {
- setHasOptionsMenu(true);
+ //setHasOptionsMenu(true);
}
public static AlbumFragment newInstance(String param1, String param2) {
@@ -65,10 +61,12 @@ public static AlbumFragment newInstance(String param1, String param2) {
}
public static void hideSearch() {
- if (!searchView.isIconified()) {
- searchView.clearFocus();
- searchView.setQuery("", false);
- searchItem.setVisible(false);
+ if (searchView != null) {
+ if (!searchView.isIconified()) {
+ searchView.clearFocus();
+ searchView.setQuery("", false);
+ searchItem.setVisible(false);
+ }
}
}
@@ -80,7 +78,7 @@ public static void reload() {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setHasOptionsMenu(true);
+ //setHasOptionsMenu(true);
apiServiceInterface = Server.getApiServiceInterface();
@@ -161,17 +159,17 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
mFab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- searchItem.setVisible(true);
+ Objects.requireNonNull(searchItem).setVisible(true);
searchView.setIconified(false);
+
}
});
-
return v;
}
@Override
- public void onCreateOptionsMenu(@androidx.annotation.NonNull Menu menu, @androidx.annotation.NonNull MenuInflater inflater) {
+ public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
inflater.inflate(R.menu.track_menu, menu);
searchItem = menu.findItem(R.id.menu_search_track);
diff --git a/app/src/main/java/com/kangtech/tauonremote/view/fragment/track/TrackFragment.java b/app/src/main/java/com/kangtech/tauonremote/view/fragment/track/TrackFragment.java
index cabf0aa..a3d901d 100644
--- a/app/src/main/java/com/kangtech/tauonremote/view/fragment/track/TrackFragment.java
+++ b/app/src/main/java/com/kangtech/tauonremote/view/fragment/track/TrackFragment.java
@@ -1,21 +1,12 @@
package com.kangtech.tauonremote.view.fragment.track;
+import static android.content.Context.MODE_PRIVATE;
+
import android.content.Context;
-import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.RequiresApi;
-import androidx.appcompat.widget.SearchView;
-import androidx.appcompat.widget.Toolbar;
-import androidx.fragment.app.Fragment;
-import androidx.recyclerview.widget.LinearLayoutManager;
-import androidx.recyclerview.widget.RecyclerView;
-
import android.os.Handler;
-import android.text.TextUtils;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
@@ -25,32 +16,29 @@
import android.view.ViewGroup;
import android.widget.Toast;
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
+import androidx.appcompat.widget.SearchView;
+import androidx.appcompat.widget.Toolbar;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.kangtech.tauonremote.R;
import com.kangtech.tauonremote.adapter.TrackListAdapter;
import com.kangtech.tauonremote.api.ApiServiceInterface;
-import com.kangtech.tauonremote.model.playlist.PlaylistModel;
import com.kangtech.tauonremote.model.track.TrackListModel;
-import com.kangtech.tauonremote.model.track.TrackModel;
import com.kangtech.tauonremote.util.Server;
import com.kangtech.tauonremote.util.SharedPreferencesUtils;
import com.kangtech.tauonremote.view.MainActivity;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Objects;
-
import io.reactivex.Observer;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
import io.reactivex.schedulers.Schedulers;
-import static android.content.Context.MODE_PRIVATE;
-
public class TrackFragment extends Fragment {
diff --git a/app/src/main/res/layout/activity_add_server.xml b/app/src/main/res/layout/activity_add_server.xml
index 47281a9..a088723 100644
--- a/app/src/main/res/layout/activity_add_server.xml
+++ b/app/src/main/res/layout/activity_add_server.xml
@@ -49,7 +49,7 @@
+ android:text="or enter IP address manually (for example: 192.168.1.2) and click Remote. \nMake sure the device is on the same local network (and port 7814/TCP is open)"/>
-
-
+ -->
+ app:layout_constraintTop_toBottomOf="@+id/ll_setting_changeserver_utama">
-
- #FFBB86FC
- #FF6200EE
- #FF3700B3
- #FF03DAC5
- #FF018786
-
-
- #0F0F0F
- #1A1A1A
- #1D8680
- #DD3D63
- #09EC7F
- #141414
- #3C3C3C
- #1E1E1E
- #D2D2D2
- #373737
- #FF000000
- #FFFFFFFF
-
\ No newline at end of file
diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml
deleted file mode 100644
index 9f68d61..0000000
--- a/app/src/main/res/values-night/themes.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index dc77750..583e95a 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -6,17 +6,17 @@
#FF03DAC5
#FF018786
-
- #FFFFFF
- #D9D9D9
+
+ #0F0F0F
+ #1A1A1A
#1D8680
#DD3D63
#09EC7F
- #E7E7E7
- #909090
- #EAEAEA
- #131313
- #747474
- #FFFFFF
- #000000
+ #141414
+ #3C3C3C
+ #1E1E1E
+ #D2D2D2
+ #373737
+ #FF000000
+ #FFFFFFFF
\ No newline at end of file
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index db8295b..5318295 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -1,6 +1,6 @@
-
-