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

Commit 179e1644 authored by Salvador Martinez's avatar Salvador Martinez
Browse files

Added logging to pinpoint source of bug

Sometimes the airplane mode banner will show up even
though airplane mode is not on. Logging has been added
to several areas around this condition in addition to
where the actual view is created. This will be used
to try and get a better handle on what the source of
the bug is.

Test: manual
Bug: 30860132
Change-Id: I7213aa7e187c5a8c0e94a5ce7a3269e6667cd61b
parent b305ec67
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.support.v7.widget.PopupMenu;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.util.ArrayMap;
import android.util.Log;
import android.util.TypedValue;
import android.view.ContextThemeWrapper;
import android.view.LayoutInflater;
@@ -153,6 +154,7 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash

    public void setConditions(List<Condition> conditions) {
        final DashboardData prevData = mDashboardData;
        Log.d(TAG, "adapter setConditions called");
        mDashboardData = new DashboardData.Builder(prevData)
                .setConditions(conditions)
                .build();
+4 −0
Original line number Diff line number Diff line
@@ -177,9 +177,12 @@ public class DashboardSummary extends InstrumentedFragment
    public void onWindowFocusChanged(boolean hasWindowFocus) {
        long startTime = System.currentTimeMillis();
        if (hasWindowFocus) {
            Log.d(TAG, "Listening for condition changes");
            mConditionManager.addListener(this);
            Log.d(TAG, "conditions refreshed");
            mConditionManager.refreshAll();
        } else {
            Log.d(TAG, "Stopped listening for condition changes");
            mConditionManager.remListener(this);
        }
        if (DEBUG_TIMING) {
@@ -220,6 +223,7 @@ public class DashboardSummary extends InstrumentedFragment
        mDashboard.setHasFixedSize(true);
        mDashboard.addItemDecoration(new DashboardDecorator(getContext()));
        mDashboard.setListener(this);
        Log.d(TAG, "adapter created");
        mAdapter = new DashboardAdapter(getContext(), mSuggestionParser, mMetricsFeatureProvider,
                bundle, mConditionManager.getConditions());
        mDashboard.setAdapter(mAdapter);
+9 −0
Original line number Diff line number Diff line
@@ -20,12 +20,14 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Icon;
import android.net.ConnectivityManager;
import android.util.Log;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.Settings;
import com.android.settingslib.WirelessUtils;

public class AirplaneModeCondition extends Condition {
    public static String TAG = "APM_Condition";

    public AirplaneModeCondition(ConditionManager conditionManager) {
        super(conditionManager);
@@ -33,6 +35,7 @@ public class AirplaneModeCondition extends Condition {

    @Override
    public void refreshState() {
        Log.d(TAG, "APM condition refreshed");
        setActive(WirelessUtils.isAirplaneModeOn(mManager.getContext()));
    }

@@ -46,6 +49,12 @@ public class AirplaneModeCondition extends Condition {
        return Icon.createWithResource(mManager.getContext(), R.drawable.ic_airplane);
    }

    @Override
    protected void setActive(boolean active) {
        super.setActive(active);
        Log.d(TAG, "setActive was called with " + active);
    }

    @Override
    public CharSequence getTitle() {
        return mManager.getContext().getString(R.string.condition_airplane_title);
+8 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.animation.ObjectAnimator;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.helper.ItemTouchHelper;
import android.util.Log;
import android.view.View;
import android.view.View.OnLayoutChangeListener;
import android.view.ViewGroup.LayoutParams;
@@ -31,8 +32,10 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardAdapter;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.WirelessUtils;

public class ConditionAdapterUtils {
    private static final String TAG = "ConditionAdapterUtils";

    public static void addDismiss(final RecyclerView recyclerView) {
        ItemTouchHelper.SimpleCallback callback = new ItemTouchHelper.SimpleCallback(0,
@@ -65,6 +68,11 @@ public class ConditionAdapterUtils {
    public static void bindViews(final Condition condition,
            DashboardAdapter.DashboardItemHolder view, boolean isExpanded,
            View.OnClickListener onClickListener, View.OnClickListener onExpandListener) {
        if (condition instanceof AirplaneModeCondition) {
            Log.d(TAG, "Airplane mode condition has been bound with "
                    + "isActive=" + condition.isActive() + ". Airplane mode is currently " +
                    WirelessUtils.isAirplaneModeOn(condition.mManager.getContext()));
        }
        View card = view.itemView.findViewById(R.id.content);
        card.setTag(condition);
        card.setOnClickListener(onClickListener);
+4 −0
Original line number Diff line number Diff line
@@ -59,9 +59,11 @@ public class ConditionManager {
        mContext = context;
        mConditions = new ArrayList<>();
        if (loadConditionsNow) {
            Log.d(TAG, "conditions loading synchronously");
            ConditionLoader loader = new ConditionLoader();
            loader.onPostExecute(loader.doInBackground());
        } else {
            Log.d(TAG, "conditions loading asychronously");
            new ConditionLoader().execute();
        }
    }
@@ -229,6 +231,7 @@ public class ConditionManager {
    private class ConditionLoader extends AsyncTask<Void, Void, ArrayList<Condition>> {
        @Override
        protected ArrayList<Condition> doInBackground(Void... params) {
            Log.d(TAG, "loading conditions from xml");
            ArrayList<Condition> conditions = new ArrayList<>();
            mXmlFile = new File(mContext.getFilesDir(), FILE_NAME);
            if (mXmlFile.exists()) {
@@ -240,6 +243,7 @@ public class ConditionManager {

        @Override
        protected void onPostExecute(ArrayList<Condition> conditions) {
            Log.d(TAG, "conditions loaded from xml, refreshing conditions");
            mConditions.clear();
            mConditions.addAll(conditions);
            refreshAll();