Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c56fc753 authored by Amith Yamasani's avatar Amith Yamasani
Browse files

Stability fixes for PreferenceFragments.

Unregister the click listener as early as possible, so that clicks
don't get delivered after the activity is detached.

Bug: 4599586

This should also fix: 4603030, 4601105, 4598715, 4598712.

Change-Id: I7bcff719bed14ea61b482bd6d29ae1fa5e322e41
parent 700a1f25
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -145,7 +145,6 @@ public abstract class PreferenceFragment extends Fragment implements
        super.onCreate(savedInstanceState);
        mPreferenceManager = new PreferenceManager(getActivity(), FIRST_REQUEST_CODE);
        mPreferenceManager.setFragment(this);
        mPreferenceManager.setOnPreferenceTreeClickListener(this);
    }

    @Override
@@ -177,10 +176,17 @@ public abstract class PreferenceFragment extends Fragment implements
        }
    }

    @Override
    public void onStart() {
        super.onStart();
        mPreferenceManager.setOnPreferenceTreeClickListener(this);
    }

    @Override
    public void onStop() {
        super.onStop();
        mPreferenceManager.dispatchActivityStop();
        mPreferenceManager.setOnPreferenceTreeClickListener(null);
    }

    @Override
@@ -195,7 +201,6 @@ public abstract class PreferenceFragment extends Fragment implements
    public void onDestroy() {
        super.onDestroy();
        mPreferenceManager.dispatchActivityDestroy();
        mPreferenceManager.setOnPreferenceTreeClickListener(null);
    }

    @Override