Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
888af19
build: configure Jetpack Compose support and dependencies
sdlcspring-glitch Aug 24, 2026
c11db54
feat(design-system): add Cloneflix design tokens, drawables, and XML …
sdlcspring-glitch Aug 24, 2026
c68ff64
feat(design-system): implement Android Views and showcase for Clonefl…
sdlcspring-glitch Aug 24, 2026
1b964dc
feat(design-system): implement tokenized Jetpack Compose Cloneflix co…
sdlcspring-glitch Aug 24, 2026
0ed0b86
test(design-system): add unit tests for Cloneflix design tokens and c…
sdlcspring-glitch Aug 24, 2026
10c9b2d
feat(ui): revamp Movie Details screen to Cloneflix and integrate into…
sdlcspring-glitch Aug 24, 2026
3c68881
fix(tv): resolve overlapping UI and restore D-pad remote navigation o…
sdlcspring-glitch Aug 24, 2026
2a9d97d
fix(ui): conditionally hide detail UI elements when real data is unav…
sdlcspring-glitch Aug 24, 2026
3ee3acf
feat(ui): add preview
sdlcspring-glitch Aug 24, 2026
65ead12
fix(ui): fix season dropdown selection mapping, active focus state, a…
sdlcspring-glitch Aug 24, 2026
22437ed
fix(ui): update recommendations to poster layout with title overlay, …
sdlcspring-glitch Aug 24, 2026
6d0b539
ui(detail): move CloneflixLogoView to the left of exit button in hero…
sdlcspring-glitch Aug 24, 2026
8ad7294
fix(dropdown): remove redundant .focusable() to fix double Enter pres…
sdlcspring-glitch Aug 24, 2026
96cf8d6
feat(design-system): refine Cloneflix UI components and theme
sdlcspring-glitch Aug 24, 2026
8a104f1
feat(revamp): strip comments, refine TV focus behaviors, and add dedi…
sdlcspring-glitch Aug 25, 2026
427fee3
feat(compose): optimize TV details scroll with placeholder hierarchy …
sdlcspring-glitch Aug 25, 2026
fcce5c3
perf(compose): eliminate scroll lag with AsyncImage, deferred state r…
sdlcspring-glitch Aug 25, 2026
5d2c162
feat(detail): initial final release detail revamp
sdlcspring-glitch Aug 25, 2026
c620b36
feat(result): finalize Compose Movie Details with dynamic theming, sm…
sdlcspring-glitch Aug 25, 2026
995bd36
chore(result): revert provider text outline styling
sdlcspring-glitch Aug 25, 2026
cd29e03
style(result): tighten provider name letterSpacing and apply extra bo…
sdlcspring-glitch Aug 25, 2026
c7a8347
feat(result): add quick search action button to TV movie details hero…
sdlcspring-glitch Aug 25, 2026
32656c7
feat(result): restore Dub/Sub selector, Episode Range selector, and L…
sdlcspring-glitch Aug 25, 2026
6d2241e
fix(result): ensure 100% action wiring and state synchronization betw…
sdlcspring-glitch Aug 25, 2026
562425a
fix(detail): update TV result screen layout and movie details components
sdlcspring-glitch Aug 25, 2026
b2ef0e6
fix(result): resolve linter issues and code complexity warnings in TV…
sdlcspring-glitch Aug 25, 2026
8d0241b
fix(result): refactor detail view
sdlcspring-glitch Aug 25, 2026
8d17bd4
refactor(compose): restructure movie details UI to follow Atomic Desi…
sdlcspring-glitch Aug 25, 2026
8a1775b
fix(moview-detail): add cast search action and revert play button
sdlcspring-glitch Aug 25, 2026
0852d44
fix(movie-detail): adjust cast ui
sdlcspring-glitch Aug 25, 2026
6459f72
feat(movie-detail): add episode release date
sdlcspring-glitch Aug 25, 2026
aa1126f
fix(movie-detail): check ongoing properly
sdlcspring-glitch Aug 25, 2026
856ba72
fix(lint): breakdown complex param and function
sdlcspring-glitch Aug 25, 2026
ea8f31a
feat(hero-banner): optimize banner animation and performance
sdlcspring-glitch Aug 26, 2026
c817e0b
feat(detail): optimize performance on detail page
sdlcspring-glitch Aug 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.dokka)
alias(libs.plugins.kotlin.serialization)
alias(libs.plugins.kotlin.compose)
}

val javaTarget = JvmTarget.fromTarget(libs.versions.jvmTarget.get())
Expand Down Expand Up @@ -199,6 +200,7 @@ android {
buildFeatures {
buildConfig = true
viewBinding = true
compose = true
}

packaging {
Expand Down Expand Up @@ -239,6 +241,17 @@ dependencies {
implementation(libs.material)
implementation(libs.constraintlayout)

// Jetpack Compose
implementation(platform(libs.androidx.compose.bom))
implementation(libs.androidx.compose.ui)
implementation(libs.androidx.compose.ui.graphics)
implementation(libs.androidx.compose.ui.tooling.preview)
debugImplementation(libs.androidx.compose.ui.tooling)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.foundation)
implementation(libs.androidx.activity.compose)


// Coil Image Loading
implementation(libs.bundles.coil)

Expand Down
2 changes: 2 additions & 0 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,8 @@
android:name=".ui.ControllerActivity"
android:exported="false" />



<service
android:name=".services.PackageInstallerService"
android:foregroundServiceType="dataSync"
Expand Down
9 changes: 0 additions & 9 deletions app/src/main/java/com/lagradost/cloudstream3/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -1255,15 +1255,6 @@ class MainActivity : AppCompatActivity(), ColorPickerDialogListener, BiometricCa
R.id.home_preview_info_btt,
R.id.home_preview_hidden_next_focus,
R.id.home_preview_hidden_prev_focus,
R.id.result_play_movie_button,
R.id.result_play_series_button,
R.id.result_resume_series_button,
R.id.result_play_trailer_button,
R.id.result_bookmark_Button,
R.id.result_favorite_Button,
R.id.result_subscribe_Button,
R.id.result_search_Button,
R.id.result_episodes_show_button,
)

newLocalBinding.root.viewTreeObserver.addOnGlobalFocusChangeListener { _, newFocus ->
Expand Down
Loading