MCPcopy Index your code
hub / github.com/OneUIProject/oneui-core

github.com/OneUIProject/oneui-core @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
21,151 symbols 67,007 edges 915 files 8,493 documented · 40%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

For Wear OS, please look at oneuiw-core.

Samsung Experience Support Library (One UI 4.x)

This is the repository for the Samsung Experience Support Library (internally referenced as sesl).

Samsung's One UI apps are created by using a heavily modified version of Google's Android Jetpack and Material Components libraries, that include (but are not limited to) a new theme for the UI, new APIs and much more. The intent of this library is to make those Samsung UX elements available to everyone for study, modding or whatever feels right for you.

Any form of contribution, suggestions, bug report or feature request will be welcome.

Libraries

Android Jetpack:

Material Components:

Samsung:

  • apppickerview (based on 1.0.18-sesl4)
  • indexscroll (based on 1.0.14-sesl4)
  • picker-basic (based on 1.0.37-sesl4)
  • picker-color (based on 1.0.25-sesl4)

Missing libs:

  • slidingpanelayout (based on 1.0.10-sesl4)
  • typoanimation (based on 1.0.1-sesl4)

Usage

To use these libraries in your project, simply add the dependencies in your build.gradle file:

dependencies {
    implementation 'io.github.oneuiproject.sesl:appcompat:<version>'
    implementation 'io.github.oneuiproject.sesl:material:<version>'
    // ...
}

In order for your project to build correctly, you'll need to remove Google's original libraries:

configurations.all {
    exclude group: 'androidx.appcompat', module: 'appcompat'
    exclude group: 'androidx.core', module: 'core'
}

For more informations about the usage of the libraries, please take a look at our wiki.

Using with libraries that depend on AndroidX

If you need to use a library that requires one or more stock androidx module, you have to exclude those specific dependencies to avoid build errors, like this:

implementation("com.org.group:library:1.0.0") {
    exclude group: 'androidx.swiperefreshlayout', module: 'swiperefreshlayout'
}

More info

Special thanks

  • Google for their Jetpack and Material Components libraries.
  • Samsung for their awesome OneUI Design. :)
  • All the current and future contributors and issue reporters. :D

Extension points exported contracts — how you extend this code

ParcelableCompatCreatorCallbacks (Interface)
Callbacks a Parcelable creator should implement. @deprecated Use {@link android.os.Parcelable.ClassLoaderCreato [43 implementers]
core/src/main/java/androidx/core/os/ParcelableCompatCreatorCallbacks.java
ApplyFont (Interface)
Functional interface for method to call when font is retrieved (or fails with fallback). [16 implementers]
material/java/com/google/android/material/resources/CancelableFontCallback.java
OnMenuItemClickListener (Interface)
Interface responsible for receiving menu item click events if the items themselves do not have individual item click lis [6 …
appcompat/src/main/java/androidx/appcompat/widget/PopupMenu.java
AttachedBehavior (Interface)
Defines the default attached Behavior of a View class When writing a custom view, implement this int [9 implementers]
coordinatorlayout/src/main/java/androidx/coordinatorlayout/widget/CoordinatorLayout.java
OnPageChangeListener (Interface)
Callback interface for responding to changing state of the selected page. [9 implementers]
viewpager/src/main/java/androidx/viewpager/widget/ViewPager.java
StatefulAdapter (Interface)
ViewPager2 adapters should implement this interface to be called during View#onSaveInstanceState() and { [6 implementers]
viewpager2/src/main/java/androidx/viewpager2/adapter/StatefulAdapter.java
RecyclerListener (Interface)
A RecyclerListener can be set on a RecyclerView to receive messages whenever a view is recycled. @see RecyclerView#setR [6 …
recyclerview/src/main/java/androidx/recyclerview/widget/RecyclerView.java
CollectionAdapter (Interface)
Adapter used to obtain items from a generic collection type. [5 implementers]
customview/src/main/java/androidx/customview/widget/FocusStrategy.java

Core symbols most depended-on inside this repo

get
called by 1246
core/src/main/java/androidx/core/util/Supplier.java
getContext
called by 652
appcompat/src/main/java/androidx/appcompat/widget/DecorToolbar.java
size
called by 636
core/src/main/java/androidx/core/os/LocaleListInterface.java
add
called by 487
material/java/com/google/android/material/internal/ViewOverlayImpl.java
isEmpty
called by 388
core/src/main/java/androidx/core/os/LocaleListInterface.java
getLayoutParams
called by 388
material/java/com/google/android/material/floatingactionbutton/ExtendedFloatingActionButton.java
append
called by 377
core/src/main/java/androidx/core/content/res/GrowingArrayUtils.java
getResources
called by 376
fragment/src/main/java/androidx/fragment/app/Fragment.java

Shape

Method 19,343
Class 1,507
Interface 295
Enum 6

Languages

Java100%

Modules by API surface

recyclerview/src/main/java/androidx/recyclerview/widget/RecyclerView.java828 symbols
core/src/main/java/androidx/core/app/NotificationCompat.java385 symbols
material/java/com/google/android/material/textfield/TextInputLayout.java255 symbols
core/src/main/java/androidx/core/view/ViewCompat.java239 symbols
material/java/com/google/android/material/tabs/TabLayout.java219 symbols
fragment/src/main/java/androidx/fragment/app/Fragment.java207 symbols
fragment/src/main/java/androidx/fragment/app/FragmentManager.java203 symbols
appcompat/src/main/java/androidx/appcompat/app/AppCompatDelegateImpl.java190 symbols
material/java/com/google/android/material/appbar/AppBarLayout.java186 symbols
core/src/main/java/androidx/core/view/accessibility/AccessibilityNodeInfoCompat.java181 symbols
recyclerview/src/main/java/androidx/recyclerview/widget/StaggeredGridLayoutManager.java178 symbols
material/java/com/google/android/material/chip/Chip.java177 symbols

For agents

$ claude mcp add oneui-core \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact