mirror of
https://github.com/antebudimir/tempus.git
synced 2025-12-31 17:43:32 +00:00
fix: reload after action
This commit is contained in:
parent
44a18fc5aa
commit
df4ef74dd2
3 changed files with 18 additions and 4 deletions
|
|
@ -79,9 +79,9 @@ public class RadioEditorDialog extends DialogFragment {
|
|||
((AlertDialog) Objects.requireNonNull(getDialog())).getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(v -> {
|
||||
if (validateInput()) {
|
||||
if (radioEditorViewModel.getRadioToEdit() == null) {
|
||||
radioEditorViewModel.createRadio(radioName, radioStreamURL, radioHomepageURL);
|
||||
radioEditorViewModel.createRadio(radioName, radioStreamURL, radioHomepageURL.isEmpty() ? null : radioHomepageURL);
|
||||
} else {
|
||||
radioEditorViewModel.updateRadio(radioName, radioStreamURL, radioHomepageURL);
|
||||
radioEditorViewModel.updateRadio(radioName, radioStreamURL, radioHomepageURL.isEmpty() ? null : radioHomepageURL);
|
||||
}
|
||||
|
||||
dismissDialog();
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package com.cappielloantonio.play.ui.fragment;
|
|||
|
||||
import android.content.ComponentName;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
|
@ -17,6 +18,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
|
|||
|
||||
import com.cappielloantonio.play.databinding.FragmentHomeTabRadioBinding;
|
||||
import com.cappielloantonio.play.interfaces.ClickCallback;
|
||||
import com.cappielloantonio.play.interfaces.RadioCallback;
|
||||
import com.cappielloantonio.play.service.MediaManager;
|
||||
import com.cappielloantonio.play.service.MediaService;
|
||||
import com.cappielloantonio.play.ui.activity.MainActivity;
|
||||
|
|
@ -28,7 +30,7 @@ import com.cappielloantonio.play.viewmodel.RadioViewModel;
|
|||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
|
||||
@UnstableApi
|
||||
public class HomeTabRadioFragment extends Fragment implements ClickCallback {
|
||||
public class HomeTabRadioFragment extends Fragment implements ClickCallback, RadioCallback {
|
||||
private static final String TAG = "HomeTabRadioFragment";
|
||||
|
||||
private FragmentHomeTabRadioBinding bind;
|
||||
|
|
@ -80,7 +82,7 @@ public class HomeTabRadioFragment extends Fragment implements ClickCallback {
|
|||
|
||||
private void init() {
|
||||
bind.internetRadioStationPreTextView.setOnClickListener(v -> {
|
||||
RadioEditorDialog dialog = new RadioEditorDialog(() -> radioViewModel.getInternetRadioStations(getViewLifecycleOwner()));
|
||||
RadioEditorDialog dialog = new RadioEditorDialog(this);
|
||||
dialog.show(activity.getSupportFragmentManager(), null);
|
||||
});
|
||||
|
||||
|
|
@ -133,4 +135,12 @@ public class HomeTabRadioFragment extends Fragment implements ClickCallback {
|
|||
dialog.setArguments(bundle);
|
||||
dialog.show(activity.getSupportFragmentManager(), null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDismiss() {
|
||||
new Handler().postDelayed(() -> {
|
||||
if (radioViewModel != null)
|
||||
radioViewModel.refreshInternetRadioStations(getViewLifecycleOwner());
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,4 +28,8 @@ public class RadioViewModel extends AndroidViewModel {
|
|||
radioRepository.getInternetRadioStations().observe(owner, internetRadioStations::postValue);
|
||||
return internetRadioStations;
|
||||
}
|
||||
|
||||
public void refreshInternetRadioStations(LifecycleOwner owner) {
|
||||
radioRepository.getInternetRadioStations().observe(owner, internetRadioStations::postValue);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue