Skip to content

Modernize slider#819

Draft
draggie wants to merge 7 commits into
mainfrom
modernize-slider
Draft

Modernize slider#819
draggie wants to merge 7 commits into
mainfrom
modernize-slider

Conversation

@draggie

@draggie draggie commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Summary

Modernizes the slider package and example apps across native platforms,
replacing the old native implementations with Swift/SwiftUI on iOS and Kotlin/
Jetpack Compose on Android, while restoring the public slider API and richer
example coverage.

Changes

  • Migrated Android implementation from Java/native view code to Kotlin +
    Jetpack Compose.

  • Migrated iOS implementation to Swift/SwiftUI with Fabric component wiring.

  • Rebuilt the example app with a shared two-tab UI: Examples and Props.

  • Updated mobile and web examples with Callstack branding and new app icons.

  • Updated example app to newer React Native setup and dependencies.

  • Refreshed iOS project setup, Podfile/lockfile, app icons, launch screen, and
    deployment target.

  • Updated README prop support/platform notes.

  • Added .nvmrc and package typings entry.

  • Removed stale old native implementation files and outdated generated/native
    scaffolding.

  • Windows example/support cleanup is present in the diff but Windows
    functionality is not part of this PR’s verification scope.

Test Plan

  • npx tsc --noEmit in package
  • npm run lint in package
  • npm run prepare in package
  • npm run lint in example
  • npm test -- --runInBand --no-watchman in example
  • npm run build in example-web
  • ./gradlew assembleDebug in example/android
  • pod install in example/ios

To Do / Manual Verification

  • Manually verify Android examples in the app, especially default slider,
    min/max, step, value display, disabled, limits, inverted, tint/thumb size,
    tap/drag behavior, and step markers.

  • Manually verify iOS examples for custom tint/image rendering and tap/
    drag behavior.

  • Windows follow-up should be handled separately.

simulator_screenshot_DA6D805E-B71A-4D20-B41B-B02C01EA6B3E image

@draggie draggie requested a review from BartoszKlonowski June 25, 2026 14:59
BartoszKlonowski and others added 7 commits June 26, 2026 10:45
This commit actually reimplements the whole Slider package so that:
* Kotlin is being used for Android
* Jetpack Compose is used to render the Slider
* RNCustomRenderComposeView is implemented as AbstractComposeView didn't work with current solution
* SliderViewManagerImpl is removed in favor of keeping everything in ViewManager

And most of all:
* Slider is now out of @react-native-community
@draggie draggie force-pushed the modernize-slider branch from f38bb67 to 2abd25f Compare June 26, 2026 09:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants