The signing config now properly falls back to debug keystore when
KEYSTORE_BASE64 is set but empty (as happens in CI without secrets).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Bump version to 0.6.0 (versionCode 7)
- Update repository URLs to github.com/vide/matedroid
- First public GitHub release with automated APK builds
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Build APK automatically when a release is published
- Upload APK as release asset
- Support custom keystore signing via GitHub secrets
- Fall back to debug signing when secrets not configured
Changed android:usesCleartextTraffic from false to true in the
AndroidManifest to allow HTTP (non-HTTPS) connections to Teslamate
servers running on local networks without TLS.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Remove auto-load from setCarId to prevent race condition where
all data was loaded before the date filter was applied.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Show dropdown arrow next to car name when multiple cars available
- Tap car name to open vehicle selector dialog
- Selecting a different car resets and refreshes all data
- Dialog shows all cars with checkmark on selected one
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Replace bulky car silhouette with minimalist Tesla outline
- Use colored dots (green=OK, yellow=warning) next to pressure values
- Reduce vertical height from 100dp to 56dp
- Cleaner layout with values on sides, car shape in center
- Add mockups/ to gitignore
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add distance filter: drives < 0.1 km are now also hidden
- Convert certificate checkbox to toggle switch for consistency
- Update info dialog to mention distance filter
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Match the styling of other dashboard cards by using the palette's
surface and accent colors instead of default Material colors.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add "Show short drives / charges" toggle in settings (disabled by default)
- Hide drives under 1 minute and charges <= 0.1 kWh from lists when disabled
- Short entries still included in totals, averages, and chart data
- Add info tooltip explaining the setting behavior
- Remove "(less secure)" text from certificate option
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add chevron arrows to all 4 navigation buttons in Vehicle Info card
- Fix pull-to-refresh indicator staying visible after refresh completes
(was caused by loadCarStatus launching separate coroutine)
- Add subtle background to battery info row
- Add chevron icon on right to indicate tappable
- Increase battery icon size slightly
- Improve padding and rounded corners
- Bottom buttons now show values: Charges, Drives, Mileage (odometer), SW
- Remove Battery button from bottom - tap battery % to go to battery health
- Make battery info row in main card tappable for battery health navigation
- Move tire pressure to separate card
- Remove unused VehicleInfoCard and CompactInfoItem components
- Handle empty string geofence (API may return '' instead of null)
- Use takeIf { it.isNotBlank() } for proper fallback chain
- Update address during auto-refresh when location changes
- Always fall back to coordinates if no geofence or address available
- Add CustomIcons.SteeringWheel from Material Symbols (search_hands_free)
- Update Drives button on dashboard to use steering wheel icon
- Update DrivesScreen and DriveDetailScreen to use steering wheel icon
- Create CustomIcons.kt with Road icon converted from Material Symbols SVG
- Update Mileage button on dashboard to use Road icon
- Update all mileage-related icons to use CustomIcons.Road
- Change 'Total' icon in MileageScreen to AllInclusive
Note: 'Road' and 'SearchHandsFree' icons from fonts.google.com
are not available in Compose Material Icons Extended library.
Using AddRoad and DriveEta as alternatives.
- Set 'Last 7 days' as default filter in Charges and Drives screens
- Add total charges and drives counts to Vehicle Info card on dashboard
- Reorganize card into 2x2 grid layout
- Create shared InteractiveBarChart component with tap-to-show-value tooltip
- Add monthly bar charts to Charges and Drives screens
- Update Software Versions and Mileage screens to use InteractiveBarChart
- Replace DirectionsRun icons with Route icons in Mileage screens
- Add Y-axis labels showing max and min values on all charts
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Shows the maximum value at the top (with 'k' suffix for thousands)
and 0 at the bottom for all bar charts in the Mileage screen:
- Yearly mileage chart
- Monthly mileage chart
- Daily mileage chart
- Normal pressure (2.7-3.2 bar / 39-46 PSI): uses main text color
- Out of bounds: yellow warning color
- Also respects Tesla's soft warning flags from API
- Car body now filled with 30% transparency instead of stroke
- Works with both bar and PSI display units (API returns bar)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Tires are now drawn inside the car rectangle at the corners,
like real wheel wells. Car body is now a stroke outline so
the colored tires are visible inside it.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Battery Health:
- Range card icons now use green (new) and yellow (now) colors
to match the capacity cards styling
Dashboard:
- Redesigned tire pressure display with visual top-down car view
- Canvas drawing shows car body with 4 colored tire rectangles
- Tires are green when OK, yellow/orange when low pressure warning
- Cleaner layout with values on each side
- Added plug icon next to locked status when vehicle is plugged in
but not actively charging (charging state already shows power icon)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add clickable tooltips explaining Capacity, Degradation, Range,
Current Charge, Range Information, and Estimated Total Capacity
- Replace generic Info icons with Route icons in range value cards
- Rename "Battery Status" to "Current Charge" for clarity
- Each tooltip provides clear explanations of what the metrics mean
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>