mirror of
https://github.com/meowarex/rl-mobile.git
synced 2026-10-15 07:53:12 +11:00
feat(swipe to queue): add compose / dynamic list + compose search refactor support
This commit is contained in:
1 parent
dcf207d307
commit
10f3dd724d
22 files changed
+3231
-46
No files matched your search
@@ -426,7 +426,8 @@
|
|||||||
"id": "SwipeToQueue",
|
"id": "SwipeToQueue",
|
||||||
"order": 39,
|
"order": 39,
|
||||||
"fileNames": [
|
"fileNames": [
|
||||||
"swipe-to-queue.patch"
|
"swipe-to-queue.patch",
|
||||||
|
"swipe-to-queue-compose.patch"
|
||||||
],
|
],
|
||||||
"extensionFiles": [
|
"extensionFiles": [
|
||||||
"radiant/SwipeToQueue.smali",
|
"radiant/SwipeToQueue.smali",
|
||||||
@@ -442,10 +443,25 @@
|
|||||||
"radiant/swipe/SearchAlbumsResolver.smali",
|
"radiant/swipe/SearchAlbumsResolver.smali",
|
||||||
"radiant/swipe/SearchPlaylistsResolver.smali",
|
"radiant/swipe/SearchPlaylistsResolver.smali",
|
||||||
"radiant/swipe/PlaylistItemsResolver.smali",
|
"radiant/swipe/PlaylistItemsResolver.smali",
|
||||||
"radiant/swipe/UnifiedSearchResolver.smali"
|
"radiant/swipe/UnifiedSearchResolver.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeAction.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState$Gesture.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState$Draw.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState$ResetAnimator.smali",
|
||||||
|
"radiant/swipe/ComposeTapGuard.smali",
|
||||||
|
"radiant/swipe/AlbumItemQueueAction.smali",
|
||||||
|
"radiant/swipe/DynamicTrackQueueEvent.smali",
|
||||||
|
"radiant/swipe/DynamicTrackQueueAction.smali",
|
||||||
|
"radiant/swipe/DynamicTrackQueue.smali",
|
||||||
|
"radiant/swipe/ViewAllTrackQueueAction.smali",
|
||||||
|
"radiant/swipe/ViewAllTrackQueue.smali",
|
||||||
|
"radiant/swipe/ComposeSearchQueueEvent.smali",
|
||||||
|
"radiant/swipe/ComposeSearchQueueAction.smali",
|
||||||
|
"radiant/swipe/ComposeSearchQueue.smali"
|
||||||
],
|
],
|
||||||
"title": "Swipe to Queue",
|
"title": "Swipe to Queue",
|
||||||
"description": "Swipe on tracks/albums/playlists to add them to the play queue.",
|
"description": "Swipe on tracks/albums/playlists to add them to the play queue",
|
||||||
"default": false,
|
"default": false,
|
||||||
"advancedOptions": [
|
"advancedOptions": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -130,6 +130,14 @@
|
|||||||
.end method
|
.end method
|
||||||
|
|
||||||
# virtual methods
|
# virtual methods
|
||||||
|
.method public getAnimationDuration(Landroidx/recyclerview/widget/RecyclerView;IFF)J
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
const-wide/16 v0, 0x50
|
||||||
|
|
||||||
|
return-wide v0
|
||||||
|
.end method
|
||||||
|
|
||||||
.method public getSwipeDirs(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I
|
.method public getSwipeDirs(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I
|
||||||
.locals 2
|
.locals 2
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,183 @@
|
|||||||
|
.class public final Lradiant/swipe/AlbumItemQueueAction;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "AlbumItemQueueAction.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final callback:Lu5/b$a$a;
|
||||||
|
|
||||||
|
.field private context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field private final mediaItemId:I
|
||||||
|
|
||||||
|
.field private final moduleId:Ljava/lang/String;
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lu5/b$a;)V
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iget-object v0, p1, Lu5/b$a;->a:Lu5/b$a$a;
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/AlbumItemQueueAction;->callback:Lu5/b$a$a;
|
||||||
|
|
||||||
|
iget-object v0, p1, Lu5/b$a;->c:Lu5/b$a$b;
|
||||||
|
|
||||||
|
iget v1, v0, Lu5/b$a$b;->r:I
|
||||||
|
|
||||||
|
iput v1, p0, Lradiant/swipe/AlbumItemQueueAction;->mediaItemId:I
|
||||||
|
|
||||||
|
iget-object v0, v0, Lu5/b$a$b;->s:Ljava/lang/String;
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/AlbumItemQueueAction;->moduleId:Ljava/lang/String;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public invoke()Ljava/lang/Object;
|
||||||
|
.locals 10
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/AlbumItemQueueAction;->callback:Lu5/b$a$a;
|
||||||
|
|
||||||
|
iget v1, p0, Lradiant/swipe/AlbumItemQueueAction;->mediaItemId:I
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/AlbumItemQueueAction;->moduleId:Ljava/lang/String;
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/QueueExecutor;->hasActiveQueue()Z
|
||||||
|
|
||||||
|
move-result v3
|
||||||
|
|
||||||
|
if-nez v3, :active_queue
|
||||||
|
|
||||||
|
invoke-interface {v0, v1, v2}, Lu5/b$a$a;->g(ILjava/lang/String;)V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:active_queue
|
||||||
|
iget-object v3, p0, Lradiant/swipe/AlbumItemQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v3, :done
|
||||||
|
|
||||||
|
instance-of v4, v0, Lu5/g;
|
||||||
|
|
||||||
|
if-eqz v4, :done
|
||||||
|
|
||||||
|
check-cast v0, Lu5/g;
|
||||||
|
|
||||||
|
invoke-virtual {v0, v2}, Lk5/f;->l(Ljava/lang/String;)Lcom/aspiro/wamp/dynamicpages/data/model/Module;
|
||||||
|
|
||||||
|
move-result-object v4
|
||||||
|
|
||||||
|
instance-of v5, v4, Lcom/aspiro/wamp/dynamicpages/data/model/collection/AlbumItemCollectionModule;
|
||||||
|
|
||||||
|
if-eqz v5, :done
|
||||||
|
|
||||||
|
check-cast v4, Lcom/aspiro/wamp/dynamicpages/data/model/collection/AlbumItemCollectionModule;
|
||||||
|
|
||||||
|
invoke-virtual {v4}, Lcom/aspiro/wamp/dynamicpages/data/model/collection/AlbumItemCollectionModule;->getMediaItemParents()Ljava/util/List;
|
||||||
|
|
||||||
|
move-result-object v5
|
||||||
|
|
||||||
|
invoke-interface {v5}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
|
||||||
|
|
||||||
|
move-result-object v5
|
||||||
|
|
||||||
|
:find_item
|
||||||
|
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
|
||||||
|
|
||||||
|
move-result v6
|
||||||
|
|
||||||
|
if-eqz v6, :done
|
||||||
|
|
||||||
|
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v6
|
||||||
|
|
||||||
|
check-cast v6, Lcom/aspiro/wamp/model/MediaItemParent;
|
||||||
|
|
||||||
|
invoke-virtual {v6}, Lcom/aspiro/wamp/model/MediaItemParent;->getMediaItem()Lcom/aspiro/wamp/model/MediaItem;
|
||||||
|
|
||||||
|
move-result-object v7
|
||||||
|
|
||||||
|
if-eqz v7, :find_item
|
||||||
|
|
||||||
|
invoke-virtual {v7}, Lcom/aspiro/wamp/model/MediaItem;->getId()I
|
||||||
|
|
||||||
|
move-result v8
|
||||||
|
|
||||||
|
if-ne v8, v1, :find_item
|
||||||
|
|
||||||
|
instance-of v8, v7, Lcom/aspiro/wamp/model/Track;
|
||||||
|
|
||||||
|
if-eqz v8, :done
|
||||||
|
|
||||||
|
check-cast v7, Lcom/aspiro/wamp/model/Track;
|
||||||
|
|
||||||
|
iget-object v8, v0, Lu5/g;->h:Lcom/aspiro/wamp/model/AvailabilityInteractor;
|
||||||
|
|
||||||
|
invoke-interface {v8, v7}, Lcom/aspiro/wamp/model/AvailabilityInteractor;->getAvailability(Lcom/aspiro/wamp/model/MediaItem;)Lcom/aspiro/wamp/model/Availability$MediaItem;
|
||||||
|
|
||||||
|
move-result-object v8
|
||||||
|
|
||||||
|
invoke-virtual {v8}, Lcom/aspiro/wamp/model/Availability$MediaItem;->isAvailable()Z
|
||||||
|
|
||||||
|
move-result v8
|
||||||
|
|
||||||
|
if-eqz v8, :done
|
||||||
|
|
||||||
|
new-instance v5, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;
|
||||||
|
|
||||||
|
invoke-virtual {v4}, Lcom/aspiro/wamp/dynamicpages/data/model/Module;->getPageId()Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v6
|
||||||
|
|
||||||
|
invoke-virtual {v4}, Lcom/aspiro/wamp/dynamicpages/data/model/Module;->getId()Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v8
|
||||||
|
|
||||||
|
invoke-virtual {v4}, Lcom/aspiro/wamp/dynamicpages/data/model/Module;->getPosition()I
|
||||||
|
|
||||||
|
move-result v9
|
||||||
|
|
||||||
|
invoke-static {v9}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
invoke-direct {v5, v6, v8, v9}, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||||
|
|
||||||
|
invoke-virtual {v7}, Lcom/aspiro/wamp/model/MediaItem;->getAlbum()Lcom/aspiro/wamp/model/Album;
|
||||||
|
|
||||||
|
move-result-object v6
|
||||||
|
|
||||||
|
if-eqz v6, :done
|
||||||
|
|
||||||
|
iget-object v8, v0, Lu5/g;->j:Lcom/tidal/android/navigation/NavigationInfo;
|
||||||
|
|
||||||
|
invoke-static {v6, v8}, Lcom/aspiro/wamp/playqueue/source/model/b;->c(Lcom/aspiro/wamp/model/Album;Lcom/tidal/android/navigation/NavigationInfo;)Lcom/aspiro/wamp/playqueue/source/model/AlbumSource;
|
||||||
|
|
||||||
|
move-result-object v6
|
||||||
|
|
||||||
|
invoke-virtual {v6, v7}, Lcom/aspiro/wamp/playqueue/source/model/Source;->addSourceItem(Lcom/aspiro/wamp/model/MediaItem;)V
|
||||||
|
|
||||||
|
invoke-static {v3, v7, v5, v6}, Lradiant/swipe/QueueExecutor;->track(Landroid/content/Context;Lcom/aspiro/wamp/model/Track;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/aspiro/wamp/playqueue/source/model/Source;)Z
|
||||||
|
|
||||||
|
:done
|
||||||
|
sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public setContext(Landroid/content/Context;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/AlbumItemQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,270 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSearchQueue;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "ComposeSearchQueue.smali"
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public static handle(Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;Lradiant/swipe/ComposeSearchQueueEvent;)V
|
||||||
|
.locals 10
|
||||||
|
|
||||||
|
if-eqz p0, :done
|
||||||
|
|
||||||
|
if-eqz p1, :done
|
||||||
|
|
||||||
|
iget-object v8, p1, Lradiant/swipe/ComposeSearchQueueEvent;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v8, :done
|
||||||
|
|
||||||
|
iget-object v2, p1, Lradiant/swipe/ComposeSearchQueueEvent;->id:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
iget v4, p1, Lradiant/swipe/ComposeSearchQueueEvent;->type:I
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
if-lt v4, v0, :done
|
||||||
|
|
||||||
|
const/4 v0, 0x4
|
||||||
|
|
||||||
|
if-gt v4, v0, :done
|
||||||
|
|
||||||
|
iget-object v0, p0, Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;->n:Ljava/util/List;
|
||||||
|
|
||||||
|
invoke-interface {v0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
:find_row
|
||||||
|
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
check-cast v1, Lmb0/e;
|
||||||
|
|
||||||
|
invoke-static {v1}, Lmb0/f;->a(Lmb0/e;)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
invoke-virtual {v2, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
|
||||||
|
|
||||||
|
move-result v9
|
||||||
|
|
||||||
|
if-eqz v9, :find_row
|
||||||
|
|
||||||
|
instance-of v9, v1, Lmb0/a;
|
||||||
|
|
||||||
|
if-eqz v9, :find_row
|
||||||
|
|
||||||
|
check-cast v1, Lmb0/a;
|
||||||
|
|
||||||
|
iget-object v3, v1, Lmb0/a;->a:Lh40/n;
|
||||||
|
|
||||||
|
const/4 v9, 0x1
|
||||||
|
|
||||||
|
if-ne v4, v9, :check_album
|
||||||
|
|
||||||
|
instance-of v9, v3, Lh40/p;
|
||||||
|
|
||||||
|
if-eqz v9, :find_row
|
||||||
|
|
||||||
|
goto :recover_dependencies
|
||||||
|
|
||||||
|
:check_album
|
||||||
|
const/4 v9, 0x2
|
||||||
|
|
||||||
|
if-ne v4, v9, :check_playlist
|
||||||
|
|
||||||
|
instance-of v9, v3, Lh40/a;
|
||||||
|
|
||||||
|
if-eqz v9, :find_row
|
||||||
|
|
||||||
|
goto :recover_dependencies
|
||||||
|
|
||||||
|
:check_playlist
|
||||||
|
const/4 v9, 0x3
|
||||||
|
|
||||||
|
if-ne v4, v9, :check_mix
|
||||||
|
|
||||||
|
instance-of v9, v3, Lh40/j;
|
||||||
|
|
||||||
|
if-eqz v9, :find_row
|
||||||
|
|
||||||
|
goto :recover_dependencies
|
||||||
|
|
||||||
|
:check_mix
|
||||||
|
instance-of v9, v3, Lh40/i;
|
||||||
|
|
||||||
|
if-eqz v9, :find_row
|
||||||
|
|
||||||
|
:recover_dependencies
|
||||||
|
iget-object v9, p0, Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;->d:Lcom/tidal/android/feature/search/ui/e;
|
||||||
|
|
||||||
|
instance-of v0, v9, Lv9/e;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
check-cast v9, Lv9/e;
|
||||||
|
|
||||||
|
iget-object v5, v9, Lv9/e;->b:Lcom/tidal/android/navigation/NavigationInfo;
|
||||||
|
|
||||||
|
iget-object v9, v9, Lv9/e;->a:Lcom/aspiro/wamp/core/k;
|
||||||
|
|
||||||
|
const/4 v6, 0x0
|
||||||
|
|
||||||
|
const/4 v0, 0x2
|
||||||
|
|
||||||
|
if-eq v4, v0, :recover_menu
|
||||||
|
|
||||||
|
const/4 v0, 0x4
|
||||||
|
|
||||||
|
if-ne v4, v0, :dependencies_ready
|
||||||
|
|
||||||
|
:recover_menu
|
||||||
|
|
||||||
|
instance-of v0, v9, Lh9/p1;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
check-cast v9, Lh9/p1;
|
||||||
|
|
||||||
|
iget-object v9, v9, Lh9/p1;->b:Lx40/a;
|
||||||
|
|
||||||
|
instance-of v0, v9, Lh4/a;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
move-object v6, v9
|
||||||
|
|
||||||
|
check-cast v6, Lh4/a;
|
||||||
|
|
||||||
|
:dependencies_ready
|
||||||
|
|
||||||
|
new-instance v7, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;
|
||||||
|
|
||||||
|
const-string v0, "search"
|
||||||
|
|
||||||
|
invoke-direct {v7, v0, v2}, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
if-ne v4, v0, :album
|
||||||
|
|
||||||
|
check-cast v3, Lh40/p;
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/QueueExecutor;->hasActiveQueue()Z
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
if-eqz v0, :play_track
|
||||||
|
|
||||||
|
invoke-static {v3}, Lie0/i;->a(Lh40/p;)Lcom/aspiro/wamp/model/Track;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
iget-object v4, p0, Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;->m:Lkotlinx/coroutines/flow/MutableStateFlow;
|
||||||
|
|
||||||
|
invoke-interface {v4}, Lkotlinx/coroutines/flow/MutableStateFlow;->getValue()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v4
|
||||||
|
|
||||||
|
check-cast v4, Lcom/tidal/android/feature/search/ui/SearchQuery;
|
||||||
|
|
||||||
|
iget-object v4, v4, Lcom/tidal/android/feature/search/ui/SearchQuery;->a:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-nez v4, :track_query_ready
|
||||||
|
|
||||||
|
const-string v4, ""
|
||||||
|
|
||||||
|
:track_query_ready
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
if-eqz v5, :track_navigation_ready
|
||||||
|
|
||||||
|
invoke-static {v5}, Lcom/tidal/android/navigation/a;->b(Lcom/tidal/android/navigation/NavigationInfo;)Lcom/tidal/android/navigation/NavigationInfo$Node;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
:track_navigation_ready
|
||||||
|
invoke-static {v2, v4, v1}, Lcom/aspiro/wamp/playqueue/source/model/b;->o(Ljava/lang/String;Ljava/lang/String;Lcom/tidal/android/navigation/NavigationInfo;)Lcom/aspiro/wamp/playqueue/source/model/ItemSource;
|
||||||
|
|
||||||
|
move-result-object v4
|
||||||
|
|
||||||
|
invoke-virtual {v4, v9}, Lcom/aspiro/wamp/playqueue/source/model/Source;->addSourceItem(Lcom/aspiro/wamp/model/MediaItem;)V
|
||||||
|
|
||||||
|
invoke-static {v8, v9, v7, v4}, Lradiant/swipe/QueueExecutor;->track(Landroid/content/Context;Lcom/aspiro/wamp/model/Track;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/aspiro/wamp/playqueue/source/model/Source;)Z
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:play_track
|
||||||
|
iget-object v5, p0, Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;->m:Lkotlinx/coroutines/flow/MutableStateFlow;
|
||||||
|
|
||||||
|
invoke-interface {v5}, Lkotlinx/coroutines/flow/MutableStateFlow;->getValue()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v5
|
||||||
|
|
||||||
|
check-cast v5, Lcom/tidal/android/feature/search/ui/SearchQuery;
|
||||||
|
|
||||||
|
iget-object v5, v5, Lcom/tidal/android/feature/search/ui/SearchQuery;->a:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-nez v5, :play_query_ready
|
||||||
|
|
||||||
|
const-string v5, ""
|
||||||
|
|
||||||
|
:play_query_ready
|
||||||
|
iget-object v9, p0, Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;->f:Lcom/tidal/android/feature/search/ui/f;
|
||||||
|
|
||||||
|
iget-wide v0, v3, Lh40/p;->a:J
|
||||||
|
|
||||||
|
invoke-interface {v9, v0, v1, v3, v5}, Lcom/tidal/android/feature/search/ui/f;->a(JLh40/p;Ljava/lang/String;)V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:album
|
||||||
|
const/4 v0, 0x2
|
||||||
|
|
||||||
|
if-ne v4, v0, :playlist
|
||||||
|
|
||||||
|
check-cast v3, Lh40/a;
|
||||||
|
|
||||||
|
invoke-static {v3}, Lie0/a;->a(Lh40/a;)Lcom/aspiro/wamp/model/Album;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
invoke-static {v8, v9, v7, v5, v6}, Lradiant/swipe/QueueExecutor;->album(Landroid/content/Context;Lcom/aspiro/wamp/model/Album;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;Lh4/a;)Lio/reactivex/disposables/Disposable;
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:playlist
|
||||||
|
const/4 v0, 0x3
|
||||||
|
|
||||||
|
if-ne v4, v0, :mix
|
||||||
|
|
||||||
|
check-cast v3, Lh40/j;
|
||||||
|
|
||||||
|
invoke-static {v3}, Lie0/h;->a(Lh40/j;)Lcom/aspiro/wamp/model/Playlist;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
invoke-static {v8, v9, v7, v5}, Lradiant/swipe/QueueExecutor;->playlist(Landroid/content/Context;Lcom/aspiro/wamp/model/Playlist;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;)V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:mix
|
||||||
|
check-cast v3, Lh40/i;
|
||||||
|
|
||||||
|
invoke-static {v3}, Lie0/g;->b(Lh40/i;)Lcom/aspiro/wamp/mix/model/Mix;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
invoke-static {v8, v9, v7, v5, v6}, Lradiant/swipe/QueueExecutor;->mix(Landroid/content/Context;Lcom/aspiro/wamp/mix/model/Mix;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;Lh4/a;)Lio/reactivex/disposables/Disposable;
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,220 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSearchQueueAction;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "ComposeSearchQueueAction.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final callback:Lam0/l;
|
||||||
|
|
||||||
|
.field private context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field private final id:Ljava/lang/String;
|
||||||
|
|
||||||
|
.field private final type:I
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lam0/l;Lpb0/b;)V
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSearchQueueAction;->callback:Lam0/l;
|
||||||
|
|
||||||
|
invoke-static {p2}, Lradiant/swipe/ComposeSearchQueueAction;->key(Lpb0/b;)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/ComposeSearchQueueAction;->id:Ljava/lang/String;
|
||||||
|
|
||||||
|
invoke-static {p2}, Lradiant/swipe/ComposeSearchQueueAction;->type(Lpb0/b;)I
|
||||||
|
|
||||||
|
move-result p1
|
||||||
|
|
||||||
|
iput p1, p0, Lradiant/swipe/ComposeSearchQueueAction;->type:I
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static key(Lpb0/b;)Ljava/lang/String;
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
instance-of v0, p0, Lpb0/b$i;
|
||||||
|
|
||||||
|
if-eqz v0, :album
|
||||||
|
|
||||||
|
check-cast p0, Lpb0/b$i;
|
||||||
|
|
||||||
|
iget-wide v0, p0, Lpb0/b$i;->a:J
|
||||||
|
|
||||||
|
invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object p0
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
|
||||||
|
:album
|
||||||
|
instance-of v0, p0, Lpb0/b$a;
|
||||||
|
|
||||||
|
if-eqz v0, :playlist
|
||||||
|
|
||||||
|
check-cast p0, Lpb0/b$a;
|
||||||
|
|
||||||
|
iget-wide v0, p0, Lpb0/b$a;->a:J
|
||||||
|
|
||||||
|
invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object p0
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
|
||||||
|
:playlist
|
||||||
|
instance-of v0, p0, Lpb0/b$f;
|
||||||
|
|
||||||
|
if-eqz v0, :mix
|
||||||
|
|
||||||
|
check-cast p0, Lpb0/b$f;
|
||||||
|
|
||||||
|
iget-object p0, p0, Lpb0/b$f;->a:Ljava/lang/String;
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
|
||||||
|
:mix
|
||||||
|
instance-of v0, p0, Lpb0/b$e;
|
||||||
|
|
||||||
|
if-eqz v0, :invalid
|
||||||
|
|
||||||
|
check-cast p0, Lpb0/b$e;
|
||||||
|
|
||||||
|
iget-object p0, p0, Lpb0/b$e;->a:Ljava/lang/String;
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
|
||||||
|
:invalid
|
||||||
|
const/4 p0, 0x0
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public stableKey()Ljava/lang/String;
|
||||||
|
.locals 3
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSearchQueueAction;->id:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v0, :invalid
|
||||||
|
|
||||||
|
iget v1, p0, Lradiant/swipe/ComposeSearchQueueAction;->type:I
|
||||||
|
|
||||||
|
if-eqz v1, :invalid
|
||||||
|
|
||||||
|
new-instance v2, Ljava/lang/StringBuilder;
|
||||||
|
|
||||||
|
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
|
||||||
|
|
||||||
|
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
|
||||||
|
|
||||||
|
const/16 v1, 0x3a
|
||||||
|
|
||||||
|
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
|
||||||
|
|
||||||
|
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
|
||||||
|
:invalid
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method private static type(Lpb0/b;)I
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
instance-of v0, p0, Lpb0/b$i;
|
||||||
|
|
||||||
|
if-eqz v0, :album
|
||||||
|
|
||||||
|
const/4 p0, 0x1
|
||||||
|
|
||||||
|
return p0
|
||||||
|
|
||||||
|
:album
|
||||||
|
instance-of v0, p0, Lpb0/b$a;
|
||||||
|
|
||||||
|
if-eqz v0, :playlist
|
||||||
|
|
||||||
|
const/4 p0, 0x2
|
||||||
|
|
||||||
|
return p0
|
||||||
|
|
||||||
|
:playlist
|
||||||
|
instance-of v0, p0, Lpb0/b$f;
|
||||||
|
|
||||||
|
if-eqz v0, :mix
|
||||||
|
|
||||||
|
const/4 p0, 0x3
|
||||||
|
|
||||||
|
return p0
|
||||||
|
|
||||||
|
:mix
|
||||||
|
instance-of p0, p0, Lpb0/b$e;
|
||||||
|
|
||||||
|
if-eqz p0, :invalid
|
||||||
|
|
||||||
|
const/4 p0, 0x4
|
||||||
|
|
||||||
|
return p0
|
||||||
|
|
||||||
|
:invalid
|
||||||
|
const/4 p0, 0x0
|
||||||
|
|
||||||
|
return p0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public invoke()Ljava/lang/Object;
|
||||||
|
.locals 4
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSearchQueueAction;->callback:Lam0/l;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
iget-object v1, p0, Lradiant/swipe/ComposeSearchQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/ComposeSearchQueueAction;->id:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
iget v3, p0, Lradiant/swipe/ComposeSearchQueueAction;->type:I
|
||||||
|
|
||||||
|
if-eqz v3, :done
|
||||||
|
|
||||||
|
new-instance p0, Lradiant/swipe/ComposeSearchQueueEvent;
|
||||||
|
|
||||||
|
invoke-direct {p0, v1, v2, v3}, Lradiant/swipe/ComposeSearchQueueEvent;-><init>(Landroid/content/Context;Ljava/lang/String;I)V
|
||||||
|
|
||||||
|
invoke-interface {v0, p0}, Lam0/l;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
|
||||||
|
|
||||||
|
:done
|
||||||
|
sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public setContext(Landroid/content/Context;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSearchQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSearchQueueEvent;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "ComposeSearchQueueEvent.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lcom/tidal/android/feature/search/ui/b;
|
||||||
|
|
||||||
|
|
||||||
|
# static fields
|
||||||
|
.field public static final TYPE_ALBUM:I = 0x2
|
||||||
|
|
||||||
|
.field public static final TYPE_MIX:I = 0x4
|
||||||
|
|
||||||
|
.field public static final TYPE_PLAYLIST:I = 0x3
|
||||||
|
|
||||||
|
.field public static final TYPE_TRACK:I = 0x1
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field public final context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field public final id:Ljava/lang/String;
|
||||||
|
|
||||||
|
.field public final type:I
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Landroid/content/Context;Ljava/lang/String;I)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSearchQueueEvent;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
iput-object p2, p0, Lradiant/swipe/ComposeSearchQueueEvent;->id:Ljava/lang/String;
|
||||||
|
|
||||||
|
iput p3, p0, Lradiant/swipe/ComposeSearchQueueEvent;->type:I
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
.class public interface abstract Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "ComposeSwipeAction.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lam0/a;
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public abstract invoke()Ljava/lang/Object;
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public abstract setContext(Landroid/content/Context;)V
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,227 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSwipeState$Draw;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.implements Lam0/l;
|
||||||
|
|
||||||
|
|
||||||
|
# annotations
|
||||||
|
.annotation system Ldalvik/annotation/EnclosingClass;
|
||||||
|
value = Lradiant/swipe/ComposeSwipeState;
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
.annotation system Ldalvik/annotation/InnerClass;
|
||||||
|
accessFlags = 0x19
|
||||||
|
name = "Draw"
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lradiant/swipe/ComposeSwipeState;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSwipeState$Draw;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public invoke(Landroidx/compose/ui/graphics/drawscope/ContentDrawScope;)Lkotlin/u;
|
||||||
|
.locals 16
|
||||||
|
|
||||||
|
move-object/from16 v0, p1
|
||||||
|
|
||||||
|
move-object/from16 v5, p0
|
||||||
|
|
||||||
|
invoke-interface {v0}, Landroidx/compose/ui/graphics/drawscope/DrawScope;->getSize-NH-jbRc()J
|
||||||
|
|
||||||
|
move-result-wide v1
|
||||||
|
|
||||||
|
invoke-static {v1, v2}, Landroidx/compose/ui/geometry/Size;->getWidth-impl(J)F
|
||||||
|
|
||||||
|
move-result v3
|
||||||
|
|
||||||
|
invoke-static {v1, v2}, Landroidx/compose/ui/geometry/Size;->getHeight-impl(J)F
|
||||||
|
|
||||||
|
move-result v4
|
||||||
|
|
||||||
|
iget-object v5, v5, Lradiant/swipe/ComposeSwipeState$Draw;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
iput v3, v5, Lradiant/swipe/ComposeSwipeState;->rowWidth:F
|
||||||
|
|
||||||
|
iget-object v1, v5, Lradiant/swipe/ComposeSwipeState;->translation:Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
invoke-interface {v1}, Landroidx/compose/runtime/MutableFloatState;->getFloatValue()F
|
||||||
|
|
||||||
|
move-result v6
|
||||||
|
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
cmpl-float v2, v6, v1
|
||||||
|
|
||||||
|
if-eqz v2, :draw_plain
|
||||||
|
|
||||||
|
invoke-interface {v0}, Landroidx/compose/ui/graphics/drawscope/DrawScope;->getDrawContext()Landroidx/compose/ui/graphics/drawscope/DrawContext;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
invoke-interface {v2}, Landroidx/compose/ui/graphics/drawscope/DrawContext;->getCanvas()Landroidx/compose/ui/graphics/Canvas;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
invoke-static {v2}, Landroidx/compose/ui/graphics/AndroidCanvas_androidKt;->getNativeCanvas(Landroidx/compose/ui/graphics/Canvas;)Landroid/graphics/Canvas;
|
||||||
|
|
||||||
|
move-result-object v7
|
||||||
|
|
||||||
|
invoke-virtual {v7}, Landroid/graphics/Canvas;->save()I
|
||||||
|
|
||||||
|
move-result v8
|
||||||
|
|
||||||
|
const/16 v9, __RL_SWIPE_TO_QUEUE_DIRECTION__
|
||||||
|
|
||||||
|
const/4 v10, 0x4
|
||||||
|
|
||||||
|
if-ne v9, v10, :right_exposure
|
||||||
|
|
||||||
|
add-float v9, v3, v6
|
||||||
|
|
||||||
|
invoke-static {v1, v9}, Ljava/lang/Math;->max(FF)F
|
||||||
|
|
||||||
|
move-result v9
|
||||||
|
|
||||||
|
move v10, v3
|
||||||
|
|
||||||
|
goto :exposure_ready
|
||||||
|
|
||||||
|
:right_exposure
|
||||||
|
move v9, v1
|
||||||
|
|
||||||
|
invoke-static {v3, v6}, Ljava/lang/Math;->min(FF)F
|
||||||
|
|
||||||
|
move-result v10
|
||||||
|
|
||||||
|
:exposure_ready
|
||||||
|
invoke-virtual {v7, v9, v1, v10, v4}, Landroid/graphics/Canvas;->clipRect(FFFF)Z
|
||||||
|
|
||||||
|
iget v11, v5, Lradiant/swipe/ComposeSwipeState;->green:I
|
||||||
|
|
||||||
|
invoke-virtual {v7, v11}, Landroid/graphics/Canvas;->drawColor(I)V
|
||||||
|
|
||||||
|
iget-object v11, v5, Lradiant/swipe/ComposeSwipeState;->icon:Landroid/graphics/drawable/Drawable;
|
||||||
|
|
||||||
|
if-eqz v11, :background_done
|
||||||
|
|
||||||
|
invoke-virtual {v11}, Landroid/graphics/drawable/Drawable;->getIntrinsicWidth()I
|
||||||
|
|
||||||
|
move-result v12
|
||||||
|
|
||||||
|
invoke-virtual {v11}, Landroid/graphics/drawable/Drawable;->getIntrinsicHeight()I
|
||||||
|
|
||||||
|
move-result v13
|
||||||
|
|
||||||
|
if-lez v12, :background_done
|
||||||
|
|
||||||
|
if-lez v13, :background_done
|
||||||
|
|
||||||
|
const/high16 v14, 0x41800000 # 16.0f
|
||||||
|
|
||||||
|
invoke-virtual {v5, v14}, Lradiant/swipe/ComposeSwipeState;->dp(F)F
|
||||||
|
|
||||||
|
move-result v14
|
||||||
|
|
||||||
|
const/16 v15, __RL_SWIPE_TO_QUEUE_DIRECTION__
|
||||||
|
|
||||||
|
const/4 v1, 0x4
|
||||||
|
|
||||||
|
if-ne v15, v1, :right_icon
|
||||||
|
|
||||||
|
int-to-float v1, v12
|
||||||
|
|
||||||
|
sub-float v1, v3, v1
|
||||||
|
|
||||||
|
sub-float/2addr v1, v14
|
||||||
|
|
||||||
|
goto :icon_x_ready
|
||||||
|
|
||||||
|
:right_icon
|
||||||
|
move v1, v14
|
||||||
|
|
||||||
|
:icon_x_ready
|
||||||
|
int-to-float v14, v13
|
||||||
|
|
||||||
|
sub-float v14, v4, v14
|
||||||
|
|
||||||
|
const/high16 v15, 0x40000000 # 2.0f
|
||||||
|
|
||||||
|
div-float/2addr v14, v15
|
||||||
|
|
||||||
|
float-to-int v15, v1
|
||||||
|
|
||||||
|
float-to-int v14, v14
|
||||||
|
|
||||||
|
add-int v1, v15, v12
|
||||||
|
|
||||||
|
add-int v12, v14, v13
|
||||||
|
|
||||||
|
invoke-virtual {v11, v15, v14, v1, v12}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
|
||||||
|
|
||||||
|
const/16 v1, 0xff
|
||||||
|
|
||||||
|
invoke-virtual {v11, v1}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
|
||||||
|
|
||||||
|
invoke-virtual {v11, v7}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V
|
||||||
|
|
||||||
|
:background_done
|
||||||
|
invoke-virtual {v7, v8}, Landroid/graphics/Canvas;->restoreToCount(I)V
|
||||||
|
|
||||||
|
invoke-virtual {v7}, Landroid/graphics/Canvas;->save()I
|
||||||
|
|
||||||
|
move-result v8
|
||||||
|
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
invoke-virtual {v7, v1, v1, v3, v4}, Landroid/graphics/Canvas;->clipRect(FFFF)Z
|
||||||
|
|
||||||
|
invoke-virtual {v7, v6, v1}, Landroid/graphics/Canvas;->translate(FF)V
|
||||||
|
|
||||||
|
:try_start_0
|
||||||
|
invoke-interface {v0}, Landroidx/compose/ui/graphics/drawscope/ContentDrawScope;->drawContent()V
|
||||||
|
:try_end_0
|
||||||
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
||||||
|
|
||||||
|
invoke-virtual {v7, v8}, Landroid/graphics/Canvas;->restoreToCount(I)V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:catchall_0
|
||||||
|
move-exception v0
|
||||||
|
|
||||||
|
invoke-virtual {v7, v8}, Landroid/graphics/Canvas;->restoreToCount(I)V
|
||||||
|
|
||||||
|
throw v0
|
||||||
|
|
||||||
|
:draw_plain
|
||||||
|
invoke-interface {v0}, Landroidx/compose/ui/graphics/drawscope/ContentDrawScope;->drawContent()V
|
||||||
|
|
||||||
|
:done
|
||||||
|
sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
check-cast p1, Landroidx/compose/ui/graphics/drawscope/ContentDrawScope;
|
||||||
|
|
||||||
|
invoke-virtual {p0, p1}, Lradiant/swipe/ComposeSwipeState$Draw;->invoke(Landroidx/compose/ui/graphics/drawscope/ContentDrawScope;)Lkotlin/u;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,231 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSwipeState$Gesture;
|
||||||
|
.super Landroidx/compose/ui/input/pointer/PointerInputFilter;
|
||||||
|
.implements Lam0/l;
|
||||||
|
.implements Landroidx/compose/ui/input/pointer/PointerInputModifier;
|
||||||
|
|
||||||
|
|
||||||
|
# annotations
|
||||||
|
.annotation system Ldalvik/annotation/EnclosingClass;
|
||||||
|
value = Lradiant/swipe/ComposeSwipeState;
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
.annotation system Ldalvik/annotation/InnerClass;
|
||||||
|
accessFlags = 0x19
|
||||||
|
name = "Gesture"
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private consumeAfterDispatch:Z
|
||||||
|
|
||||||
|
.field private final state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lradiant/swipe/ComposeSwipeState;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
invoke-direct {p0}, Landroidx/compose/ui/input/pointer/PointerInputFilter;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public getInterceptOutOfBoundsChildEvents()Z
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
return v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public getPointerInputFilter()Landroidx/compose/ui/input/pointer/PointerInputFilter;
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public invoke(Landroid/view/MotionEvent;)Lkotlin/u;
|
||||||
|
.locals 3
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionMasked()I
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
iput-boolean v1, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->consumeAfterDispatch:Z
|
||||||
|
|
||||||
|
if-eqz v0, :down
|
||||||
|
|
||||||
|
const/4 v1, 0x1
|
||||||
|
|
||||||
|
if-eq v0, v1, :up
|
||||||
|
|
||||||
|
const/4 v1, 0x2
|
||||||
|
|
||||||
|
if-eq v0, v1, :move
|
||||||
|
|
||||||
|
const/4 v1, 0x3
|
||||||
|
|
||||||
|
if-eq v0, v1, :cancel
|
||||||
|
|
||||||
|
const/4 v1, 0x5
|
||||||
|
|
||||||
|
if-eq v0, v1, :cancel
|
||||||
|
|
||||||
|
const/4 v1, 0x6
|
||||||
|
|
||||||
|
if-eq v0, v1, :cancel
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:down
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawX()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawY()F
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v2, v0, v1}, Lradiant/swipe/ComposeSwipeState;->begin(FF)V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:move
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawX()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawY()F
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v2, v0, v1}, Lradiant/swipe/ComposeSwipeState;->move(FF)V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:up
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawX()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawY()F
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v2, v0, v1}, Lradiant/swipe/ComposeSwipeState;->move(FF)V
|
||||||
|
|
||||||
|
iget-boolean v0, v2, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->consumeAfterDispatch:Z
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Lradiant/swipe/ComposeSwipeState;->finish()V
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:cancel
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Lradiant/swipe/ComposeSwipeState;->cancelGesture()V
|
||||||
|
|
||||||
|
:done
|
||||||
|
sget-object p1, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object p1
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
check-cast p1, Landroid/view/MotionEvent;
|
||||||
|
|
||||||
|
invoke-virtual {p0, p1}, Lradiant/swipe/ComposeSwipeState$Gesture;->invoke(Landroid/view/MotionEvent;)Lkotlin/u;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public onCancel()V
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Lradiant/swipe/ComposeSwipeState;->cancelGesture()V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public onPointerEvent-H0pRuoY(Landroidx/compose/ui/input/pointer/PointerEvent;Landroidx/compose/ui/input/pointer/PointerEventPass;J)V
|
||||||
|
.locals 4
|
||||||
|
|
||||||
|
sget-object v0, Landroidx/compose/ui/input/pointer/PointerEventPass;->Initial:Landroidx/compose/ui/input/pointer/PointerEventPass;
|
||||||
|
|
||||||
|
if-ne p2, v0, :done
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
iget-boolean v1, v0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
const/4 v2, 0x0
|
||||||
|
|
||||||
|
iput-boolean v2, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->consumeAfterDispatch:Z
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroidx/compose/ui/input/pointer/PointerEvent;->getMotionEvent()Landroid/view/MotionEvent;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
if-eqz v2, :after_dispatch
|
||||||
|
|
||||||
|
invoke-virtual {p0, v2}, Lradiant/swipe/ComposeSwipeState$Gesture;->invoke(Landroid/view/MotionEvent;)Lkotlin/u;
|
||||||
|
|
||||||
|
:after_dispatch
|
||||||
|
iget-boolean v2, p0, Lradiant/swipe/ComposeSwipeState$Gesture;->consumeAfterDispatch:Z
|
||||||
|
|
||||||
|
or-int/2addr v1, v2
|
||||||
|
|
||||||
|
iget-boolean v2, v0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
or-int/2addr v1, v2
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroidx/compose/ui/input/pointer/PointerEvent;->getChanges()Ljava/util/List;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
invoke-interface {v0}, Ljava/util/List;->size()I
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
const/4 v2, 0x0
|
||||||
|
|
||||||
|
:consume_loop
|
||||||
|
if-ge v2, v1, :done
|
||||||
|
|
||||||
|
invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
check-cast v3, Landroidx/compose/ui/input/pointer/PointerInputChange;
|
||||||
|
|
||||||
|
invoke-virtual {v3}, Landroidx/compose/ui/input/pointer/PointerInputChange;->consume()V
|
||||||
|
|
||||||
|
add-int/lit8 v2, v2, 0x1
|
||||||
|
|
||||||
|
goto :consume_loop
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSwipeState$ResetAnimator;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.implements Landroid/animation/ValueAnimator$AnimatorUpdateListener;
|
||||||
|
|
||||||
|
|
||||||
|
# annotations
|
||||||
|
.annotation system Ldalvik/annotation/EnclosingClass;
|
||||||
|
value = Lradiant/swipe/ComposeSwipeState;
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
.annotation system Ldalvik/annotation/InnerClass;
|
||||||
|
accessFlags = 0x19
|
||||||
|
name = "ResetAnimator"
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lradiant/swipe/ComposeSwipeState;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSwipeState$ResetAnimator;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public onAnimationUpdate(Landroid/animation/ValueAnimator;)V
|
||||||
|
.locals 3
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->getAnimatedValue()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
check-cast v0, Ljava/lang/Float;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Ljava/lang/Float;->floatValue()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
iget-object v1, p0, Lradiant/swipe/ComposeSwipeState$ResetAnimator;->state:Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v1, v0}, Lradiant/swipe/ComposeSwipeState;->setOffset(F)V
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->getAnimatedFraction()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
const/high16 v2, 0x3f800000 # 1.0f
|
||||||
|
|
||||||
|
cmpg-float v0, v0, v2
|
||||||
|
|
||||||
|
if-gez v0, :finished
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:finished
|
||||||
|
invoke-virtual {v1, p1}, Lradiant/swipe/ComposeSwipeState;->clearAnimator(Landroid/animation/ValueAnimator;)V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,657 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeSwipeState;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field translation:Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
.field action:Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
.field context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field view:Landroid/view/View;
|
||||||
|
|
||||||
|
.field enabled:Z
|
||||||
|
|
||||||
|
.field downX:F
|
||||||
|
|
||||||
|
.field downY:F
|
||||||
|
|
||||||
|
.field tracking:Z
|
||||||
|
|
||||||
|
.field locked:Z
|
||||||
|
|
||||||
|
.field armed:Z
|
||||||
|
|
||||||
|
.field rowWidth:F
|
||||||
|
|
||||||
|
.field animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
.field final gesture:Lradiant/swipe/ComposeSwipeState$Gesture;
|
||||||
|
|
||||||
|
.field final draw:Lradiant/swipe/ComposeSwipeState$Draw;
|
||||||
|
|
||||||
|
.field icon:Landroid/graphics/drawable/Drawable;
|
||||||
|
|
||||||
|
.field green:I
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>()V
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
invoke-static {v0}, Landroidx/compose/runtime/PrimitiveSnapshotStateKt;->mutableFloatStateOf(F)Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/ComposeSwipeState;->translation:Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
new-instance v0, Lradiant/swipe/ComposeSwipeState$Gesture;
|
||||||
|
|
||||||
|
invoke-direct {v0, p0}, Lradiant/swipe/ComposeSwipeState$Gesture;-><init>(Lradiant/swipe/ComposeSwipeState;)V
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/ComposeSwipeState;->gesture:Lradiant/swipe/ComposeSwipeState$Gesture;
|
||||||
|
|
||||||
|
new-instance v1, Lradiant/swipe/ComposeSwipeState$Draw;
|
||||||
|
|
||||||
|
invoke-direct {v1, p0}, Lradiant/swipe/ComposeSwipeState$Draw;-><init>(Lradiant/swipe/ComposeSwipeState;)V
|
||||||
|
|
||||||
|
iput-object v1, p0, Lradiant/swipe/ComposeSwipeState;->draw:Lradiant/swipe/ComposeSwipeState$Draw;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
.locals 5
|
||||||
|
.annotation build Landroidx/compose/runtime/Composable;
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
const v0, 0x4a33c921
|
||||||
|
|
||||||
|
invoke-interface {p4, v0}, Landroidx/compose/runtime/Composer;->startReplaceGroup(I)V
|
||||||
|
|
||||||
|
invoke-static {}, Landroidx/compose/ui/platform/AndroidCompositionLocals_androidKt;->getLocalView()Landroidx/compose/runtime/ProvidableCompositionLocal;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
invoke-interface {p4, v0}, Landroidx/compose/runtime/Composer;->consume(Landroidx/compose/runtime/CompositionLocal;)Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
check-cast v0, Landroid/view/View;
|
||||||
|
|
||||||
|
invoke-interface {p4, p1}, Landroidx/compose/runtime/Composer;->changed(Ljava/lang/Object;)Z
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
invoke-interface {p4}, Landroidx/compose/runtime/Composer;->rememberedValue()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
if-nez v1, :new_state
|
||||||
|
|
||||||
|
sget-object v3, Landroidx/compose/runtime/Composer;->Companion:Landroidx/compose/runtime/Composer$Companion;
|
||||||
|
|
||||||
|
invoke-virtual {v3}, Landroidx/compose/runtime/Composer$Companion;->getEmpty()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
if-ne v2, v3, :state_ready
|
||||||
|
|
||||||
|
:new_state
|
||||||
|
new-instance v2, Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-direct {v2}, Lradiant/swipe/ComposeSwipeState;-><init>()V
|
||||||
|
|
||||||
|
invoke-interface {p4, v2}, Landroidx/compose/runtime/Composer;->updateRememberedValue(Ljava/lang/Object;)V
|
||||||
|
|
||||||
|
:state_ready
|
||||||
|
check-cast v2, Lradiant/swipe/ComposeSwipeState;
|
||||||
|
|
||||||
|
invoke-virtual {v2, p2, p3, v0}, Lradiant/swipe/ComposeSwipeState;->update(Lradiant/swipe/ComposeSwipeAction;ZLandroid/view/View;)V
|
||||||
|
|
||||||
|
iget-object v1, v2, Lradiant/swipe/ComposeSwipeState;->gesture:Lradiant/swipe/ComposeSwipeState$Gesture;
|
||||||
|
|
||||||
|
check-cast v1, Landroidx/compose/ui/Modifier;
|
||||||
|
|
||||||
|
invoke-interface {p0, v1}, Landroidx/compose/ui/Modifier;->then(Landroidx/compose/ui/Modifier;)Landroidx/compose/ui/Modifier;
|
||||||
|
|
||||||
|
move-result-object p0
|
||||||
|
|
||||||
|
iget-object v1, v2, Lradiant/swipe/ComposeSwipeState;->draw:Lradiant/swipe/ComposeSwipeState$Draw;
|
||||||
|
|
||||||
|
invoke-static {p0, v1}, Landroidx/compose/ui/draw/DrawModifierKt;->drawWithContent(Landroidx/compose/ui/Modifier;Lam0/l;)Landroidx/compose/ui/Modifier;
|
||||||
|
|
||||||
|
move-result-object p0
|
||||||
|
|
||||||
|
invoke-interface {p4}, Landroidx/compose/runtime/Composer;->endReplaceGroup()V
|
||||||
|
|
||||||
|
return-object p0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method animateReset()V
|
||||||
|
.locals 7
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
if-eqz v0, :read_offset
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V
|
||||||
|
|
||||||
|
iput-object v1, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
:read_offset
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->translation:Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
invoke-interface {v0}, Landroidx/compose/runtime/MutableFloatState;->getFloatValue()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
invoke-static {v0}, Ljava/lang/Math;->abs(F)F
|
||||||
|
|
||||||
|
move-result v2
|
||||||
|
|
||||||
|
const/high16 v3, 0x3f000000 # 0.5f
|
||||||
|
|
||||||
|
cmpg-float v2, v2, v3
|
||||||
|
|
||||||
|
if-lez v2, :snap
|
||||||
|
|
||||||
|
const/4 v2, 0x2
|
||||||
|
|
||||||
|
new-array v2, v2, [F
|
||||||
|
|
||||||
|
const/4 v3, 0x0
|
||||||
|
|
||||||
|
aput v0, v2, v3
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
const/4 v3, 0x0
|
||||||
|
|
||||||
|
aput v3, v2, v0
|
||||||
|
|
||||||
|
invoke-static {v2}, Landroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
const-wide/16 v4, 0xb4
|
||||||
|
|
||||||
|
invoke-virtual {v0, v4, v5}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
new-instance v2, Landroid/view/animation/DecelerateInterpolator;
|
||||||
|
|
||||||
|
const/high16 v4, 0x3fc00000 # 1.5f
|
||||||
|
|
||||||
|
invoke-direct {v2, v4}, Landroid/view/animation/DecelerateInterpolator;-><init>(F)V
|
||||||
|
|
||||||
|
invoke-virtual {v0, v2}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
|
||||||
|
|
||||||
|
new-instance v2, Lradiant/swipe/ComposeSwipeState$ResetAnimator;
|
||||||
|
|
||||||
|
invoke-direct {v2, p0}, Lradiant/swipe/ComposeSwipeState$ResetAnimator;-><init>(Lradiant/swipe/ComposeSwipeState;)V
|
||||||
|
|
||||||
|
invoke-virtual {v0, v2}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->start()V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:snap
|
||||||
|
const/4 v3, 0x0
|
||||||
|
|
||||||
|
invoke-virtual {p0, v3}, Lradiant/swipe/ComposeSwipeState;->setOffset(F)V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method begin(FF)V
|
||||||
|
.locals 3
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->releaseParent()V
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
if-eqz v0, :initialize
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V
|
||||||
|
|
||||||
|
iput-object v1, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
:initialize
|
||||||
|
iput p1, p0, Lradiant/swipe/ComposeSwipeState;->downX:F
|
||||||
|
|
||||||
|
iput p2, p0, Lradiant/swipe/ComposeSwipeState;->downY:F
|
||||||
|
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
invoke-virtual {p0, v0}, Lradiant/swipe/ComposeSwipeState;->setOffset(F)V
|
||||||
|
|
||||||
|
iget-boolean v2, p0, Lradiant/swipe/ComposeSwipeState;->enabled:Z
|
||||||
|
|
||||||
|
if-eqz v2, :inactive
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/ComposeSwipeState;->action:Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
if-eqz v2, :inactive
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
:inactive
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->tracking:Z
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method cancelGesture()V
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->tracking:Z
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->releaseParent()V
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->animateReset()V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method clearAnimator(Landroid/animation/ValueAnimator;)V
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
if-ne v0, p1, :done
|
||||||
|
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
iput-object v0, p0, Lradiant/swipe/ComposeSwipeState;->animator:Landroid/animation/ValueAnimator;
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method dp(F)F
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
iget v0, v0, Landroid/util/DisplayMetrics;->density:F
|
||||||
|
|
||||||
|
mul-float/2addr p1, v0
|
||||||
|
|
||||||
|
:done
|
||||||
|
return p1
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method finish()V
|
||||||
|
.locals 3
|
||||||
|
|
||||||
|
iget-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->tracking:Z
|
||||||
|
|
||||||
|
if-eqz v0, :reset_only
|
||||||
|
|
||||||
|
iget-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
if-eqz v0, :not_complete
|
||||||
|
|
||||||
|
iget-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
if-eqz v0, :not_complete
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->translation:Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
invoke-interface {v0}, Landroidx/compose/runtime/MutableFloatState;->getFloatValue()F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
invoke-virtual {p0, v0}, Lradiant/swipe/ComposeSwipeState;->isCorrectDirection(F)Z
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
goto :complete_ready
|
||||||
|
|
||||||
|
:not_complete
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
:complete_ready
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
iput-boolean v1, p0, Lradiant/swipe/ComposeSwipeState;->tracking:Z
|
||||||
|
|
||||||
|
iput-boolean v1, p0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
iput-boolean v1, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->releaseParent()V
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->animateReset()V
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/ComposeTapGuard;->suppressAfterSwipe()V
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->action:Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
invoke-interface {v0}, Lradiant/swipe/ComposeSwipeAction;->invoke()Ljava/lang/Object;
|
||||||
|
|
||||||
|
goto :done
|
||||||
|
|
||||||
|
:reset_only
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->releaseParent()V
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->animateReset()V
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method isCorrectDirection(F)Z
|
||||||
|
.locals 3
|
||||||
|
|
||||||
|
const/16 v0, __RL_SWIPE_TO_QUEUE_DIRECTION__
|
||||||
|
|
||||||
|
const/4 v1, 0x4
|
||||||
|
|
||||||
|
const/4 v2, 0x0
|
||||||
|
|
||||||
|
if-ne v0, v1, :expect_right
|
||||||
|
|
||||||
|
cmpg-float v0, p1, v2
|
||||||
|
|
||||||
|
if-gez v0, :wrong
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
return v0
|
||||||
|
|
||||||
|
:expect_right
|
||||||
|
cmpl-float v0, p1, v2
|
||||||
|
|
||||||
|
if-lez v0, :wrong
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
return v0
|
||||||
|
|
||||||
|
:wrong
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
return v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method move(FF)V
|
||||||
|
.locals 8
|
||||||
|
|
||||||
|
iget-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->tracking:Z
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
iget v0, p0, Lradiant/swipe/ComposeSwipeState;->downX:F
|
||||||
|
|
||||||
|
sub-float v0, p1, v0
|
||||||
|
|
||||||
|
iget v1, p0, Lradiant/swipe/ComposeSwipeState;->downY:F
|
||||||
|
|
||||||
|
sub-float v1, p2, v1
|
||||||
|
|
||||||
|
iget-boolean v2, p0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
if-nez v2, :publish
|
||||||
|
|
||||||
|
invoke-static {v0}, Ljava/lang/Math;->abs(F)F
|
||||||
|
|
||||||
|
move-result v2
|
||||||
|
|
||||||
|
invoke-static {v1}, Ljava/lang/Math;->abs(F)F
|
||||||
|
|
||||||
|
move-result v3
|
||||||
|
|
||||||
|
const/high16 v4, 0x41000000 # 8.0f
|
||||||
|
|
||||||
|
invoke-virtual {p0, v4}, Lradiant/swipe/ComposeSwipeState;->dp(F)F
|
||||||
|
|
||||||
|
move-result v4
|
||||||
|
|
||||||
|
cmpg-float v5, v2, v4
|
||||||
|
|
||||||
|
if-gez v5, :axis_ready
|
||||||
|
|
||||||
|
cmpg-float v5, v3, v4
|
||||||
|
|
||||||
|
if-ltz v5, :done
|
||||||
|
|
||||||
|
:axis_ready
|
||||||
|
cmpg-float v5, v2, v3
|
||||||
|
|
||||||
|
if-gtz v5, :horizontal_candidate
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->cancelGesture()V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:horizontal_candidate
|
||||||
|
invoke-virtual {p0, v0}, Lradiant/swipe/ComposeSwipeState;->isCorrectDirection(F)Z
|
||||||
|
|
||||||
|
move-result v5
|
||||||
|
|
||||||
|
if-nez v5, :lock
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->cancelGesture()V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:lock
|
||||||
|
const/4 v5, 0x1
|
||||||
|
|
||||||
|
iput-boolean v5, p0, Lradiant/swipe/ComposeSwipeState;->locked:Z
|
||||||
|
|
||||||
|
iget-object v6, p0, Lradiant/swipe/ComposeSwipeState;->view:Landroid/view/View;
|
||||||
|
|
||||||
|
if-eqz v6, :publish
|
||||||
|
|
||||||
|
invoke-virtual {v6}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
|
||||||
|
|
||||||
|
move-result-object v6
|
||||||
|
|
||||||
|
if-eqz v6, :publish
|
||||||
|
|
||||||
|
invoke-interface {v6, v5}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
|
||||||
|
|
||||||
|
:publish
|
||||||
|
invoke-virtual {p0, v0}, Lradiant/swipe/ComposeSwipeState;->isCorrectDirection(F)Z
|
||||||
|
|
||||||
|
move-result v2
|
||||||
|
|
||||||
|
if-nez v2, :set_offset
|
||||||
|
|
||||||
|
const/4 v2, 0x0
|
||||||
|
|
||||||
|
invoke-virtual {p0, v2}, Lradiant/swipe/ComposeSwipeState;->setOffset(F)V
|
||||||
|
|
||||||
|
iput-boolean v2, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:set_offset
|
||||||
|
invoke-virtual {p0, v0}, Lradiant/swipe/ComposeSwipeState;->setOffset(F)V
|
||||||
|
|
||||||
|
iget v2, p0, Lradiant/swipe/ComposeSwipeState;->rowWidth:F
|
||||||
|
|
||||||
|
const/4 v3, 0x0
|
||||||
|
|
||||||
|
cmpg-float v4, v2, v3
|
||||||
|
|
||||||
|
if-lez v4, :done
|
||||||
|
|
||||||
|
const v4, 0x3e99999a # 0.3f
|
||||||
|
|
||||||
|
mul-float/2addr v2, v4
|
||||||
|
|
||||||
|
invoke-static {v0}, Ljava/lang/Math;->abs(F)F
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
cmpg-float v0, v0, v2
|
||||||
|
|
||||||
|
if-ltz v0, :below_threshold
|
||||||
|
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
goto :arm_ready
|
||||||
|
|
||||||
|
:below_threshold
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
:arm_ready
|
||||||
|
iget-boolean v1, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
if-eq v0, v1, :done
|
||||||
|
|
||||||
|
iput-boolean v0, p0, Lradiant/swipe/ComposeSwipeState;->armed:Z
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->view:Landroid/view/View;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
const/4 v1, 0x4
|
||||||
|
|
||||||
|
invoke-virtual {v0, v1}, Landroid/view/View;->performHapticFeedback(I)Z
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method releaseParent()V
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->view:Landroid/view/View;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
const/4 v1, 0x0
|
||||||
|
|
||||||
|
invoke-interface {v0, v1}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method setOffset(F)V
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeSwipeState;->translation:Landroidx/compose/runtime/MutableFloatState;
|
||||||
|
|
||||||
|
invoke-interface {v0, p1}, Landroidx/compose/runtime/MutableFloatState;->setFloatValue(F)V
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method update(Lradiant/swipe/ComposeSwipeAction;ZLandroid/view/View;)V
|
||||||
|
.locals 4
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeSwipeState;->action:Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
iput-object p3, p0, Lradiant/swipe/ComposeSwipeState;->view:Landroid/view/View;
|
||||||
|
|
||||||
|
invoke-virtual {p3}, Landroid/view/View;->getContext()Landroid/content/Context;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
iget-object v1, p0, Lradiant/swipe/ComposeSwipeState;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-ne v0, v1, :load_resources
|
||||||
|
|
||||||
|
goto :context_ready
|
||||||
|
|
||||||
|
:load_resources
|
||||||
|
iput-object v0, p0, Lradiant/swipe/ComposeSwipeState;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
sget v1, Lcom/aspiro/wamp/R$color;->green:I
|
||||||
|
|
||||||
|
invoke-virtual {v0, v1}, Landroid/content/Context;->getColor(I)I
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
iput v1, p0, Lradiant/swipe/ComposeSwipeState;->green:I
|
||||||
|
|
||||||
|
sget v1, Lcom/aspiro/wamp/R$drawable;->ic_add_to_queue_last:I
|
||||||
|
|
||||||
|
invoke-virtual {v0, v1}, Landroid/content/Context;->getDrawable(I)Landroid/graphics/drawable/Drawable;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
if-eqz v1, :store_icon
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
const/4 v2, -0x1
|
||||||
|
|
||||||
|
invoke-virtual {v1, v2}, Landroid/graphics/drawable/Drawable;->setTint(I)V
|
||||||
|
|
||||||
|
:store_icon
|
||||||
|
iput-object v1, p0, Lradiant/swipe/ComposeSwipeState;->icon:Landroid/graphics/drawable/Drawable;
|
||||||
|
|
||||||
|
:context_ready
|
||||||
|
if-eqz p1, :enabled_ready
|
||||||
|
|
||||||
|
invoke-interface {p1, v0}, Lradiant/swipe/ComposeSwipeAction;->setContext(Landroid/content/Context;)V
|
||||||
|
|
||||||
|
:enabled_ready
|
||||||
|
iget-boolean v1, p0, Lradiant/swipe/ComposeSwipeState;->enabled:Z
|
||||||
|
|
||||||
|
iput-boolean p2, p0, Lradiant/swipe/ComposeSwipeState;->enabled:Z
|
||||||
|
|
||||||
|
if-nez v1, :was_enabled
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:was_enabled
|
||||||
|
if-nez p2, :done
|
||||||
|
|
||||||
|
invoke-virtual {p0}, Lradiant/swipe/ComposeSwipeState;->cancelGesture()V
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,97 @@
|
|||||||
|
.class public final Lradiant/swipe/ComposeTapGuard;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.implements Lam0/a;
|
||||||
|
|
||||||
|
|
||||||
|
# static fields
|
||||||
|
.field private static volatile deadline:J
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final delegate:Lam0/a;
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lam0/a;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ComposeTapGuard;->delegate:Lam0/a;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static isSuppressed()Z
|
||||||
|
.locals 5
|
||||||
|
|
||||||
|
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
|
||||||
|
|
||||||
|
move-result-wide v0
|
||||||
|
|
||||||
|
sget-wide v2, Lradiant/swipe/ComposeTapGuard;->deadline:J
|
||||||
|
|
||||||
|
cmp-long v4, v0, v2
|
||||||
|
|
||||||
|
if-ltz v4, :suppressed
|
||||||
|
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
return v0
|
||||||
|
|
||||||
|
:suppressed
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
return v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static suppressAfterSwipe()V
|
||||||
|
.locals 4
|
||||||
|
|
||||||
|
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
|
||||||
|
|
||||||
|
move-result-wide v0
|
||||||
|
|
||||||
|
const-wide/16 v2, 0x96
|
||||||
|
|
||||||
|
add-long/2addr v0, v2
|
||||||
|
|
||||||
|
sput-wide v0, Lradiant/swipe/ComposeTapGuard;->deadline:J
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static wrap(Lam0/a;)Lam0/a;
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
new-instance v0, Lradiant/swipe/ComposeTapGuard;
|
||||||
|
|
||||||
|
invoke-direct {v0, p0}, Lradiant/swipe/ComposeTapGuard;-><init>(Lam0/a;)V
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public invoke()Ljava/lang/Object;
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/ComposeTapGuard;->isSuppressed()Z
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
if-eqz v0, :dispatch
|
||||||
|
|
||||||
|
sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
|
||||||
|
:dispatch
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ComposeTapGuard;->delegate:Lam0/a;
|
||||||
|
|
||||||
|
invoke-interface {v0}, Lam0/a;->invoke()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,169 @@
|
|||||||
|
.class public final Lradiant/swipe/DynamicTrackQueue;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "DynamicTrackQueue.smali"
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public static handle(Lcom/tidal/android/dynamicpages/ui/modules/tracklist/TrackListModuleManager;Lradiant/swipe/DynamicTrackQueueEvent;)V
|
||||||
|
.locals 11
|
||||||
|
|
||||||
|
if-eqz p0, :done
|
||||||
|
|
||||||
|
if-eqz p1, :done
|
||||||
|
|
||||||
|
iget-object v0, p1, Lradiant/swipe/DynamicTrackQueueEvent;->pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Ljava/lang/String;->length()I
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
if-lez v1, :done
|
||||||
|
|
||||||
|
iget-object v1, p1, Lradiant/swipe/DynamicTrackQueueEvent;->moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Ljava/lang/String;->length()I
|
||||||
|
|
||||||
|
move-result v2
|
||||||
|
|
||||||
|
if-lez v2, :done
|
||||||
|
|
||||||
|
iget-wide v2, p1, Lradiant/swipe/DynamicTrackQueueEvent;->trackId:J
|
||||||
|
|
||||||
|
const-wide/16 v4, 0x0
|
||||||
|
|
||||||
|
cmp-long v4, v2, v4
|
||||||
|
|
||||||
|
if-lez v4, :done
|
||||||
|
|
||||||
|
invoke-virtual {p0, v1}, Li60/c;->c(Ljava/lang/String;)Lc60/h;
|
||||||
|
|
||||||
|
move-result-object v4
|
||||||
|
|
||||||
|
instance-of v5, v4, Lc60/b0;
|
||||||
|
|
||||||
|
if-eqz v5, :done
|
||||||
|
|
||||||
|
check-cast v4, Lc60/b0;
|
||||||
|
|
||||||
|
iget-object v5, v4, Lc60/b0;->b:Ljava/lang/String;
|
||||||
|
|
||||||
|
invoke-virtual {v1, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
iget-object v1, v4, Lc60/b0;->f:Ljava/util/ArrayList;
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
:find_track
|
||||||
|
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
|
||||||
|
|
||||||
|
move-result v5
|
||||||
|
|
||||||
|
if-eqz v5, :done
|
||||||
|
|
||||||
|
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v5
|
||||||
|
|
||||||
|
instance-of v6, v5, Lc60/r$b;
|
||||||
|
|
||||||
|
if-eqz v6, :find_track
|
||||||
|
|
||||||
|
check-cast v5, Lc60/r$b;
|
||||||
|
|
||||||
|
iget-object v5, v5, Lc60/r$b;->a:Lh40/n;
|
||||||
|
|
||||||
|
instance-of v6, v5, Lh40/p;
|
||||||
|
|
||||||
|
if-eqz v6, :find_track
|
||||||
|
|
||||||
|
check-cast v5, Lh40/p;
|
||||||
|
|
||||||
|
iget-wide v6, v5, Lh40/p;->a:J
|
||||||
|
|
||||||
|
cmp-long v6, v6, v2
|
||||||
|
|
||||||
|
if-nez v6, :find_track
|
||||||
|
|
||||||
|
iget-object v1, p0, Lcom/tidal/android/dynamicpages/ui/modules/tracklist/TrackListModuleManager;->b:Lcom/tidal/android/dynamicpages/ui/b;
|
||||||
|
|
||||||
|
instance-of v2, v1, Lcom/tidal/android/dynamicpages/ui/c;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
check-cast v1, Lcom/tidal/android/dynamicpages/ui/c;
|
||||||
|
|
||||||
|
iget-object v6, v1, Lcom/tidal/android/dynamicpages/ui/c;->b:Lcom/tidal/android/navigation/NavigationInfo;
|
||||||
|
|
||||||
|
if-eqz v6, :done
|
||||||
|
|
||||||
|
iget-object v1, p1, Lradiant/swipe/DynamicTrackQueueEvent;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
invoke-static {v5}, Lie0/i;->a(Lh40/p;)Lcom/aspiro/wamp/model/Track;
|
||||||
|
|
||||||
|
move-result-object v7
|
||||||
|
|
||||||
|
if-eqz v7, :done
|
||||||
|
|
||||||
|
iget-object v2, v4, Lc60/b0;->a:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Ljava/lang/String;->length()I
|
||||||
|
|
||||||
|
move-result v3
|
||||||
|
|
||||||
|
if-lez v3, :done
|
||||||
|
|
||||||
|
new-instance v8, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;
|
||||||
|
|
||||||
|
iget v3, v4, Lc60/b0;->e:I
|
||||||
|
|
||||||
|
invoke-static {v3}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
invoke-direct {v8, v0, v2, v3}, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||||
|
|
||||||
|
iget-wide v2, p1, Lradiant/swipe/DynamicTrackQueueEvent;->trackId:J
|
||||||
|
|
||||||
|
invoke-static {v2, v3}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
iget-object v3, v4, Lc60/b0;->c:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v3, :done
|
||||||
|
|
||||||
|
iget-object v10, v4, Lc60/b0;->g:Ljava/lang/String;
|
||||||
|
|
||||||
|
invoke-static {v10}, Lcom/aspiro/wamp/playqueue/source/model/ItemSource$NavigationType$a;->a(Ljava/lang/String;)Lcom/aspiro/wamp/playqueue/source/model/ItemSource$NavigationType;
|
||||||
|
|
||||||
|
move-result-object v4
|
||||||
|
|
||||||
|
invoke-static {v2, v3, v6, v4}, Lcom/aspiro/wamp/playqueue/source/model/b;->j(Ljava/lang/String;Ljava/lang/String;Lcom/tidal/android/navigation/NavigationInfo;Lcom/aspiro/wamp/playqueue/source/model/ItemSource$NavigationType;)Lcom/aspiro/wamp/playqueue/source/model/ItemSource;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
if-eqz v9, :done
|
||||||
|
|
||||||
|
invoke-virtual {v9, v7}, Lcom/aspiro/wamp/playqueue/source/model/Source;->addSourceItem(Lcom/aspiro/wamp/model/MediaItem;)V
|
||||||
|
|
||||||
|
invoke-static {v1, v7, v8, v9}, Lradiant/swipe/QueueExecutor;->track(Landroid/content/Context;Lcom/aspiro/wamp/model/Track;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/aspiro/wamp/playqueue/source/model/Source;)Z
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,95 @@
|
|||||||
|
.class public final Lradiant/swipe/DynamicTrackQueueAction;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "DynamicTrackQueueAction.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final callback:Lam0/l;
|
||||||
|
|
||||||
|
.field private context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field private final moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
.field private final pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
.field private final trackId:J
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lam0/l;Ljava/lang/String;Ljava/lang/String;Lm40/e$e;)V
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/DynamicTrackQueueAction;->callback:Lam0/l;
|
||||||
|
|
||||||
|
iput-object p2, p0, Lradiant/swipe/DynamicTrackQueueAction;->pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
iput-object p3, p0, Lradiant/swipe/DynamicTrackQueueAction;->moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
iget-wide v0, p4, Lm40/e$e;->a:J
|
||||||
|
|
||||||
|
iput-wide v0, p0, Lradiant/swipe/DynamicTrackQueueAction;->trackId:J
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public invoke()Ljava/lang/Object;
|
||||||
|
.locals 7
|
||||||
|
|
||||||
|
iget-wide v1, p0, Lradiant/swipe/DynamicTrackQueueAction;->trackId:J
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/QueueExecutor;->hasActiveQueue()Z
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
if-nez v0, :active_queue
|
||||||
|
|
||||||
|
new-instance v0, Lcom/tidal/android/dynamicpages/ui/modules/tracklist/b$a;
|
||||||
|
|
||||||
|
iget-object v3, p0, Lradiant/swipe/DynamicTrackQueueAction;->pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
iget-object v4, p0, Lradiant/swipe/DynamicTrackQueueAction;->moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
invoke-direct {v0, v1, v2, v3, v4}, Lcom/tidal/android/dynamicpages/ui/modules/tracklist/b$a;-><init>(JLjava/lang/String;Ljava/lang/String;)V
|
||||||
|
|
||||||
|
goto :emit
|
||||||
|
|
||||||
|
:active_queue
|
||||||
|
new-instance v0, Lradiant/swipe/DynamicTrackQueueEvent;
|
||||||
|
|
||||||
|
iget-object v1, p0, Lradiant/swipe/DynamicTrackQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/DynamicTrackQueueAction;->pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
iget-object v3, p0, Lradiant/swipe/DynamicTrackQueueAction;->moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
iget-wide v4, p0, Lradiant/swipe/DynamicTrackQueueAction;->trackId:J
|
||||||
|
|
||||||
|
invoke-direct/range {v0 .. v5}, Lradiant/swipe/DynamicTrackQueueEvent;-><init>(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;J)V
|
||||||
|
|
||||||
|
:emit
|
||||||
|
iget-object v6, p0, Lradiant/swipe/DynamicTrackQueueAction;->callback:Lam0/l;
|
||||||
|
|
||||||
|
invoke-interface {v6, v0}, Lam0/l;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
|
||||||
|
|
||||||
|
:done
|
||||||
|
sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public setContext(Landroid/content/Context;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/DynamicTrackQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
.class public final Lradiant/swipe/DynamicTrackQueueEvent;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "DynamicTrackQueueEvent.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lcom/tidal/android/dynamicpages/ui/modules/tracklist/b;
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field public final context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field public final moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
.field public final pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
.field public final trackId:J
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;J)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/DynamicTrackQueueEvent;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
iput-object p2, p0, Lradiant/swipe/DynamicTrackQueueEvent;->pageId:Ljava/lang/String;
|
||||||
|
|
||||||
|
iput-object p3, p0, Lradiant/swipe/DynamicTrackQueueEvent;->moduleUuid:Ljava/lang/String;
|
||||||
|
|
||||||
|
iput-wide p4, p0, Lradiant/swipe/DynamicTrackQueueEvent;->trackId:J
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -11,6 +11,136 @@
|
|||||||
|
|
||||||
|
|
||||||
# direct methods
|
# direct methods
|
||||||
|
.method private currentAlbumRow(Lradiant/swipe/QueueRequest;)Lu5/b$a;
|
||||||
|
.locals 9
|
||||||
|
|
||||||
|
if-eqz p1, :invalid
|
||||||
|
|
||||||
|
iget-object v0, p1, Lradiant/swipe/QueueRequest;->media:Ljava/lang/Object;
|
||||||
|
|
||||||
|
instance-of v1, v0, Lu5/b$a;
|
||||||
|
|
||||||
|
if-eqz v1, :invalid
|
||||||
|
|
||||||
|
check-cast v0, Lu5/b$a;
|
||||||
|
|
||||||
|
iget-object v1, p0, Lradiant/swipe/DynamicTrackResolver;->recycler:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
check-cast v1, Landroidx/recyclerview/widget/RecyclerView;
|
||||||
|
|
||||||
|
if-eqz v1, :invalid
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView;->getAdapter()Landroidx/recyclerview/widget/RecyclerView$Adapter;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
instance-of v1, v2, Lcom/tidal/android/core/adapterdelegate/c;
|
||||||
|
|
||||||
|
if-eqz v1, :invalid
|
||||||
|
|
||||||
|
check-cast v2, Lcom/tidal/android/core/adapterdelegate/c;
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Landroidx/recyclerview/widget/ListAdapter;->getCurrentList()Ljava/util/List;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
iget v3, p1, Lradiant/swipe/QueueRequest;->position:I
|
||||||
|
|
||||||
|
if-gez v3, :check_size
|
||||||
|
|
||||||
|
goto :invalid
|
||||||
|
|
||||||
|
:check_size
|
||||||
|
invoke-interface {v2}, Ljava/util/List;->size()I
|
||||||
|
|
||||||
|
move-result v4
|
||||||
|
|
||||||
|
if-lt v3, v4, :read_row
|
||||||
|
|
||||||
|
goto :invalid
|
||||||
|
|
||||||
|
:read_row
|
||||||
|
invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
instance-of v3, v2, Lu5/b$a;
|
||||||
|
|
||||||
|
if-eqz v3, :invalid
|
||||||
|
|
||||||
|
check-cast v2, Lu5/b$a;
|
||||||
|
|
||||||
|
iget-object v3, v0, Lu5/b$a;->a:Lu5/b$a$a;
|
||||||
|
|
||||||
|
iget-object v4, v2, Lu5/b$a;->a:Lu5/b$a$a;
|
||||||
|
|
||||||
|
if-ne v3, v4, :invalid
|
||||||
|
|
||||||
|
iget-wide v3, v0, Lu5/b$a;->b:J
|
||||||
|
|
||||||
|
iget-wide v5, v2, Lu5/b$a;->b:J
|
||||||
|
|
||||||
|
cmp-long v7, v3, v5
|
||||||
|
|
||||||
|
if-nez v7, :invalid
|
||||||
|
|
||||||
|
iget-object v3, v0, Lu5/b$a;->c:Lu5/b$a$b;
|
||||||
|
|
||||||
|
iget-object v4, v2, Lu5/b$a;->c:Lu5/b$a$b;
|
||||||
|
|
||||||
|
if-eqz v3, :invalid
|
||||||
|
|
||||||
|
if-eqz v4, :invalid
|
||||||
|
|
||||||
|
iget v5, v3, Lu5/b$a$b;->r:I
|
||||||
|
|
||||||
|
iget v6, v4, Lu5/b$a$b;->r:I
|
||||||
|
|
||||||
|
iget v7, p1, Lradiant/swipe/QueueRequest;->id:I
|
||||||
|
|
||||||
|
if-ne v5, v7, :invalid
|
||||||
|
|
||||||
|
if-ne v6, v7, :invalid
|
||||||
|
|
||||||
|
iget-object v5, v3, Lu5/b$a$b;->s:Ljava/lang/String;
|
||||||
|
|
||||||
|
iget-object v6, v4, Lu5/b$a$b;->s:Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eq v5, v6, :module_valid
|
||||||
|
|
||||||
|
if-eqz v5, :invalid
|
||||||
|
|
||||||
|
invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
|
||||||
|
|
||||||
|
move-result v5
|
||||||
|
|
||||||
|
if-eqz v5, :invalid
|
||||||
|
|
||||||
|
:module_valid
|
||||||
|
iget-object v5, v4, Lu5/b$a$b;->g:Lcom/aspiro/wamp/model/Availability;
|
||||||
|
|
||||||
|
invoke-interface {v5}, Lcom/aspiro/wamp/model/Availability;->isAvailable()Z
|
||||||
|
|
||||||
|
move-result v5
|
||||||
|
|
||||||
|
if-eqz v5, :invalid
|
||||||
|
|
||||||
|
iget-boolean v5, v4, Lu5/b$a$b;->p:Z
|
||||||
|
|
||||||
|
if-nez v5, :invalid
|
||||||
|
|
||||||
|
return-object v2
|
||||||
|
|
||||||
|
:invalid
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
.method private constructor <init>(Landroidx/recyclerview/widget/RecyclerView;)V
|
.method private constructor <init>(Landroidx/recyclerview/widget/RecyclerView;)V
|
||||||
.locals 1
|
.locals 1
|
||||||
|
|
||||||
@@ -234,6 +364,96 @@
|
|||||||
return-object v0
|
return-object v0
|
||||||
.end method
|
.end method
|
||||||
|
|
||||||
|
.method private resolveAlbum(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Lradiant/swipe/QueueRequest;
|
||||||
|
.locals 5
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/DynamicTrackResolver;->recycler:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
if-ne v0, p1, :invalid
|
||||||
|
|
||||||
|
invoke-virtual {p2}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getBindingAdapterPosition()I
|
||||||
|
|
||||||
|
move-result p2
|
||||||
|
|
||||||
|
const/4 v0, -0x1
|
||||||
|
|
||||||
|
if-ne p2, v0, :has_position
|
||||||
|
|
||||||
|
goto :invalid
|
||||||
|
|
||||||
|
:has_position
|
||||||
|
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView;->getAdapter()Landroidx/recyclerview/widget/RecyclerView$Adapter;
|
||||||
|
|
||||||
|
move-result-object p1
|
||||||
|
|
||||||
|
instance-of v0, p1, Lcom/tidal/android/core/adapterdelegate/c;
|
||||||
|
|
||||||
|
if-eqz v0, :invalid
|
||||||
|
|
||||||
|
check-cast p1, Lcom/tidal/android/core/adapterdelegate/c;
|
||||||
|
|
||||||
|
invoke-virtual {p1}, Landroidx/recyclerview/widget/ListAdapter;->getCurrentList()Ljava/util/List;
|
||||||
|
|
||||||
|
move-result-object p1
|
||||||
|
|
||||||
|
if-gez p2, :check_size
|
||||||
|
|
||||||
|
goto :invalid
|
||||||
|
|
||||||
|
:check_size
|
||||||
|
invoke-interface {p1}, Ljava/util/List;->size()I
|
||||||
|
|
||||||
|
move-result v0
|
||||||
|
|
||||||
|
if-lt p2, v0, :read_row
|
||||||
|
|
||||||
|
goto :invalid
|
||||||
|
|
||||||
|
:read_row
|
||||||
|
invoke-interface {p1, p2}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object p1
|
||||||
|
|
||||||
|
instance-of v0, p1, Lu5/b$a;
|
||||||
|
|
||||||
|
if-eqz v0, :invalid
|
||||||
|
|
||||||
|
check-cast p1, Lu5/b$a;
|
||||||
|
|
||||||
|
iget-object v0, p1, Lu5/b$a;->c:Lu5/b$a$b;
|
||||||
|
|
||||||
|
if-eqz v0, :invalid
|
||||||
|
|
||||||
|
iget-object v1, v0, Lu5/b$a$b;->g:Lcom/aspiro/wamp/model/Availability;
|
||||||
|
|
||||||
|
invoke-interface {v1}, Lcom/aspiro/wamp/model/Availability;->isAvailable()Z
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
if-eqz v1, :invalid
|
||||||
|
|
||||||
|
iget-boolean v1, v0, Lu5/b$a$b;->p:Z
|
||||||
|
|
||||||
|
if-nez v1, :invalid
|
||||||
|
|
||||||
|
iget v0, v0, Lu5/b$a$b;->r:I
|
||||||
|
|
||||||
|
new-instance v1, Lradiant/swipe/QueueRequest;
|
||||||
|
|
||||||
|
invoke-direct {v1, p2, p1, v0}, Lradiant/swipe/QueueRequest;-><init>(ILjava/lang/Object;I)V
|
||||||
|
|
||||||
|
return-object v1
|
||||||
|
|
||||||
|
:invalid
|
||||||
|
const/4 p1, 0x0
|
||||||
|
|
||||||
|
return-object p1
|
||||||
|
.end method
|
||||||
|
|
||||||
.method public static install(Landroidx/recyclerview/widget/RecyclerView;)V
|
.method public static install(Landroidx/recyclerview/widget/RecyclerView;)V
|
||||||
.locals 1
|
.locals 1
|
||||||
|
|
||||||
@@ -254,6 +474,43 @@
|
|||||||
.method public execute(Lradiant/swipe/QueueRequest;)V
|
.method public execute(Lradiant/swipe/QueueRequest;)V
|
||||||
.locals 8
|
.locals 8
|
||||||
|
|
||||||
|
iget-object v0, p1, Lradiant/swipe/QueueRequest;->media:Ljava/lang/Object;
|
||||||
|
|
||||||
|
instance-of v1, v0, Lu5/b$a;
|
||||||
|
|
||||||
|
if-eqz v1, :dynamic_track
|
||||||
|
|
||||||
|
invoke-direct {p0, p1}, Lradiant/swipe/DynamicTrackResolver;->currentAlbumRow(Lradiant/swipe/QueueRequest;)Lu5/b$a;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
new-instance v1, Lradiant/swipe/AlbumItemQueueAction;
|
||||||
|
|
||||||
|
invoke-direct {v1, v0}, Lradiant/swipe/AlbumItemQueueAction;-><init>(Lu5/b$a;)V
|
||||||
|
|
||||||
|
iget-object v2, p0, Lradiant/swipe/DynamicTrackResolver;->recycler:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
check-cast v2, Landroidx/recyclerview/widget/RecyclerView;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Landroid/view/View;->getContext()Landroid/content/Context;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
invoke-virtual {v1, v2}, Lradiant/swipe/AlbumItemQueueAction;->setContext(Landroid/content/Context;)V
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Lradiant/swipe/AlbumItemQueueAction;->invoke()Ljava/lang/Object;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
|
||||||
|
:dynamic_track
|
||||||
invoke-direct {p0, p1}, Lradiant/swipe/DynamicTrackResolver;->currentRow(Lradiant/swipe/QueueRequest;)Lo6/b;
|
invoke-direct {p0, p1}, Lradiant/swipe/DynamicTrackResolver;->currentRow(Lradiant/swipe/QueueRequest;)Lo6/b;
|
||||||
|
|
||||||
move-result-object v0
|
move-result-object v0
|
||||||
@@ -374,6 +631,17 @@
|
|||||||
.method public resolve(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Lradiant/swipe/QueueRequest;
|
.method public resolve(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Lradiant/swipe/QueueRequest;
|
||||||
.locals 5
|
.locals 5
|
||||||
|
|
||||||
|
instance-of v0, p2, Lv6/e$a;
|
||||||
|
|
||||||
|
if-eqz v0, :dynamic_holder
|
||||||
|
|
||||||
|
invoke-direct {p0, p1, p2}, Lradiant/swipe/DynamicTrackResolver;->resolveAlbum(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Lradiant/swipe/QueueRequest;
|
||||||
|
|
||||||
|
move-result-object p1
|
||||||
|
|
||||||
|
return-object p1
|
||||||
|
|
||||||
|
:dynamic_holder
|
||||||
instance-of v0, p2, Lp7/a$a;
|
instance-of v0, p2, Lp7/a$a;
|
||||||
|
|
||||||
if-eqz v0, :invalid
|
if-eqz v0, :invalid
|
||||||
|
|||||||
@@ -9,8 +9,6 @@
|
|||||||
|
|
||||||
const/4 v0, 0x0
|
const/4 v0, 0x0
|
||||||
|
|
||||||
if-eqz p0, :done
|
|
||||||
|
|
||||||
if-eqz p1, :done
|
if-eqz p1, :done
|
||||||
|
|
||||||
invoke-static {}, Lcom/aspiro/wamp/App$a;->a()Lcom/aspiro/wamp/App;
|
invoke-static {}, Lcom/aspiro/wamp/App$a;->a()Lcom/aspiro/wamp/App;
|
||||||
@@ -39,6 +37,31 @@
|
|||||||
|
|
||||||
if-eqz p4, :done
|
if-eqz p4, :done
|
||||||
|
|
||||||
|
:unwrap_context
|
||||||
|
instance-of v2, p0, Landroidx/fragment/app/FragmentActivity;
|
||||||
|
|
||||||
|
if-nez v2, :has_activity
|
||||||
|
|
||||||
|
instance-of v2, p0, Landroid/content/ContextWrapper;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
move-object v2, p0
|
||||||
|
|
||||||
|
check-cast v2, Landroid/content/ContextWrapper;
|
||||||
|
|
||||||
|
invoke-virtual {v2}, Landroid/content/ContextWrapper;->getBaseContext()Landroid/content/Context;
|
||||||
|
|
||||||
|
move-result-object v2
|
||||||
|
|
||||||
|
if-eq v2, p0, :done
|
||||||
|
|
||||||
|
move-object p0, v2
|
||||||
|
|
||||||
|
goto :unwrap_context
|
||||||
|
|
||||||
|
:has_activity
|
||||||
|
|
||||||
iget-object v2, p4, Lh4/a;->b:Lo3/a$a;
|
iget-object v2, p4, Lh4/a;->b:Lo3/a$a;
|
||||||
|
|
||||||
invoke-interface {v2, p1, p2, p3}, Lo3/a$a;->a(Lcom/aspiro/wamp/model/Album;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;)Lo3/a;
|
invoke-interface {v2, p1, p2, p3}, Lo3/a$a;->a(Lcom/aspiro/wamp/model/Album;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;)Lo3/a;
|
||||||
@@ -51,10 +74,6 @@
|
|||||||
|
|
||||||
move-result-object p1
|
move-result-object p1
|
||||||
|
|
||||||
instance-of p2, p0, Landroidx/fragment/app/FragmentActivity;
|
|
||||||
|
|
||||||
if-eqz p2, :done
|
|
||||||
|
|
||||||
check-cast p0, Landroidx/fragment/app/FragmentActivity;
|
check-cast p0, Landroidx/fragment/app/FragmentActivity;
|
||||||
|
|
||||||
invoke-virtual {p1, p0}, Lc3/i;->b(Landroidx/fragment/app/FragmentActivity;)V
|
invoke-virtual {p1, p0}, Lc3/i;->b(Landroidx/fragment/app/FragmentActivity;)V
|
||||||
@@ -122,10 +141,16 @@
|
|||||||
|
|
||||||
const/4 v0, 0x0
|
const/4 v0, 0x0
|
||||||
|
|
||||||
if-eqz p0, :done
|
|
||||||
|
|
||||||
if-eqz p1, :done
|
if-eqz p1, :done
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/QueueExecutor;->hasActiveQueue()Z
|
||||||
|
|
||||||
|
move-result v1
|
||||||
|
|
||||||
|
if-eqz v1, :play
|
||||||
|
|
||||||
|
if-eqz p4, :done
|
||||||
|
|
||||||
:unwrap_context
|
:unwrap_context
|
||||||
instance-of v1, p0, Landroidx/fragment/app/FragmentActivity;
|
instance-of v1, p0, Landroidx/fragment/app/FragmentActivity;
|
||||||
|
|
||||||
@@ -150,13 +175,6 @@
|
|||||||
goto :unwrap_context
|
goto :unwrap_context
|
||||||
|
|
||||||
:has_activity
|
:has_activity
|
||||||
invoke-static {}, Lradiant/swipe/QueueExecutor;->hasActiveQueue()Z
|
|
||||||
|
|
||||||
move-result v1
|
|
||||||
|
|
||||||
if-eqz v1, :play
|
|
||||||
|
|
||||||
if-eqz p4, :done
|
|
||||||
|
|
||||||
iget-object v1, p4, Lh4/a;->h:Lu3/a$a;
|
iget-object v1, p4, Lh4/a;->h:Lu3/a$a;
|
||||||
|
|
||||||
@@ -208,8 +226,6 @@
|
|||||||
.method public static playlist(Landroid/content/Context;Lcom/aspiro/wamp/model/Playlist;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;)V
|
.method public static playlist(Landroid/content/Context;Lcom/aspiro/wamp/model/Playlist;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/tidal/android/navigation/NavigationInfo;)V
|
||||||
.locals 4
|
.locals 4
|
||||||
|
|
||||||
if-eqz p0, :done
|
|
||||||
|
|
||||||
if-eqz p1, :done
|
if-eqz p1, :done
|
||||||
|
|
||||||
invoke-virtual {p1}, Lcom/aspiro/wamp/model/Playlist;->getNumberOfItems()I
|
invoke-virtual {p1}, Lcom/aspiro/wamp/model/Playlist;->getNumberOfItems()I
|
||||||
@@ -218,30 +234,6 @@
|
|||||||
|
|
||||||
if-lez v0, :done
|
if-lez v0, :done
|
||||||
|
|
||||||
:unwrap_context
|
|
||||||
instance-of v0, p0, Landroidx/fragment/app/FragmentActivity;
|
|
||||||
|
|
||||||
if-nez v0, :has_activity
|
|
||||||
|
|
||||||
instance-of v0, p0, Landroid/content/ContextWrapper;
|
|
||||||
|
|
||||||
if-eqz v0, :done
|
|
||||||
|
|
||||||
move-object v0, p0
|
|
||||||
|
|
||||||
check-cast v0, Landroid/content/ContextWrapper;
|
|
||||||
|
|
||||||
invoke-virtual {v0}, Landroid/content/ContextWrapper;->getBaseContext()Landroid/content/Context;
|
|
||||||
|
|
||||||
move-result-object v0
|
|
||||||
|
|
||||||
if-eq v0, p0, :done
|
|
||||||
|
|
||||||
move-object p0, v0
|
|
||||||
|
|
||||||
goto :unwrap_context
|
|
||||||
|
|
||||||
:has_activity
|
|
||||||
invoke-static {}, Lcom/aspiro/wamp/App$a;->a()Lcom/aspiro/wamp/App;
|
invoke-static {}, Lcom/aspiro/wamp/App$a;->a()Lcom/aspiro/wamp/App;
|
||||||
|
|
||||||
move-result-object v0
|
move-result-object v0
|
||||||
@@ -258,6 +250,31 @@
|
|||||||
|
|
||||||
if-eqz v1, :play
|
if-eqz v1, :play
|
||||||
|
|
||||||
|
:unwrap_context
|
||||||
|
instance-of v1, p0, Landroidx/fragment/app/FragmentActivity;
|
||||||
|
|
||||||
|
if-nez v1, :has_activity
|
||||||
|
|
||||||
|
instance-of v1, p0, Landroid/content/ContextWrapper;
|
||||||
|
|
||||||
|
if-eqz v1, :done
|
||||||
|
|
||||||
|
move-object v1, p0
|
||||||
|
|
||||||
|
check-cast v1, Landroid/content/ContextWrapper;
|
||||||
|
|
||||||
|
invoke-virtual {v1}, Landroid/content/ContextWrapper;->getBaseContext()Landroid/content/Context;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
if-eq v1, p0, :done
|
||||||
|
|
||||||
|
move-object p0, v1
|
||||||
|
|
||||||
|
goto :unwrap_context
|
||||||
|
|
||||||
|
:has_activity
|
||||||
|
|
||||||
iget-object v1, v0, Le5/z$n2;->w8:Ldagger/internal/f;
|
iget-object v1, v0, Le5/z$n2;->w8:Ldagger/internal/f;
|
||||||
|
|
||||||
invoke-interface {v1}, Lql0/a;->get()Ljava/lang/Object;
|
invoke-interface {v1}, Lql0/a;->get()Ljava/lang/Object;
|
||||||
|
|||||||
@@ -0,0 +1,200 @@
|
|||||||
|
.class public final Lradiant/swipe/ViewAllTrackQueue;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "ViewAllTrackQueue.smali"
|
||||||
|
|
||||||
|
|
||||||
|
# static fields
|
||||||
|
.field private static context:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public static handle(Lcom/tidal/android/feature/viewall/ui/ViewAllScreenViewModel;Landroid/content/Context;J)V
|
||||||
|
.locals 10
|
||||||
|
|
||||||
|
if-eqz p0, :done
|
||||||
|
|
||||||
|
if-eqz p1, :done
|
||||||
|
|
||||||
|
const-wide/16 v0, 0x0
|
||||||
|
|
||||||
|
cmp-long v2, p2, v0
|
||||||
|
|
||||||
|
if-lez v2, :done
|
||||||
|
|
||||||
|
iget-object v0, p0, Lcom/tidal/android/feature/viewall/ui/ViewAllScreenViewModel;->n:Lcom/tidal/android/feature/viewall/ui/c;
|
||||||
|
|
||||||
|
iget-object v0, v0, Lcom/tidal/android/feature/viewall/ui/c;->f:Ljava/util/ArrayList;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
:find_track
|
||||||
|
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
|
||||||
|
|
||||||
|
move-result v2
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v1
|
||||||
|
|
||||||
|
instance-of v2, v1, Lpd0/a;
|
||||||
|
|
||||||
|
if-eqz v2, :find_track
|
||||||
|
|
||||||
|
check-cast v1, Lpd0/a;
|
||||||
|
|
||||||
|
iget-object v1, v1, Lpd0/a;->a:Lh40/n;
|
||||||
|
|
||||||
|
instance-of v2, v1, Lh40/p;
|
||||||
|
|
||||||
|
if-eqz v2, :find_track
|
||||||
|
|
||||||
|
check-cast v1, Lh40/p;
|
||||||
|
|
||||||
|
iget-wide v3, v1, Lh40/p;->a:J
|
||||||
|
|
||||||
|
cmp-long v2, v3, p2
|
||||||
|
|
||||||
|
if-nez v2, :find_track
|
||||||
|
|
||||||
|
iget-object v0, p0, Lcom/tidal/android/feature/viewall/ui/ViewAllScreenViewModel;->f:Lcom/tidal/android/feature/viewall/ui/u;
|
||||||
|
|
||||||
|
instance-of v2, v0, Lra/d;
|
||||||
|
|
||||||
|
if-eqz v2, :done
|
||||||
|
|
||||||
|
check-cast v0, Lra/d;
|
||||||
|
|
||||||
|
iget-object v2, v0, Lra/d;->b:Lcom/tidal/android/navigation/NavigationInfo;
|
||||||
|
|
||||||
|
invoke-static {v1}, Lie0/i;->a(Lh40/p;)Lcom/aspiro/wamp/model/Track;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
if-eqz v3, :done
|
||||||
|
|
||||||
|
const-string v5, "null"
|
||||||
|
|
||||||
|
new-instance v4, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;
|
||||||
|
|
||||||
|
invoke-direct {v4, v5, v5}, Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
||||||
|
|
||||||
|
const/4 v6, 0x0
|
||||||
|
|
||||||
|
if-eqz v2, :navigation_ready
|
||||||
|
|
||||||
|
invoke-static {v2}, Lcom/tidal/android/navigation/a;->b(Lcom/tidal/android/navigation/NavigationInfo;)Lcom/tidal/android/navigation/NavigationInfo$Node;
|
||||||
|
|
||||||
|
move-result-object v6
|
||||||
|
|
||||||
|
:navigation_ready
|
||||||
|
sget-object v7, Lcom/aspiro/wamp/playqueue/source/model/ItemSource$NavigationType$None;->INSTANCE:Lcom/aspiro/wamp/playqueue/source/model/ItemSource$NavigationType$None;
|
||||||
|
|
||||||
|
const/4 v8, 0x0
|
||||||
|
|
||||||
|
invoke-static {v5, v8, v6, v7}, Lcom/aspiro/wamp/playqueue/source/model/b;->j(Ljava/lang/String;Ljava/lang/String;Lcom/tidal/android/navigation/NavigationInfo;Lcom/aspiro/wamp/playqueue/source/model/ItemSource$NavigationType;)Lcom/aspiro/wamp/playqueue/source/model/ItemSource;
|
||||||
|
|
||||||
|
move-result-object v9
|
||||||
|
|
||||||
|
invoke-virtual {v9, v3}, Lcom/aspiro/wamp/playqueue/source/model/Source;->addSourceItem(Lcom/aspiro/wamp/model/MediaItem;)V
|
||||||
|
|
||||||
|
invoke-static {p1, v3, v4, v9}, Lradiant/swipe/QueueExecutor;->track(Landroid/content/Context;Lcom/aspiro/wamp/model/Track;Lcom/aspiro/wamp/eventtracking/model/ContextualMetadata;Lcom/aspiro/wamp/playqueue/source/model/Source;)Z
|
||||||
|
|
||||||
|
:done
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static handleEvent(Lcom/tidal/android/feature/viewall/ui/ViewAllScreenViewModel;Lcom/tidal/android/feature/viewall/ui/e;)Z
|
||||||
|
.locals 5
|
||||||
|
|
||||||
|
instance-of v0, p1, Lcom/tidal/android/feature/viewall/ui/e$c;
|
||||||
|
|
||||||
|
if-eqz v0, :not_handled
|
||||||
|
|
||||||
|
check-cast p1, Lcom/tidal/android/feature/viewall/ui/e$c;
|
||||||
|
|
||||||
|
iget-object v0, p1, Lcom/tidal/android/feature/viewall/ui/e$c;->a:Ljava/lang/Object;
|
||||||
|
|
||||||
|
instance-of v1, v0, Ljava/lang/String;
|
||||||
|
|
||||||
|
if-eqz v1, :not_handled
|
||||||
|
|
||||||
|
check-cast v0, Ljava/lang/String;
|
||||||
|
|
||||||
|
const-string v1, "rl-swipe:"
|
||||||
|
|
||||||
|
invoke-virtual {v0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
|
||||||
|
|
||||||
|
move-result v2
|
||||||
|
|
||||||
|
if-eqz v2, :not_handled
|
||||||
|
|
||||||
|
const/16 v1, 0x9
|
||||||
|
|
||||||
|
invoke-virtual {v0, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
invoke-static {v0}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
|
||||||
|
|
||||||
|
move-result-wide v1
|
||||||
|
|
||||||
|
sget-object v3, Lradiant/swipe/ViewAllTrackQueue;->context:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
const/4 v4, 0x0
|
||||||
|
|
||||||
|
sput-object v4, Lradiant/swipe/ViewAllTrackQueue;->context:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
if-eqz v3, :handled
|
||||||
|
|
||||||
|
invoke-virtual {v3}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
check-cast v3, Landroid/content/Context;
|
||||||
|
|
||||||
|
invoke-static {p0, v3, v1, v2}, Lradiant/swipe/ViewAllTrackQueue;->handle(Lcom/tidal/android/feature/viewall/ui/ViewAllScreenViewModel;Landroid/content/Context;J)V
|
||||||
|
|
||||||
|
:handled
|
||||||
|
const/4 v0, 0x1
|
||||||
|
|
||||||
|
return v0
|
||||||
|
|
||||||
|
:not_handled
|
||||||
|
const/4 v0, 0x0
|
||||||
|
|
||||||
|
return v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static marker(J)Ljava/lang/String;
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
new-instance v0, Ljava/lang/StringBuilder;
|
||||||
|
|
||||||
|
const-string v1, "rl-swipe:"
|
||||||
|
|
||||||
|
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
||||||
|
|
||||||
|
invoke-virtual {v0, p0, p1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
|
||||||
|
|
||||||
|
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public static setContext(Landroid/content/Context;)V
|
||||||
|
.locals 1
|
||||||
|
|
||||||
|
new-instance v0, Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
invoke-direct {v0, p0}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
|
||||||
|
|
||||||
|
sput-object v0, Lradiant/swipe/ViewAllTrackQueue;->context:Ljava/lang/ref/WeakReference;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
@@ -0,0 +1,89 @@
|
|||||||
|
.class public final Lradiant/swipe/ViewAllTrackQueueAction;
|
||||||
|
.super Ljava/lang/Object;
|
||||||
|
.source "ViewAllTrackQueueAction.smali"
|
||||||
|
|
||||||
|
# interfaces
|
||||||
|
.implements Lradiant/swipe/ComposeSwipeAction;
|
||||||
|
|
||||||
|
|
||||||
|
# instance fields
|
||||||
|
.field private final callback:Lam0/l;
|
||||||
|
|
||||||
|
.field private context:Landroid/content/Context;
|
||||||
|
|
||||||
|
.field private final trackId:J
|
||||||
|
|
||||||
|
|
||||||
|
# direct methods
|
||||||
|
.method public constructor <init>(Lam0/l;Lm40/e$e;)V
|
||||||
|
.locals 2
|
||||||
|
|
||||||
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ViewAllTrackQueueAction;->callback:Lam0/l;
|
||||||
|
|
||||||
|
iget-wide v0, p2, Lm40/e$e;->a:J
|
||||||
|
|
||||||
|
iput-wide v0, p0, Lradiant/swipe/ViewAllTrackQueueAction;->trackId:J
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
|
|
||||||
|
|
||||||
|
# virtual methods
|
||||||
|
.method public invoke()Ljava/lang/Object;
|
||||||
|
.locals 5
|
||||||
|
|
||||||
|
iget-object v0, p0, Lradiant/swipe/ViewAllTrackQueueAction;->callback:Lam0/l;
|
||||||
|
|
||||||
|
if-eqz v0, :done
|
||||||
|
|
||||||
|
iget-wide v1, p0, Lradiant/swipe/ViewAllTrackQueueAction;->trackId:J
|
||||||
|
|
||||||
|
invoke-static {}, Lradiant/swipe/QueueExecutor;->hasActiveQueue()Z
|
||||||
|
|
||||||
|
move-result v3
|
||||||
|
|
||||||
|
if-eqz v3, :play_existing
|
||||||
|
|
||||||
|
iget-object v3, p0, Lradiant/swipe/ViewAllTrackQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
if-eqz v3, :done
|
||||||
|
|
||||||
|
invoke-static {v3}, Lradiant/swipe/ViewAllTrackQueue;->setContext(Landroid/content/Context;)V
|
||||||
|
|
||||||
|
invoke-static {v1, v2}, Lradiant/swipe/ViewAllTrackQueue;->marker(J)Ljava/lang/String;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
new-instance v4, Li40/c$b;
|
||||||
|
|
||||||
|
invoke-direct {v4, v3}, Li40/c$b;-><init>(Ljava/lang/Object;)V
|
||||||
|
|
||||||
|
goto :emit
|
||||||
|
|
||||||
|
:play_existing
|
||||||
|
invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
|
||||||
|
|
||||||
|
move-result-object v3
|
||||||
|
|
||||||
|
new-instance v4, Li40/c$b;
|
||||||
|
|
||||||
|
invoke-direct {v4, v3}, Li40/c$b;-><init>(Ljava/lang/Object;)V
|
||||||
|
|
||||||
|
:emit
|
||||||
|
invoke-interface {v0, v4}, Lam0/l;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
|
||||||
|
|
||||||
|
:done
|
||||||
|
sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
|
||||||
|
return-object v0
|
||||||
|
.end method
|
||||||
|
|
||||||
|
.method public setContext(Landroid/content/Context;)V
|
||||||
|
.locals 0
|
||||||
|
|
||||||
|
iput-object p1, p0, Lradiant/swipe/ViewAllTrackQueueAction;->context:Landroid/content/Context;
|
||||||
|
|
||||||
|
return-void
|
||||||
|
.end method
|
||||||
+18
-2
@@ -426,7 +426,8 @@
|
|||||||
"id": "SwipeToQueue",
|
"id": "SwipeToQueue",
|
||||||
"order": 39,
|
"order": 39,
|
||||||
"fileNames": [
|
"fileNames": [
|
||||||
"swipe-to-queue.patch"
|
"swipe-to-queue.patch",
|
||||||
|
"swipe-to-queue-compose.patch"
|
||||||
],
|
],
|
||||||
"extensionFiles": [
|
"extensionFiles": [
|
||||||
"radiant/SwipeToQueue.smali",
|
"radiant/SwipeToQueue.smali",
|
||||||
@@ -442,7 +443,22 @@
|
|||||||
"radiant/swipe/SearchAlbumsResolver.smali",
|
"radiant/swipe/SearchAlbumsResolver.smali",
|
||||||
"radiant/swipe/SearchPlaylistsResolver.smali",
|
"radiant/swipe/SearchPlaylistsResolver.smali",
|
||||||
"radiant/swipe/PlaylistItemsResolver.smali",
|
"radiant/swipe/PlaylistItemsResolver.smali",
|
||||||
"radiant/swipe/UnifiedSearchResolver.smali"
|
"radiant/swipe/UnifiedSearchResolver.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeAction.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState$Gesture.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState$Draw.smali",
|
||||||
|
"radiant/swipe/ComposeSwipeState$ResetAnimator.smali",
|
||||||
|
"radiant/swipe/ComposeTapGuard.smali",
|
||||||
|
"radiant/swipe/AlbumItemQueueAction.smali",
|
||||||
|
"radiant/swipe/DynamicTrackQueueEvent.smali",
|
||||||
|
"radiant/swipe/DynamicTrackQueueAction.smali",
|
||||||
|
"radiant/swipe/DynamicTrackQueue.smali",
|
||||||
|
"radiant/swipe/ViewAllTrackQueueAction.smali",
|
||||||
|
"radiant/swipe/ViewAllTrackQueue.smali",
|
||||||
|
"radiant/swipe/ComposeSearchQueueEvent.smali",
|
||||||
|
"radiant/swipe/ComposeSearchQueueAction.smali",
|
||||||
|
"radiant/swipe/ComposeSearchQueue.smali"
|
||||||
],
|
],
|
||||||
"title": "Swipe to Queue",
|
"title": "Swipe to Queue",
|
||||||
"description": "Swipe on tracks/albums/playlists to add them to the play queue",
|
"description": "Swipe on tracks/albums/playlists to add them to the play queue",
|
||||||
|
|||||||
@@ -0,0 +1,253 @@
|
|||||||
|
--- a/com/tidal/android/dynamicpages/ui/composables/verticaltracklist/j.smali
|
||||||
|
+++ b/com/tidal/android/dynamicpages/ui/composables/verticaltracklist/j.smali
|
||||||
|
@@ -1791,6 +1791,10 @@
|
||||||
|
.line 391
|
||||||
|
check-cast v34, Lam0/a;
|
||||||
|
|
||||||
|
+ invoke-static/range {v34 .. v34}, Lradiant/swipe/ComposeTapGuard;->wrap(Lam0/a;)Lam0/a;
|
||||||
|
+
|
||||||
|
+ move-result-object v34
|
||||||
|
+
|
||||||
|
.line 392
|
||||||
|
.line 393
|
||||||
|
const/16 v35, 0x6f
|
||||||
|
@@ -1832,6 +1836,22 @@
|
||||||
|
.line 412
|
||||||
|
move-result-object v0
|
||||||
|
|
||||||
|
+ iget-wide v14, v3, Lm40/e$e;->a:J
|
||||||
|
+
|
||||||
|
+ invoke-static {v14, v15}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
|
||||||
|
+
|
||||||
|
+ move-result-object v14
|
||||||
|
+
|
||||||
|
+ new-instance v15, Lradiant/swipe/DynamicTrackQueueAction;
|
||||||
|
+
|
||||||
|
+ invoke-direct {v15, v4, v1, v2, v3}, Lradiant/swipe/DynamicTrackQueueAction;-><init>(Lam0/l;Ljava/lang/String;Ljava/lang/String;Lm40/e$e;)V
|
||||||
|
+
|
||||||
|
+ iget-boolean v5, v3, Lm40/e$e;->j:Z
|
||||||
|
+
|
||||||
|
+ invoke-static {v0, v14, v15, v5, v11}, Lradiant/swipe/ComposeSwipeState;->attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
+
|
||||||
|
+ move-result-object v0
|
||||||
|
+
|
||||||
|
.line 413
|
||||||
|
const/4 v14, 0x0
|
||||||
|
|
||||||
|
--- a/com/tidal/android/dynamicpages/ui/modules/tracklist/TrackListModuleManager$createModuleViewState$3.smali
|
||||||
|
+++ b/com/tidal/android/dynamicpages/ui/modules/tracklist/TrackListModuleManager$createModuleViewState$3.smali
|
||||||
|
@@ -601,6 +601,17 @@
|
||||||
|
|
||||||
|
.line 248
|
||||||
|
:cond_c
|
||||||
|
+ instance-of p2, p1, Lradiant/swipe/DynamicTrackQueueEvent;
|
||||||
|
+
|
||||||
|
+ if-eqz p2, :cond_d
|
||||||
|
+
|
||||||
|
+ check-cast p1, Lradiant/swipe/DynamicTrackQueueEvent;
|
||||||
|
+
|
||||||
|
+ invoke-static {v0, p1}, Lradiant/swipe/DynamicTrackQueue;->handle(Lcom/tidal/android/dynamicpages/ui/modules/tracklist/TrackListModuleManager;Lradiant/swipe/DynamicTrackQueueEvent;)V
|
||||||
|
+
|
||||||
|
+ goto :goto_4
|
||||||
|
+
|
||||||
|
+ :cond_d
|
||||||
|
invoke-static {}, Landroidx/navigation/f0;->a()V
|
||||||
|
|
||||||
|
.line 249
|
||||||
|
--- a/com/tidal/android/feature/search/ui/SearchScreenViewModel.smali
|
||||||
|
+++ b/com/tidal/android/feature/search/ui/SearchScreenViewModel.smali
|
||||||
|
@@ -926,6 +926,17 @@
|
||||||
|
|
||||||
|
.line 4
|
||||||
|
.line 5
|
||||||
|
+ instance-of v2, v1, Lradiant/swipe/ComposeSearchQueueEvent;
|
||||||
|
+
|
||||||
|
+ if-eqz v2, :rl_search_queue_continue
|
||||||
|
+
|
||||||
|
+ check-cast v1, Lradiant/swipe/ComposeSearchQueueEvent;
|
||||||
|
+
|
||||||
|
+ invoke-static {v0, v1}, Lradiant/swipe/ComposeSearchQueue;->handle(Lcom/tidal/android/feature/search/ui/SearchScreenViewModel;Lradiant/swipe/ComposeSearchQueueEvent;)V
|
||||||
|
+
|
||||||
|
+ return-void
|
||||||
|
+
|
||||||
|
+ :rl_search_queue_continue
|
||||||
|
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
|
||||||
|
|
||||||
|
.line 6
|
||||||
|
--- a/com/tidal/android/feature/search/ui/composables/u0.smali
|
||||||
|
+++ b/com/tidal/android/feature/search/ui/composables/u0.smali
|
||||||
|
@@ -243,6 +243,24 @@
|
||||||
|
|
||||||
|
check-cast v2, Lam0/a;
|
||||||
|
|
||||||
|
+ invoke-static {v1}, Lradiant/swipe/ComposeTapGuard;->wrap(Lam0/a;)Lam0/a;
|
||||||
|
+
|
||||||
|
+ move-result-object v1
|
||||||
|
+
|
||||||
|
+ new-instance v6, Lradiant/swipe/ComposeSearchQueueAction;
|
||||||
|
+
|
||||||
|
+ invoke-direct {v6, p3, v0}, Lradiant/swipe/ComposeSearchQueueAction;-><init>(Lam0/l;Lpb0/b;)V
|
||||||
|
+
|
||||||
|
+ invoke-virtual {v6}, Lradiant/swipe/ComposeSearchQueueAction;->stableKey()Ljava/lang/String;
|
||||||
|
+
|
||||||
|
+ move-result-object v7
|
||||||
|
+
|
||||||
|
+ iget-boolean p1, v0, Lpb0/b$a;->f:Z
|
||||||
|
+
|
||||||
|
+ invoke-static {v3, v7, v6, p1, v4}, Lradiant/swipe/ComposeSwipeState;->attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
+
|
||||||
|
+ move-result-object v3
|
||||||
|
+
|
||||||
|
const/4 v5, 0x0
|
||||||
|
|
||||||
|
.line 20
|
||||||
|
@@ -467,7 +485,25 @@
|
||||||
|
|
||||||
|
const/4 v5, 0x0
|
||||||
|
|
||||||
|
- const/4 v2, 0x0
|
||||||
|
+ invoke-static {v1}, Lradiant/swipe/ComposeTapGuard;->wrap(Lam0/a;)Lam0/a;
|
||||||
|
+
|
||||||
|
+ move-result-object v1
|
||||||
|
+
|
||||||
|
+ new-instance v6, Lradiant/swipe/ComposeSearchQueueAction;
|
||||||
|
+
|
||||||
|
+ invoke-direct {v6, p3, v0}, Lradiant/swipe/ComposeSearchQueueAction;-><init>(Lam0/l;Lpb0/b;)V
|
||||||
|
+
|
||||||
|
+ invoke-virtual {v6}, Lradiant/swipe/ComposeSearchQueueAction;->stableKey()Ljava/lang/String;
|
||||||
|
+
|
||||||
|
+ move-result-object v7
|
||||||
|
+
|
||||||
|
+ sget-object v2, Landroidx/compose/ui/Modifier;->Companion:Landroidx/compose/ui/Modifier$Companion;
|
||||||
|
+
|
||||||
|
+ const/4 p1, 0x1
|
||||||
|
+
|
||||||
|
+ invoke-static {v2, v7, v6, p1, v4}, Lradiant/swipe/ComposeSwipeState;->attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
+
|
||||||
|
+ move-result-object v2
|
||||||
|
|
||||||
|
.line 52
|
||||||
|
invoke-static/range {v0 .. v5}, Lob0/w;->a(Lpb0/b$f;Lam0/a;Landroidx/compose/ui/Modifier;Lam0/a;Landroidx/compose/runtime/Composer;I)V
|
||||||
|
@@ -593,6 +629,24 @@
|
||||||
|
|
||||||
|
check-cast v3, Lam0/a;
|
||||||
|
|
||||||
|
+ invoke-static {v1}, Lradiant/swipe/ComposeTapGuard;->wrap(Lam0/a;)Lam0/a;
|
||||||
|
+
|
||||||
|
+ move-result-object v1
|
||||||
|
+
|
||||||
|
+ new-instance v6, Lradiant/swipe/ComposeSearchQueueAction;
|
||||||
|
+
|
||||||
|
+ invoke-direct {v6, p3, v0}, Lradiant/swipe/ComposeSearchQueueAction;-><init>(Lam0/l;Lpb0/b;)V
|
||||||
|
+
|
||||||
|
+ invoke-virtual {v6}, Lradiant/swipe/ComposeSearchQueueAction;->stableKey()Ljava/lang/String;
|
||||||
|
+
|
||||||
|
+ move-result-object v7
|
||||||
|
+
|
||||||
|
+ iget-boolean p1, v0, Lpb0/b$i;->i:Z
|
||||||
|
+
|
||||||
|
+ invoke-static {v2, v7, v6, p1, v4}, Lradiant/swipe/ComposeSwipeState;->attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
+
|
||||||
|
+ move-result-object v2
|
||||||
|
+
|
||||||
|
const/4 v5, 0x0
|
||||||
|
|
||||||
|
.line 70
|
||||||
|
@@ -828,7 +882,25 @@
|
||||||
|
|
||||||
|
const/4 v5, 0x0
|
||||||
|
|
||||||
|
- const/4 v2, 0x0
|
||||||
|
+ invoke-static {v1}, Lradiant/swipe/ComposeTapGuard;->wrap(Lam0/a;)Lam0/a;
|
||||||
|
+
|
||||||
|
+ move-result-object v1
|
||||||
|
+
|
||||||
|
+ new-instance v6, Lradiant/swipe/ComposeSearchQueueAction;
|
||||||
|
+
|
||||||
|
+ invoke-direct {v6, p3, v0}, Lradiant/swipe/ComposeSearchQueueAction;-><init>(Lam0/l;Lpb0/b;)V
|
||||||
|
+
|
||||||
|
+ invoke-virtual {v6}, Lradiant/swipe/ComposeSearchQueueAction;->stableKey()Ljava/lang/String;
|
||||||
|
+
|
||||||
|
+ move-result-object v7
|
||||||
|
+
|
||||||
|
+ sget-object v2, Landroidx/compose/ui/Modifier;->Companion:Landroidx/compose/ui/Modifier$Companion;
|
||||||
|
+
|
||||||
|
+ const/4 p1, 0x1
|
||||||
|
+
|
||||||
|
+ invoke-static {v2, v7, v6, p1, v4}, Lradiant/swipe/ComposeSwipeState;->attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
+
|
||||||
|
+ move-result-object v2
|
||||||
|
|
||||||
|
.line 104
|
||||||
|
invoke-static/range {v0 .. v5}, Lob0/q;->a(Lpb0/b$e;Lam0/a;Landroidx/compose/ui/Modifier;Lam0/a;Landroidx/compose/runtime/Composer;I)V
|
||||||
|
--- a/com/tidal/android/feature/viewall/ui/l.smali
|
||||||
|
+++ b/com/tidal/android/feature/viewall/ui/l.smali
|
||||||
|
@@ -317,6 +317,31 @@
|
||||||
|
.line 132
|
||||||
|
check-cast v3, Lam0/l;
|
||||||
|
|
||||||
|
+ instance-of p1, v2, Lm40/e$e;
|
||||||
|
+
|
||||||
|
+ if-eqz p1, :rl_viewall_swipe_attached
|
||||||
|
+
|
||||||
|
+ move-object p1, v2
|
||||||
|
+
|
||||||
|
+ check-cast p1, Lm40/e$e;
|
||||||
|
+
|
||||||
|
+ iget-wide p2, p1, Lm40/e$e;->a:J
|
||||||
|
+
|
||||||
|
+ invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
|
||||||
|
+
|
||||||
|
+ move-result-object p2
|
||||||
|
+
|
||||||
|
+ new-instance p3, Lradiant/swipe/ViewAllTrackQueueAction;
|
||||||
|
+
|
||||||
|
+ invoke-direct {p3, v3, p1}, Lradiant/swipe/ViewAllTrackQueueAction;-><init>(Lam0/l;Lm40/e$e;)V
|
||||||
|
+
|
||||||
|
+ iget-boolean p1, p1, Lm40/e$e;->j:Z
|
||||||
|
+
|
||||||
|
+ invoke-static {v1, p2, p3, p1, v5}, Lradiant/swipe/ComposeSwipeState;->attach(Landroidx/compose/ui/Modifier;Ljava/lang/Object;Lradiant/swipe/ComposeSwipeAction;ZLandroidx/compose/runtime/Composer;)Landroidx/compose/ui/Modifier;
|
||||||
|
+
|
||||||
|
+ move-result-object v1
|
||||||
|
+
|
||||||
|
+ :rl_viewall_swipe_attached
|
||||||
|
.line 133
|
||||||
|
.line 134
|
||||||
|
const/4 v6, 0x0
|
||||||
|
--- a/j40/p2.smali
|
||||||
|
+++ b/j40/p2.smali
|
||||||
|
@@ -3240,5 +3240,14 @@
|
||||||
|
move-object/from16 v16, v1
|
||||||
|
|
||||||
|
+ instance-of v3, v14, Lcom/tidal/android/feature/viewall/ui/n;
|
||||||
|
+
|
||||||
|
+ if-eqz v3, :rl_viewall_tap_guard_done
|
||||||
|
+
|
||||||
|
+ invoke-static/range {v24 .. v24}, Lradiant/swipe/ComposeTapGuard;->wrap(Lam0/a;)Lam0/a;
|
||||||
|
+
|
||||||
|
+ move-result-object v24
|
||||||
|
+
|
||||||
|
+ :rl_viewall_tap_guard_done
|
||||||
|
.line 718
|
||||||
|
.line 719
|
||||||
|
move-object/from16 v25, v9
|
||||||
|
--- a/com/tidal/android/feature/viewall/ui/ViewAllScreenViewModel.smali
|
||||||
|
+++ b/com/tidal/android/feature/viewall/ui/ViewAllScreenViewModel.smali
|
||||||
|
@@ -1718,6 +1718,17 @@
|
||||||
|
}
|
||||||
|
.end annotation
|
||||||
|
|
||||||
|
+ invoke-static {p0, p1}, Lradiant/swipe/ViewAllTrackQueue;->handleEvent(Lcom/tidal/android/feature/viewall/ui/ViewAllScreenViewModel;Lcom/tidal/android/feature/viewall/ui/e;)Z
|
||||||
|
+
|
||||||
|
+ move-result v0
|
||||||
|
+
|
||||||
|
+ if-eqz v0, :rl_viewall_regular_event
|
||||||
|
+
|
||||||
|
+ sget-object v0, Lkotlin/u;->a:Lkotlin/u;
|
||||||
|
+
|
||||||
|
+ return-object v0
|
||||||
|
+
|
||||||
|
+ :rl_viewall_regular_event
|
||||||
|
.line 1
|
||||||
|
instance-of v0, p1, Lcom/tidal/android/feature/viewall/ui/e$a;
|
||||||
|
|
||||||
@@ -147,6 +147,20 @@
|
|||||||
@@ -33,3 +33,11 @@
|
@@ -33,3 +33,11 @@
|
||||||
.end method
|
.end method
|
||||||
|
|
||||||
|
+.method public b(Landroidx/recyclerview/widget/RecyclerView;)V
|
||||||
|
+ .locals 0
|
||||||
|
+
|
||||||
|
+ invoke-static {p1}, Lradiant/swipe/DynamicTrackResolver;->install(Landroidx/recyclerview/widget/RecyclerView;)V
|
||||||
|
+
|
||||||
|
+ return-void
|
||||||
|
+.end method
|
||||||
|
+
|
||||||
|
.method public final c(Ljava/lang/Object;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V
|
||||||
|
--- a/v6/e.smali
|
||||||
|
+++ b/v6/e.smali
|
||||||
|
@@ -62,3 +62,11 @@
|
||||||
|
.end method
|
||||||
|
|
||||||
+.method public b(Landroidx/recyclerview/widget/RecyclerView;)V
|
+.method public b(Landroidx/recyclerview/widget/RecyclerView;)V
|
||||||
+ .locals 0
|
+ .locals 0
|
||||||
+
|
+
|
||||||
|
|||||||
Reference in new issue
Block a user