Skip to content

Optimize UI and Logic for Navigation and Route Planning - #1

Merged
qaz6750 merged 5 commits into
mainfrom
agents/ui-optimization-navigation-app
Jul 21, 2026
Merged

qaz6750 merged 5 commits into
mainfrom
agents/ui-optimization-navigation-app

Conversation

@qaz6750

@qaz6750 qaz6750 commented Jul 21, 2026

Copy link
Copy Markdown
Owner

This pull request includes a comprehensive review and optimization of the UI and logic across multiple components of the navigation app. The changes focus on enhancing user experience, improving performance, and ensuring a seamless interaction flow.

Key Changes:

  • Main UI Enhancements:

    • Removed the "我" button for a cleaner interface.
    • Updated the search bar to be a semi-transparent dropdown, preventing it from obstructing the map view.
    • Moved zoom buttons to the left side for better accessibility.
    • Eliminated the "路线" entry from the bottom navigation to streamline options.
    • Implemented automatic hiding of the bottom navigation bar when a location is selected.
    • Removed coordinate display from place metadata for a cleaner look.
    • Added functionality to request location permissions at app startup and automatically zoom to a 25m scale upon successful location acquisition.
    • Enhanced fuzzy search capabilities for improved user experience.
  • Route Planning Improvements:

    • Replaced the "途径点" row with a "+" button for adding waypoints, and centered the swap button.
    • Enabled automatic route recalculation upon preference changes with debounce to prevent excessive recalculations.
    • Optimized card sizes for better display on smaller screens.
    • Changed start and end point indicators to small circles for a more modern look.
  • Navigation Interface Updates:

    • Reduced the display duration of road recovery notifications to 10 seconds.
    • Removed the count of traffic lights from the bottom information card to minimize screen clutter.
    • Separated lane guidance indicators from the top navigation information for clearer visibility.
    • Simplified GPS location information display to a compact capsule, with a deep red color for weak signals.
    • Color-coded service area and toll booth cards for better differentiation, with display conditions based on proximity.
    • Adjusted the overview bar's length for a more cohesive layout.
    • Changed "跟随" to "继续导航" for clearer navigation instructions.
    • Improved the UI for navigation settings, including a blue toggle switch for better aesthetics.
  • Landscape Mode Adjustments:

    • Positioned lane indicators at the top center for better visibility.
    • Simplified information display during intersection zooms to ensure image clarity.
    • Ensured that facility cards are hidden during zoomed-in views to reduce clutter.
    • Addressed overlapping issues between the location status card and the overview bar.
    • Adjusted speed display positioning for improved visibility.

Next Steps:

  • Conduct thorough testing to ensure all changes function as intended across different devices and orientations.
  • Gather user feedback on the new UI elements and interactions to identify any further areas for improvement.
  • Monitor performance metrics to ensure that the optimizations have positively impacted app responsiveness and user experience.

This PR aims to create a more intuitive and efficient navigation experience for users, addressing both functional and aesthetic aspects of the app.

qaz6750 and others added 5 commits July 22, 2026 01:14
- Add more fuzzy search query variants for better matching
- Request location permission immediately after privacy consent
- Auto-zoom to 25m scale (zoom 19f) after location fix

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Remove profile button from search bar
- Replace full-screen search overlay with compact dropdown
- Move zoom buttons to left side vertically
- Remove Routes entry from bottom navigation
- Hide bottom nav when place selected, move card down
- Remove coordinate display from place info card

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Remove waypoint rows, center swap button with + button for waypoints
- Auto re-plan on preference change with debounce
- Reduce unnecessary route re-drawing with debouncing
- Optimize card sizes for small screens
- Replace text badges with small circle markers

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Road recovery notice auto-dismiss after 10s
- Remove traffic light count from bottom card
- Independent lane guidance below top card, hidden during junction view
- GPS status as compact capsule, deep red when weak
- Service area green / toll station blue with display conditions
- Overview bar spans between top and bottom cards
- Rename Follow to Continue Navigation
- Hide time data when map moved
- Blue Switch toggles and blue detail/concise mode
- GPS detail page blue-white theme
- Landscape: lane right-top, junction simplification, fix overlaps

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 21, 2026 17:54
@qaz6750
qaz6750 merged commit 04a7d56 into main Jul 21, 2026
1 of 2 checks passed
@qaz6750
qaz6750 deleted the agents/ui-optimization-navigation-app branch July 21, 2026 17:59

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refines the app’s navigation-focused UX by simplifying main-map controls, streamlining route planning interactions, and polishing the in-navigation UI, while also improving search fuzziness and default camera behavior.

