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

Commit a45c7326 authored by Steve Elliott's avatar Steve Elliott Committed by Automerger Merge Worker
Browse files

Merge "Add debug logging to sections manager" into rvc-dev am: 542e66b0

Change-Id: I4e0fd8833a1488b4ed846ff097625f65fbd11f79
parents e4b56934 542e66b0
Loading
Loading
Loading
Loading
+12 −0
Original line number Original line Diff line number Diff line
@@ -61,6 +61,18 @@ public class LogModule {
        return buffer;
        return buffer;
    }
    }


    /** Provides a logging buffer for all logs related to managing notification sections. */
    @Provides
    @Singleton
    @NotificationSectionLog
    public static LogBuffer provideNotificationSectionLogBuffer(
            LogcatEchoTracker bufferFilter,
            DumpManager dumpManager) {
        LogBuffer buffer = new LogBuffer("NotifSectionLog", 500, 10, bufferFilter);
        buffer.attach(dumpManager);
        return buffer;
    }

    /** Provides a logging buffer for all logs related to the data layer of notifications. */
    /** Provides a logging buffer for all logs related to the data layer of notifications. */
    @Provides
    @Provides
    @Singleton
    @Singleton
+33 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.systemui.log.dagger;

import static java.lang.annotation.RetentionPolicy.RUNTIME;

import com.android.systemui.log.LogBuffer;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;

import javax.inject.Qualifier;

/** A {@link LogBuffer} for notification sections-related messages. */
@Qualifier
@Documented
@Retention(RUNTIME)
public @interface NotificationSectionLog {
}
+1 −1
Original line number Original line Diff line number Diff line
@@ -52,7 +52,7 @@ public interface NotificationPresenter extends ExpandableNotificationRow.OnExpan
    /**
    /**
     * Updates the visual representation of the notifications.
     * Updates the visual representation of the notifications.
     */
     */
    void updateNotificationViews();
    void updateNotificationViews(String reason);


    /**
    /**
     * Returns the maximum number of notifications to show while locked.
     * Returns the maximum number of notifications to show while locked.
+1 −1
Original line number Original line Diff line number Diff line
@@ -674,7 +674,7 @@ public class NotificationEntryManager implements
    public void updateNotifications(String reason) {
    public void updateNotifications(String reason) {
        reapplyFilterAndSort(reason);
        reapplyFilterAndSort(reason);
        if (mPresenter != null && !mFeatureFlags.isNewNotifPipelineRenderingEnabled()) {
        if (mPresenter != null && !mFeatureFlags.isNewNotifPipelineRenderingEnabled()) {
            mPresenter.updateNotificationViews();
            mPresenter.updateNotificationViews(reason);
        }
        }
    }
    }


+55 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.systemui.statusbar.notification.stack

import com.android.systemui.log.LogBuffer
import com.android.systemui.log.LogLevel
import com.android.systemui.log.dagger.NotificationSectionLog
import javax.inject.Inject
import javax.inject.Singleton

private const val TAG = "NotifSections"

@Singleton
class NotificationSectionsLogger @Inject constructor(
    @NotificationSectionLog private val logBuffer: LogBuffer
) {

    fun logStartSectionUpdate(reason: String) = logBuffer.log(
            TAG,
            LogLevel.DEBUG,
            { str1 = reason },
            { "Updating section boundaries: $reason" }
    )

    fun logStr(str: String) = logBuffer.log(
            TAG,
            LogLevel.DEBUG,
            { str1 = str },
            { str1 ?: "" }
    )

    fun logPosition(position: Int, label: String) = logBuffer.log(
            TAG,
            LogLevel.DEBUG,
            {
                int1 = position
                str1 = label
            },
            { "$int1: $str1" }
    )
}
 No newline at end of file
Loading