From aa07a91fa9526bdea8ecd24c536cfef452b09c43 Mon Sep 17 00:00:00 2001 From: tom79 Date: Tue, 25 Jun 2019 18:29:08 +0200 Subject: [PATCH] Some fixes with Peertube --- .../android/activities/BaseMainActivity.java | 22 +++++++++++++++++++ .../java/app/fedilab/android/client/API.java | 1 + .../fragments/DisplayStatusFragment.java | 11 +++++++--- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java b/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java index daec2dd24..f740b7c6b 100644 --- a/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java @@ -710,6 +710,28 @@ public abstract class BaseMainActivity extends BaseActivity manageTimelineList(false); tabLayout.setVisibility(View.GONE); } + }else if ( social == UpdateAccountInfoAsyncTask.SOCIAL.PEERTUBE) { + DisplayStatusFragment statusFragment; + Bundle bundle = new Bundle(); + statusFragment = new DisplayStatusFragment(); + bundle.putSerializable("type", RetrieveFeedsAsyncTask.Type.REMOTE_INSTANCE); + bundle.putString("remote_instance", instance); + bundle.putString("instanceType", "PEERTUBE"); + bundle.putString("search_peertube", query); + statusFragment.setArguments(bundle); + String fragmentTag = "REMOTE_INSTANCE"; + FragmentManager fragmentManager = getSupportFragmentManager(); + fragmentManager.beginTransaction() + .replace(R.id.main_app_container, statusFragment, fragmentTag).commit(); + if( main_app_container.getVisibility() == View.GONE){ + + main_app_container.setVisibility(View.VISIBLE); + toolbarTitle.setVisibility(View.VISIBLE); + delete_instance.setVisibility(View.VISIBLE); + viewPager.setVisibility(View.GONE); + manageTimelineList(false); + tabLayout.setVisibility(View.GONE); + } }else{ if( social != UpdateAccountInfoAsyncTask.SOCIAL.GNU) { boolean isAccount = false; diff --git a/app/src/main/java/app/fedilab/android/client/API.java b/app/src/main/java/app/fedilab/android/client/API.java index 13f25478a..912425d29 100644 --- a/app/src/main/java/app/fedilab/android/client/API.java +++ b/app/src/main/java/app/fedilab/android/client/API.java @@ -1690,6 +1690,7 @@ public class API { } catch (UnsupportedEncodingException e) { params.put("search", query); } + List peertubes = new ArrayList<>(); try { HttpsConnection httpsConnection = new HttpsConnection(context, this.instance); diff --git a/app/src/main/java/app/fedilab/android/fragments/DisplayStatusFragment.java b/app/src/main/java/app/fedilab/android/fragments/DisplayStatusFragment.java index 1b759601d..6fd90c041 100644 --- a/app/src/main/java/app/fedilab/android/fragments/DisplayStatusFragment.java +++ b/app/src/main/java/app/fedilab/android/fragments/DisplayStatusFragment.java @@ -340,21 +340,26 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn } }); - else + else { swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { - if( peertubes.size() > 0) { + if (peertubes.size() > 0) { int size = peertubes.size(); isSwipped = true; peertubes.clear(); peertubes = new ArrayList<>(); max_id = "0"; peertubeAdapater.notifyItemRangeRemoved(0, size); - asyncTask = new RetrieveFeedsAsyncTask(context, type, remoteInstance, "0", DisplayStatusFragment.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + if (search_peertube == null) { //Not a Peertube search + asyncTask = new RetrieveFeedsAsyncTask(context, type, remoteInstance, "0", DisplayStatusFragment.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + } else { + asyncTask = new RetrievePeertubeSearchAsyncTask(context, remoteInstance, search_peertube, DisplayStatusFragment.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + } } } }); + } SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE); int theme = sharedpreferences.getInt(Helper.SET_THEME, Helper.THEME_DARK); switch (theme){