pull/594/head
jhengazuki 3 months ago
parent 0f4fd87be3
commit a3a2b87dc6
  1. 8
      app/src/main/java/com/fongmi/android/tv/bean/Device.java
  2. 2
      app/src/main/java/com/fongmi/android/tv/ui/adapter/BaseDiffAdapter.java
  3. 1
      app/src/mobile/java/com/fongmi/android/tv/ui/adapter/DeviceAdapter.java
  4. 4
      app/src/mobile/java/com/fongmi/android/tv/ui/dialog/CastDialog.java
  5. 2
      app/src/mobile/java/com/fongmi/android/tv/ui/dialog/SyncDialog.java

@ -20,7 +20,6 @@ import com.google.gson.annotations.SerializedName;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Objects;
@Entity(indices = @Index(value = {"uuid", "name"}, unique = true)) @Entity(indices = @Index(value = {"uuid", "name"}, unique = true))
public class Device implements Diffable<Device> { public class Device implements Diffable<Device> {
@ -164,16 +163,11 @@ public class Device implements Diffable<Device> {
AppDatabase.get().getDeviceDao().delete(); AppDatabase.get().getDeviceDao().delete();
} }
@Override
public int hashCode() {
return Objects.hash(getUuid(), getName());
}
@Override @Override
public boolean equals(@Nullable Object obj) { public boolean equals(@Nullable Object obj) {
if (this == obj) return true; if (this == obj) return true;
if (!(obj instanceof Device it)) return false; if (!(obj instanceof Device it)) return false;
return getUuid().equals(it.getUuid()) && getName().equals(it.getName()); return getUuid().equals(it.getUuid());
} }
@NonNull @NonNull

@ -47,7 +47,7 @@ public abstract class BaseDiffAdapter<T extends Diffable<T>, VH extends Recycler
public void sort(Comparator<T> comparator) { public void sort(Comparator<T> comparator) {
List<T> current = new ArrayList<>(getItems()); List<T> current = new ArrayList<>(getItems());
if (current.isEmpty()) return; if (current.size() < 2) return;
current.sort(comparator); current.sort(comparator);
setItems(current); setItems(current);
} }

@ -36,6 +36,7 @@ public class DeviceAdapter extends BaseDiffAdapter<Device, DeviceAdapter.ViewHol
@Override @Override
public void addItems(List<Device> items) { public void addItems(List<Device> items) {
if (items.isEmpty()) return;
super.addItems(items); super.addItems(items);
sort(new Device.Sorter()); sort(new Device.Sorter());
} }

@ -142,9 +142,9 @@ public class CastDialog extends BaseDialog implements DeviceAdapter.OnClickListe
} }
private void onRefresh() { private void onRefresh() {
if (fm) scanTask.start(adapter.getIps());
DLNACastManager.INSTANCE.search(null);
adapter.clear(); adapter.clear();
DLNACastManager.INSTANCE.search(null);
if (fm) scanTask.start(adapter.getIps());
} }
private void onCasted() { private void onCasted() {

@ -137,8 +137,8 @@ public class SyncDialog extends BaseDialog implements DeviceAdapter.OnClickListe
} }
private void onRefresh() { private void onRefresh() {
scanTask.start(adapter.getIps());
adapter.clear(); adapter.clear();
scanTask.start(adapter.getIps());
} }
private void onSuccess() { private void onSuccess() {

Loading…
Cancel
Save