Loading app/src/main/java/app/fedilab/android/BaseMainActivity.java +3 −2 Original line number Diff line number Diff line Loading @@ -90,6 +90,7 @@ import app.fedilab.android.activities.FollowRequestActivity; import app.fedilab.android.activities.InstanceActivity; import app.fedilab.android.activities.InstanceHealthActivity; import app.fedilab.android.activities.LoginActivity; import app.fedilab.android.activities.MainActivity; import app.fedilab.android.activities.MastodonListActivity; import app.fedilab.android.activities.PartnerShipActivity; import app.fedilab.android.activities.ProfileActivity; Loading Loading @@ -251,7 +252,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putString(PREF_USER_TOKEN, account.token); editor.commit(); Intent mainActivity = new Intent(this, BaseMainActivity.class); Intent mainActivity = new Intent(this, MainActivity.class); mainActivity.putExtra(Helper.INTENT_ACTION, Helper.OPEN_NOTIFICATION); startActivity(mainActivity); finish(); Loading Loading @@ -456,7 +457,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt editor.commit(); //The user is now aut //The user is now authenticated, it will be redirected to MainActivity Intent mainActivity = new Intent(this, BaseMainActivity.class); Intent mainActivity = new Intent(this, MainActivity.class); startActivity(mainActivity); finish(); headerMainBinding.ownerAccounts.setImageResource(R.drawable.ic_baseline_arrow_drop_down_24); Loading app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java +1 −1 Original line number Diff line number Diff line Loading @@ -100,7 +100,7 @@ public class WebviewConnectActivity extends BaseActivity { editor.commit(); //The user is now authenticated, it will be redirected to MainActivity Runnable myRunnable = () -> { Intent mainActivity = new Intent(activity, BaseMainActivity.class); Intent mainActivity = new Intent(activity, MainActivity.class); activity.startActivity(mainActivity); activity.finish(); }; Loading app/src/main/java/app/fedilab/android/helper/Helper.java +2 −1 Original line number Diff line number Diff line Loading @@ -124,6 +124,7 @@ import app.fedilab.android.BaseMainActivity; import app.fedilab.android.MainApplication; import app.fedilab.android.R; import app.fedilab.android.activities.LoginActivity; import app.fedilab.android.activities.MainActivity; import app.fedilab.android.activities.WebviewActivity; import app.fedilab.android.broadcastreceiver.ToastMessage; import app.fedilab.android.client.entities.api.Attachment; Loading Loading @@ -906,7 +907,7 @@ public class Helper { BaseMainActivity.currentToken = newAccount.token; BaseMainActivity.currentInstance = newAccount.instance; editor.commit(); Intent changeAccount = new Intent(activity, BaseMainActivity.class); Intent changeAccount = new Intent(activity, MainActivity.class); changeAccount.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); activity.startActivity(changeAccount); } Loading app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java +2 −1 Original line number Diff line number Diff line Loading @@ -49,6 +49,7 @@ import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.R; import app.fedilab.android.activities.MainActivity; import app.fedilab.android.client.endpoints.MastodonNotificationsService; import app.fedilab.android.client.entities.api.Notification; import app.fedilab.android.client.entities.api.Notifications; Loading Loading @@ -283,7 +284,7 @@ public class NotificationsHelper { } if (message != null) { //Some others notification final Intent intent = new Intent(context, BaseMainActivity.class); final Intent intent = new Intent(context, MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra(Helper.INTENT_ACTION, Helper.NOTIFICATION_INTENT); intent.putExtra(Helper.PREF_KEY_ID, account.user_id); Loading app/src/main/java/app/fedilab/android/helper/PinnedTimelineHelper.java +47 −5 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ import app.fedilab.android.client.entities.app.RemoteInstance; import app.fedilab.android.client.entities.app.TagTimeline; import app.fedilab.android.client.entities.app.Timeline; import app.fedilab.android.databinding.ActivityMainBinding; import app.fedilab.android.databinding.TabCustomViewBinding; import app.fedilab.android.exception.DBException; import app.fedilab.android.ui.fragment.timeline.FragmentMastodonConversation; import app.fedilab.android.ui.fragment.timeline.FragmentMastodonTimeline; Loading Loading @@ -149,9 +150,13 @@ public class PinnedTimelineHelper { //Small hack to hide first tabs (they represent the item of the bottom menu) int toRemove = itemToRemoveInBottomMenu(activity); List<String> tabTitle = new ArrayList<>(); List<RemoteInstance.InstanceType> tabTypeRemote = new ArrayList<>(); List<Timeline.TimeLineEnum> tabType = new ArrayList<>(); for (int i = 0; i < (BOTTOM_TIMELINE_COUNT - toRemove); i++) { activityMainBinding.tabLayout.addTab(activityMainBinding.tabLayout.newTab()); tabTitle.add(""); tabType.add(Timeline.TimeLineEnum.HOME); tabTypeRemote.add(RemoteInstance.InstanceType.MASTODON); ((ViewGroup) activityMainBinding.tabLayout.getChildAt(0)).getChildAt(i).setVisibility(View.GONE); } List<PinnedTimeline> pinnedTimelineVisibleList = new ArrayList<>(); Loading @@ -166,9 +171,6 @@ public class PinnedTimelineHelper { break; case TAG: name = pinnedTimeline.tagTimeline.name; if (!name.startsWith("#")) { name = "#" + name; } break; case REMOTE: name = pinnedTimeline.remoteInstance.host; Loading @@ -177,8 +179,13 @@ public class PinnedTimelineHelper { TextView tv = (TextView) LayoutInflater.from(activity).inflate(R.layout.custom_tab_instance, new LinearLayout(activity), false); tv.setText(name); tabTitle.add(name); tabType.add(pinnedTimeline.type); if (pinnedTimeline.type == Timeline.TimeLineEnum.REMOTE) { tabTypeRemote.add(pinnedTimeline.remoteInstance.type); } else { tabTypeRemote.add(null); } tab.setCustomView(tv); activityMainBinding.tabLayout.addTab(tab); pinnedTimelineVisibleList.add(pinnedTimeline); } Loading Loading @@ -225,7 +232,42 @@ public class PinnedTimelineHelper { } }); new TabLayoutMediator(activityMainBinding.tabLayout, activityMainBinding.viewPager, (tab, position) -> tab.setText(tabTitle.get(position)) (tab, position) -> { TabCustomViewBinding tabCustomViewBinding = TabCustomViewBinding.inflate(activity.getLayoutInflater()); tabCustomViewBinding.title.setText(tabTitle.get(position)); switch (tabType.get(position)) { case LIST: tabCustomViewBinding.icon.setImageResource(R.drawable.ic_tl_list); break; case TAG: tabCustomViewBinding.icon.setImageResource(R.drawable.ic_tl_tag); break; case REMOTE: switch (tabTypeRemote.get(position)) { case PIXELFED: tabCustomViewBinding.icon.setImageResource(R.drawable.pixelfed); break; case MASTODON: tabCustomViewBinding.icon.setImageResource(R.drawable.mastodon_icon_item); break; case MISSKEY: tabCustomViewBinding.icon.setImageResource(R.drawable.misskey); break; case NITTER: tabCustomViewBinding.icon.setImageResource(R.drawable.nitter); break; case GNU: tabCustomViewBinding.icon.setImageResource(R.drawable.ic_gnu_social); break; case PEERTUBE: tabCustomViewBinding.icon.setImageResource(R.drawable.peertube_icon); break; } break; } tab.setCustomView(tabCustomViewBinding.getRoot()); } ).attach(); activityMainBinding.tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { Loading Loading
app/src/main/java/app/fedilab/android/BaseMainActivity.java +3 −2 Original line number Diff line number Diff line Loading @@ -90,6 +90,7 @@ import app.fedilab.android.activities.FollowRequestActivity; import app.fedilab.android.activities.InstanceActivity; import app.fedilab.android.activities.InstanceHealthActivity; import app.fedilab.android.activities.LoginActivity; import app.fedilab.android.activities.MainActivity; import app.fedilab.android.activities.MastodonListActivity; import app.fedilab.android.activities.PartnerShipActivity; import app.fedilab.android.activities.ProfileActivity; Loading Loading @@ -251,7 +252,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putString(PREF_USER_TOKEN, account.token); editor.commit(); Intent mainActivity = new Intent(this, BaseMainActivity.class); Intent mainActivity = new Intent(this, MainActivity.class); mainActivity.putExtra(Helper.INTENT_ACTION, Helper.OPEN_NOTIFICATION); startActivity(mainActivity); finish(); Loading Loading @@ -456,7 +457,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt editor.commit(); //The user is now aut //The user is now authenticated, it will be redirected to MainActivity Intent mainActivity = new Intent(this, BaseMainActivity.class); Intent mainActivity = new Intent(this, MainActivity.class); startActivity(mainActivity); finish(); headerMainBinding.ownerAccounts.setImageResource(R.drawable.ic_baseline_arrow_drop_down_24); Loading
app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java +1 −1 Original line number Diff line number Diff line Loading @@ -100,7 +100,7 @@ public class WebviewConnectActivity extends BaseActivity { editor.commit(); //The user is now authenticated, it will be redirected to MainActivity Runnable myRunnable = () -> { Intent mainActivity = new Intent(activity, BaseMainActivity.class); Intent mainActivity = new Intent(activity, MainActivity.class); activity.startActivity(mainActivity); activity.finish(); }; Loading
app/src/main/java/app/fedilab/android/helper/Helper.java +2 −1 Original line number Diff line number Diff line Loading @@ -124,6 +124,7 @@ import app.fedilab.android.BaseMainActivity; import app.fedilab.android.MainApplication; import app.fedilab.android.R; import app.fedilab.android.activities.LoginActivity; import app.fedilab.android.activities.MainActivity; import app.fedilab.android.activities.WebviewActivity; import app.fedilab.android.broadcastreceiver.ToastMessage; import app.fedilab.android.client.entities.api.Attachment; Loading Loading @@ -906,7 +907,7 @@ public class Helper { BaseMainActivity.currentToken = newAccount.token; BaseMainActivity.currentInstance = newAccount.instance; editor.commit(); Intent changeAccount = new Intent(activity, BaseMainActivity.class); Intent changeAccount = new Intent(activity, MainActivity.class); changeAccount.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); activity.startActivity(changeAccount); } Loading
app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java +2 −1 Original line number Diff line number Diff line Loading @@ -49,6 +49,7 @@ import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.R; import app.fedilab.android.activities.MainActivity; import app.fedilab.android.client.endpoints.MastodonNotificationsService; import app.fedilab.android.client.entities.api.Notification; import app.fedilab.android.client.entities.api.Notifications; Loading Loading @@ -283,7 +284,7 @@ public class NotificationsHelper { } if (message != null) { //Some others notification final Intent intent = new Intent(context, BaseMainActivity.class); final Intent intent = new Intent(context, MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra(Helper.INTENT_ACTION, Helper.NOTIFICATION_INTENT); intent.putExtra(Helper.PREF_KEY_ID, account.user_id); Loading
app/src/main/java/app/fedilab/android/helper/PinnedTimelineHelper.java +47 −5 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ import app.fedilab.android.client.entities.app.RemoteInstance; import app.fedilab.android.client.entities.app.TagTimeline; import app.fedilab.android.client.entities.app.Timeline; import app.fedilab.android.databinding.ActivityMainBinding; import app.fedilab.android.databinding.TabCustomViewBinding; import app.fedilab.android.exception.DBException; import app.fedilab.android.ui.fragment.timeline.FragmentMastodonConversation; import app.fedilab.android.ui.fragment.timeline.FragmentMastodonTimeline; Loading Loading @@ -149,9 +150,13 @@ public class PinnedTimelineHelper { //Small hack to hide first tabs (they represent the item of the bottom menu) int toRemove = itemToRemoveInBottomMenu(activity); List<String> tabTitle = new ArrayList<>(); List<RemoteInstance.InstanceType> tabTypeRemote = new ArrayList<>(); List<Timeline.TimeLineEnum> tabType = new ArrayList<>(); for (int i = 0; i < (BOTTOM_TIMELINE_COUNT - toRemove); i++) { activityMainBinding.tabLayout.addTab(activityMainBinding.tabLayout.newTab()); tabTitle.add(""); tabType.add(Timeline.TimeLineEnum.HOME); tabTypeRemote.add(RemoteInstance.InstanceType.MASTODON); ((ViewGroup) activityMainBinding.tabLayout.getChildAt(0)).getChildAt(i).setVisibility(View.GONE); } List<PinnedTimeline> pinnedTimelineVisibleList = new ArrayList<>(); Loading @@ -166,9 +171,6 @@ public class PinnedTimelineHelper { break; case TAG: name = pinnedTimeline.tagTimeline.name; if (!name.startsWith("#")) { name = "#" + name; } break; case REMOTE: name = pinnedTimeline.remoteInstance.host; Loading @@ -177,8 +179,13 @@ public class PinnedTimelineHelper { TextView tv = (TextView) LayoutInflater.from(activity).inflate(R.layout.custom_tab_instance, new LinearLayout(activity), false); tv.setText(name); tabTitle.add(name); tabType.add(pinnedTimeline.type); if (pinnedTimeline.type == Timeline.TimeLineEnum.REMOTE) { tabTypeRemote.add(pinnedTimeline.remoteInstance.type); } else { tabTypeRemote.add(null); } tab.setCustomView(tv); activityMainBinding.tabLayout.addTab(tab); pinnedTimelineVisibleList.add(pinnedTimeline); } Loading Loading @@ -225,7 +232,42 @@ public class PinnedTimelineHelper { } }); new TabLayoutMediator(activityMainBinding.tabLayout, activityMainBinding.viewPager, (tab, position) -> tab.setText(tabTitle.get(position)) (tab, position) -> { TabCustomViewBinding tabCustomViewBinding = TabCustomViewBinding.inflate(activity.getLayoutInflater()); tabCustomViewBinding.title.setText(tabTitle.get(position)); switch (tabType.get(position)) { case LIST: tabCustomViewBinding.icon.setImageResource(R.drawable.ic_tl_list); break; case TAG: tabCustomViewBinding.icon.setImageResource(R.drawable.ic_tl_tag); break; case REMOTE: switch (tabTypeRemote.get(position)) { case PIXELFED: tabCustomViewBinding.icon.setImageResource(R.drawable.pixelfed); break; case MASTODON: tabCustomViewBinding.icon.setImageResource(R.drawable.mastodon_icon_item); break; case MISSKEY: tabCustomViewBinding.icon.setImageResource(R.drawable.misskey); break; case NITTER: tabCustomViewBinding.icon.setImageResource(R.drawable.nitter); break; case GNU: tabCustomViewBinding.icon.setImageResource(R.drawable.ic_gnu_social); break; case PEERTUBE: tabCustomViewBinding.icon.setImageResource(R.drawable.peertube_icon); break; } break; } tab.setCustomView(tabCustomViewBinding.getRoot()); } ).attach(); activityMainBinding.tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { Loading