Skip to content

Commit af26309

Browse files
committed
fix android 15 padding
1 parent 7b6a694 commit af26309

File tree

7 files changed

+27
-2
lines changed

7 files changed

+27
-2
lines changed

app/src/main/java/com/pedro/streamer/MainActivity.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,13 @@ import android.widget.GridView
2828
import android.widget.TextView
2929
import androidx.appcompat.app.AppCompatActivity
3030
import androidx.core.app.ActivityCompat
31-
import com.pedro.streamer.oldapi.OldApiActivity
3231
import com.pedro.streamer.file.FromFileActivity
32+
import com.pedro.streamer.oldapi.OldApiActivity
3333
import com.pedro.streamer.rotation.RotationActivity
3434
import com.pedro.streamer.screen.ScreenActivity
3535
import com.pedro.streamer.utils.ActivityLink
3636
import com.pedro.streamer.utils.ImageAdapter
37+
import com.pedro.streamer.utils.fitAppPadding
3738
import com.pedro.streamer.utils.toast
3839

3940
class MainActivity : AppCompatActivity() {
@@ -52,6 +53,7 @@ class MainActivity : AppCompatActivity() {
5253
override fun onCreate(savedInstanceState: Bundle?) {
5354
super.onCreate(savedInstanceState)
5455
setContentView(R.layout.activity_main)
56+
fitAppPadding()
5557
transitionAnim(true)
5658
val tvVersion = findViewById<TextView>(R.id.tv_version)
5759
tvVersion.text = getString(R.string.version, BuildConfig.VERSION_NAME)

app/src/main/java/com/pedro/streamer/file/FromFileActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import com.pedro.library.view.OpenGlView
3939
import com.pedro.streamer.R
4040
import com.pedro.streamer.utils.PathUtils
4141
import com.pedro.streamer.utils.ScreenOrientation
42+
import com.pedro.streamer.utils.fitAppPadding
4243
import com.pedro.streamer.utils.setColorFilter
4344
import com.pedro.streamer.utils.toast
4445
import kotlinx.coroutines.CoroutineScope
@@ -94,7 +95,7 @@ class FromFileActivity : AppCompatActivity(), ConnectChecker,
9495
super.onCreate(savedInstanceState)
9596
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
9697
setContentView(R.layout.activity_from_file)
97-
98+
fitAppPadding()
9899
bStream = findViewById(R.id.b_start_stop)
99100
bSelectFile = findViewById(R.id.select_file)
100101
bReSync = findViewById(R.id.b_re_sync)

app/src/main/java/com/pedro/streamer/oldapi/OldApiActivity.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import com.pedro.library.view.AutoFitTextureView
3333
import com.pedro.streamer.R
3434
import com.pedro.streamer.utils.PathUtils
3535
import com.pedro.streamer.utils.ScreenOrientation
36+
import com.pedro.streamer.utils.fitAppPadding
3637
import com.pedro.streamer.utils.toast
3738
import java.text.SimpleDateFormat
3839
import java.util.Date
@@ -66,6 +67,7 @@ class OldApiActivity : AppCompatActivity(), ConnectChecker, TextureView.SurfaceT
6667
super.onCreate(savedInstanceState)
6768
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
6869
setContentView(R.layout.activity_old_api)
70+
fitAppPadding()
6971
bStream = findViewById(R.id.b_start_stop)
7072
bRecord = findViewById(R.id.b_record)
7173
etUrl = findViewById(R.id.et_rtp_url)

app/src/main/java/com/pedro/streamer/rotation/RotationActivity.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ import com.pedro.extrasources.CameraUvcSource
3838
import com.pedro.extrasources.CameraXSource
3939
import com.pedro.streamer.R
4040
import com.pedro.streamer.utils.FilterMenu
41+
import com.pedro.streamer.utils.fitAppPadding
4142
import com.pedro.streamer.utils.toast
4243
import com.pedro.streamer.utils.updateMenuColor
4344
import kotlinx.coroutines.CoroutineScope
@@ -62,6 +63,7 @@ class RotationActivity : AppCompatActivity(), OnTouchListener {
6263
override fun onCreate(savedInstanceState: Bundle?) {
6364
super.onCreate(savedInstanceState)
6465
setContentView(R.layout.rotation_activity)
66+
fitAppPadding()
6567
supportFragmentManager.beginTransaction().add(R.id.container, cameraFragment).commit()
6668
}
6769

app/src/main/java/com/pedro/streamer/screen/ScreenActivity.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import com.pedro.encoder.input.sources.audio.MixAudioSource
3232
import com.pedro.encoder.input.sources.audio.InternalAudioSource
3333
import com.pedro.encoder.input.sources.audio.MicrophoneSource
3434
import com.pedro.streamer.R
35+
import com.pedro.streamer.utils.fitAppPadding
3536
import com.pedro.streamer.utils.toast
3637
import com.pedro.streamer.utils.updateMenuColor
3738

@@ -79,6 +80,7 @@ class ScreenActivity : AppCompatActivity(), ConnectChecker {
7980
super.onCreate(savedInstanceState)
8081
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
8182
setContentView(R.layout.activity_display)
83+
fitAppPadding()
8284
button = findViewById(R.id.b_start_stop)
8385
etUrl = findViewById(R.id.et_rtp_url)
8486
val bRecord = findViewById<ImageView>(R.id.b_record)

app/src/main/java/com/pedro/streamer/utils/Extensions.kt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,11 @@ import android.view.MenuItem
3030
import android.widget.Toast
3131
import androidx.annotation.ColorInt
3232
import androidx.annotation.ColorRes
33+
import androidx.appcompat.app.AppCompatActivity
3334
import androidx.core.content.ContextCompat
35+
import androidx.core.view.ViewCompat
36+
import androidx.core.view.WindowInsetsCompat
37+
import androidx.core.view.updatePadding
3438
import androidx.fragment.app.Fragment
3539
import com.pedro.streamer.R
3640

@@ -74,4 +78,15 @@ fun MenuItem.updateMenuColor(context: Context, currentItem: MenuItem?): MenuItem
7478
currentItem?.setColor(context, R.color.black)
7579
setColor(context, R.color.appColor)
7680
return this
81+
}
82+
83+
fun AppCompatActivity.fitAppPadding() {
84+
ViewCompat.setOnApplyWindowInsetsListener(window.decorView.rootView) { view, insets ->
85+
val bars = insets.getInsets(
86+
WindowInsetsCompat.Type.systemBars() or WindowInsetsCompat.Type.displayCutout()
87+
)
88+
view.updatePadding(left = bars.left, top = bars.top, right = bars.right, bottom = bars.bottom)
89+
view.setBackgroundColor(ContextCompat.getColor(this, R.color.appColor))
90+
WindowInsetsCompat.CONSUMED
91+
}
7792
}

app/src/main/res/layout/activity_main.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
android:layout_height="match_parent"
66
android:gravity="center"
77
android:orientation="vertical"
8+
android:background="@color/white"
89
>
910

1011
<TextView

0 commit comments

Comments
 (0)