Anything passed in a navigator event in a 'passProps' object will be serialized into the Java side Screen object as a HashMap<String, Object>. When RctView starts the React root the props are deserialized into the Bundle passed as props, along with the navigation info. Due to React and Java limitations, JS arrays of arrays are deserialized as dictionaries by index, and arrays of multiple types are not supported.
Also changed the structure used to store Modals
from a Map based on navigatorId to a stack.
Reason for the change is that screens can be
pushed only to the topmost Modal.
Navigation views such as ToolBar, StatusBar, NavigationBar can now be
customized through a static JSON defined in each screen component.
Styling options introduced in this commit:
- ToolBar color
- StatusBar color
- NavigationBar color
- Buttons tint color
- Title color
- Tab normal text color
- Tab Selected text color
- Selected tab inidicator color
Don't keep activities in history stack + enable resources in release mode
From now on, calling start*Application will clear the activity stack and the new activity as
the root of an empty stack. This means we don't support "Modal" or opening screens in new activity.
Enabled resources (Toolbar icons) in release mode.