Giter Club home page Giter Club logo

trekme's People

Contributors

bambi-bf avatar chdh avatar p-lr avatar theycome avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

trekme's Issues

Don't advertise the world map on startup

If there are no maps, display a message indicating that "You have not yet created a map".
And also add a button to directly navigate to the map creation fragment.

New logo for TrekAdvisor

Hello, I want contribute to TrekAdvisor , I designed a logo fot TrekAdvisor. You can choose which one you like, without square or square. I hope you like it. If you like it, i will send pr dan original files. If there's something you want to change. I'll do it.

logo

Regression in map import fragment

Import a map => messages aren't properly displayed.

Change this fragment to a list-style with single selection and an action menu, instead of repeating the available action in each card.

Sample map import

The download of a sample map is only available if no maps are detected.
It should also be available from the MapListFragment at any time.

Also, when the sample map is downloaded, it should be automatically imported and appear in the map list.

Use ViewModel

As described here in the comments, a ViewModel should implement CoroutineScope to have a coroutine running even while the device is rotating.

Typically, the RecordingFragment could benefit from this, to process all recordings in a more efficient way.

Create a global map based on openStreetMap

Put this map in a zip file and make it available to download & import, maybe directly from inside the app.
Suggest to the user to download this sample map at startup, if no map is detected on the device.

Add an export functionality for maps

Depending on the tool used to compress a map, the unzip task may fail.
For example, if the compression is done with the Asus file manager, there is no issue. But it fails when using the OnePlus file manager.

Add an "Archive" button, that creates a zip file in trekadvisor/archives. The zip file is appended with the date, using the same pattern or the unzip task.

Remove "Settings" menu

In the MapListFragment and in the ImportFragment, remove the floating menu that only displays a "Settings" box on click.

Gpx recording

This feature will require the revamp of the way location is retrieved.

The goal is to control a service which can record position and generate gpx files. It uses an independant google location service callback. The communication between the service and activity/fragment is done using GreenRobot's EventBus.

Using a background thread to listen to location events has proven ineffective.

Update readme

Add a section explaining how to import gpx tracks.
Add the distance indicator to the feature list.

Track stats design

Design principles

  • When the list of tracks is loaded in the record fragment, track statistics are loaded from the gpx track files (which a stored in custom section of the gpx structure).
    If there are no such information, don't display this information as summary below each track name. Instead, add a way to calculate statistics.
    Track that already have this information are eligible to be viewed in more detail inside the TrackViewFragment.

  • For a track being recorded, statistics are computed in real time. The TrackViewFragment subscribes to track statistic events emitted by the location service. When a recording stops, those statistics a serialized inside the gpx file.

  • The TrackViewFragment only requires the track statistics as launching argument (for instance), to follow the principle of least computations ahead of time. If the track points are needed to e.g plot a graph, then a second launching argument could be the track file (so a full parse of the track would give the points).

Implications

  • The GPXWriter and GPXParser must be adpated to serialize/deserialize track statistics.

  • The GPXParser provides a new public parsing method, that only parses statistics.

Map not refreshing after gpx record import

Hi

I would like to report a bug.

If i select a map (eg. world map) and then go to gpx recording and import a recorded gpx file which was recorded using the trekadvisor app and then go back to the world map, the maps does not show the gpx recorded file. The only way i can get the recorded gpx file to show up is to select a different map and then go back to the world map. So the map is not refreshing after gpx file is imported from the gpx recorder. The other option is to close and reopen the app to get the map to refresh with the newly recorded gpx file.

Calibration warnings

During calibration, if someone inputs projected values instead of geographical coordinates or vice versa, there is no warning about the mistake.
Upon calibration point saving, a Snackbar indicating the confusion should suggest to enter correct values.

Refactor PathView

Refactor so this view is no longer statically added to the TileViewExtended, but rather only when it's needed.

Crashing

When I open the app Im get crashing. How to fix this?

Warning when ING credentials are incorrect

When they are incorrect, a warning is already shown inside the credentials fragment.
Add the same warning inside the WmtsFragment, to avoid a blank screen.
Maybe also add a link to the relevant troubleshoot section.

Routes drawing

The drawing in RouteLayer only uses the projected coordinates of the route's markers.
It should take into account map with no projections, like in MarkerLayout.

Test with a map without a projection.

Redesign map import fragment

Change this fragment to a list-style with single selection and an action menu, instead of repeating the available action in each card.

Unable To Open GPX Recording screen

Hi

I have compiled the trekadvisor and the only think that i can get to work is the GPX Record. Then i try to click on the GPS REcord the APP closes. What am I doing wrong

Refactor track import

In TrackImporter.GpxTrackFileTask, method gpxTracktoRoute, there is a flaw in marker creation.
The logic used for marker is different and this one should be used : only define "projected" or "relative" values if the map uses a projection. This way is less ambiguous.

Also, track saving is tied to map configuration saving. Like the changes make for markers, a specific file named e.g "tracks.json" or "routes.json" should be used to persist routes.
So a dedicated task of the MapLoader, named e.g. MapRouteImportTask, should create the RouteGson object from the "route.json" file.

Import Maps issue

When you import a map from the "Import a maps" section the "My Maps" list does not refresh. Only when you close the app and then reopen it will the "MY Maps" list refresh.

Update calibration status

When a map isn't calibrated, going through the calibration process until the end (projection, then defining calibration points), the calibration status isn't updated in the map list.

Center to position

The center to position feature should not only center to the current position, but also zoom in if this is required to center the view to the current position.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.