Change theme
Help
Press space for more information.
Show links for this issue (Shortcut: i, l)
Copy issue ID
Previous Issue (Shortcut: k)
Next Issue (Shortcut: j)
Sign in to use full features.
Vote: I am impacted
Notification menu
Refresh (Shortcut: Shift+r)
Go home (Shortcut: u)
Pending code changes (auto-populated)
View issue level access limits(Press Alt + Right arrow for more information)
Unintended behavior
View staffing
Description
Version used: android.arch.navigation:navigation-safe-args-gradle-plugin:1.0.0-alpha01
As the title says, the safe args plugin generates invalid code when argument names contain a period. I would argue that the plugin should generate valid code for periods. I've seen codebases that use class package names as part of the bundle key. Sanitizing the names to replace period with an underscore would allow for easier migration to the Navigation Component.
Some code samples:
```
<fragment
android:id="@+id/firstController"
android:name="com.bluelinelabs.conductor.demo.controllers.ArchNavigationDemoController"
android:label="ArchNavigationDemoController1">
<argument android:name="NavigationDemoController.index" android:defaultValue="0" app:type="integer"/>
</fragment>
```
```
public int getNavigationDemoController.index() {
return NavigationDemoController.index;
}
```
```
public static ArchNavigationDemoControllerArgs fromBundle(Bundle bundle) {
ArchNavigationDemoControllerArgs result = new ArchNavigationDemoControllerArgs();
if (bundle.containsKey("NavigationDemoController.index")) {
result.NavigationDemoController.index = bundle.getInt("NavigationDemoController.index");
}
}
```