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

Commit bb62c74b authored by Allen Su's avatar Allen Su
Browse files

[ToA] Move IO to background thread

Bug: 295826542
Bug: 312324895
Test: atest TermsOfAddressNotSpecifiedControllerTest, atest
TermsOfAddressNeutralControllerTest, atest
TermsOfAddressMasculineControllerTest, atest TermsOfAddressFeminineControllerTest

Change-Id: I45808815401f2caa24ffc03d634a4b2c90dfd55e
parent e5ba5da9
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -26,8 +26,12 @@ import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.TickButtonPreference;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;

import java.util.concurrent.Executor;
import java.util.concurrent.Executors;

public abstract class TermsOfAddressBaseController extends BasePreferenceController {

    private static final Executor sExecutor = Executors.newSingleThreadExecutor();
    private PreferenceScreen mPreferenceScreen;
    private MetricsFeatureProvider mMetricsFeatureProvider;
    private TickButtonPreference mPreference;
@@ -46,8 +50,11 @@ public abstract class TermsOfAddressBaseController extends BasePreferenceControl
        mPreferenceScreen = screen;
        mPreference = screen.findPreference(getPreferenceKey());
        mPreference.setOnPreferenceClickListener(clickedPref -> {
            sExecutor.execute(
                    () -> {
                        mGrammaticalInflectionManager.setSystemWideGrammaticalGender(
                                getGrammaticalGenderType());
                    });
            setSelected(mPreference);
            mMetricsFeatureProvider.action(mContext, getMetricsActionKey());
            return true;