Skip to content

Commit

Permalink
added :
Browse files Browse the repository at this point in the history
edge to edge UI for Android 15
  • Loading branch information
Siddhant23 committed Feb 9, 2025
1 parent d84358e commit 04e9b19
Show file tree
Hide file tree
Showing 6 changed files with 41 additions and 4 deletions.
1 change: 1 addition & 0 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ dependencies {
implementation(libs.cardView)
implementation(libs.activityKtx)
implementation(libs.constraintLayout)
implementation(libs.androidx.core)

// Lifecycle and ViewModel
implementation(libs.lifecycleViewModel)
Expand Down
29 changes: 29 additions & 0 deletions app/src/main/java/com/test/android/siddhant/view/BaseActivity.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package com.test.android.siddhant.view

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updatePadding

abstract class BaseActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

// Apply edge-to-edge insets for all child activities
ViewCompat.setOnApplyWindowInsetsListener(findViewById(android.R.id.content)) { view, insets ->
val bars = insets.getInsets(
WindowInsetsCompat.Type.systemBars()
or WindowInsetsCompat.Type.displayCutout()
)
view.updatePadding(
top = bars.top,
bottom = bars.bottom,
left = bars.left,
right = bars.right
)
WindowInsetsCompat.CONSUMED
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package com.test.android.siddhant.view
import android.os.Bundle
import androidx.activity.OnBackPressedCallback
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.DefaultItemAnimator
Expand All @@ -19,7 +18,7 @@ import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.launch

@AndroidEntryPoint
class PopularActivity : AppCompatActivity() {
class PopularActivity : BaseActivity() {
private val binding by lazy { ActivityPopularBinding.inflate(layoutInflater) }
private val viewModel: PopularVM by viewModels()
private lateinit var adapter: PopularAdapter
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
package com.test.android.siddhant.view

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.test.android.siddhant.R
import com.test.android.siddhant.databinding.ActivityPopularDetailBinding
import com.test.android.siddhant.utils.AppConstant
import dagger.hilt.android.AndroidEntryPoint

@AndroidEntryPoint
class PopularDetailActivity : AppCompatActivity() {
class PopularDetailActivity : BaseActivity() {
private val binding by lazy { ActivityPopularDetailBinding.inflate(layoutInflater) }

override fun onCreate(savedInstanceState: Bundle?) {
Expand Down
7 changes: 7 additions & 0 deletions app/src/main/res/values/styles.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowBackground">@android:color/white</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowActionBar">false</item>

<!-- Prevents content from going under system bars -->
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
</style>

</resources>
2 changes: 2 additions & 0 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ recyclerView = "1.4.0"
cardView = "1.0.0"
activityKtx = "1.10.0"
constraintLayout = "2.2.0"
androidx-core = "1.16.0-alpha02"

# Lifecycle Libraries
lifecycleViewModel = "2.8.7"
Expand Down Expand Up @@ -43,6 +44,7 @@ recyclerView = { module = "androidx.recyclerview:recyclerview", version.ref = "r
cardView = { module = "androidx.cardview:cardview", version.ref = "cardView" }
activityKtx = { module = "androidx.activity:activity-ktx", version.ref = "activityKtx" }
constraintLayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "constraintLayout" }
androidx-core = { group = "androidx.core", name = "core-ktx", version.ref = "androidx-core" }

# Lifecycle Libraries
lifecycleViewModel = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycleViewModel" }
Expand Down

0 comments on commit 04e9b19

Please sign in to comment.