Skip to content

Show photo locations on map #115

@greatvovan

Description

@greatvovan

May I suggest adding support for showing shot locations on the map.
How it could be designed:

  • In browsing mode:
    • add a panel with map (on the top or on the side), hide-able by a toggle;
    • show pins on the map for photos in the opened directory (ones having geo location);
    • zoom the map in a way to accommodate all pins – done once metadata is collected, but allow the user to pan and zoom as they want;
    • if a photo is selected (and it has geo location), highlight its pin on the map;
    • for multiple items are selected highlight each on map;
  • In viewing mode:
    • show a small map on top (or bottom) of the Info window (if it's open) with the location pin centred and some preset zoom level (~ 500 x 500 m area);
    • keep zoom in/out buttons because default zoom may be not helpful;
    • would be cool to keep semi-transparent style, as it is now.

It is understood that EXIF metadata needs to be processed from the directory in order to collect the coordinates. Since the same is required for EXIF sorting, maybe you can improve the process overall, as current experience of blocking the application seems not ideal (happens on network drives).

For example:

  • When directory is opened first time, a parallel thread(s) start gathering metadata.
  • A progress bar is displayed somewhere (e.g. on the top, next to the viewing mode buttons).
  • Before 100% of metadata is collected, EXIF sorting is not available (greyed).
    • Geo locations, though, can be displayed on the map as soon as they are collected (no need to wait for 100%).
  • The metadata is cached for a directory for duration of the program session (no permanent storage).
  • If user navigated away from the directory before 100% is collected, ideally the progress is saved, so that it resumes if the user returns to the directory. This can be achieved by keeping file-level track of records in an in-memory DB (like SQLite).

Sorry if I again missed anything. I believe showing geo locations is the next big feature expected by many users, given that most photos nowadays have geo location.

UPDATE: reading through other issues, there is evidence that you may want to endeavour on using a permanent storage to cache metadata and store user-added metadata like tags and ratings. If that's the case, disregard "in-memory DB" suggestion.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions