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

Commit b197110f authored by Matthew Fritze's avatar Matthew Fritze
Browse files

Add logging for SettingsPanels

The 3 main categories are:
- Panel Opened
- Panel Closed
- Panel Slice interaction

There are 3 close events:
- See more button
- Done button
- Clicking outside the panel

Slice interactions will log the Uri of the Slice and the ActionType,
such as Toggle, Slider, Content (intent).

Change-Id: Iecad948f39f50dd12ae1bcb23a5d523e0df8bb98
Fixes: 117804231
Test: robotests
parent 545f8b14
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.settings.panel;

import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
@@ -64,4 +65,9 @@ public class InternetConnectivityPanel implements PanelContent {
    public Intent getSeeMoreIntent() {
        return new Intent(Settings.ACTION_WIRELESS_SETTINGS);
    }

    @Override
    public int getMetricsCategory() {
        return SettingsEnums.PANEL_INTERNET_CONNECTIVITY;
    }
}
+6 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.settings.panel;
import static com.android.settings.media.MediaOutputSlice.MEDIA_PACKAGE_NAME;
import static com.android.settings.slices.CustomSliceRegistry.MEDIA_OUTPUT_SLICE_URI;

import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
@@ -71,4 +72,9 @@ public class MediaOutputPanel implements PanelContent {
    public Intent getSeeMoreIntent() {
        return null;
    }

    @Override
    public int getMetricsCategory() {
        return SettingsEnums.PANEL_MEDIA_OUTPUT;
    }
}
+5 −0
Original line number Diff line number Diff line
@@ -50,4 +50,9 @@ public class NfcPanel implements PanelContent {
        intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
        return intent;
    }

    @Override
    public int getMetricsCategory() {
        return SettingsEnums.PANEL_NFC;
    }
}
+3 −1
Original line number Diff line number Diff line
@@ -19,12 +19,14 @@ package com.android.settings.panel;
import android.content.Intent;
import android.net.Uri;

import com.android.settingslib.core.instrumentation.Instrumentable;

import java.util.List;

/**
 * Represents the data class needed to create a Settings Panel. See {@link PanelFragment}.
 */
public interface PanelContent {
public interface PanelContent extends Instrumentable {

    /**
     * @return a string for the title of the Panel.
+3 −2
Original line number Diff line number Diff line
@@ -21,7 +21,8 @@ import android.content.Context;
public interface PanelFeatureProvider {

    /**
     * Returns {@link PanelContent} as specified by the {@code panelType} and {@code packageName}.
     * Returns {@link PanelContent} as specified by the {@param panelType}, and
     * {@param mediaPackageName}.
     */
    PanelContent getPanel(Context context, String panelType, String packageName);
    PanelContent getPanel(Context context, String panelType, String mediaPackageName);
}
Loading