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

Commit 9e25f092 authored by Jeff DeCew's avatar Jeff DeCew
Browse files

Log when child views are freed

This log was missing and made it harder to tell what was happening when debugging the given bug

Bug: 240857315
Test: dumpsysui NotifLog
Change-Id: Ie1c25aa682858c88b9afb33cf5fe74d92d7db9b6
parent 64f07c00
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -286,7 +286,7 @@ public class PreparationCoordinator implements Coordinator {
                if (isInflated(child)) {
                    // TODO: May want to put an animation hint here so view manager knows to treat
                    //  this differently from a regular removal animation
                    freeNotifViews(child);
                    freeNotifViews(child, "Past last visible group child");
                }
            }
        }
@@ -379,7 +379,8 @@ public class PreparationCoordinator implements Coordinator {
        mNotifInflatingFilter.invalidateList("onInflationFinished for " + logKey(entry));
    }

    private void freeNotifViews(NotificationEntry entry) {
    private void freeNotifViews(NotificationEntry entry, String reason) {
        mLogger.logFreeNotifViews(entry, reason);
        mViewBarn.removeViewForEntry(entry);
        mNotifInflater.releaseViews(entry);
        // TODO: clear the entry's row here, or even better, stop setting the row on the entry!
+12 −3
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ class PreparationCoordinatorLogger @Inject constructor(
        buffer.log(TAG, LogLevel.DEBUG, {
            str1 = entry.logKey
        }, {
            "NOTIF INFLATED $str1"
            "Inflation completed for notif $str1"
        })
    }

@@ -40,7 +40,16 @@ class PreparationCoordinatorLogger @Inject constructor(
            str1 = entry.logKey
            str2 = reason
        }, {
            "NOTIF INFLATION ABORTED $str1 reason=$str2"
            "Infation aborted for notif $str1 reason=$str2"
        })
    }

    fun logFreeNotifViews(entry: NotificationEntry, reason: String) {
        buffer.log(TAG, LogLevel.DEBUG, {
            str1 = entry.logKey
            str2 = reason
        }, {
            "Freeing content views for notif $str1 reason=$str2"
        })
    }