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

Commit e231faba authored by Xiaowen Lei's avatar Xiaowen Lei Committed by Automerger Merge Worker
Browse files

Merge "Enable configuring multiple loggable dream prefixes." into tm-qpr-dev...

Merge "Enable configuring multiple loggable dream prefixes." into tm-qpr-dev am: 00609ba2 am: 7b319507

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20319123



Change-Id: I524012fdad22106270b89a81c14cca1ddeb90cae
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 6f45b490 7b319507
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -2456,8 +2456,10 @@
         assistant activities (ACTIVITY_TYPE_ASSISTANT) -->
    <bool name="config_dismissDreamOnActivityStart">false</bool>

    <!-- The prefix of dream component names that are loggable. If empty, logs "other" for all. -->
    <string name="config_loggable_dream_prefix" translatable="false"></string>
    <!-- The prefixes of dream component names that are loggable.
         Matched against ComponentName#flattenToString() for dream components.
         If empty, logs "other" for all. -->
    <string-array name="config_loggable_dream_prefixes"></string-array>

    <!-- ComponentName of a dream to show whenever the system would otherwise have
         gone to sleep.  When the PowerManager is asked to go to sleep, it will instead
+1 −1
Original line number Diff line number Diff line
@@ -2246,7 +2246,7 @@
  <java-symbol type="integer" name="config_dreamOverlayReconnectTimeoutMs" />
  <java-symbol type="integer" name="config_dreamOverlayMaxReconnectAttempts" />
  <java-symbol type="integer" name="config_minDreamOverlayDurationMs" />
  <java-symbol type="string" name="config_loggable_dream_prefix" />
  <java-symbol type="array" name="config_loggable_dream_prefixes" />
  <java-symbol type="string" name="config_dozeComponent" />
  <java-symbol type="string" name="enable_explore_by_touch_warning_title" />
  <java-symbol type="string" name="enable_explore_by_touch_warning_message" />
+1 −1
Original line number Diff line number Diff line
@@ -211,7 +211,7 @@ public final class DreamManagerService extends SystemService {
        mDozeConfig = new AmbientDisplayConfiguration(mContext);
        mUiEventLogger = new UiEventLoggerImpl();
        mDreamUiEventLogger = new DreamUiEventLoggerImpl(
                mContext.getResources().getString(R.string.config_loggable_dream_prefix));
                mContext.getResources().getStringArray(R.array.config_loggable_dream_prefixes));
        AmbientDisplayConfiguration adc = new AmbientDisplayConfiguration(mContext);
        mAmbientDisplayComponent = ComponentName.unflattenFromString(adc.ambientDisplayComponent());
        mDreamsOnlyEnabledForSystemUser =
+14 −7
Original line number Diff line number Diff line
@@ -26,10 +26,10 @@ import com.android.internal.util.FrameworkStatsLog;
 * @hide
 */
public class DreamUiEventLoggerImpl implements DreamUiEventLogger {
    final String mLoggableDreamPrefix;
    private final String[] mLoggableDreamPrefixes;

    DreamUiEventLoggerImpl(String loggableDreamPrefix) {
        mLoggableDreamPrefix = loggableDreamPrefix;
    DreamUiEventLoggerImpl(String[] loggableDreamPrefixes) {
        mLoggableDreamPrefixes = loggableDreamPrefixes;
    }

    @Override
@@ -38,13 +38,20 @@ public class DreamUiEventLoggerImpl implements DreamUiEventLogger {
        if (eventID <= 0) {
            return;
        }
        final boolean isFirstPartyDream =
                mLoggableDreamPrefix.isEmpty() ? false : dreamComponentName.startsWith(
                        mLoggableDreamPrefix);
        FrameworkStatsLog.write(FrameworkStatsLog.DREAM_UI_EVENT_REPORTED,
                /* uid = 1 */ 0,
                /* event_id = 2 */ eventID,
                /* instance_id = 3 */ 0,
                /* dream_component_name = 4 */ isFirstPartyDream ? dreamComponentName : "other");
                /* dream_component_name = 4 */
                isFirstPartyDream(dreamComponentName) ? dreamComponentName : "other");
    }

    private boolean isFirstPartyDream(String dreamComponentName) {
        for (int i = 0; i < mLoggableDreamPrefixes.length; ++i) {
            if (dreamComponentName.startsWith(mLoggableDreamPrefixes[i])) {
                return true;
            }
        }
        return false;
    }
}