diff --git a/Libraries/Components/ToolbarAndroid/ToolbarAndroid.android.js b/Libraries/Components/ToolbarAndroid/ToolbarAndroid.android.js index eb904d867a..2658361a94 100644 --- a/Libraries/Components/ToolbarAndroid/ToolbarAndroid.android.js +++ b/Libraries/Components/ToolbarAndroid/ToolbarAndroid.android.js @@ -125,6 +125,17 @@ var ToolbarAndroid = React.createClass({ * Sets the toolbar title color. */ titleColor: ReactPropTypes.string, + /** + * Used to set the toolbar direction to RTL. + * In addition to this property you need to add + * + * android:supportsRtl="true" + * + * to your application AndroidManifest.xml and then call + * `setLayoutDirection(LayoutDirection.RTL)` in your MainActivity + * `onCreate` method. + */ + rtl: ReactPropTypes.bool, /** * Used to locate this view in end-to-end tests. */ @@ -180,6 +191,7 @@ var toolbarAttributes = { logo: true, navIcon: true, overflowIcon: true, + rtl: true, subtitle: true, subtitleColor: true, title: true, diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java index f55d6d8694..36aac87e73 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java @@ -18,6 +18,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Color; import android.os.SystemClock; +import android.util.LayoutDirection; import android.view.MenuItem; import android.view.View; @@ -64,6 +65,11 @@ public class ReactToolbarManager extends ViewGroupManager { view.setOverflowIconSource(overflowIcon); } + @ReactProp(name = "rtl") + public void setRtl(ReactToolbar view, boolean rtl) { + view.setLayoutDirection(rtl ? LayoutDirection.LTR : LayoutDirection.RTL); + } + @ReactProp(name = "subtitle") public void setSubtitle(ReactToolbar view, @Nullable String subtitle) { view.setSubtitle(subtitle);