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

Commit f0b414da authored by Miranda Kephart's avatar Miranda Kephart Committed by Automerger Merge Worker
Browse files

Merge "Add clip source to clipboard UI logging" into tm-qpr-dev am: 6c6b35d0

parents fb753bfc 6c6b35d0
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -266,6 +266,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
            mExitAnimator.cancel();
        }
        reset();
        mClipboardLogger.setClipSource(clipSource);
        String accessibilityAnnouncement = mContext.getString(R.string.clipboard_content_copied);

        boolean isSensitive = clipData != null && clipData.getDescription().getExtras() != null
@@ -525,21 +526,27 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv

    static class ClipboardLogger {
        private final UiEventLogger mUiEventLogger;
        private String mClipSource;
        private boolean mGuarded = false;

        ClipboardLogger(UiEventLogger uiEventLogger) {
            mUiEventLogger = uiEventLogger;
        }

        void setClipSource(String clipSource) {
            mClipSource = clipSource;
        }

        void logSessionComplete(@NonNull UiEventLogger.UiEventEnum event) {
            if (!mGuarded) {
                mGuarded = true;
                mUiEventLogger.log(event);
                mUiEventLogger.log(event, 0, mClipSource);
            }
        }

        void reset() {
            mGuarded = false;
            mClipSource = null;
        }
    }
}
+16 −3
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;

import android.animation.Animator;
@@ -171,7 +172,7 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {

        mCallbacks.onShareButtonTapped();

        verify(mUiEventLogger, times(1)).log(CLIPBOARD_OVERLAY_SHARE_TAPPED);
        verify(mUiEventLogger, times(1)).log(CLIPBOARD_OVERLAY_SHARE_TAPPED, 0, "");
        verify(mClipboardOverlayView, times(1)).getExitAnimation();
    }

@@ -181,7 +182,7 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {

        mCallbacks.onDismissButtonTapped();

        verify(mUiEventLogger, times(1)).log(CLIPBOARD_OVERLAY_DISMISS_TAPPED);
        verify(mUiEventLogger, times(1)).log(CLIPBOARD_OVERLAY_DISMISS_TAPPED, 0, "");
        verify(mClipboardOverlayView, times(1)).getExitAnimation();
    }

@@ -192,7 +193,7 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
        mCallbacks.onSwipeDismissInitiated(mAnimator);
        mCallbacks.onDismissButtonTapped();

        verify(mUiEventLogger, times(1)).log(CLIPBOARD_OVERLAY_SWIPE_DISMISSED);
        verify(mUiEventLogger, times(1)).log(CLIPBOARD_OVERLAY_SWIPE_DISMISSED, 0, null);
        verify(mUiEventLogger, never()).log(CLIPBOARD_OVERLAY_DISMISS_TAPPED);
    }

@@ -224,4 +225,16 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {

        verify(mTimeoutHandler).resetTimeout();
    }

    @Test
    public void test_logsUseLastClipSource() {
        mOverlayController.setClipData(mSampleClipData, "first.package");
        mCallbacks.onDismissButtonTapped();
        mOverlayController.setClipData(mSampleClipData, "second.package");
        mCallbacks.onDismissButtonTapped();

        verify(mUiEventLogger).log(CLIPBOARD_OVERLAY_DISMISS_TAPPED, 0, "first.package");
        verify(mUiEventLogger).log(CLIPBOARD_OVERLAY_DISMISS_TAPPED, 0, "second.package");
        verifyNoMoreInteractions(mUiEventLogger);
    }
}