Optimize fragments, add filters, fix search and clean up #439
|
@ -57,7 +57,9 @@ public class RepoDetailActivity extends BaseActivity implements BottomSheetRepoF
|
|||
private TextView textViewBadgeRelease;
|
||||
|
||||
private FragmentRefreshListener fragmentRefreshListener;
|
||||
private FragmentRefreshListenerPr fragmentRefreshListenerPr;
|
||||
|
||||
// issues interface
|
||||
public FragmentRefreshListener getFragmentRefreshListener() {
|
||||
return fragmentRefreshListener;
|
||||
}
|
||||
|
@ -70,6 +72,19 @@ public class RepoDetailActivity extends BaseActivity implements BottomSheetRepoF
|
|||
void onRefresh(String text);
|
||||
}
|
||||
|
||||
// pr interface
|
||||
public FragmentRefreshListenerPr getFragmentRefreshListenerPr() {
|
||||
return fragmentRefreshListenerPr;
|
||||
}
|
||||
|
||||
public void setFragmentRefreshListenerPr(FragmentRefreshListenerPr fragmentRefreshListenerPr) {
|
||||
this.fragmentRefreshListenerPr = fragmentRefreshListenerPr;
|
||||
}
|
||||
|
||||
public interface FragmentRefreshListenerPr {
|
||||
void onRefresh(String text);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getLayoutResourceId(){
|
||||
return R.layout.activity_repo_detail;
|
||||
|
@ -253,6 +268,10 @@ public class RepoDetailActivity extends BaseActivity implements BottomSheetRepoF
|
|||
BottomSheetIssuesFilterFragment filterBottomSheet = new BottomSheetIssuesFilterFragment();
|
||||
filterBottomSheet.show(getSupportFragmentManager(), "repoFilterMenuBottomSheet");
|
||||
return true;
|
||||
case R.id.filterPr:
|
||||
BottomSheetPullRequestFilterFragment filterPrBottomSheet = new BottomSheetPullRequestFilterFragment();
|
||||
filterPrBottomSheet.show(getSupportFragmentManager(), "repoFilterMenuPrBottomSheet");
|
||||
return true;
|
||||
default:
|
||||
return super.onOptionsItemSelected(item);
|
||||
}
|
||||
|
@ -311,15 +330,13 @@ public class RepoDetailActivity extends BaseActivity implements BottomSheetRepoF
|
|||
}
|
||||
break;
|
||||
case "openPr":
|
||||
//noinspection DuplicateBranchesInSwitch
|
||||
if(getFragmentRefreshListener()!= null){
|
||||
getFragmentRefreshListener().onRefresh("open");
|
||||
if(getFragmentRefreshListenerPr()!= null){
|
||||
getFragmentRefreshListenerPr().onRefresh("open");
|
||||
}
|
||||
break;
|
||||
case "closedPr":
|
||||
//noinspection DuplicateBranchesInSwitch
|
||||
if(getFragmentRefreshListener()!= null){
|
||||
getFragmentRefreshListener().onRefresh("closed");
|
||||
if(getFragmentRefreshListenerPr()!= null){
|
||||
getFragmentRefreshListenerPr().onRefresh("closed");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -10,7 +10,6 @@ import androidx.annotation.NonNull;
|
|||
import androidx.annotation.Nullable;
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
|
||||
import org.mian.gitnex.R;
|
||||
import org.mian.gitnex.util.TinyDB;
|
||||
|
||||
/**
|
||||
* Author M M Arif
|
||||
|
@ -26,8 +25,6 @@ public class BottomSheetPullRequestFilterFragment extends BottomSheetDialogFragm
|
|||
|
||||
View v = inflater.inflate(R.layout.bottom_sheet_pull_request_filter, container, false);
|
||||
|
||||
TinyDB tinyDb = new TinyDB(v.getContext());
|
||||
|
||||
TextView openPr = v.findViewById(R.id.openPr);
|
||||
TextView closedPr = v.findViewById(R.id.closedPr);
|
||||
|
||||
|
|
|
@ -105,7 +105,7 @@ public class PullRequestsFragment extends Fragment {
|
|||
recyclerView.setLayoutManager(new LinearLayoutManager(context));
|
||||
recyclerView.setAdapter(adapter);
|
||||
|
||||
((RepoDetailActivity) Objects.requireNonNull(getActivity())).setFragmentRefreshListener(prState -> {
|
||||
((RepoDetailActivity) Objects.requireNonNull(getActivity())).setFragmentRefreshListenerPr(prState -> {
|
||||
|
||||
adapter = new PullRequestsAdapter(getContext(), prList);
|
||||
tinyDb.putString("repoPrState", prState);
|
||||
|
@ -247,7 +247,7 @@ public class PullRequestsFragment extends Fragment {
|
|||
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
|
||||
|
||||
inflater.inflate(R.menu.search_menu, menu);
|
||||
inflater.inflate(R.menu.filter_menu, menu);
|
||||
inflater.inflate(R.menu.filter_menu_pr, menu);
|
||||
super.onCreateOptionsMenu(menu, inflater);
|
||||
|
||||
MenuItem searchItem = menu.findItem(R.id.action_search);
|
||||
|
|
12
app/src/main/res/menu/filter_menu_pr.xml
Normal file
12
app/src/main/res/menu/filter_menu_pr.xml
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<item
|
||||
android:id="@+id/filterPr"
|
||||
android:icon="@drawable/ic_filter"
|
||||
android:title="@string/strFilter"
|
||||
android:orderInCategory="0"
|
||||
app:showAsAction="ifRoom" />
|
||||
|
||||
</menu>
|
Reference in New Issue
Block a user