Changes:

  • Updated main map UI: removed the “我” button, adjusted search panel sizing/opacity, moved zoom controls, and auto-hid bottom navigation when a place is selected.
  • Improved route planning UX: simplified waypoint editing, added preference-change auto re-plan with debounce, and tightened layouts for smaller screens.
  • Refined navigation screen: lane guidance placement/layout changes, GPS status and satellite panel redesign, facilities filtering/color-coding, and reduced on-screen clutter.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
app/src/main/java/com/simplemap/ui/SimpleMapApp.kt Main map UI adjustments (search panel, bottom nav behavior, zoom controls) and startup location permission request logic.
app/src/main/java/com/simplemap/ui/RoutePlannerPanel.kt Waypoint editor simplification, responsive sizing tweaks, and debounced auto re-planning on drive option changes.
app/src/main/java/com/simplemap/ui/NavigationScreen.kt Navigation UI polish: lane guidance panel, GPS status capsule, facilities filtering, and settings toggle visuals.
app/src/main/java/com/simplemap/search/AmapPlaceRepository.kt Expanded fuzzy address query generation for better search matching.
app/src/main/java/com/simplemap/navigation/AmapNavigationView.kt Adjusted overlay margins for TMC route layout.
app/src/main/java/com/simplemap/amap/AmapMapView.kt Increased default zoom used when centering/following current location.

Comment on lines +430 to +451
// 隐私同意后立即请求定位权限,而不是等待用户点击定位按钮
LaunchedEffect(Unit) {
val alreadyGranted = ContextCompat.checkSelfPermission(
context,
Manifest.permission.ACCESS_FINE_LOCATION,
) == PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(
context,
Manifest.permission.ACCESS_COARSE_LOCATION,
) == PackageManager.PERMISSION_GRANTED
if (alreadyGranted) {
locationEnabled = true
mapController?.setMyLocationMarkerVisible(true)
mapController?.centerOnCurrentLocationAndFollow()
} else {
locationPermissionLauncher.launch(
arrayOf(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION,
),
)
}
}
Comment on lines +891 to +896
IconButton(
onClick = { mapController?.zoomIn() },
modifier = Modifier.size(40.dp),
) {
Text("+", fontSize = 22.sp, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onSurface)
}
Comment on lines +903 to +908
IconButton(
onClick = { mapController?.zoomOut() },
modifier = Modifier.size(40.dp),
) {
Text("−", fontSize = 22.sp, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onSurface)
}
Comment on lines +791 to +793
modifier = Modifier
.size(28.dp)
.semantics { contentDescription = "添加途经点" },
var topPanelRightPx by remember { mutableStateOf(0) }
var bottomStackTopPx by remember { mutableStateOf(0) }
var bottomStackRightPx by remember { mutableStateOf(0) }
var isPlanning by remember { mutableStateOf(false) }
Comment on lines 1476 to 1479
modifier = modifier
.widthIn(min = 56.dp)
.heightIn(min = 48.dp)
.widthIn(max = 80.dp)
.heightIn(max = 28.dp)
.clickable(role = Role.Button, onClick = onClick)
}
}

private val roadSuffixes = listOf("路", "街", "道", "巷", "大道", "胡同", "弄")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants