-
Notifications
You must be signed in to change notification settings - Fork 224
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Podcast Update Feed] Add Tooltip #3561
Conversation
<androidx.coordinatorlayout.widget.CoordinatorLayout | ||
android:id="@+id/fullScreenDarkOverlayView" | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent" | ||
android:background="#80000000" | ||
android:visibility="gone" /> | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was the only way I found to display the tooltip overlay in front of the bottom navigation view. Similar what we are doing for snackbarFragment
📲 You can test the changes from this Pull Request in 📱 Mobile by scanning the QR code below to install the corresponding build.
📲 You can test the changes from this Pull Request in 🚗 Automotive by scanning the QR code below to install the corresponding build.
📲 You can test the changes from this Pull Request in ⌚ Wear by scanning the QR code below to install the corresponding build.
|
|
||
private fun configureTooltip() { | ||
lifecycleScope.launch { | ||
delay(1.seconds) // Delay to wait the recyclerview to be configured |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added this delay because there is a race condition. Since we are aligning the tooltip with one recyclerview's item, I need to make sure this component has loaded. Using episodesRecyclerView?.doOnNextLayout
was not enough
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this delay works if the page takes a while to load.
delay.mov
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's fixed now. I had to mock low internet connection to be able to see this issue. See how it is now:
Screen_recording_20250207_123341.webm
...odcasts/src/main/java/au/com/shiftyjelly/pocketcasts/podcasts/view/podcast/PodcastTooltip.kt
Show resolved
Hide resolved
...odcasts/src/main/java/au/com/shiftyjelly/pocketcasts/podcasts/view/podcast/PodcastTooltip.kt
Outdated
Show resolved
Hide resolved
...odcasts/src/main/java/au/com/shiftyjelly/pocketcasts/podcasts/view/podcast/PodcastTooltip.kt
Outdated
Show resolved
Hide resolved
|
||
private fun configureTooltip() { | ||
lifecycleScope.launch { | ||
delay(1.seconds) // Delay to wait the recyclerview to be configured |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this delay works if the page takes a while to load.
Description
Testing Instructions
Feature flag disabled
Feature flag enabled
Screenshots or Screencast
Screen_recording_20250206_150940.webm
Checklist
./gradlew spotlessApply
to automatically apply formatting/linting)modules/services/localization/src/main/res/values/strings.xml
I have tested any UI changes...