Skip to content

Distinguish and filter journey segments by transportation mode #46

Description

@mahlernim

Problem

Google Maps Timeline activity segments can include transportation information, but Timeline Visualizer currently keeps only coordinates and timestamps. A journey therefore renders as one undifferentiated route, even when it contains walking, driving, train, air, or boat travel.

Changing only the moving point into an airplane or car would be ambiguous. It would not explain earlier parts of the route, mixed modes, unknown values, or mode filtering.

Proposed outcome

Preserve supported transportation metadata during import and let users distinguish route segments by mode in both preview and exported media.

Use a compact legend and accessible segment styling as the primary presentation. A mode-specific moving marker may be added later if it remains clear at small sizes, but it is not required for this issue.

Initial mode groups

Map source values into a small user-facing set such as:

  • Walking
  • Cycling
  • Road vehicle
  • Rail
  • Air
  • Boat
  • Other or unknown

Keep the original source value available internally when practical so future mappings do not require re-importing the Timeline file.

Acceptance criteria

  • The Android parser reads transportation metadata from supported Timeline activity segments without losing existing coordinates or timestamps.
  • The timeline and journey models preserve mode boundaries through date filtering, preview, seeking, and export.
  • Route segments can be visually distinguished by transportation mode with a compact legend.
  • Users can show all modes or hide selected modes without changing the imported source file.
  • Filtering has a clear definition for distance totals and empty results.
  • Missing, unsupported, and conflicting mode values fall back to Other or unknown without dropping route geometry.
  • The presentation remains understandable without color alone and includes accessible labels.
  • English, Korean, Japanese, and the other supported app locales have complete string and placeholder parity.
  • Preview, Journey overview, saved overview images, and exported video use consistent mode styling.
  • The supported Python renderer preserves equivalent mode semantics or documents a deliberate compatibility boundary.
  • Tests cover mixed walking, road, rail, air, and unknown segments, including a file with no mode metadata.

Privacy and compatibility

Processing remains local. Do not add account access, network upload, or new Android permissions.

Existing Timeline files without transportation metadata must continue to import and render as before.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions