From 723279b7974edaa8b866a1c75c499feb5f67daf6 Mon Sep 17 00:00:00 2001 From: Chris Brind Date: Mon, 8 Jun 2020 11:13:22 +0100 Subject: [PATCH 1/3] sort vowels to the end of the trackers animation to avoid dodgy words --- .../com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt b/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt index c332d9ecd581..2e23c98f9a79 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt @@ -234,6 +234,7 @@ class BrowserTrackersAnimatorHelper { .asSequence() .distinct() .take(MAX_LOGOS_SHOWN + 1) + .sortedWith(compareBy { "AEIOU".contains(it.displayName[0]) }) .map { val resId = TrackersRenderer().networkLogoIcon(activity, it.name) if (resId == null) { From 0716edabc8c71ffbec9ec051efb933dbcee1774a Mon Sep 17 00:00:00 2001 From: Chris Brind Date: Mon, 8 Jun 2020 14:39:59 +0100 Subject: [PATCH 2/3] extract sorting logic to private sequence extension --- .../app/browser/BrowserTrackersAnimatorHelper.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt b/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt index 2e23c98f9a79..e13abfdca375 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt @@ -234,7 +234,7 @@ class BrowserTrackersAnimatorHelper { .asSequence() .distinct() .take(MAX_LOGOS_SHOWN + 1) - .sortedWith(compareBy { "AEIOU".contains(it.displayName[0]) }) + .sortedWithDisplayNamesStartingWithVowelsToTheEnd() .map { val resId = TrackersRenderer().networkLogoIcon(activity, it.name) if (resId == null) { @@ -418,6 +418,10 @@ class BrowserTrackersAnimatorHelper { } } + private fun Sequence.sortedWithDisplayNamesStartingWithVowelsToTheEnd(): Sequence { + return sortedWith(compareBy { "AEIOU".contains(it.displayName.take(1)) }) + } + companion object { private const val TRACKER_LOGOS_DELAY_ON_SCREEN = 2400L private const val DEFAULT_ANIMATION_DURATION = 150L @@ -436,3 +440,4 @@ sealed class TrackerLogo(val resId: Int) { class LetterLogo(val trackerLetter: String = "", resId: Int = R.drawable.other_tracker_bg) : TrackerLogo(resId) class StackedLogo(resId: Int = R.drawable.other_tracker_bg) : TrackerLogo(resId) } + From 0d2fdeea980bd568fd964dd8af5725d8219731fa Mon Sep 17 00:00:00 2001 From: Chris Brind Date: Mon, 8 Jun 2020 14:47:54 +0100 Subject: [PATCH 3/3] fix lint problem --- .../com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt b/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt index e13abfdca375..f318273f0e4e 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/BrowserTrackersAnimatorHelper.kt @@ -440,4 +440,3 @@ sealed class TrackerLogo(val resId: Int) { class LetterLogo(val trackerLetter: String = "", resId: Int = R.drawable.other_tracker_bg) : TrackerLogo(resId) class StackedLogo(resId: Int = R.drawable.other_tracker_bg) : TrackerLogo(resId) } -