Refactor the navigation drawer to show the Activity Type selection dialog directly, fulfilling REQ-SET-051 and resolving the fatal ActivityNotFoundException when launching the configuration cockpit.
Important
- Navigation Change: This change will remove the intermediate
ConfigTrackingTabsActivityfrom the drawer flow. Instead, a modal dialog will appear over the current screen to select the sport type. - In-App Configuration: Selecting a sport will now replace the current fragment with the
TrackingTabsFragmentin configuration mode, keeping the user withinMainActivityWithNavigationinstead of jumping to a separate Activity.
- Requirement:
REQ-SET-051(Direct Tracking Tab Selection) - Test:
TST-NAV-003(Direct Config Navigation) - Changes:
- Update the
drawer_tracking_layoutscase inonNavigationItemSelectedto callActivityTypeSelectionHelper.showSelectionDialog(). - In the
onTypeSelectedcallback, replace the current fragment withTrackingTabsFragment.newInstance(activityType).
- Update the
- Remove the
<activity>registration forConfigTrackingTabsActivity.
- Drawer Interaction: Open the navigation drawer and tap "Tracking Layouts".
- Dialog Visibility: Verify that the "Select Activity Type" dialog appears immediately.
- Selection Flow: Select "Cycling".
- Fragment Transition: Verify that the screen switches to the tracking configuration cockpit for Cycling.
- Navigation Consistency: Verify that pressing "Back" returns to the previous top-level fragment correctly.