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

Commit 720c7bec authored by Anna Zappone's avatar Anna Zappone
Browse files

Add logging for People Space widget

Logging for widget added, removed, and clicked.

Test: locally
Change-Id: Iae4fe85c1146509e0d0b64daf09916794e0ce6f6
parent 9f9387b4
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -38,6 +38,8 @@ import android.view.ViewGroup;

import androidx.preference.PreferenceManager;

import com.android.internal.logging.UiEventLogger;
import com.android.internal.logging.UiEventLoggerImpl;
import com.android.systemui.R;
import com.android.systemui.people.widget.PeopleSpaceWidgetProvider;

@@ -60,6 +62,7 @@ public class PeopleSpaceActivity extends Activity {
    private AppWidgetManager mAppWidgetManager;
    private int mAppWidgetId;
    private boolean mShowSingleConversation;
    private UiEventLogger mUiEventLogger = new UiEventLoggerImpl();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
@@ -149,6 +152,8 @@ public class PeopleSpaceActivity extends Activity {

    /** Finish activity with a successful widget configuration result. */
    private void finishActivity() {
        if (PeopleSpaceUtils.DEBUG) Log.d(TAG, "Widget added!");
        mUiEventLogger.log(PeopleSpaceUtils.PeopleSpaceWidgetEvent.PEOPLE_SPACE_WIDGET_ADDED);
        Intent resultValue = new Intent();
        resultValue.putExtra(EXTRA_APPWIDGET_ID, mAppWidgetId);
        setResult(RESULT_OK, resultValue);
+25 −0
Original line number Diff line number Diff line
@@ -50,6 +50,8 @@ import android.view.View;
import android.widget.RemoteViews;

import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.UiEvent;
import com.android.internal.logging.UiEventLogger;
import com.android.internal.util.ArrayUtils;
import com.android.systemui.R;
import com.android.systemui.people.widget.LaunchConversationActivity;
@@ -81,6 +83,29 @@ public class PeopleSpaceUtils {
        REMOVED
    }

    /**
     * The UiEvent enums that this class can log.
     */
    public enum PeopleSpaceWidgetEvent implements UiEventLogger.UiEventEnum {
        @UiEvent(doc = "People space widget deleted")
        PEOPLE_SPACE_WIDGET_DELETED(666),
        @UiEvent(doc = "People space widget added")
        PEOPLE_SPACE_WIDGET_ADDED(667),
        @UiEvent(doc = "People space widget clicked to launch conversation")
        PEOPLE_SPACE_WIDGET_CLICKED(668);

        private final int mId;

        PeopleSpaceWidgetEvent(int id) {
            mId = id;
        }

        @Override
        public int getId() {
            return mId;
        }
    }

    /** Returns a list of map entries corresponding to user's conversations. */
    public static List<Map.Entry<Long, PeopleSpaceTile>> getTiles(
            Context context, INotificationManager notificationManager, IPeopleManager peopleManager,
+4 −0
Original line number Diff line number Diff line
@@ -23,12 +23,15 @@ import android.os.Bundle;
import android.os.UserHandle;
import android.util.Log;

import com.android.internal.logging.UiEventLogger;
import com.android.internal.logging.UiEventLoggerImpl;
import com.android.systemui.people.PeopleSpaceUtils;

/** Proxy activity to launch ShortcutInfo's conversation. */
public class LaunchConversationActivity extends Activity {
    private static final String TAG = "PeopleSpaceLaunchConv";
    private static final boolean DEBUG = PeopleSpaceUtils.DEBUG;
    private UiEventLogger mUiEventLogger = new UiEventLoggerImpl();

    @Override
    public void onCreate(Bundle savedInstanceState) {
@@ -44,6 +47,7 @@ public class LaunchConversationActivity extends Activity {
            if (DEBUG) {
                Log.d(TAG, "Launching conversation with shortcutInfo id " + tileId);
            }
            mUiEventLogger.log(PeopleSpaceUtils.PeopleSpaceWidgetEvent.PEOPLE_SPACE_WIDGET_CLICKED);
            try {
                LauncherApps launcherApps =
                        getApplicationContext().getSystemService(LauncherApps.class);
+15 −0
Original line number Diff line number Diff line
@@ -27,6 +27,8 @@ import android.provider.Settings;
import android.util.Log;
import android.widget.RemoteViews;

import com.android.internal.logging.UiEventLogger;
import com.android.internal.logging.UiEventLoggerImpl;
import com.android.systemui.R;
import com.android.systemui.people.PeopleSpaceUtils;

@@ -39,7 +41,10 @@ public class PeopleSpaceWidgetProvider extends AppWidgetProvider {
    public static final String EXTRA_PACKAGE_NAME = "extra_package_name";
    public static final String EXTRA_UID = "extra_uid";

    public UiEventLogger mUiEventLogger = new UiEventLoggerImpl();

    /** Called when widget updates. */
    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        super.onUpdate(context, appWidgetManager, appWidgetIds);

@@ -79,4 +84,14 @@ public class PeopleSpaceWidgetProvider extends AppWidgetProvider {
            appWidgetManager.updateAppWidget(appWidgetId, views);
        }
    }

    @Override
    public void onDeleted(Context context, int[] appWidgetIds) {
        super.onDeleted(context, appWidgetIds);
        for (int widgetId : appWidgetIds) {
            if (DEBUG) Log.d(TAG, "Widget removed");
            mUiEventLogger.log(PeopleSpaceUtils.PeopleSpaceWidgetEvent.PEOPLE_SPACE_WIDGET_DELETED);
        }
    }

}