From 8cf82d1cbe9687184c41ef7aedcd53970796424a Mon Sep 17 00:00:00 2001 From: Krzysztof Magiera Date: Mon, 20 Jan 2020 22:21:07 +0100 Subject: [PATCH] Fix layout of header items on Android native stack. (#289) This change fixes the issue when left item added to native stack header on Android would by default be shifted from the screen edge by some amount. This turned out to be the default config of the native toolbar which applies some padding on the left side. WIn this change we reset that padding to always be 0 to let the position be specified from react. Note that the setting we reset does not influence the position of the native back navigation button as Android does not apply the padding in case navigation back icon is rendered. --- .../java/com/swmansion/rnscreens/ScreenStackHeaderConfig.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.java b/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.java index e6065dc2..7fd28394 100644 --- a/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.java +++ b/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.java @@ -51,6 +51,10 @@ public class ScreenStackHeaderConfig extends ViewGroup { setVisibility(View.GONE); mToolbar = new Toolbar(context); + // reset content insets to be 0 to allow react position custom navbar views. Note that this does + // not affect platform native back button as toolbar does not apply left inset when navigation + // button is specified + mToolbar.setContentInsetsAbsolute(0, 0); // set primary color as background by default TypedValue tv = new TypedValue();