mirror of
https://github.com/sudoxnym/habitica-android.git
synced 2026-05-21 05:09:00 +00:00
fix reset of Fragment Position / remove ChallengeOverviewActivity
This commit is contained in:
parent
c4de096a00
commit
d5361424d1
5 changed files with 9 additions and 101 deletions
|
|
@ -126,16 +126,6 @@
|
|||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value=".ui.activities.MainActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".ui.activities.ChallengeOverviewActivity"
|
||||
android:parentActivityName=".ui.activities.MainActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:launchMode="singleTask"
|
||||
tools:ignore="UnusedAttribute">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value=".ui.activities.MainActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".ui.activities.ChallengeDetailActivity"
|
||||
android:parentActivityName=".ui.activities.MainActivity"
|
||||
|
|
@ -144,7 +134,7 @@
|
|||
tools:ignore="UnusedAttribute">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value=".ui.activities.ChallengeOverviewActivity" />
|
||||
android:value=".ui.activities.MainActivity" />
|
||||
</activity>
|
||||
<activity android:name="com.facebook.FacebookActivity"
|
||||
android:configChanges=
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ import com.habitrpg.android.habitica.modules.AppModule;
|
|||
import com.habitrpg.android.habitica.receivers.LocalNotificationActionReceiver;
|
||||
import com.habitrpg.android.habitica.ui.activities.AboutActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.ChallengeDetailActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.ChallengeOverviewActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.ClassSelectionActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.FullProfileActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.GroupFormActivity;
|
||||
|
|
@ -200,6 +199,4 @@ public interface AppComponent {
|
|||
void inject(ChallengeTaskRecyclerViewFragment challengeTaskRecyclerViewFragment);
|
||||
|
||||
void inject(ChallengeDetailActivity challengeDetailActivity);
|
||||
|
||||
void inject(ChallengeOverviewActivity challengeOverviewActivity);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,82 +0,0 @@
|
|||
package com.habitrpg.android.habitica.ui.activities;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.support.design.widget.TabLayout;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.support.v7.widget.Toolbar;
|
||||
import android.view.View;
|
||||
|
||||
import com.habitrpg.android.habitica.APIHelper;
|
||||
import com.habitrpg.android.habitica.HabiticaApplication;
|
||||
import com.habitrpg.android.habitica.R;
|
||||
import com.habitrpg.android.habitica.components.AppComponent;
|
||||
import com.habitrpg.android.habitica.ui.AvatarWithBarsViewModel;
|
||||
import com.habitrpg.android.habitica.ui.fragments.social.challenges.ChallengesOverviewFragment;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import butterknife.BindView;
|
||||
|
||||
public class ChallengeOverviewActivity extends BaseActivity {
|
||||
|
||||
@BindView(R.id.detail_tabs)
|
||||
TabLayout detail_tabs;
|
||||
|
||||
@BindView(R.id.toolbar)
|
||||
Toolbar toolbar;
|
||||
|
||||
@BindView(R.id.avatar_with_bars)
|
||||
View avatar_with_bars;
|
||||
|
||||
@Inject
|
||||
public APIHelper apiHelper;
|
||||
|
||||
private ChallengesOverviewFragment overviewFragment;
|
||||
|
||||
@Override
|
||||
protected int getLayoutResId() {
|
||||
return R.layout.activity_challenge_overview;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setupToolbar(toolbar);
|
||||
|
||||
getSupportActionBar().setTitle(R.string.challenges);
|
||||
|
||||
overviewFragment = new ChallengesOverviewFragment();
|
||||
overviewFragment.setTabLayout(detail_tabs);
|
||||
overviewFragment.setUser(HabiticaApplication.User);
|
||||
|
||||
AvatarWithBarsViewModel avatarInHeader = new AvatarWithBarsViewModel(this, avatar_with_bars);
|
||||
avatarInHeader.updateData(HabiticaApplication.User);
|
||||
|
||||
if (getSupportFragmentManager().getFragments() == null) {
|
||||
getSupportFragmentManager().beginTransaction().add(R.id.fragment_container, overviewFragment).commitAllowingStateLoss();
|
||||
} else {
|
||||
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
|
||||
transaction.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out, android.R.anim.fade_in, android.R.anim.fade_out);
|
||||
transaction.replace(R.id.fragment_container, overviewFragment).addToBackStack(null).commitAllowingStateLoss();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void injectActivity(AppComponent component) {
|
||||
component.inject(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onSupportNavigateUp() {
|
||||
finish();
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if(!overviewFragment.onHandleBackPressed()){
|
||||
finish();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -276,7 +276,7 @@ public class MainActivity extends BaseActivity implements Action1<Throwable>, Ha
|
|||
|
||||
avatarInHeader = new AvatarWithBarsViewModel(this, avatar_with_bars);
|
||||
accountHeader = MainDrawerBuilder.CreateDefaultAccountHeader(this).build();
|
||||
drawer = MainDrawerBuilder.CreateDefaultBuilderSettings(this, toolbar, accountHeader)
|
||||
drawer = MainDrawerBuilder.CreateDefaultBuilderSettings(this, sharedPreferences, toolbar, accountHeader)
|
||||
.build();
|
||||
drawer.setSelectionAtPosition(1, false);
|
||||
sideAvatarView = new AvatarView(this, true, false, false);
|
||||
|
|
@ -327,7 +327,7 @@ public class MainActivity extends BaseActivity implements Action1<Throwable>, Ha
|
|||
//Recreate the fragment as a result.
|
||||
if (activeFragment != null && activeFragment.tabLayout == null) {
|
||||
activeFragment = null;
|
||||
drawer.setSelectionAtPosition(1);
|
||||
drawer.setSelectionAtPosition(this.sharedPreferences.getInt("lastActivePosition", 1));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package com.habitrpg.android.habitica.ui.menu;
|
|||
|
||||
import com.habitrpg.android.habitica.R;
|
||||
import com.habitrpg.android.habitica.ui.activities.AboutActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.ChallengeOverviewActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.GemPurchaseActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.MainActivity;
|
||||
import com.habitrpg.android.habitica.ui.activities.PrefsActivity;
|
||||
|
|
@ -29,6 +28,7 @@ import com.mikepenz.materialdrawer.model.ProfileDrawerItem;
|
|||
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.support.v7.widget.Toolbar;
|
||||
|
||||
import static com.habitrpg.android.habitica.ui.activities.MainActivity.GEM_PURCHASE_REQUEST;
|
||||
|
|
@ -66,7 +66,7 @@ public class MainDrawerBuilder {
|
|||
}
|
||||
|
||||
|
||||
public static DrawerBuilder CreateDefaultBuilderSettings(final MainActivity activity, Toolbar toolbar, final AccountHeader accountHeader) {
|
||||
public static DrawerBuilder CreateDefaultBuilderSettings(final MainActivity activity, SharedPreferences sharedPreferences, Toolbar toolbar, final AccountHeader accountHeader) {
|
||||
DrawerBuilder builder = new DrawerBuilder()
|
||||
.withActivity(activity);
|
||||
|
||||
|
|
@ -134,7 +134,8 @@ public class MainDrawerBuilder {
|
|||
break;
|
||||
}
|
||||
case SIDEBAR_CHALLENGES: {
|
||||
newActivityClass = ChallengeOverviewActivity.class;
|
||||
fragment = new ChallengesOverviewFragment();
|
||||
|
||||
break;
|
||||
}
|
||||
case SIDEBAR_SHOPS: {
|
||||
|
|
@ -179,6 +180,8 @@ public class MainDrawerBuilder {
|
|||
}
|
||||
}
|
||||
|
||||
sharedPreferences.edit().putInt("lastActivePosition", position).apply();
|
||||
|
||||
if (fragment != null) {
|
||||
fragment.fragmentSidebarPosition = position;
|
||||
activity.displayFragment(fragment);
|
||||
|
|
|
|||
Loading…
Reference in a new issue