Compare commits

...

986 Commits

Author SHA1 Message Date
Dennis Guse ca2bc6426c Release: v3.13.2 2020-11-22 20:21:50 +01:00
Dennis Guse 81097aac40 Bugfix: crash in landscape mode in TrackController due to wrong background. 2020-11-22 20:21:11 +01:00
Dennis Guse a74b5fc743 Cleanup. 2020-11-21 18:42:32 +01:00
Dennis Guse e996ad0a0c Release: v3.13.1 2020-11-21 10:37:25 +01:00
Dennis Guse 0f726958e0 Revert "Shrinking all APK builds without obfuscation. Fixes #433."
Introduced #523.

This reverts commit 34834120
2020-11-21 10:34:15 +01:00
Peter Storch 3a84520819 removed duplicate export 2020-11-20 21:56:39 +01:00
Dennis Guse 8328069b9d README: add human tech badge :)
Fixes #521.
2020-11-20 21:51:45 +01:00
Peter Storch b2df79caf2 fix #516 post workout export fails silently (#520)
Change the post workout export to use the ExportService (JobIntentService) and directing the user to the SettingsActivity in case the export failed to check the export directory.
2020-11-20 20:59:52 +01:00
Dennis Guse 6bcb8db40c Release: v3.13.0 2020-11-17 22:21:24 +01:00
Román Martínez 974baaf611 Marker Bugfixes: markers deletion didn't work and track import didn't include marker's photos. Fixes #514.
Marker edition bugfixed: orphan photos are deleted.
2020-11-17 22:02:26 +01:00
Dennis Guse fd77e77bb9 TrackController: readded stop button's pressed state.
Removed in 18546fd3cc
2020-11-17 21:49:21 +01:00
Dennis Guse 1e8beff015 TrackController: refactor button (delayed action) UI and use handler. 2020-11-17 21:43:12 +01:00
Dennis Guse 96bc347374 Activity icon uses now an image instead of a spinner (which was only used as an icon).
Fixed #503.
2020-11-17 21:43:12 +01:00
dependabot[bot] 8f144d4a97 Bump desugar_jdk_libs from 1.1.0 to 1.1.1
Bumps [desugar_jdk_libs](https://github.com/google/desugar_jdk_libs) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/google/desugar_jdk_libs/releases)
- [Changelog](https://github.com/google/desugar_jdk_libs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/desugar_jdk_libs/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-13 07:26:29 +01:00
Dennis Guse 3c3641376d Added power meter infos to READMEs. 2020-11-12 17:12:44 +01:00
Dennis Guse 35f4427aec Merge pull request #444 from OpenTracksApp/cyclingPower
Bluetooth Sensor: add cycling powermeter.
2020-11-12 12:00:13 +01:00
Dennis Guse 5a0cb10838 Bugfix: cadence and speed now can compare when data is not set. 2020-11-11 21:25:56 +01:00
Dennis Guse bf92851c97 Show sensor data's unit. 2020-11-11 21:08:39 +01:00
Dennis Guse 55c45b2050 Bugfix: SensorDataCycling.toString() should use attributes instead of their getters. 2020-11-11 21:08:39 +01:00
Román Martínez d01715444f Adaptive recording layout for sensors (heart rate, cycling cadence and cycling power). 2020-11-11 21:08:39 +01:00
Dennis Guse 634a7a4321 Bluetooth Sensor: add cycling powermeter. 2020-11-11 21:08:39 +01:00
Dennis Guse e5911a79ab Translation: Norwegian used wrong language code.
Introduced in 56aab12110
Fixes #515.
2020-11-11 20:07:59 +01:00
dependabot[bot] a78b3eb66d Bump gradle from 4.1.0 to 4.1.1
Bumps gradle from 4.1.0 to 4.1.1.

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-11 07:53:54 +01:00
Román Martínez 28890abd47 Bugfix: view changed from wrong thread. Fixes #509. 2020-11-09 20:19:08 +01:00
Dennis Guse 0a466d240b Wrap searchQuery in SQLite wildcards. 2020-11-09 18:56:25 +01:00
Dennis Guse 9ef312fc93 Search is now handled by TrackListActivity and MarkerListActivity.
* data is loaded via cursor,
* removed custom ranking (handled in database),
* search text is wrapped with wildcards, and
* search view can be closed by back button.

Fixes #492.
2020-11-09 18:56:25 +01:00
Dennis Guse 56aab12110 Noway's translation was included twice. 2020-11-09 18:55:38 +01:00
Dennis Guse c394448273 Removed Transifex configuration. 2020-11-09 18:41:38 +01:00
Dennis Guse 95671f4927 Translation is now on Weblate. 2020-11-09 18:27:38 +01:00
Dennis Guse 348341204e Shrinking all APK builds without obfuscation.
Fixes #433.
2020-11-09 12:09:37 +01:00
Román Martínez 82f5c127ee Bugfix: NPE in import. Fixes #506. 2020-11-08 14:33:31 +01:00
Dennis Guse dd490f528e Cursors must be closed. 2020-11-08 00:37:01 +01:00
Christoph Wurst 27731319f0 Fix internet access typo in readme
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-07 10:05:41 +01:00
Christoph Wurst 86bfe6d0ce Fix formatting of md lists, remove trailing whitespaces
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-07 09:21:55 +01:00
Christoph Wurst ea8bbb0b36 Update list of tested sensors with Polar H10 and Garmin SPD/CAD
Adds three tested sensors
* "Polar H10" heart rate sensor
* "Garmin Cadence Sensor 2" cadence sensor
* "Garmin Speed Sensor 2" speed sensor

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-07 09:21:55 +01:00
dependabot[bot] c02fdd3bba Bump desugar_jdk_libs from 1.0.10 to 1.1.0
Bumps [desugar_jdk_libs](https://github.com/google/desugar_jdk_libs) from 1.0.10 to 1.1.0.
- [Release notes](https://github.com/google/desugar_jdk_libs/releases)
- [Changelog](https://github.com/google/desugar_jdk_libs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/desugar_jdk_libs/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-04 07:46:08 +01:00
Dennis Guse d16cbe04a5 Release: v3.12.0 2020-11-03 20:11:21 +01:00
Peter Storch 90a8fc898a fix #491 crash export on android 11 2020-11-03 19:57:19 +01:00
Dennis Guse 8d141b1324 TrackListActivity now loads marker count via join rather than a 2nd select.
Fixes #328.
2020-11-01 21:53:11 +01:00
Peter Storch 43e0f33776 optimize multiple track deletion
After #480 got implemented, we can now delete multiple tracks in one go and only cause DB vacuum once.
2020-11-01 21:11:58 +01:00
Román Martínez e4270b983a ExportActivity bugfix: setContentView was missing. 2020-11-01 13:21:53 +01:00
Dennis Guse 0209a90e01 Code cleanup. 2020-11-01 08:38:47 +01:00
Dennis Guse 0f92a37146 Use ViewBinding for activities. 2020-11-01 08:20:26 +01:00
Dennis Guse 9cebb1013c Implement ViewBindings for Fragments. 2020-10-31 22:21:49 +01:00
Dennis Guse 6ac0db7238 Move handling of sensor removal (from settings) in BluetoothConnectionManager.BluetoothConnectionManager. 2020-10-31 22:21:49 +01:00
Dennis Guse 3c1ab01df6 SensorData uses null internally instead of NaN. 2020-10-31 22:21:49 +01:00
Dennis Guse b6850eb46f BluetoothSensorManager: on initiate connect to sensor, report address to be shown on UI.
Fixes #64.
2020-10-31 22:21:49 +01:00
Dennis Guse 08b9cb31fa StatisticsRecordingFragment does not need to check GPS accuracy. 2020-10-31 21:38:57 +01:00
Dennis Guse 9541a92657 Small cleanups and improvements code. 2020-10-31 20:39:37 +01:00
Román Martínez acc2627bde Activity with progress and summary for import all option. Fixes #471.
ErrorListDialog shared by ExportActivity and ImportActivity.
2020-10-31 20:39:37 +01:00
Dennis Guse 48c3695b5d Database enforces foreign key constraints incl. cascading deletes. (#480)
* Database enforces foreign key constraints incl. cascading deletes.
Fixes #317.
2020-10-30 21:26:13 +01:00
Dennis Guse 2b280f050c SharedContentProvider now uses parent ContentProvider directly instead of ContentProviderUtils. 2020-10-30 21:25:41 +01:00
dependabot[bot] 68f34d9682 Bump constraint-layout from 2.0.3 to 2.0.4
Bumps constraint-layout from 2.0.3 to 2.0.4.

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-30 09:07:44 +01:00
Dennis Guse f56820e132 Documentation: added TrackPoint descriptions regarding track segments. 2020-10-29 19:10:39 +01:00
dependabot[bot] 0f5d72f098 Bump constraint-layout from 2.0.2 to 2.0.3
Bumps constraint-layout from 2.0.2 to 2.0.3.

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-28 23:08:14 +01:00
dependabot[bot] accbc5a8ac Bump mockito-android from 3.5.15 to 3.6.0
Bumps [mockito-android](https://github.com/mockito/mockito) from 3.5.15 to 3.6.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.5.15...v3.6.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-27 08:12:20 +01:00
Dennis Guse 0bc9f6a042 Update README_TESTED_SENSORS.md
Fixes #468.
2020-10-26 18:24:42 +01:00
Peter Storch bbb91fedc5 fix #470 Unable to parse kml in kmz 2020-10-22 19:22:46 +02:00
Peter Storch 433ab01ece Track.Id.toString returns string representation of id 2020-10-22 19:17:53 +02:00
Peter Storch 88e1a95da7 fix NPE introduced in #466 2020-10-22 19:08:52 +02:00
Román Martínez d4483819eb ImportActivity intent filters. (#466)
* ImportActivity intent filters.

* add intent_filter to work with Locus and OsmAnd

* extent intent filters

Co-authored-by: Peter Storch <peter.storch@gmail.com>
2020-10-21 22:52:39 +02:00
Román 917b8f4056 Edit texts: select all on focus and capitalize by words/sentences. Fixes #461. 2020-10-20 21:31:43 +02:00
Román 70c1379778 Export All: ask to the user when conflicts (track already exported in the selected directory) and show a summary. Fixes #451. 2020-10-20 12:07:58 +02:00
dependabot[bot] 5a60f40308 Bump mockito-android from 3.5.13 to 3.5.15
Bumps [mockito-android](https://github.com/mockito/mockito) from 3.5.13 to 3.5.15.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.5.13...v3.5.15)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-20 08:23:36 +02:00
Peter Storch df9589697a idea config files with android studio upgrade 2020-10-19 22:42:53 +02:00
Dennis Guse 27443cc716 Updated translations. 2020-10-17 12:45:48 +02:00
Dennis Guse 654be751a7 Theming: day/night mode is defaults to system. 2020-10-16 20:08:12 +02:00
Dennis Guse 3a8f3e46c7 Refactor post-workout export. 2020-10-16 12:23:39 +02:00
thrillfall b270c45691 - add default export directory
- add instant post workout track export
2020-10-16 12:23:39 +02:00
dependabot[bot] 257d8c1276 Bump gradle from 4.0.2 to 4.1.0
Bumps gradle from 4.0.2 to 4.1.0.

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-13 21:41:15 +02:00
Dennis Guse 8521b98f4b Bitcoin addresses are lower case (Bech32). 2020-10-13 21:24:59 +02:00
Dennis Guse eaf655f6e7 Upgrade gradle wrapper to 6.5 2020-10-13 18:15:47 +02:00
Dennis Guse 24c7f3fd7a Add option to donate via Bitcoin. 2020-10-13 18:07:28 +02:00
Román a4bab656e4 New screenshots. 2020-10-11 13:57:39 +02:00
Román 679c1d7e3e Intervals: TrackDataHub instead of ContentProvider. Fixes #453. 2020-10-11 12:12:44 +02:00
Román 0036934fb3 Intervals: added elevation gain and only shows speed or pace, depending on settings. 2020-10-11 12:12:44 +02:00
Román c508747203 Bugfix: import gpx file added heart rate like a speed because a break missing. 2020-10-08 12:39:31 +02:00
dependabot[bot] 0f4c0079d7 Bump gradle from 4.0.1 to 4.0.2
Bumps gradle from 4.0.1 to 4.0.2.

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:55:35 +02:00
dependabot[bot] 9e6bb1c511 Bump constraint-layout from 2.0.1 to 2.0.2
Bumps constraint-layout from 2.0.1 to 2.0.2.

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:55:17 +02:00
Dennis Guse a42bdf32e1 Release: v3.11.1 2020-10-06 08:16:58 +02:00
Dennis Guse c29d69b44d Cleanup. 2020-10-05 22:59:21 +02:00
Román 547b1d07bd Bugfix: interval stats announced incorrectly because an error in last interval computing. Fixes #443. 2020-10-05 20:08:07 +02:00
Dennis Guse 22a1dfd354 README: removed link to Maps.ME due to the amount of embedded trackers. 2020-10-04 12:51:14 +02:00
Dennis Guse be81e758c6 License: use non-Markdown, so Github-API identifies it. 2020-09-26 23:16:19 +02:00
Dennis Guse b3117e6410 Release: v3.11.0 2020-09-26 20:23:32 +02:00
Dennis Guse 47ab109c2b F-Droid now signs APKs with v2, so installing on Android 11 works.
More info: #421
This reverts commit ee22fd8e
2020-09-26 19:56:22 +02:00
Dennis Guse bc04efbaac Bugfix: for export all write permissions are required.
Android 11 enforces this (and it is good practice).
Fixes #439.
2020-09-26 19:52:48 +02:00
Román fbb9d21e73 TrackRecordingActivity keeps Track.Id value instead of track object. Every time the track is needed it gets it. Fixes #435. 2020-09-26 16:47:51 +02:00
dependabot[bot] f5308e4287 Bump mockito-android from 3.5.11 to 3.5.13
Bumps [mockito-android](https://github.com/mockito/mockito) from 3.5.11 to 3.5.13.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.5.11...v3.5.13)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-25 18:20:32 +02:00
Dennis Guse 15b5920e3b README: add F-Droid version shield 2020-09-25 12:37:58 +02:00
Dennis Guse d09aaab398 Theming: import/export finished dialog needs to be AndroidX. 2020-09-24 22:45:20 +02:00
pappapisshu f7008e2362 Update strings.xml
Fixed italian translation.
2020-09-24 17:16:54 +02:00
Dennis Guse e939778beb Refactor: use marker instead of waypoint.
Fixes #389.
2020-09-23 17:16:34 +02:00
Dennis Guse 8643b50bd1 Bugfix: application context does not provide access to theme attributes. 2020-09-23 12:12:34 +02:00
Dennis Guse 74e42525d4 Cleanup. 2020-09-23 08:11:10 +02:00
Dennis Guse 833a387574 Theming: splashscreen uses dark background color. 2020-09-23 08:05:40 +02:00
Dennis Guse e574c67ad6 Theming: activity icons are now in textColorPrimary.
And replaced spinner in StatisticsRecordedFragment.
2020-09-23 07:36:15 +02:00
Dennis Guse ce38d5e891 Theming: define colorAccent. 2020-09-23 07:36:15 +02:00
Dennis Guse 3a44da4a9d Theming: stats labels use color accent. 2020-09-23 07:36:15 +02:00
Dennis Guse eba9106db5 Theming: delete dialog needs to be Androidx for proper theming. 2020-09-23 07:36:15 +02:00
Dennis Guse 4501226562 Theming: reduce font size of lists first line. 2020-09-23 07:36:15 +02:00
Dennis Guse b974193564 Theming: delete dialog uses delete icon. 2020-09-23 07:36:15 +02:00
Dennis Guse 0b3e447258 Theming: charts use theme text colors. 2020-09-23 07:36:15 +02:00
Dennis Guse 9908cc02a2 Theming: added color.xml for night styling. 2020-09-23 07:36:15 +02:00
Dennis Guse 4e67011d7c Theming: style selected list items with transparent color. 2020-09-23 07:36:15 +02:00
Dennis Guse 5f93c0bab3 Theming: tabs use default indicator color. 2020-09-23 07:36:15 +02:00
Dennis Guse caec5e7c45 Theming: chart use default design background color. 2020-09-23 07:36:15 +02:00
Dennis Guse 240cb4b363 Theming: chart colors extracted. 2020-09-23 07:36:15 +02:00
Dennis Guse 91e8eb66b1 Theming: chart text is now rendered as FILL_AND_STROKE. 2020-09-23 07:36:15 +02:00
Dennis Guse 27bd69ec62 Code cleanup. 2020-09-23 07:36:15 +02:00
Dennis Guse 553fd39e21 Theming: make SplashScreen fullscreen. 2020-09-23 07:36:15 +02:00
Dennis Guse 733ee1c6e6 Theming: move TrackEdit to material design text fields. 2020-09-23 07:36:15 +02:00
Dennis Guse ef61c9597d Theming: activity chooser matches parent height. 2020-09-23 07:36:15 +02:00
Dennis Guse e874af791e Theming: removed all custom modifications to Holo theme. 2020-09-23 07:36:15 +02:00
Dennis Guse a4b2bb1aa0 Theming: tint all icons with colorControlNormal. 2020-09-23 07:36:15 +02:00
Dennis Guse bc9b20ffc8 Theming: marker detail uses default background. 2020-09-23 07:36:15 +02:00
Dennis Guse 6f212328a1 Theming: merged edit buttons into layout. 2020-09-23 07:36:15 +02:00
Dennis Guse a68cde7ac9 Theming: listView main item is now TextLarge. 2020-09-23 07:36:15 +02:00
Dennis Guse 5cab331058 Theming: removed custom spinner style. 2020-09-23 07:36:15 +02:00
Dennis Guse 6d25a10abd Theming: use default text color. 2020-09-23 07:36:15 +02:00
Dennis Guse d2516947f2 Theming: removed custom radio button style - use Material design. 2020-09-23 07:36:15 +02:00
Dennis Guse 4150d060ee Theming: enable day/night mode incl. app-wide setting. 2020-09-23 07:36:15 +02:00
Dennis Guse 1688076457 Theming: use AppCompat themes instead of Holo. 2020-09-23 07:36:15 +02:00
Román 5c1f669b2b Bugfix: spinner adapter needed notifyDataSetChanged to reload intervals with unit when user change from km to mi and the other way around. 2020-09-21 19:12:57 +02:00
Dennis Guse cc1e080ce1 Interval statistics: show unit in dropdown. 2020-09-20 19:05:32 +02:00
Dennis Guse 0dfd31a308 Code cleanup via Android Studio analyze.
Notably change: TrackPoint's copy constructor missed to copy the elevationGain.
2020-09-20 18:46:05 +02:00
dependabot[bot] bd13535d3c Bump mockito-android from 3.5.10 to 3.5.11
Bumps [mockito-android](https://github.com/mockito/mockito) from 3.5.10 to 3.5.11.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.5.10...v3.5.11)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-18 08:07:00 +02:00
Dennis Guse 27386bb4f0 Localization: update via Transifex CLI. 2020-09-17 23:44:37 +02:00
Dennis Guse c6c07f03bf Localization: add configuration for Transifex CLI. 2020-09-17 23:43:28 +02:00
Dennis Guse b0ad08f7c5 Release: v3.10.0 2020-09-14 18:38:48 +02:00
Román d1957331b8 Intervals refactoring: added stack mode to the intervals adapter with two possibilities: stack from top and stack from bottom.
Stack from top for recorded intervals (the first lap in the top).
Stack from bottom for recording intervals (the last lap in the top).
2020-09-14 18:31:12 +02:00
Román ffedc04777 Intervals refactoring: avoid duplication code: IntervalsRecordingFragment is a version of IntervalsFragment. 2020-09-14 18:31:12 +02:00
Román 684762db58 Intervals refactoring: ListView instead of LinearLayout with a list of views. 2020-09-14 18:31:12 +02:00
thrillfall 5a44da3fb0 extract logic for creating DocumentFile for export to align naming 2020-09-14 17:25:29 +02:00
Dennis Guse 88cf46d999 Bugfix: another missed toString() in the id-refactoring. 2020-09-14 12:29:31 +02:00
Román 906b9413d1 Improved and simplified lap time/speed announcement message. 2020-09-13 19:30:17 +02:00
Dennis Guse 060c4f1529 Theming: add a SplashScreen for TrackListActivity. 2020-09-12 00:03:42 +02:00
Dennis Guse 7902aea849 Disable flacky test. 2020-09-12 00:01:56 +02:00
Sudeep Duggal ee22fd8ee8 Added workaround for allowing Android 11 install with only apk v1 signature 2020-09-10 08:28:55 +02:00
Román a6e275f8aa Several hidden bugfixes around Track.Id 2020-09-09 17:53:07 +02:00
Román a61468d600 Bugfix: String.valueOf doesn't work with Track.Id. Fixes #422. 2020-09-09 17:53:07 +02:00
thrillfall 78c26cb669 unify export filename logic 2020-09-09 17:50:00 +02:00
Dennis Guse 0d493c410e Merge branch 'barometer#10' into main 2020-09-06 22:34:54 +02:00
Dennis Guse 80dbbbc1ed Release: v3.9.5 2020-09-06 19:51:34 +02:00
Dennis Guse 81e8872a11 Added script for creating releases. 2020-09-06 19:49:42 +02:00
Román 6e1aba6fa0 Added barriers in stats recorded layout and stats recording layout. 2020-09-06 18:17:46 +02:00
Román 4220c62ac0 Bugfix: interval recording fragment has to keep select interval. 2020-09-06 12:21:39 +02:00
Dennis Guse 4b73567075 Bugfix: ClassCastException of Marker.Id 2020-09-06 08:06:29 +02:00
Dennis Guse fdff0d255a Autoformated drawables. 2020-09-06 00:09:39 +02:00
Dennis Guse e956cf14c4 Present speed only with one fractional digit. 2020-09-05 20:53:55 +02:00
Román a1646e1b76 Bugfix: bad equal comparison between Track.Id objects. 2020-09-05 15:46:49 +02:00
Dennis Guse 5099118dd7 Elevation gain: make it optional as Float - and if null, then the UI just shows "-".
In TrackStatistics the elevation gain is now nullable.
2020-09-05 12:39:23 +02:00
Dennis Guse 6845ce4984 Elevation gain: make it optional as Float.
So if no sensor data is provided, it is not stored in the database and not exported.
2020-09-05 12:39:23 +02:00
Dennis Guse e0d1ad4b52 Squash: fixed tests. 2020-09-05 12:39:23 +02:00
Dennis Guse 04b8d0f4a8 Import/Export: elevation gain per TrackPoint. 2020-09-05 12:39:23 +02:00
Román fe3bf61acb Squash: load TrackPoint elevationGain. 2020-09-05 12:39:23 +02:00
Román 577b9b4635 Alter table trackpoints: added elevation gain to the trackpoints table. 2020-09-05 12:39:23 +02:00
Dennis Guse 4b7de188fd Elevation gain adheres to visibility setting. 2020-09-05 12:39:23 +02:00
Román 3bfb212dc9 Bugfix: reset elevation every time track point is inserted. 2020-09-05 12:39:22 +02:00
Dennis Guse be7eb41cf3 Bugfix: previous total elevation gain was added twice. 2020-09-05 12:39:22 +02:00
Dennis Guse c7db4f528e Elevation gain: apply exponential smoothing and limit changes (defined change diff per sensor value). 2020-09-05 12:39:22 +02:00
Dennis Guse 8a14bc46f6 Implement elevation gain via barometer. 2020-09-05 12:39:22 +02:00
Dennis Guse 01ee1a1e49 Renamed DoubleBuffer to DoubleRingBuffer. 2020-09-05 12:39:22 +02:00
Dennis Guse 9d6c9676ab Refactoring to marker: content-package and fragments.
#389
2020-09-05 10:37:41 +02:00
Dennis Guse 19d8563a76 Refactoring to marker: TrackRecordingService.
#389
2020-09-05 10:20:16 +02:00
Dennis Guse 74e09e1fa9 Refactoring to marker: data class and ContentProviderUtils.
#389
2020-09-05 10:20:16 +02:00
Román 6533e3e170 Recording intervals received a null trackId because trackId is created in a Runnable.
Unit changed needs refreshing the intervals.
Fixes #406.
2020-09-05 10:18:01 +02:00
Dennis Guse bfeca771f8 Release v3.9.4 2020-09-05 01:41:01 +02:00
Dennis Guse f128111650 Code cleanup. 2020-09-05 01:19:59 +02:00
Dennis Guse 38fadda762 Bugfix: show on map via GPX/KML/KMZ was failing.
We were sending the trackId as intent extra (actually unused) and this trackId could not be unparceled.
Fixes #411.
2020-09-05 01:19:59 +02:00
Dennis Guse d6d40b01e6 Refactoring.
Also fixes #406.
2020-09-05 01:17:40 +02:00
dependabot[bot] bc051f5d81 Bump mockito-android from 3.5.9 to 3.5.10
Bumps [mockito-android](https://github.com/mockito/mockito) from 3.5.9 to 3.5.10.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.5.9...v3.5.10)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-04 23:45:30 +02:00
dependabot[bot] 39bf2190a1 Bump material from 1.2.0 to 1.2.1
Bumps [material](https://github.com/material-components/material-components-android) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/material-components/material-components-android/releases)
- [Commits](https://github.com/material-components/material-components-android/compare/1.2.0...1.2.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-03 16:55:31 +02:00
Román b88f81726b Bugfix: location handler didn't remove updates. Fixes #403. 2020-09-03 15:32:44 +02:00
Dennis Guse 24e6cdec62 Interval Stats: fixed NPE introduced in 25ef0ecad1.
Includes some refactoring.
2020-09-02 23:12:52 +02:00
Dennis Guse 951671b2f3 Update PULL_REQUEST_TEMPLATE.md 2020-09-02 22:20:50 +02:00
dependabot[bot] 21e30545a0 Bump mockito-android from 3.4.6 to 3.5.9
Bumps [mockito-android](https://github.com/mockito/mockito) from 3.4.6 to 3.5.9.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.4.6...v3.5.9)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-02 19:26:45 +02:00
Dennis Guse 946edb7e16 Update CONTRIBUTING.md 2020-09-02 19:24:33 +02:00
Román 89c44af374 Recorded stats: natural order for intervals. 2020-09-02 14:32:32 +02:00
Dennis Guse faad451e22 Added contribution guidelines 2020-09-02 08:10:55 +02:00
Dennis Guse 25ef0ecad1 Interval Stats: use a tab for recorded tracks as well. 2020-09-02 07:52:33 +02:00
Román efa6caca66 New style for spinner with text. 2020-09-02 07:52:33 +02:00
Román 5be4c107f4 Announcement: while recording report current interval pace or speed.
Fixes #134.
2020-09-02 07:52:33 +02:00
Román 65f42dd3e5 Interval Stats: improve code and fixed some UI issues. 2020-09-02 07:52:33 +02:00
Román 287d246777 Interval Stats: track's id it's not long anymore. 2020-09-02 07:52:33 +02:00
Román d56f652d0a Interval stats: while user is recording a track intervals are refreshed every 5 seconds.
Interval stats: completed the list of split intervals: 1, 2, 3, 4, 5, 10, 20 or 50 km or mi.
Fixes #87.
2020-09-02 07:52:33 +02:00
Román 1f1ef4445f Interval stats: added IntervalStatisticsTest. 2020-09-02 07:52:33 +02:00
Román 22a669a573 Interval stats: added a new tab in TrackRecordingActivity that shows the intervals on live. 2020-09-02 07:52:33 +02:00
Román f55cce5614 Interval stats: improve code. 2020-09-02 07:52:33 +02:00
Román a6c3cf1c28 Interval statistics: listen preferred units change (metric/imperial) and recreate intervals. 2020-09-02 07:52:33 +02:00
Román cbc803d038 Interval statistics: retain interval value after change orientation and recreation. 2020-09-02 07:52:33 +02:00
Román a8cefcd0fd Interval statistics: show accumulate in distance column. 2020-09-02 07:52:33 +02:00
Román 2b95dbab22 Adjusted intervals. 2020-09-02 07:52:33 +02:00
Román 7a923a947e Added intervals in StatisticsRecordedFragment with distance, speed and pace for all activity types.
Users can select the length of the interval (in a spinner with several options).
The intervals will be in km or mi depending on settings.
2020-09-02 07:52:33 +02:00
Román 19e35a7609 StatisticsRecordedFragment doesn't need TrackDataHub.
TrackRecordedActivity saves Track object instead of track's id.
2020-09-02 07:52:33 +02:00
Dennis Guse b8088169ee Settings: animate the Bluetooth icon.
Fixes #314.
2020-09-01 22:19:19 +02:00
Román a5594fbb7a Release v3.9.3 2020-08-31 12:47:33 +02:00
Román a733d87c37 Bugfix: export all failed trying to convert to string the Track.Id. 2020-08-31 12:25:58 +02:00
Dennis Guse 79d8ba9ef8 Configure Dependabot for Gradle and Github actions 2020-08-30 23:28:50 +02:00
Dennis Guse 3ee7d4504c Release v3.9.2 2020-08-30 23:05:51 +02:00
Dennis Guse 579509aad8 Upgrade dependencies. 2020-08-30 19:01:27 +02:00
Peter Storch 24ff73ab06 Fix force close on stop button for older devices (#393)
* correct thread handling in ButtonDelay

Discovered in #390 for devices with API Level 25. Not fixing the whole issue, but a first step.

* fix #390 crash when stopping for older devices

The VectorDrawable ic_button_stop.xml referenced from withing the AnimatedVectorDrawable ic_button_stop_anim.xml was a problem for older devices. Now the VectorDrawable is expanded (duplicated) inside the AnimatedVectorDrawable. Now it is working. Even with the animation.
2020-08-27 08:11:10 +02:00
Dennis Guse 60d5e7e515 Reset recordingTrackId on application Startup.
This is necessary if the TrackRecordingService crashed.
2020-08-23 17:36:30 +02:00
Dennis Guse c610758ae1 Move CursorLoader to ContentProviderUtils. 2020-08-23 00:09:02 +02:00
Dennis Guse 17d2755844 Bugfix: MarkerDetailActivity: compare waypointId properly using equals.
Introduced in bcbaf4985a
2020-08-23 00:08:58 +02:00
Dennis Guse 0ab14e0f3d Implement Track.Id and Waypoint.Id (with tests).
Fixes #276.
2020-08-22 23:18:48 +02:00
Dennis Guse bcbaf4985a Implement Track.Id and Waypoint.Id (without tests).
Fixes #276.
2020-08-22 23:18:48 +02:00
Dennis Guse b2e8713db0 Desugar: removed manual date parsing on API26. 2020-08-21 07:01:16 +02:00
Dennis Guse af60e1fdfb Enable Google's desugar plugin (enables stream/map etc.).
Fixes  #347.
2020-08-20 18:31:47 +02:00
Román 75043325ff Fix comment. 2020-08-19 22:04:40 +02:00
Dennis Guse 337e5b9e4d Release v3.9.1 2020-08-19 18:13:10 +02:00
Román 1ff986f1e6 Gps Status: bugfixes.
Bugfix 1: race condition issue fixed with a flag.
Bugfix 2: location time issue fixed setting the time every time a location is received.
2020-08-19 14:02:47 +02:00
thrillfall 6412bb9fcd remove useless parameter 2020-08-18 16:37:44 +02:00
thrillfall 8425997c29 add overload for exporter that takes single track 2020-08-18 16:37:44 +02:00
thrillfall f4b585b830 do not pass complete track data to exporter factory method just to knwo if there is more then one track to export 2020-08-18 16:37:44 +02:00
thrillfall 47c259fa9a move tracks array from class state to method argument 2020-08-18 16:37:44 +02:00
thrillfall 80208e3188 move condition for writing multitrack begin and end outside of methods 2020-08-18 16:37:44 +02:00
thrillfall 2655d3e773 fix decorator TrackExporter interface 2020-08-18 16:37:44 +02:00
Dennis Guse ca8814c478 Release v3.9.0 2020-08-16 20:37:38 +02:00
Dennis Guse 6a397922d2 Cleanup using IntelliJ's analyze code. 2020-08-16 20:13:09 +02:00
Dennis Guse ee062f8a38 Cleanup. 2020-08-16 20:13:09 +02:00
Dennis Guse c8bdf8e641 Wheel circumference is now a textfield accepting input as mm.
Fixes #278.
2020-08-16 20:12:20 +02:00
Dennis Guse 0b2bd6899f Pull request template: add note about adding new libraries. 2020-08-16 12:49:50 +02:00
Román 32d811b46e Bugfix: NPE fixed because listeners/client were null in some cases.
TrackRecordingService: before destroying it sends GPS Status NONE to all listeners.
Cleanup Logs used for debugging.
2020-08-16 07:27:44 +02:00
Román 80a8017a18 GPS Status: animation icon for ready but not fixed status (GPS bad signal). 2020-08-16 07:27:44 +02:00
Román 2b90bfd054 ServiceUtils deleted because it doesn't need anymore.
It uses gps status received from service.
2020-08-16 07:27:44 +02:00
Román 8cb6d63abe Cleanup and rename. 2020-08-16 07:27:44 +02:00
Román 9837680540 GPS Status: TrackListActivity uses the value of gps status from the service to select appropiate icon. 2020-08-16 07:27:44 +02:00
Román e2b741dd08 Added GPS Status to the service so activities can access to the GPS Status. 2020-08-16 07:27:44 +02:00
Peter Storch 18546fd3cc fix #241 stop button lock (#362)
* fix #241 stop button lock

Adds a delay and animation to the stop and pause buttons

- short vibration when starting to push the buttons
- long vibration when action was executed
- Toast to show "Hold to stop/pause recording"
2020-08-15 21:50:06 +02:00
Dennis Guse a87d2e5b09 Bugfix: prevent NPE.
Fixes #374.
2020-08-15 21:23:14 +02:00
Dennis Guse 3ae30e2468 Settings: do prevent import of already existing tracks by default. 2020-08-15 21:12:10 +02:00
Dennis Guse f821c8ba86 Fixed tests. 2020-08-15 21:12:10 +02:00
Dennis Guse 5c96774e79 ContentProvider can now lookup tracks via UUID. 2020-08-15 21:12:10 +02:00
Dennis Guse c26a5edc03 Make track import behavior on duplicate UUID configurable (default: import with a new UUID). 2020-08-15 21:12:10 +02:00
Dennis Guse f8afa9dbad Import/export track UUID (necessary for synchronization).
If a track with a UUID is presented in OpenTracks, it cannot be imported again (enforced by database constraint).
Fixes #307.
2020-08-15 21:12:10 +02:00
Dennis Guse db1167ead5 Find track by UUID. 2020-08-15 21:12:10 +02:00
Dennis Guse 0008673ab0 Add class diagram for export/import code. 2020-08-15 21:12:10 +02:00
Dennis Guse 59d4bfa4ac Export KML: report OpenTracks as generator. 2020-08-15 21:12:10 +02:00
Dennis Guse 04f146c641 Bugfix: formatting of pace was not formatted correctly (e.g., 4:60).
Fixes #370.
2020-08-15 20:19:46 +02:00
Dennis Guse ea97ff65df MarkerEditActivity: fixed NPE on orientation change. 2020-08-15 09:12:19 +02:00
Peter Storch 9827b3fc92 fix #371 mountain bike icon not shown 2020-08-12 20:53:58 +02:00
Peter Storch a35ed2e9b1 move debug resources into debug and cleanup build.gradle 2020-08-11 21:42:38 +02:00
Dennis Guse 26d2a861d7 Add missing bluetooth icon (SVG). 2020-08-10 16:31:38 +02:00
Dennis Guse 389ed9b362 Update dependencies. 2020-08-10 15:52:52 +02:00
Dennis Guse c5e5e862ad App launcher icon: moved arrow slightly too the left. 2020-08-10 15:52:11 +02:00
Dennis Guse b676fd6614 SearchEngineTest: do not use production database.
Partly fixes #143.
2020-08-10 15:39:53 +02:00
Peter Storch 0194efafbc added more .idea files to gitignore 2020-08-08 12:41:50 +02:00
Peter Storch 9ba1357dbb added new activity types (#360)
* added new activity types

- escooter
- inline_skating
- motorbike
- skate_boarding
- skiing
- snowboarding
- climbing
- sailing
- mtb
2020-08-08 12:38:51 +02:00
Dennis Guse 64b66a0c57 Github sponsor button points to OpenTracks-team (liberapay). 2020-08-07 16:15:36 +02:00
Dennis Guse 7787dae9f6 Bluetooth preference use vector icon. 2020-08-06 12:34:01 +02:00
Dennis Guse d0ca06f964 Switch Liberapay to separate OpenTracks-team. 2020-08-05 17:19:01 +02:00
Dennis Guse f7d1a53622 File open intent-filters now expose host (required by lint). 2020-08-05 12:49:30 +02:00
Dennis Guse 5f13d027af CI: CodeQL use custom build command. 2020-08-04 22:58:57 +02:00
Dennis Guse cf45a8079c Simplified getting the BluetoothAdapter. 2020-08-04 22:56:35 +02:00
Dennis Guse 9e553cc900 CI: enable CodeQL 2020-08-04 22:49:14 +02:00
transifex-integration[bot] 1f3466e4b2 Translate /src/main/res/values/strings.xml in eu
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'eu' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:49:12 +02:00
transifex-integration[bot] c813934bcb Translate /src/main/res/values/strings.xml in cs
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'cs' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:48:49 +02:00
transifex-integration[bot] 480202853d Translate /src/main/res/values/strings.xml in da
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'da' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:48:29 +02:00
transifex-integration[bot] 4c58bd81bb Translate /src/main/res/values/strings.xml in nl
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'nl' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:48:12 +02:00
transifex-integration[bot] 9f9b6966a8 Translate /src/main/res/values/strings.xml in et
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'et' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:47:41 +02:00
transifex-integration[bot] 52c97b63d5 Translate /src/main/res/values/strings.xml in fi
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'fi' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:47:24 +02:00
transifex-integration[bot] eee18ec7a4 Translate /src/main/res/values/strings.xml in fr
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'fr' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:46:53 +02:00
transifex-integration[bot] 4d444046de Translate /src/main/res/values/strings.xml in gl
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'gl' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:46:34 +02:00
transifex-integration[bot] 4d5e31b231 Translate /src/main/res/values/strings.xml in de
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'de' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:46:10 +02:00
transifex-integration[bot] 8544f7d20a Translate /src/main/res/values/strings.xml in es
at least 95% translated updated for the source file '/src/main/res/values/strings.xml'
on the 'es' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-08-03 21:45:16 +02:00
Dennis Guse 1feb5cbb65 Release v3.8.1 2020-08-03 08:03:13 +02:00
Dennis Guse 1d2fde6e69 DashboardAPI: report if track is recording and start Dashboard on same task.
Necessary for Picture-in-Picture mode.
2020-08-03 07:59:17 +02:00
Dennis Guse 20423121ee Dashboard API: only forward fullscreen setting, when recording. 2020-08-03 07:59:17 +02:00
Dennis Guse ebf7b0a0c3 TrackRecordingActivity: added setting for fullscreen.
Fixes #342.
2020-08-03 07:59:17 +02:00
Dennis Guse 1189a07794 TrackController: center time. 2020-08-02 16:36:03 +02:00
Román 63e9041922 Orientation change when edit marker has to update photo uri in waypoint for delete button update (hide/show). 2020-07-31 20:29:56 +02:00
Dennis Guse 699be450b0 Fixed too optimistic intent-filter for imports.
Fixes #340.
2020-07-29 23:19:32 +02:00
Dennis Guse 66b175c56c Updated dependencies. 2020-07-26 17:39:30 +02:00
Dennis Guse 81a7aca4a0 Release v3.8.0 2020-07-24 22:22:48 +02:00
Dennis Guse 065f42fbef GPX import/export: speed via TrackPointExtension/v2.
Fixed data type for heartrate/speed (no decimals) allowed.
Fixes #335.
Fixes #181.

GPXTrackWriter: set Trackpointv2 header correctly and export time in correct sequence.
2020-07-24 22:06:58 +02:00
ronajon c92371b36a GPX import/export: add heartrate and cadence via TrackPointExtension/v1. 2020-07-24 22:06:58 +02:00
Dennis Guse 97c46183c3 TrackRecordingServiceConnection: always bind (and start) the TrackRecordingService.
Seemed to be a memory optimization.
2020-07-21 19:44:39 +02:00
Dennis Guse c02b8fab53 HandlerServer: use executor service to send data to TrackRecordingService.
Fixes #329.
2020-07-21 19:43:51 +02:00
Dennis Guse 6540913d59 Moved R.string.stats_unit_key initialization into Startup. 2020-07-20 20:46:41 +02:00
Dennis Guse b70c3be5af Cleanup: static code analysis using AndroidStudio. 2020-07-20 20:05:45 +02:00
Dennis Guse 461f1c246b MarkerEditActivity: do not overwrite new photoUri with previous one. (#332)
Fixes #330.

Tested and it works 👍
2020-07-20 19:30:23 +02:00
Dennis Guse 6d091dfa81 Fixes NPE on MarkerEditActivity when taking a photo and trigger an orientation change. (#327)
Fixes #325.
2020-07-18 22:52:19 +02:00
Peter Storch 97ad6bc2f8 expose waypoints to dashboard
Necessary for https://github.com/OpenTracksApp/OSMDashboard/issues/48
2020-07-18 18:56:53 +02:00
Dennis Guse 93ee8a53ed Import from intent: also match file suffix as fallback. 2020-07-18 18:55:30 +02:00
Dennis Guse bf9b6d6627 Import: individual files chosen by an external app. 2020-07-18 18:55:30 +02:00
Dennis Guse 5f637952aa Replaced blue pushpin icon (png) with with orange icon (svg).
Fixes #115.
2020-07-18 18:51:34 +02:00
Román Martínez 17de8cea6f Service refactoring: move location management to the LocationHandle.
Tests refactoring: location and service tests re-worked.
2020-07-17 12:29:30 +02:00
Deus Figendi afea79476f united the gradiants in ic_marker_orange_pushpin 2020-07-16 22:57:44 +02:00
Deus Figendi 7215a2def0 Added an orange version of the ic_marker pushpin 2020-07-16 22:57:44 +02:00
Román b8d2d14d68 Preferred rate is used for aggregated stats. Fixes #321.
Lambda expression for Observer.
2020-07-15 21:43:55 +02:00
Dennis Guse a2b53c75f4 Release v3.7.6 2020-07-13 18:47:50 +02:00
Dennis Guse 7a5f69d3a5 Settings: default export format is now KMZ incl. data and pictures. 2020-07-13 18:19:34 +02:00
Dennis Guse 7fd9893560 TrackDeleteActivity: keep a wakelock while deletion is ongoing. 2020-07-13 18:19:34 +02:00
Román f209031df0 Pass extra TrackFileFormat enum like a Serializable instead of String (with String resulted in Null after get extra). 2020-07-13 18:19:34 +02:00
Dennis Guse 2dbab929ac Export: replaced async task with thread.
Almost identical to the import.
2020-07-13 18:19:34 +02:00
Dennis Guse e9eb764d12 Import: split ImportActivity into fragments.
The fragements keep the state while the activity is re-created (e.g., orientation change).
2020-07-13 18:19:34 +02:00
Dennis Guse 41a4a5527a Import: replaced async task with thread.
Extracted directory chooser into a separate activity.
2020-07-13 18:19:34 +02:00
Dennis Guse 4ded3c6bc8 TrackDelete: use a Thread and always require TrackIds. 2020-07-08 08:25:36 +02:00
Dennis Guse 51e573e475 TrackDelete: hide progress bar before finishing and add custom animations. 2020-07-08 08:25:36 +02:00
Dennis Guse 98c3169929 Track deletion UI: code cleanup. 2020-07-08 08:25:36 +02:00
Dennis Guse ff65a4d04f Track deletion shows an infinite progressbar.
Fixes #242.
2020-07-08 08:25:36 +02:00
Dennis Guse 278f49dec8 TrackRecordingActivity: removed start/resume toast message. 2020-07-07 18:13:37 +02:00
Dennis Guse d444e1ca3c TrackRecordingActivity: recreate activity properly. 2020-07-07 18:13:37 +02:00
Dennis Guse 13e07696b9 Re-implemented landscape mode.
Fixes #32.
2020-07-07 18:13:37 +02:00
Román Martínez 23c3a4d651 Import/Export speed in GPX and KML files. (#306)
Import/Export speed in GPX and KML files. Fixes #300.
2020-06-30 14:39:44 +02:00
Dennis Guse c9869bab0e Generate UUID for each track (necessary for synchronization).
Fixes #294.
2020-06-30 12:39:30 +02:00
Dennis Guse ecdb509371 Export/import test now verifies the TrackPoints. 2020-06-22 21:56:22 +02:00
transifex-integration[bot] de376a84f8 Apply translations in fr
translation completed for the source file '/fastlane/metadata/android/en-US/short_description.txt'
on the 'fr' language.
2020-06-21 18:19:11 +02:00
transifex-integration[bot] 9abd8bcaa6 Apply translations in de
translation completed for the source file '/fastlane/metadata/android/en-US/short_description.txt'
on the 'de' language.
2020-06-21 18:18:58 +02:00
Román Martínez 8ddadb8e6d Aggregated statistics: updated PlantUML and handle empty list. (#296) 2020-06-20 19:02:02 +02:00
transifex-integration[bot] 924ef3313e Translate /src/main/res/values/strings.xml in nl
translation completed for the source file '/src/main/res/values/strings.xml'
on the 'nl' language.
2020-06-16 19:33:52 +02:00
Dennis Guse 8cb68a6e64 Migrate to default branch main. 2020-06-15 12:10:26 +02:00
Dennis Guse 23f47f10f8 Release v3.7.5 2020-06-14 20:09:27 +02:00
Román Martínez 251fa17487 Merge pull request #271 from OpenTracksApp/all_statistics#112
Aggregated statistics by activity type.
2020-06-14 20:03:29 +02:00
Román bae3373fe9 Aggregated statistics by activity type. Fixes #112. 2020-06-14 19:57:07 +02:00
Dennis Guse 0a685a66e3 Added list of tested Bluetooth LE sensors.
Fixes #202.
2020-06-14 11:58:45 +02:00
Dennis Guse 5ca9ca857a Cleanup. 2020-06-13 23:07:58 +02:00
Dennis Guse d9dfa6d746 Dashboard API: add data transfer as GPX and removed unnecessary IntentChooser. 2020-06-13 17:56:59 +02:00
Dennis Guse 3a5220546e Dashboard API: fallback to "open as KMZ" implemented as proxy activity.
We are not allowed to query for installed packages as of Android R (API 30).
2020-06-13 17:56:59 +02:00
Dennis Guse 047d5c2340 Manifest reordered to fix warning. 2020-06-13 17:56:59 +02:00
Dennis Guse 725c21c0a1 Bugfix: parse URI with trackIds correctly. 2020-06-13 17:56:59 +02:00
Dennis Guse 7939e39fc1 Go for Android R (API level 30). 2020-06-13 17:56:59 +02:00
Dennis Guse a133bd8f9e Bugfix: adaptive icon was too large.
We now use the same as OSMDashboard.
Thanks Peter.
2020-06-13 00:08:00 +02:00
transifex-integration[bot] 1f9790cba8 Translate /src/main/res/values/strings.xml in gl
translation completed for the source file '/src/main/res/values/strings.xml'
on the 'gl' language.
2020-06-10 22:20:23 +02:00
Dennis Guse a3ba1e1490 Cleanup: use lambda instead of runnable. 2020-06-09 23:01:09 +02:00
Dennis Guse accb30152f Translations fixed. 2020-06-09 19:58:23 +02:00
Dennis Guse dc7daa6e8c App icon: be complaint with Android requirements. (#253)
Fixes #121.
2020-06-09 19:37:47 +02:00
Dennis Guse 1d8e788d53 Documentation: add internal data flow. 2020-06-09 19:36:54 +02:00
Dennis Guse 568b908b26 Removed unused strings. 2020-06-09 19:35:57 +02:00
transifex-integration[bot] 3ab63adb34 Translate '/src/main/res/values/strings.xml' in 'de' [manual sync] (#269)
* Translate /src/main/res/values/strings.xml in de

at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'de' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2020-06-08 23:42:16 +02:00
transifex-integration[bot] 91692f345e Translate /src/main/res/values/strings.xml in fr
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'fr' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:32:34 +02:00
transifex-integration[bot] dbdb98a682 Translate /src/main/res/values/strings.xml in eu
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'eu' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:32:21 +02:00
transifex-integration[bot] df66cd5753 Translate /src/main/res/values/strings.xml in cs
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'cs' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:31:19 +02:00
transifex-integration[bot] 6e39dd37f8 Translate /src/main/res/values/strings.xml in da
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'da' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:31:08 +02:00
transifex-integration[bot] 7212f7be94 Translate /src/main/res/values/strings.xml in nl
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'nl' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:31:00 +02:00
transifex-integration[bot] 77fe494e6c Translate /src/main/res/values/strings.xml in et
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'et' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:30:55 +02:00
transifex-integration[bot] 2f491e8c10 Translate /src/main/res/values/strings.xml in es
at least 95% translated for the source file '/src/main/res/values/strings.xml'
on the 'es' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-06-08 23:30:48 +02:00
Dennis Guse f4fe7b1ab3 Import: convert all failed date parsing into SAXExceptions. 2020-06-08 22:51:01 +02:00
Peter Storch 7e444cbf31 Merge pull request #248 from OpenTracksApp/keep_screen_on_dashboard
forward keep screen on while recording preference to dashboard
2020-06-06 23:12:24 +02:00
Dennis Guse ed6ab9c53c Import: be lenient with missing timezone information.
Fixes #249.
2020-06-06 22:58:02 +02:00
Peter Storch f91ca3154c forward show on lockscreen to dashboard 2020-06-05 20:52:00 +02:00
Peter Storch bbfab1b201 forward keep screen on while recording preference to dashboard 2020-06-05 20:17:24 +02:00
Dennis Guse 1f2e3bcf70 Upgrade to Android Gradle plugin 4.0.0 2020-05-30 20:25:36 +02:00
Dennis Guse d1f3791f97 Release v3.7.4 2020-05-27 08:21:37 +02:00
Román 490b95a001 Merge branch 'split_trackdetail#171' 2020-05-25 13:28:36 +02:00
Román 12e6f03098 Recorded/Recording nested layouts converted to constraint layout. Fixes #15. 2020-05-25 13:06:36 +02:00
Román d86f42e2e9 Animation between recording and recorded activities. Update PlantUML with new changes. 2020-05-25 13:06:17 +02:00
Román 360d59d3de Split detail and record to simplify the code. Fixes #171. 2020-05-25 13:06:17 +02:00
Dennis Guse b617420290 Export: do not show progress of exported TrackPoints.
Only the overall number of tracks is shown now (similar to import).
2020-05-24 10:58:43 +02:00
Dennis Guse 53b267150b Export/Import: TrackFileFormat is now selected via settings only. 2020-05-24 10:58:43 +02:00
Dennis Guse 0dfd55ed52 Settings: added default sharing track file format.
Fixes #225.
2020-05-24 10:58:43 +02:00
Román daabd5381d Links in help and about are clickable. Also added scroll in about activity. Fixes #232. 2020-05-22 16:01:33 +02:00
Dennis Guse a842129e37 Bugfix: wheel circumference was not stored in correct preference key. 2020-05-13 21:46:48 +02:00
Dennis Guse e8b9c2bbc3 Release v3.7.3 2020-05-13 21:03:52 +02:00
Dennis Guse e55924dae3 Bugfix: Cadence/Speed computation incorrectly truncated time to long instead of float. 2020-05-13 20:34:16 +02:00
Dennis Guse e3a8143d58 Cleanup. 2020-05-13 20:34:16 +02:00
Dennis Guse 30310bb874 Localization: removed unused translations.
Fixed German labels for speed (were too long on Stats screen).
2020-05-13 20:34:16 +02:00
Dennis Guse 9f377b172d Upgraded to Gradle wrapper 6.3 2020-05-10 15:28:42 +02:00
Dennis Guse 23175902fb Release v3.7.2 2020-05-09 20:21:16 +02:00
Dennis Guse 706bd8b01f README: added link Transifex. 2020-05-09 20:21:16 +02:00
Dennis Guse dc4ac07e11 Cleanup. 2020-05-09 20:21:16 +02:00
Román 5be4129ba9 Edit marker: if user deletes photo then photo is deleted from internal storage too. Fixes #208. 2020-05-09 15:44:10 +02:00
Román f75a48ccab TrackRecordingService doesn't change the track's name when recording ends. Fixes #209. 2020-05-07 18:23:40 +02:00
Román Martínez 2815aa4b62 Merge pull request #203 from OpenTracksApp/starting_gps#200
Manually starting GPS and opening a recorded track bug fixed. Fixes #200.
2020-05-01 10:29:27 +02:00
transifex-integration[bot] 0383b0e1c7 Translate /src/main/res/values/strings.xml in nl
translation completed for the source file '/src/main/res/values/strings.xml'
on the 'nl' language.
2020-04-30 19:08:22 +02:00
Román 1601741495 Manually starting GPS and opening a recorded track bug fixed. Fixes #200. 2020-04-30 18:57:12 +02:00
john2020star be1fae956b Fix compatibility issue in styles_custom.xml (#201)
* Adding indeterminateTintMode="src_in"
* Add a new ThemeCustomNotTransparentto change the color of ProgressBar
2020-04-30 12:36:26 +02:00
Dennis Guse c7557d80bb Release v3.7.1 2020-04-28 22:59:38 +02:00
Dennis Guse ac28124664 Workaround for #200: hide start/stop GPS icon from TrackListActivity. 2020-04-28 22:38:50 +02:00
Dennis Guse 1deaf7650e Bugfix: pausing should only insert a non-null lastTrackpoint.
Found by Google Play Pre-Launch report.
2020-04-28 19:58:11 +02:00
Dennis Guse 9074fa1b6c Release v3.7.0 2020-04-28 18:36:08 +02:00
transifex-integration[bot] 5721a615a2 Translate '/src/main/res/values/strings.xml' in 'de' (#199)
* Translate /src/main/res/values/strings.xml in de

translation completed for the source file '/src/main/res/values/strings.xml'
on the 'de' language.

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2020-04-28 18:34:28 +02:00
Dennis Guse fadcf1cd41 Pace/speed setting: changed label and renamed keys.
Also removed existing translations.
2020-04-28 08:23:18 +02:00
Dennis Guse a50b1ac78e Cleanup using Android Studio code analyzer. 2020-04-28 08:07:24 +02:00
Dennis Guse 9a7d4fdb36 TrackListActivity: removed start/stop GPS toast message.
Nowadays, we already have a notification in place.
2020-04-28 07:03:39 +02:00
Román Martínez 9fb51a689d Merge pull request #197 from OpenTracksApp/rgmf-issue#151
Merge issue#151.
2020-04-27 20:30:12 +02:00
Román 65bda35001 Preferred rate settings adapted to new code changes. 2020-04-27 20:25:16 +02:00
Dennis Guse 443ded86a5 Continuous integration: only test on API 29.
On Github Actions API 21 fails while it works locally.
2020-04-27 20:12:13 +02:00
Román 83b5ebb02c Added new option in Preferred rate setting: By Default.
With By Default option it will use pace or speed depending on activity type.
Fixes #151.
2020-04-27 20:02:55 +02:00
Román Martínez 240d8f6b6c Images/folders are deleted when tracks/waypoints are deleted.
This fixes #189.
2020-04-27 18:18:02 +02:00
Dennis Guse 39c5422341 Merge pull request #193 from OpenTracksApp/bluetooth
Bluetooth LE: add cycling cadence and speed sensor(s).
2020-04-27 18:14:39 +02:00
Dennis Guse 4893a2b743 Added cycling speed sensor.
Fixed speed and cadence computation.
Fixed that a sensor change in settings resulted in a disconnect for all connected sensors.
2020-04-27 07:17:46 +02:00
Dennis Guse 3408ea97f4 Refactoring: move TrackPointDataSet directly into TrackPoint. 2020-04-27 07:17:46 +02:00
Dennis Guse ddb17f61cb Bluetooth LE: implemented cycling cadence and speed sensors.
Cadence is working while speed still requires the wheel size.
2020-04-27 07:17:46 +02:00
Dennis Guse bbe182cf82 Removed handler between BluetoothConnectionManager and -RemoteSensorManager.
Toast messages should rather be sent from activities.
2020-04-27 07:17:46 +02:00
Dennis Guse b7b7bdf19b Workaround for GPS week rollover (happening every 19.7 years).
Fixes #155.

https://en.wikipedia.org/wiki/GPS_Week_Number_Rollover
2020-04-27 07:08:29 +02:00
Román Martínez 5681938a9e Merge pull request #188 from OpenTracksApp/import_export#180
Improve import/export
2020-04-23 08:21:55 +02:00
Román 74835dcef5 KMZ import/export: code improved. 2020-04-22 13:19:32 +02:00
Román ed0dc05366 KMZ exporting: marker images use waypoint id as a name. 2020-04-21 19:01:35 +02:00
Román 653eb8320a KMZ importing: look for images anywhere in KMZ file and only images referenced remain in external storage. 2020-04-21 19:01:35 +02:00
Román 54b9c4370b KML description: max/min elevation will not show if have invalid values (unknow). 2020-04-21 19:01:35 +02:00
Román fa9cb3903c KMZ exporting: checks waypoints images exists before parse kml. 2020-04-21 19:01:30 +02:00
Román 0f1d8500d1 KMZ importing: firstly copies images then parses kml (checks kml's href link to image is correct). 2020-04-21 19:00:03 +02:00
Dennis Guse 20d7fd2c03 Merge pull request #187 from OpenTracksApp/dev
Refactored TrackRecordingService.
2020-04-15 23:11:38 +02:00
Dennis Guse 1d838344dc TrackRecordingService: test inserting locations. 2020-04-15 22:37:31 +02:00
Dennis Guse fd826199e2 Tests for TrackRecordingService (pause/resume/restart). 2020-04-14 22:13:14 +02:00
Dennis Guse f485d90ef2 ContentProviderUtils.bulkInsertTrackPoint(): removed length parameter. 2020-04-14 19:42:17 +02:00
Dennis Guse ec39e67a09 Removed Waypoint default constructor used by testing.
This avoids a null check for Waypoint.getLocation().
2020-04-14 07:12:56 +02:00
Dennis Guse 1a86db0a8b Cleanup. 2020-04-13 20:23:40 +02:00
Dennis Guse 6a1fada22f TrackRecordingService: cleanup. 2020-04-13 20:23:22 +02:00
Dennis Guse 2898e06246 TrackRecordingService: move service restart handling into method. 2020-04-13 20:23:22 +02:00
Dennis Guse 0d87c65b49 TrackRecordingService: cleanup. 2020-04-13 20:23:22 +02:00
Dennis Guse 9b97cdfcd1 TrackRecordingService: cleanup.
if+return rather than if+else.
2020-04-13 20:23:22 +02:00
Dennis Guse 95feae846a Create helper functions for TrackPoints in TrackPointUtils. 2020-04-13 20:23:22 +02:00
Dennis Guse b09eeaede3 Release v3.6.2 2020-04-13 12:56:59 +02:00
Dennis Guse 35dec1634c Bugfix: charts were showing only the invalid TrackPoints.
Introduced in fbc902e830
2020-04-13 12:48:52 +02:00
Dennis Guse e49a425106 Release v3.6.1 2020-04-12 18:46:49 +02:00
Román adbad04867 URIs for waypoint's photos are correct. Fixes #183. 2020-04-12 18:27:20 +02:00
Dennis Guse 850bd2f887 Update Android gradle plugin. 2020-04-11 23:16:38 +02:00
Dennis Guse d240b457e2 Release v3.6.0 2020-04-10 14:55:04 +02:00
Dennis Guse 6d800caab1 While importing photos, check url carefully.
(cherry picked from commit 309c96e4789bd7623b84720a8c8f2bf297c95d59)
2020-04-10 14:42:11 +02:00
Román 7bf153db39 Avoid NullPointer in creating photoUrl when importing 2020-04-10 14:42:11 +02:00
Román 1b69f29751 Importing creates content:// for attached pictures. Also, exporting without points bug fixed and images href contains relative link. Fixes #166 and #176. 2020-04-10 14:42:11 +02:00
Dennis Guse dfc3837739 Settings: PrefsFragment could not be re-created. Fixes #179. 2020-04-08 08:10:46 +02:00
Dennis Guse 30e847866e Removed TravisCI it does not work as desired. 2020-04-07 21:01:54 +02:00
Dennis Guse fbc902e830 Cleanup using AndroidStudio code analyzer.
Moved to iterator for loops for ChartView and ChartFragment.
2020-04-05 21:56:26 +02:00
Dennis Guse 208f1d71ba Refactor ChartView/ChartFragment to use ChartPoint. 2020-04-05 21:56:26 +02:00
Dennis Guse 38a15a96b3 Cleanup. 2020-04-05 21:56:26 +02:00
Dennis Guse 46f8753746 Removed TrackDataType and simplified TrackDataManager. 2020-04-05 21:56:26 +02:00
Dennis Guse 70bc8f33b1 Do not expose TrackDataType to fragments. 2020-04-05 21:56:26 +02:00
Dennis Guse 6cd27ab096 Merged DataSourceManager into TrackDataHub. 2020-04-05 21:56:26 +02:00
Dennis Guse 5581b404f7 DataSourceManager now always registers for all changes. 2020-04-05 21:56:26 +02:00
Dennis Guse 2ef74eb908 Automated code cleanup using AndroidStudio. 2020-04-05 21:56:26 +02:00
Dennis Guse 16c654141f Renamed TripStatistics to TrackStatistics. 2020-04-05 21:56:26 +02:00
Dennis Guse dfc785f2fd Simplified internal data processing (class structure). 2020-04-05 21:56:26 +02:00
Dennis Guse f621cdf032 Removed grade internals completely. 2020-04-05 21:56:26 +02:00
Román 8b04d9c4a6 creates a segment like pause/continue. 2020-04-05 14:25:29 +02:00
Dennis Guse 364b4702e3 Waypoint requires a non-null location.
Remove setLocation() from Waypoint and TrackPoint.
2020-03-30 19:52:06 +02:00
Dennis Guse a98c16de28 Removed TrackPointFactory.
New TrackPoints are now always created and old ones not reused.
2020-03-30 19:52:06 +02:00
Dennis Guse 881bf1982a Removed TrackWriterTrackPointFactory.
Replaced with local variable for TrackPoint swapping.
2020-03-30 19:52:06 +02:00
Dennis Guse f340622977 Automated code analysis improvements. 2020-03-30 19:52:06 +02:00
Dennis Guse 194379295d TrackPoint has Location as delegate instead of inheritance. 2020-03-30 19:52:06 +02:00
Dennis Guse 901cffee97 Use TrackPoint instead of Location (and omit casting). 2020-03-30 19:52:06 +02:00
Román d93c2ec5f3 TrackDetailActivity starts an actual recording and a stopped recording can be resumed. Fixes #103 and #11. 2020-03-30 19:25:22 +02:00
Dennis Guse 306522863a Release v3.5.0 2020-03-21 23:18:57 +01:00
Dennis Guse e54d85e04d ChartFragment: unregister from preference changes on pause. 2020-03-21 20:54:49 +01:00
Dennis Guse cb30ad27c3 Removed that tracks store count of the locations. 2020-03-20 19:44:31 +01:00
Dennis Guse 8685c9cc88 Merge pull request #162 from rgmf/issue#89
Share pictures from marker.
2020-03-18 22:08:42 +01:00
Román a6f03d0f23 Share pictures from marker.
Fixes #89.
2020-03-18 19:33:57 +01:00
Dennis Guse e3c812b155 TrackDeleteActivity now has a transparant background. 2020-03-18 07:43:21 +01:00
Dennis Guse f149de9ce3 Merge pull request #167 from rgmf/issue#163
Add android:key in PreferenceCategory with expandable.
2020-03-17 21:54:08 +01:00
Dennis Guse 3447dd2569 Merge pull request #165 from OpenTracksApp/dbCleanup
Database cleanup and optimization
2020-03-17 21:44:28 +01:00
Dennis Guse b2b8c7fd54 Database upgrade (incl. tests): removed unused columns and added indices.
Fixes #108.
2020-03-17 21:39:10 +01:00
Román 486bcd0aec Add android:key in PreferenceCategory with expandable.
Fixes #163.
2020-03-17 10:57:04 +01:00
Dennis Guse c8a33201f5 Moved annoucement text generation into util class. 2020-03-16 21:43:23 +01:00
Dennis Guse 4a37c2cc7e Cleanup. 2020-03-16 21:43:23 +01:00
Dennis Guse d23db5bafd Charts use preferred units and rate.
Fixes #150.
2020-03-16 21:43:23 +01:00
Dennis Guse ac528f9a10 Use trackname for sharing files.
Fixes #130.
2020-03-16 21:43:23 +01:00
Dennis Guse 256eadd49d Added some french translation provided by @edern-appere.
Fixes #147.
2020-03-16 21:43:23 +01:00
Dennis Guse 64e58934a5 Settings: fix label for elevation (removed "Grade" as it is not shown anymore). 2020-03-16 21:43:23 +01:00
Dennis Guse 92dfadfdba Remove elevation min/max from UI as GPS-derived data often lead to invalid data (especially initial fix phase).
Fixes #148.
2020-03-16 21:43:23 +01:00
Román cbce70143b All marker management is now in MarkerEditActivity (including take photo and added gallery image to the marker).
Issue 122.
2020-03-11 19:59:15 +01:00
Román f4b9e3159e New screenshots for F-Droid/PlayStore. Fixes #132. 2020-03-11 19:40:57 +01:00
Dennis Guse 928781391d Release v3.4.0 2020-02-05 23:41:55 +01:00
Dennis Guse 05cd672464 Updated help text. 2020-02-05 23:41:50 +01:00
Dennis Guse d3109bbc37 Cleanup. 2020-02-05 23:08:17 +01:00
Dennis Guse eabdb7c721 Unify order of show on map and share menu entries. 2020-02-04 19:52:05 +01:00
Peter Storch ad990e8cd7 Forward multiple tracks to dashboard 2020-02-04 00:07:17 +01:00
Dennis Guse db3eef0104 Test: date comparison tends to be flaky. 2020-02-03 23:27:19 +01:00
Dennis Guse c4f1ba7962 Upgrade material design dependency.
Requires including androidx.documentfile directly.
2020-02-03 23:27:19 +01:00
Dennis Guse 7451fbd413 CI: enable testing via Github Actions. 2020-02-03 23:27:19 +01:00
Dennis Guse b6c55de55a CI: enable testing TravisCI on again. 2020-02-03 23:27:19 +01:00
Dennis Guse dd3ee6d99e Bugfix: match internal ContentURI correctly.
TrackPoint by TrackId was not working (and not used).
2020-02-03 21:32:06 +01:00
Dennis Guse bbb6a7c22c Bugfix: keep TrackRecordingService in foreground if paused. 2020-02-03 20:45:14 +01:00
Dennis Guse dc1b50a7bf Cleanup: move PAUSE_LATITUDE and RESUME_LATITUDE to TrackPointsColumn. 2020-02-03 20:45:14 +01:00
Dennis Guse 21bfb88e0b Bugfix: initialize fragments from bundle rather via constructor.
Introduced in 8b11e1d611
This fixes #127.
2020-02-03 19:51:04 +01:00
Dennis Guse aaab8adce9 ExportAsyncTask: always get a wakelock. 2020-02-03 19:51:04 +01:00
Dennis Guse df502f835c Release v3.3.2 2020-01-11 20:33:47 +01:00
Dennis Guse dd6a4cd153 Export: files are now overwritten. 2020-01-11 20:29:20 +01:00
Dennis Guse 76656997ef Sharing: check if a compatible app is installed rather than trying it. 2020-01-11 20:27:43 +01:00
Dennis Guse 32070a0bd6 Use java.time instead of custom code for parsing (requires API 26+).
This is a functional change on API26+ as a timezone identifier is required.
2020-01-11 19:31:58 +01:00
Dennis Guse b9420d4dde Removed LocationManagerConnector. 2020-01-11 19:31:58 +01:00
Dennis Guse 1b810e1294 TrackRecordingService: do not try to register location listener every minute. 2020-01-11 19:31:58 +01:00
Dennis Guse f16d59bff6 Cleanup. 2020-01-11 19:31:58 +01:00
Dennis Guse b5bf3aadc5 Refactored wake lock release. 2020-01-11 19:31:58 +01:00
Dennis Guse f6a27a1522 Documentation: add activities overview. 2020-01-11 19:31:58 +01:00
Dennis Guse 83758fcd72 Always cancel TrackRecordingService's notification. 2020-01-11 19:31:58 +01:00
Dennis Guse 070917bc0b Extracted TrackRecordingService's Binder. 2020-01-11 19:31:58 +01:00
Dennis Guse 543a04dfdd Cleanup. 2020-01-11 19:31:58 +01:00
Dennis Guse b4d5eb0eec Refactoring: SharedPreferences are not provided via DataSource anymore. 2020-01-11 19:31:58 +01:00
Dennis Guse 9f84cc4952 Use ContentUris.parseId(). 2020-01-11 19:31:58 +01:00
Dennis Guse 09fe35f1ca Cleanup. 2020-01-11 19:31:58 +01:00
Dennis Guse 27e50b2dd9 Moved ContentProvider into separate package. 2020-01-11 19:31:58 +01:00
Dennis Guse 971460848b Extracted LocationIterator from ContentProviderUtils.
Also refactored LocationFactory to TrackPointFactory.
2020-01-11 19:31:58 +01:00
Dennis Guse 8bc2937bb4 Extracted LocationIterator from ContentProviderUtils. 2020-01-11 19:31:58 +01:00
Dennis Guse 0e9b68c2a1 Cleanup. 2020-01-11 19:31:58 +01:00
Nathan Hearnsberger ba298c2afb Additional language support for export_with/without_photos (DE, ES). 2020-01-11 19:27:53 +01:00
Nathan Hearnsberger 79f5ed4dc3 Added KMZ without photos, photo details to export picker. 2020-01-11 19:27:53 +01:00
Dennis Guse bbb2f874ee Release v3.3.1 2020-01-03 18:11:57 +01:00
Dennis Guse 9af3759b07 Bugfix: app name (release) not shown.
Introduced in 6cc7271a41.
2020-01-03 17:54:15 +01:00
Dennis Guse 1f6fe6bf0c Android 10: on uninstall ask the user if the app data should be kept. 2020-01-03 17:50:07 +01:00
Dennis Guse 7b291e85d7 Renamed DeleteActivity to TrackDeleteActivity. 2020-01-03 17:04:51 +01:00
Dennis Guse 0f72066bc0 Add IntentChooser for dashboards. 2020-01-02 19:56:24 +01:00
Dennis Guse 70e0e7b216 Add README for data API. 2020-01-02 19:54:19 +01:00
Peter Storch 7e50bb1b6d Merge pull request #114 from pstorch/79_osm_plugin
integrate dashboard plugin
2020-01-02 17:56:07 +01:00
Peter Storch a3eb107068 integrate dashboard plugin mechanism
To be able to integrate the OSMDashboard https://github.com/OpenTracksApp/OSMDashboard,
which addresses #79. Also other Dashboards will be possible.
2020-01-02 17:45:01 +01:00
Dennis Guse 6133ef121a Release v3.3.0 2020-01-01 14:46:28 +01:00
Dennis Guse c6d24e9534 Pictures: removed MediaScanner. 2020-01-01 14:44:23 +01:00
Dennis Guse 441d3f721f Debug version: use a black logo. 2020-01-01 14:39:16 +01:00
Dennis Guse 3c212e4bcc Bugfix: for taking pictures; provide access to external/pictures. 2020-01-01 14:28:58 +01:00
Dennis Guse 50eb71bc1f Cleanup. 2020-01-01 14:16:02 +01:00
Dennis Guse 0806821b5f Fixed import/export message to show Storage Access Framework selected path. 2019-12-29 23:33:10 +01:00
Dennis Guse 36d0f17953 Removed french Congo translation (identical to values-fr). 2019-12-29 21:57:39 +01:00
Dennis Guse 700adb7972 Export dialog: removed "from folder" text. 2019-12-29 21:56:48 +01:00
Dennis Guse a156369f8b Import dialog: removed "from folder" text. 2019-12-29 21:32:01 +01:00
Dennis Guse c0f6dc511b Removed values-ar-rXB/strings.xml as it was for testing only. 2019-12-29 21:28:36 +01:00
Dennis Guse 63e1461eba Removed values-en-rXA/strings.xml as it was for testing only. 2019-12-29 20:59:30 +01:00
Dennis Guse 804e5f10c8 Removed values-bn/strings.xml as translations were invalid. 2019-12-29 20:53:37 +01:00
Dennis Guse 6cc7271a41 Build: debug version uses different icon and appLabel. 2019-12-29 20:46:46 +01:00
Dennis Guse f66194189b Removed translation description from values/strings.xml 2019-12-29 20:15:37 +01:00
Dennis Guse 5d97d6d492 Use Android 7.0 localization: merge latin american and present en-rGB as default for en. 2019-12-29 19:13:26 +01:00
Dennis Guse f3a308e669 BREAKING CHANGE: pictures are now stored in getExternalFilesDir(); no migration takes place! 2019-12-29 15:43:06 +01:00
Dennis Guse a230504925 Export & import via Storage Access Framework. 2019-12-29 15:41:28 +01:00
Dennis Guse 90e19e282c Upgraded tests to Junit4. 2019-12-29 15:31:53 +01:00
Dennis Guse b585bfe44c Moved to Github organization: OpenTracksApp. 2019-12-27 23:54:29 +01:00
Dennis Guse 475e04eeb4 Add PlantUML model for data structures. 2019-12-27 18:07:29 +01:00
Dennis Guse f89b2b0efb Removed TripStatists min/max latitude/longitude.
This also removed: search does not account for closer tracks (to current position).
2019-12-27 18:01:11 +01:00
Dennis Guse b94f3c176b Include unit in variable names. 2019-12-27 18:01:10 +01:00
Dennis Guse d1d729d287 Removed unused ContentProvider.getFirstTrackPointId(). 2019-12-27 18:01:07 +01:00
Dennis Guse e23bbcc405 Removed unnecessary Track.startId and Track.stopId. 2019-12-27 18:01:05 +01:00
Dennis Guse 4129985b0f Renamed SensorDataSetLocation to TrackPoint (similar to SQLite table). 2019-12-27 18:00:51 +01:00
Dennis Guse 5cb7b623d9 Removed TripStatistics from Waypoints. 2019-12-26 21:15:42 +01:00
Dennis Guse 3c52efadd6 Removed unused Waypoint.TripStatistics. 2019-12-26 21:15:41 +01:00
Dennis Guse 73b4977051 Removed unused Waypoint.startId and Waypoint.stopId. 2019-12-26 21:15:41 +01:00
Dennis Guse 422c2c02ce Assume GPS provides always time (removed workaround). 2019-12-26 21:15:41 +01:00
Dennis Guse d692329975 Settings: hide advanced recording settings.
And use switches rather than checkboxes.
2019-12-25 23:22:20 +01:00
Dennis Guse 931574bc11 Release v3.2.11 2019-12-25 10:19:22 +01:00
Dennis Guse caddbd8501 MarkerDetailActivity: removed leftover statistic functionality. 2019-12-23 21:44:22 +01:00
Dennis Guse 8ece2c8612 Removed WaypointCreationRequest. 2019-12-23 21:39:37 +01:00
Dennis Guse 3a219321d1 Removed country-specific translations that are identical. 2019-12-23 07:43:05 +01:00
Dennis Guse 35cb924a17 StatsFragment: show elevation without decimal digits. 2019-12-22 20:39:43 +01:00
Dennis Guse b67e5bbd20 StatsFragment: left align current elevation. 2019-12-22 20:33:23 +01:00
Dennis Guse 1db275230e Bugfix: crash on opening heart rate sensor dialog (settings). 2019-12-22 19:09:01 +01:00
Dennis Guse 5ac72092fb Test: export and import tracks via KML and GPX; now includes waypoints.
TripStatistics is not tested.
2019-12-22 18:59:23 +01:00
Dennis Guse bdd9ded1e8 Test: export and import tracks via KML and GPX.
KML now exports track icon (name; not the url).
2019-12-22 18:59:23 +01:00
Dennis Guse 759aeb6ed6 Removed DescriptionGenerator interface. 2019-12-22 18:59:23 +01:00
Dennis Guse 12023d51ae Move data classes into separate package. 2019-12-22 18:59:23 +01:00
Dennis Guse c426785b90 Cleanup. 2019-12-22 18:59:23 +01:00
Dennis Guse 09d960c7a1 First waypoint of a track does not store the statistics of the track. 2019-12-22 18:59:23 +01:00
Dennis Guse f37fe4a503 Removed WaypointType. 2019-12-22 18:59:23 +01:00
Dennis Guse 013e56bef0 Replaced TabHost by Material design TabsLayout. 2019-12-22 18:59:23 +01:00
Dennis Guse d6835ba766 TrackRecordingService does not save the context. 2019-12-22 18:59:23 +01:00
Dennis Guse d7890cbc81 Shortened fr-FR short description.
Thanks to Edern.
2019-12-17 20:35:41 +01:00
Dennis Guse 2b6886c534 Update release procedure. 2019-12-16 22:41:16 +01:00
Dennis Guse e77590a125 Release v3.2.10 2019-12-15 22:11:19 +01:00
Dennis Guse ca330b2d80 Cleanup. 2019-12-15 21:28:03 +01:00
Dennis Guse 20f1524701 Cleanup. 2019-12-15 17:09:44 +01:00
Dennis Guse 96b2a15643 Bugfix: import and export on Android 10 requires requesting (privacy-unfriendly) legacy behavior. 2019-12-15 16:50:13 +01:00
Dennis Guse ad59392e02 Fix travisCI. 2019-12-14 23:58:43 +01:00
Dennis Guse 29f92b887c Fixed TrackRecordingService.insertWaypoint() to allow deprecated behavior. 2019-12-14 23:55:04 +01:00
Dennis Guse 46328211c2 Added promotion sticker. 2019-12-14 23:55:04 +01:00
Dennis Guse 3760130d1f Github: add donation. 2019-12-14 23:42:07 +01:00
Dennis Guse 1094827fac TrackListActivity: fixed landscape layout. 2019-12-11 23:05:31 +01:00
Dennis Guse 36fcb44af5 TripRecordingService: removed unused trip statistics marker updater. 2019-12-11 23:05:31 +01:00
Dennis Guse a683fbac4b Device reboot: do not restart a not successfully ended track recording. 2019-12-11 23:05:31 +01:00
Dennis Guse 64ad9019d1 ChartView: is not configurable anymore. 2019-12-11 23:05:31 +01:00
Dennis Guse 1e80d5c8a8 ChartView: draw waypoints (again).
Functionality was (accidentally) removed in 5a264c5c53
2019-12-11 23:05:31 +01:00
Matthias Lisin ac765b1ee8 Revert duration hint to MAY_DUCK.
Pass OnAudioFocusChangeListener to abandonAudioFocus
2019-12-10 12:58:57 +01:00
Dennis Guse 850c4f0a9a TravisCI: disabled non-functioning installation of Android emulator. 2019-12-10 06:53:22 +01:00
Dennis Guse 4c32999752 Add Google Play link. 2019-12-10 06:50:58 +01:00
Dennis Guse 76823b167a TrackListActivity: removed delete all from action menu. 2019-12-08 13:12:15 +01:00
Dennis Guse 9994cfd260 Bugfix: NPE. 2019-12-07 13:37:06 +01:00
Dennis Guse 1750236474 Added automation for Google Play publication (using fastlane). 2019-12-06 22:26:40 +01:00
Dennis Guse fed6e31f9e Cleanup. 2019-12-06 08:00:20 +01:00
Dennis Guse 9bafc7d4a1 Release v3.2.9 2019-12-04 19:57:27 +01:00
Dennis Guse be58b48d20 Bugfix: StatsFragment (onResume and track was recording) overwrote in the total time UI until next UI update. 2019-12-03 22:21:45 +01:00
Dennis Guse 303abac980 Removed READ_PHONE_STATE permission and use AudioManager.MODE_IN_CALL instead. 2019-12-03 22:01:01 +01:00
Dennis Guse d1a459efc2 Get audio focus onStart. 2019-12-03 20:28:22 +01:00
Dennis Guse 96069e6f09 Cleanup. 2019-12-03 20:24:57 +01:00
Dennis Guse 301a721329 Settings: localize no heart rate sensor selected. 2019-12-03 19:53:14 +01:00
Dennis Guse e8c6801a32 Refactor StatsFragment. 2019-12-03 19:19:19 +01:00
Dennis Guse 355f3ef614 Added "screen always on"-feature to TrackDetailActivity.
And the "show on lockscreen"-feature is only used while recording.
2019-12-03 16:57:56 +01:00
Dennis Guse eaa6083586 Bugfix: Heart rate was not shown in stats. 2019-12-03 07:31:29 +01:00
Dennis Guse a0c5d02c51 Fixed and removed device features (AndroidManifest). 2019-12-03 07:31:29 +01:00
Dennis Guse 76f9f5fc82 MarkerDetailFragment now shows the blue pin as default image. 2019-12-03 07:31:29 +01:00
Dennis Guse 8e2598e93b Removed split markers. 2019-12-03 07:31:24 +01:00
Dennis Guse c0672c41df Bugfix: crash if heart rate sensor was null (i.e., preference not initialized). 2019-11-29 23:18:49 +01:00
Dennis Guse 4c6601fbc5 Release v3.2.8 2019-11-29 22:58:22 +01:00
edern-appere b99c87d1bd Added French translation for Fdroid. 2019-11-29 22:46:43 +01:00
Dennis Guse 66ffbfe951 Fixed ChartFragment tests.
Initialization of looper was missing.
2019-11-29 22:43:51 +01:00
Dennis Guse 8cb01a1027 Bugfix: sharing a track was not adding the file(s).
While migrating to enable sharing multiple tracks a configuration option was missed.
2019-11-29 22:39:36 +01:00
Dennis Guse 193e5eccbb Cleanup. 2019-11-29 22:39:36 +01:00
Dennis Guse bf7fc28bb0 Bugfix: picture name suffixes were malformed on export and thus could not be re-imported. 2019-11-29 22:39:31 +01:00
Dennis Guse e35cbc343a Add pull request template. 2019-11-29 07:54:39 +01:00
Dennis Guse 1c7b053c8c Fixed MarkerDetailActivity.
The orientation of the layout was not set and thus adding the toolbar broke the UI.
2019-11-28 18:09:11 +01:00
Dennis Guse 88cdcd4b47 Use GestureDetector rather than doing it on our own. 2019-11-27 21:42:05 +01:00
Dennis Guse 1432fed8f9 Removed zoom controls for ChartFragment. 2019-11-27 21:41:53 +01:00
Dennis Guse a14307b9a4 Moved Chart* into own package. 2019-11-27 20:19:12 +01:00
Dennis Guse 3bdce5aa08 Cleanup: use autocloseable. 2019-11-25 23:09:08 +01:00
Dennis Guse d7526f93b8 Cleanup: removed ContentProviderUtils interface. 2019-11-25 23:02:48 +01:00
Dennis Guse 8932578b90 Release v3.2.7 2019-11-25 22:03:40 +01:00
Dennis Guse 631ac9881d Wrap help into PreferenceCategory. 2019-11-25 22:03:02 +01:00
Dennis Guse 78334ed797 Fixed Spanish project description (short); was still German. 2019-11-24 21:12:07 +01:00
Dennis Guse b06da89654 Show chart for distance as well as time.
Also removed configuration option.
2019-11-24 19:55:00 +01:00
Dennis Guse d6c2e78993 Cleanup. 2019-11-24 18:48:31 +01:00
Dennis Guse 67d1ac551d Show GPS accuracy while recording in the notification of the TrackRecordingService and notify if accuracy goes beyond configured threshold. 2019-11-24 18:44:04 +01:00
Dennis Guse dcb6be717d Cleanup. 2019-11-23 22:46:39 +01:00
Dennis Guse f2c04eec1a Add help activity.
Can be accessed from Settings.
2019-11-23 21:43:07 +01:00
Dennis Guse a08311cf43 Temporary bugfix: disable landscape mode for TrackListActivity. 2019-11-22 07:44:01 +01:00
Dennis Guse 1e28f3aa86 Add TTSUtils.
(required by previous commit)
2019-11-22 07:43:19 +01:00
Dennis Guse 426af41f2c Move TTS stream definition into one place. 2019-11-20 19:27:41 +01:00
Dennis Guse fd08a219f9 Add Spanish store description. 2019-11-20 19:13:21 +01:00
Dennis Guse 25b6aec0e9 Release v3.2.6 2019-11-19 22:09:10 +01:00
Dennis Guse 3e40209d15 Refactoring. 2019-11-19 08:00:12 +01:00
Dennis Guse 54ff94f905 Settings: renamed Bluetooth sensor to "Heart rate". 2019-11-18 17:16:50 +01:00
Dennis Guse 7a4faf6b0d Fixed SettingsActivity. 2019-11-18 17:13:42 +01:00
Dennis Guse 8922b00a5f README: add screenshots. 2019-11-17 18:45:29 +01:00
Dennis Guse 702efa8693 Removed shortcut to Android's Bluetooth settings. 2019-11-17 18:25:01 +01:00
Dennis Guse e7a8c897a3 Settings: scan for Bluetooth sensors rather than using bonded devices.
Bonded devices do no provide information what services (e.g., heart rate) they support.
2019-11-17 18:24:02 +01:00
Dennis Guse c59d1d87bd Bluetooth: move getting adapter to BluetoothUtils. 2019-11-17 18:23:08 +01:00
Dennis Guse a706efb8b3 Bugfix. 2019-11-14 18:30:57 +01:00
Dennis Guse e391e83a00 Build: show version and tag in about page. 2019-11-14 18:04:50 +01:00
Dennis Guse 2940bf20d8 Settings: remove all defaults from code. 2019-11-12 21:33:04 +01:00
Dennis Guse 081db5a58b Settings: remove default setting for default activity. 2019-11-12 21:33:04 +01:00
Dennis Guse b34805272f Bugfix: not connecting to heart rate sensor - need to start BluetoothRemoteSensorManager.
Introduced in bc5ab0d7e5
2019-11-09 00:02:20 +01:00
Dennis Guse 98443dba99 Cleanup. 2019-11-08 22:45:34 +01:00
Dennis Guse dd6e733d8c Release v3.2.5 2019-11-08 22:31:49 +01:00
Dennis Guse 92d3439c3b Re-enable SummaryProvider for default_activity. 2019-11-08 07:58:30 +01:00
Dennis Guse bd155cd600 Use SummaryProvider.
Fixed #46.
2019-11-08 07:36:45 +01:00
Dennis Guse e14e53c0ae Fix hack to update summary of statsRate if statsUnit change. 2019-11-07 23:32:28 +01:00
Dennis Guse 77a6a63174 Re-initialize PreferenceFragment, when sharedpreferences were reset. 2019-11-07 22:24:15 +01:00
Dennis Guse 40f2463f09 Fail safety: if settings cannot loaded (invalid data in sharedpreferences), reset it and try again. 2019-11-07 19:15:17 +01:00
Dennis Guse e5d1048c8d Bugfix reset settings: really clear sharedPreferences before settings default values. 2019-11-07 19:15:17 +01:00
Dennis Guse bf3b529fb2 Add link to Transifex for localization.
Fixes #27.
2019-11-07 19:15:17 +01:00
Dennis Guse d0fde46027 Android does not allow referencing integer in string-arrays: store everything as string and parse it later (also for tests). 2019-11-06 18:40:58 +01:00
Dennis Guse 0f348dff10 Android does not allow referencing integer in string-arrays: store everything as string and parse it later. 2019-11-06 18:16:40 +01:00
Dennis Guse d3f5080e73 Fixed issues introduced in 353c958ae0 and 2a60aa8f59. 2019-11-06 07:42:15 +01:00
Dennis Guse a453c8ec1e TrackDetailActivity: disable activity type changer in view mode.
Fix #3.
2019-11-05 22:45:29 +01:00
Dennis Guse 2a60aa8f59 Settings: removed some default definitions from code into xml. 2019-11-05 22:02:23 +01:00
Dennis Guse 41e7870509 Settings: removed some default definitions from code into xml. 2019-11-05 21:13:51 +01:00
Dennis Guse 57f66b77ab Reorganized settings (sharedpreferences and keys); xml only. 2019-11-05 21:13:51 +01:00
Dennis Guse 53572406e9 Mark foreground service to use location and connection to other devices, so it can run properly on Android 10+ when app is in the background.
Might fix #61.
2019-11-05 21:13:51 +01:00
Dennis Guse a288255ab1 Added issue and feature templates. 2019-11-05 19:33:57 +01:00
Dennis Guse 353c958ae0 Moved accessing sharedPreferences into PreferencesUtils. 2019-11-03 01:44:46 +01:00
Dennis Guse bc5ab0d7e5 Removed unnecessary RemoteSensorManagerFactory.
TrackRecordingService is only using BluetoothRemoteSensorManager and thus factory pattern is not required.
2019-11-03 00:21:51 +01:00
Dennis Guse 9d915b5640 Cleanup. 2019-11-03 00:13:14 +01:00
Dennis Guse 3aaee270eb Release v3.2.4 2019-11-01 23:54:34 +01:00
Dennis Guse d53a7156e2 Bugfix: removed custom dialogs to set voice/split frequency preferences from the context menu directly.
Fixed #49.
2019-11-01 23:38:07 +01:00
Dennis Guse 3af24ea3d0 Release v3.2.3 2019-10-31 22:07:21 +01:00
Dennis Guse 5483212b06 Fixed StringUtils.formatDecimal to work with decimals of 0. 2019-10-30 23:02:02 +01:00
Dennis Guse 419279fe5e Cleanup. 2019-10-30 22:36:22 +01:00
Dennis Guse 501e899b27 StatsFragment: need to reconnect to TrackRecordingService in onResume as it is unbound in onStop.
Fixed #50.
2019-10-30 22:36:16 +01:00
Dennis Guse 3bb9edb009 Connect to new sensor if settings are changed.
Fixed #52.
2019-10-30 07:48:29 +01:00
Dennis Guse e52b1188a3 Cleanup. 2019-10-29 23:05:17 +01:00
Dennis Guse 9e877e4762 Removed stale verify. 2019-10-29 22:39:51 +01:00
Dennis Guse 5711757110 If sharing multiple tracks, share them as separate files. 2019-10-29 17:43:23 +01:00
Dennis Guse e1c33dad43 Move to Android ShareSheet. 2019-10-29 17:34:21 +01:00
Dennis Guse 4b2400774c TravisCI: start emulator, which is required for testing. 2019-10-28 23:25:07 +01:00
Dennis Guse afd4a59622 CI: enabled tests.
Fixed #6.
2019-10-27 16:50:28 +01:00
Dennis Guse bdce437470 Removed AnnoucementPeriodTaskTest as these were broken beyond repair. 2019-10-27 16:46:56 +01:00
Dennis Guse 33479cda11 Fixed TrackRecordingService tests: start service properly if needed. 2019-10-27 15:58:50 +01:00
Dennis Guse 385cee3dc7 Fixed Date parsing test (account for
rounding up microseconds).
2019-10-27 13:45:43 +01:00
Dennis Guse d0bbd7655b Ignore KML waypoints that do not have a type. 2019-10-27 13:40:06 +01:00
Dennis Guse a83b8f62fe Repaired Track importer tests. 2019-10-27 13:24:20 +01:00
Dennis Guse 0cd9176703 Heart rate must be larger than zero to be shown while tracking. 2019-10-26 14:35:03 +02:00
Dennis Guse d8e526923d Removed RemoteSensorManager as abstraction was not used anymore. 2019-10-26 14:26:16 +02:00
Dennis Guse 3a6f417662 Added disconnect toast message. 2019-10-26 14:23:38 +02:00
Dennis Guse 7d807a7f11 Refactor Bluetooth LE stack to use autoReconnect.
Removed additional timerTask to reconnect (was not working anymore).

Fixed #41.
2019-10-26 14:11:55 +02:00
Dennis Guse e9d5718495 Cleanup. 2019-10-23 18:47:32 +02:00
Dennis Guse 0dd7f74a11 Removed temporary sensor manager (was not used anymore). 2019-10-22 21:15:11 +02:00
Dennis Guse 9bd4ba489c Release: v3.2.2 2019-10-21 23:00:13 +02:00
Dennis Guse dd55b50dad Re-added actionbar (actually toolbar) to SettingsActivity. 2019-10-21 22:54:23 +02:00
Dennis Guse 1719d21a5b Bugfix: export now really includes sensor data (as double) and import is done as float. 2019-10-21 22:34:33 +02:00
Dennis Guse 75ef8d99d4 SensorDataSet: data unavailable is now NaN. 2019-10-21 22:34:28 +02:00
Dennis Guse ae06fd1680 Bugfix: export sensor data if available and allowed. 2019-10-20 18:39:31 +02:00
Dennis Guse 2b03f7dea8 Use LinearLayout for SearchActivity (show toolbar correctly). 2019-10-20 17:05:09 +02:00
Dennis Guse 7591b012b4 Extracted ShareActionProvider setup code into a separate class. 2019-10-20 16:55:28 +02:00
Dennis Guse 0e089f49f3 Re-added application logo to material design toolbar. 2019-10-19 12:27:11 +02:00
Dennis Guse 5ad1856b13 Removed context menu from ListActivities. 2019-10-17 21:32:55 +02:00
Dennis Guse 965dbbe829 Removed custom action bar style. 2019-10-17 21:26:31 +02:00
Dennis Guse 262c9886df Removed aggregated stats activity. 2019-10-17 21:22:07 +02:00
Dennis Guse ac5a9ea65d Use Androidx compat's toolbar instead of actionbars.
ListView's multiselect still uses actionbar.
2019-10-17 21:19:14 +02:00
Dennis Guse ed9b4c8f3d Add workaround for Compat's ShareActionProvider, which is not available when inflating in a AbsListView.MultiChoiceModeListener. 2019-10-17 18:33:45 +02:00
Dennis Guse 209aa6a8a5 Hide share action from SearchActivity as it is not (yet) functional. 2019-10-17 07:58:11 +02:00
Dennis Guse 81ee6ac1fa Do not use custom style for AlertDialogs, so PreferenceDialogs and AlertDialogs look the same. 2019-10-17 06:38:05 +02:00
Dennis Guse 024dd603cb Migration to Androidx PreferenceCompat. 2019-10-17 06:00:47 +02:00
Dennis Guse 50654c6baf Release v3.2.1 2019-10-15 18:36:40 +02:00
Dennis Guse 8c9bf60fc6 Update Settings if the units (metric/imperial) are changed. 2019-10-15 17:29:59 +02:00
Dennis Guse a83eb0b983 Added de-DE description. 2019-10-13 12:19:27 +02:00
Dennis Guse ab3cbfea0f Metadata: adjust to fastlane layout. 2019-10-13 12:19:27 +02:00
Dennis Guse c93e5ca1a6 Settings: moved to Androidx Compat and use one screen only. 2019-10-12 18:00:51 +02:00
Dennis Guse c2841092da Settings: moved setup into helper. 2019-09-19 22:30:28 +02:00
Dennis Guse 8b11e1d611 DialogFragments: do not save state. 2019-09-19 22:30:28 +02:00
Dennis Guse 6375a851b2 Moved ChooseActivityTypeDialog to be a real DialogFragment.
Note: This breaks RecordingsSettingsActivity.
2019-09-19 22:28:04 +02:00
Dennis Guse f21200a7ec UnitConversation: always use double for division.
Fixed wrong computation (00:00) of total time.
2019-09-19 19:29:49 +02:00
Dennis Guse 5752cebdec Released 3.2.0 2019-09-19 19:14:34 +02:00
Dennis Guse fa6329c157 Fdroid: downgraded to Gradle 5.5 2019-09-19 19:08:04 +02:00
Dennis Guse 98a9884798 Fdroid: added link in README and moved metadata to fastlane folder. 2019-09-19 19:04:17 +02:00
Dennis Guse 1f7f615411 Import/Export: first option is KMZ containing all data. 2019-09-16 23:43:30 +02:00
Dennis Guse a79345ccf9 Grant ACCESS_FINE_LOCATION for TrackRecordingServiceTest. 2019-09-16 22:47:37 +02:00
Dennis Guse 732e0e76f9 Removed custom styling of title divider of used dialogs (just too much code). 2019-09-16 22:37:37 +02:00
Dennis Guse 63d29f2097 Cleanup. 2019-09-16 19:44:34 +02:00
Dennis Guse 9dd2f7d1c1 KML/KMZ export and share: add configuration to export with trackdetail without the rest.
Fixed some issues in TRACK_ONLY mode as too much data was exposed.
2019-09-15 09:47:48 +02:00
Dennis Guse afd25363b3 For export and import: KMZ first as it contains all data incl. photos. 2019-09-15 09:22:10 +02:00
Dennis Guse 2eb5a42099 When it should be KMZ, make it KMZ. 2019-09-15 08:45:11 +02:00
Dennis Guse 9c753034b4 Update title in MarkerDetailActivity when viewpager changes. 2019-09-15 00:31:53 +02:00
Dennis Guse 95b7c701a2 Cleanup: do not assume first waypoint contains (always) TripStatistics. 2019-09-15 00:14:15 +02:00
Dennis Guse 56685a9dec Bugfix: export of images via KMZ is now working. 2019-09-14 23:35:28 +02:00
Dennis Guse 45b13ea813 Removed tab icons as they were not shown anyhow. 2019-09-14 22:43:26 +02:00
Dennis Guse b0feed84bb Removed voice frequency menu icon as it not shown anyhow. 2019-09-14 22:34:58 +02:00
Dennis Guse 0e2da83e1f Removed snowboarding and skiing due to lack of icons. 2019-09-14 22:20:29 +02:00
Dennis Guse fa364a150d Styling for progress bar via tint. 2019-09-14 21:50:10 +02:00
Dennis Guse 6ec78d77a9 Changed gps menu item icon to represent actual state of the gps (and not the action to be executed). 2019-09-14 13:25:23 +02:00
Dennis Guse 8853bb5408 Replaced drawables with vectors (SVG) for TrackController.
- ic_button_pause
- ic_button_record
- ic_button_stop
2019-09-14 02:58:05 +02:00
Dennis Guse e4d6355875 Replaced drawables with vectors (SVG) for TrackListActivity.
- ic_pause
- ic_record
- ic_arrow_long
2019-09-14 01:34:41 +02:00
Dennis Guse 1e08d72cc9 Removed resources of indetermined progressbar (unused). 2019-09-14 00:22:35 +02:00
Dennis Guse ea82d2df94 Fixed tabhost resource id. 2019-09-13 23:55:39 +02:00
Dennis Guse 71c0114f8f Fixed lint error. 2019-09-13 23:14:14 +02:00
Dennis Guse a3955c7c37 Made generic activity type selectable.
Decreased icon size.
2019-09-13 23:00:12 +02:00
Dennis Guse e610b70590 Use logo (white) for generic track (replaces similar a png with gradient). 2019-09-13 22:55:25 +02:00
Dennis Guse 7f4d47d7b5 Foreground service notification now uses the logo directly (vector). 2019-09-13 22:38:39 +02:00
Dennis Guse fd27ec11a2 Replaced chartViews current position marker with logo. 2019-09-12 23:52:04 +02:00
Dennis Guse 2aa036f3aa Material design icons for dialogs. 2019-09-12 23:44:21 +02:00
Dennis Guse 2c49a4f3f1 Introduced material design icons. 2019-09-12 23:24:19 +02:00
Dennis Guse 10e4a52947 Fixed stats_content. 2019-09-12 20:39:13 +02:00
Dennis Guse 9f3936e180 Removed unused icons. 2019-09-12 20:17:29 +02:00
Dennis Guse a3a76ce0c3 Disabled lint for AppCompatResource. 2019-09-12 20:15:03 +02:00
Dennis Guse 545db52f94 Cleanup. 2019-09-12 18:33:45 +02:00
Dennis Guse bfa02a97ee Upgrade appcompat library. 2019-09-12 17:57:33 +02:00
Dennis Guse 3a2eeaa204 Fixed lint warnings in stats_content layout. 2019-09-12 17:57:33 +02:00
Dennis Guse 42b3a5dfc9 Refactored stats_content layout to contain all content (not use include). 2019-09-12 17:57:28 +02:00
Dennis Guse b5cb47a0c7 Refactored TrackRecordingServiceConnection: made static methods object methods. 2019-09-10 22:45:20 +02:00
Dennis Guse 443e069a13 Refactored TrackRecordingServiceConnection.
- implemented interfaces directly
- moved static methods from TrackRecordingServiceConnectionUtil
2019-09-10 22:37:54 +02:00
Dennis Guse 9c432c3110 Removed unused menu from SearchListActivity. 2019-09-10 21:20:41 +02:00
Dennis Guse 79934d51ac Revert "Moved from onTouch to onClick listeners."
This reverts commit 025dee68
2019-09-10 21:20:41 +02:00
Dennis Guse 496cf9145b Removed usage of Broadcast (were used by Widget). 2019-09-10 21:20:40 +02:00
Dennis Guse 264bb3746f Removed ControlRecordingService.
It was implemented to enable other apps to start and stop track recordings.
2019-09-10 21:19:11 +02:00
Dennis Guse 7b1ccf4507 Cleanup AndroidManifest. 2019-09-10 21:18:55 +02:00
Dennis Guse a326265dba Fixed searchview, which did not trigger SearchListActivity. 2019-09-10 21:18:25 +02:00
Dennis Guse 0864bc8104 Cleaned up ContentProviderUtils's factory pattern. 2019-09-10 21:18:03 +02:00
Dennis Guse f5656470a9 Removed Parcelable from all data classes as it not needed anymore. 2019-09-10 21:17:45 +02:00
Dennis Guse 5bc773f1aa Removed modifiedtime from Track - was likely a Google Drive leftover. 2019-09-10 21:17:18 +02:00
Dennis Guse 6bfd8c8db8 Cleanup: Use Pair instead of String[2]. 2019-09-10 21:16:58 +02:00
Dennis Guse df2865456e Removed obsolete workaround for DateUtils.formatElapsedTime(). 2019-09-10 21:16:38 +02:00
Dennis Guse fc6d5f1f23 Removed Widget. 2019-09-10 21:16:16 +02:00
Dennis Guse 96dab8c81b Build: enabled abort on lint errors. 2019-09-10 21:16:00 +02:00
Dennis Guse 1d13d51f0c Cleanup. 2019-09-10 21:12:56 +02:00
Dennis Guse 87d92d25f9 Cleanup: mainly code formatting and made LocationIterator implement autoclosable. 2019-09-08 12:39:40 +02:00
Dennis Guse 025dee6821 Moved from onTouch to onClick listeners. 2019-09-08 12:39:40 +02:00
Dennis Guse 796d086615 Cleanup.
Cleanup.
2019-09-08 12:39:37 +02:00
Dennis Guse bb1ef08474 Splitted TrackRecordingServiceTest into two files and fixed issue about calling Looper.prepare() only once for all tests. 2019-09-05 22:44:27 +02:00
Dennis Guse cc770d8bb4 Fixed (some) AnnoucementPeriodicTask[Factory] tests. 2019-09-05 07:41:16 +02:00
Dennis Guse 8a56c262cb Cleanup. 2019-09-04 22:09:22 +02:00
Dennis Guse c0a9958b5b Fixed (some) TrackRecordingServiceTests. 2019-09-04 21:33:30 +02:00
Dennis Guse 7351cd3377 TrackDataHubTest is beyond repair and thus removed. 2019-09-04 20:41:39 +02:00
Dennis Guse 7b3d5848b9 Fixed ControlRecordingService: only unbind if connected. 2019-09-04 17:43:24 +02:00
Dennis Guse 0f311e062e Fixed ContentProviderUtils tests.
Account for using a real (non-empty) database and thus non-predictable object ids.
2019-09-03 21:32:35 +02:00
Dennis Guse 57930a8d86 Added changelog for 2991/v3.1.0 2019-09-03 21:32:35 +02:00
Dennis Guse 7c0069394f Release v3.1.0 2019-09-02 19:42:40 +02:00
Dennis Guse 379913fb3e Cleanup. 2019-09-02 19:39:58 +02:00
Dennis Guse 542d9ccb77 Request storage permission on import all and export all. 2019-09-02 19:37:55 +02:00
Dennis Guse c8ae3b83b5 Added option to show statistics while recording without unlocking the device. 2019-09-02 18:36:31 +02:00
Dennis Guse 0a046fc100 Cleanup. 2019-09-02 18:02:43 +02:00
Dennis Guse c551a38a8b Show full version name based upon git describe --tags on startup and also in AboutActivity. 2019-09-02 16:05:24 +02:00
Dennis Guse 72b1ca82ed Moved debug warnings into Startup. 2019-09-02 15:50:35 +02:00
Dennis Guse 1ef81c45db Build: do not minify code for release.
The amount of space saved is too small to be of a real benefit while stack traces become unreadable.
2019-09-02 15:50:35 +02:00
Dennis Guse 08e6ae76f2 Fix TravisCI for Android-29 (#34) 2019-09-02 15:44:21 +02:00
Dennis Guse 6e410e049d Bugfix: creating waypoint from camera works now.
Introduced in commit 677b691ef1
2019-08-26 22:57:00 +02:00
Dennis Guse 22b7962940 Upgraded to Gradle 5.6 and AndroidStudio 3.5.0. 2019-08-26 21:55:40 +02:00
Dennis Guse 5788f99b20 Catch ActivityNotFound exception for starting geo-data intents. 2019-08-25 22:20:08 +02:00
Dennis Guse 8685e43dc2 Fixed ShareContentProvider and KMZ mime type. 2019-08-25 21:37:47 +02:00
Dennis Guse b8bea27155 Added AndroidStudio coding style configuration. 2019-08-25 16:21:20 +02:00
Dennis Guse c9226d3b79 Fixed CustomContentProvider tests. 2019-08-25 16:20:27 +02:00
Dennis Guse 9701feff04 Removed duplicate registration of images at MediaScanner. 2019-08-25 08:42:36 +02:00
Dennis Guse b8b40a88ef Show Marker menu entry at defined position. 2019-08-25 08:41:11 +02:00
Dennis Guse adcf7b388b Finish MarkerDetailActivity after storing marker. 2019-08-25 00:26:04 +02:00
Dennis Guse 3a7562d96c Modified "show on map" functionality to only share locations and no other track data. 2019-08-25 00:21:36 +02:00
Dennis Guse 2753cf7d0b Removed search suggestion configuration. 2019-08-24 18:48:50 +02:00
Dennis Guse 5841415a0b Refactored TrackWriter instantiation. 2019-08-24 18:14:32 +02:00
Dennis Guse d79fa07834 Share multiple tracks from TrackListActivity. 2019-08-24 17:51:57 +02:00
Dennis Guse ff6caf706e Added show on map to TrackDetailActivity. 2019-08-24 17:51:57 +02:00
Dennis Guse c953fbc67a Implemented "Share" from TrackListActivity's context menu. 2019-08-24 09:37:38 +02:00
Dennis Guse 55870cca85 Bugfix: import/export all now react to back button. 2019-08-24 08:49:59 +02:00
Dennis Guse 0123242be6 Bugfix: use correct entries/values for track name. 2019-08-24 08:44:43 +02:00
Dennis Guse 81a6d7b53a Added release recipe for FDroid. 2019-08-24 08:39:13 +02:00
Dennis Guse f423b07cee Added Changelogs for v3.0.0, v3.0.1, and the upcoming release. 2019-08-24 08:27:31 +02:00
Dennis Guse 33231bdbb1 Renaming to AbstractListActivity. 2019-08-23 07:37:03 +02:00
Dennis Guse 677b691ef1 Moved special intent creation to IntentUtils. 2019-08-23 07:33:58 +02:00
Dennis Guse 5e74e80a9a Use correct mime type for KML and KMZ. 2019-08-23 07:19:40 +02:00
Dennis Guse 70b5d799a2 Share marker works everywhere and share track from TrackDetailActivity. 2019-08-23 07:01:14 +02:00
Dennis Guse 16f18fe16f Removed search suggestion provider as it only provided recent searches. 2019-08-21 22:25:16 +02:00
Dennis Guse 8538c79dd8 Extracted content uri definition. 2019-08-21 22:20:18 +02:00
Dennis Guse f8e3b28e51 Removed landscape mode for TrackDetailActivity as it was broken and portrait mode needs heavy refactoring first. 2019-08-21 07:18:57 +02:00
Dennis Guse 9f665e07fd Show on map: everything is handled by one content provider alone.
To avoid issues forwarding a requests from (temporarily) exported content provider to internal content provider only one content provider is used.
2019-08-20 22:55:32 +02:00
Dennis Guse b7c010c086 Show on map: draft via virtual file (with two content providers).
Exported content provider that temporary needs to grant access to the internal content provider.
2019-08-20 22:49:54 +02:00
Dennis Guse 8296c0194d Show on map: draft via sharing temporary file. 2019-08-20 22:48:05 +02:00
Dennis Guse f537cc7321 Cleanup: automatic code inspection via Android Studio. 2019-08-18 14:46:43 +02:00
Dennis Guse 4fa2401b27 Removed CustomContentProvider.openFile() as it was used for Google Earth integration. 2019-08-18 13:22:41 +02:00
Dennis Guse f30e3cd5cd Removed contentDescription for logo (was still MyTracks). 2019-08-18 13:13:11 +02:00
Dennis Guse b73353120f PreferenceCategory import/export all: now uses Tracks as title. 2019-08-18 11:00:04 +02:00
Dennis Guse 7fa9df1f99 Cleanup. 2019-08-17 00:58:52 +02:00
Dennis Guse ea3de8a987 Renamed SensorManager to RemoteSensorManager. 2019-08-16 21:20:00 +02:00
Dennis Guse c159e1eba4 Version v3.0.1 2019-08-16 19:53:38 +02:00
Dennis Guse 420d538a73 Preferences: Import all/Export all has now transparent background and back button works as desired. 2019-08-16 18:53:26 +02:00
Dennis Guse 36672d6857 Fixed ChartFragmentTest. 2019-08-16 07:49:47 +02:00
Dennis Guse 51dc6f8e8d Tests: accept permission automatically. 2019-08-16 07:13:58 +02:00
Dennis Guse 9a6c9eeace Set android:allowBackup=false to prevent backups as this also includes cloud-based storages (e.g., Google Drive). 2019-08-15 23:14:52 +02:00
Dennis Guse bfb7f781ec Enabled TravisCI (just building, no tests). 2019-08-15 23:03:30 +02:00
Dennis Guse 8ca24b877c Moved Import all/Export all functionality to Settings. 2019-08-15 22:38:51 +02:00
Dennis Guse 01ef5cfa6f All test are now executable (but all are not working). 2019-08-14 18:03:48 +02:00
Dennis Guse 08825fcf04 Cleanup: typo. 2019-08-14 08:05:37 +02:00
Dennis Guse 4f5e87f87d Enabled some TrackDataHub tests. 2019-08-14 08:05:00 +02:00
Dennis Guse 45b1fafdd5 Fixed test and implementation of DescriptionGenerator. 2019-08-13 23:04:09 +02:00
Dennis Guse e89258c173 Fixed some tests by using the application context.
Fixed some tests by using the application context.

Fixed some tests by using the application context.

Fixed some tests by using the application context.
2019-08-13 22:49:41 +02:00
Dennis Guse d47d37afd2 Import/Exporter tests now compile (do not work). 2019-08-13 22:09:56 +02:00
Dennis Guse d9effc80a7 Enabled TrackRecordingServiceTest (mainly failing). 2019-08-13 20:59:29 +02:00
Dennis Guse 03d2b05ffd Allows SharedPreferences to contain int as well as String. 2019-08-13 20:56:07 +02:00
Dennis Guse e2cac6ee60 More tests executable (but not passing). 2019-08-12 18:47:48 +02:00
Dennis Guse f749ddb5ae Cleanup. 2019-08-12 18:47:48 +02:00
DanielJorn 6bb409fed0 Fixed typo in Readme.md 2019-08-11 09:25:53 +02:00
Dennis Guse 6da2d9d104 Export to KML and KMZ as requested by user. 2019-08-11 09:07:31 +02:00
Dennis Guse cd267123e7 KML export: write close tag for last segment.
Closes #21.
2019-08-10 14:00:38 +02:00
Dennis Guse 617ee719c8 Add heart rate sensor UI for landscape (BUG: still not visible). 2019-08-07 07:26:39 +02:00
Dennis Guse 4edad610ee Moved SensorSettingsActivity into SettingsActivity. 2019-08-06 20:07:22 +02:00
Dennis Guse fda95bbec9 Integrated ChartSettingsActivity in SettingsActivity. 2019-08-06 19:52:57 +02:00
Dennis Guse 1028e09888 Removed actionbar back button.
It was complicating the code base too much.
2019-08-06 19:46:01 +02:00
Dennis Guse 4abd07694c Use a custom dialog to reset preferences. 2019-08-06 19:08:11 +02:00
Dennis Guse a53b3288f7 BREAKING CHANGE: Moved to getDefaultSharedPreferences(). 2019-08-06 18:34:07 +02:00
Dennis Guse 7ba771c417 Moved sharedPreferences accessor to PreferenceUtils. 2019-08-06 18:18:25 +02:00
Dennis Guse 2a145b4791 Cleanup list preferences. 2019-08-06 07:47:37 +02:00
Dennis Guse cf90462772 PreferenceList: let summary be set by Android.
Some preferences used customized summaries - these were also removed.
2019-08-06 07:41:17 +02:00
Dennis Guse d9a6701260 Initialize preferences with default values. 2019-08-06 07:41:17 +02:00
Dennis Guse 1dc9558541 Use Androidx to get version code from manifest. 2019-08-05 22:21:44 +02:00
Dennis Guse 972de5f92e Photo size for KMZ exports is not configurable anymore. 2019-08-05 22:12:40 +02:00
Dennis Guse 28270b202e Hide activityTypeLabel in statistic summary. 2019-08-05 22:05:49 +02:00
Dennis Guse c9ee1a4218 Draft for FDroid metadata (via fastlane layout). 2019-08-05 17:41:48 +02:00
Dennis Guse 4c428d2547 Fixed export directory (was still MyTracks). 2019-08-05 17:08:03 +02:00
Dennis Guse 9bf1189f77 Added donation link to Liberapay. 2019-08-01 00:00:52 +02:00
Dennis Guse 484666e499 Cleanup broadcast messages.
(NOTE: Search suggestions and starting about page are not (yet) working).
2019-08-01 00:00:52 +02:00
Dennis Guse 28cdd39842 Automatic versioning (versionName and versionCode) using GIT. 2019-08-01 00:00:48 +02:00
Dennis Guse 9483241d43 Added about activity. 2019-07-27 13:13:41 +02:00
Dennis Guse d8a0265ad0 Removed obsolete resources. 2019-07-27 13:13:41 +02:00
Dennis Guse a6999fe7bd Disabled presentation of elevation gain as it used currently derived from the GPS signal alone and therefore very imprecise. 2019-07-27 13:13:41 +02:00
Dennis Guse f7db1c583b Removed reverse geocoding option for naming tracks.
This was actually done blocking in the main UI thread and (as Internet is usually used for this) was actually introducing weird random delay after ending a recording.
2019-07-27 13:13:41 +02:00
Dennis Guse a009be416f Added OpenTracks README. 2019-07-27 13:13:36 +02:00
Dennis Guse 7d515a3187 Bump versionCode and versionName. 2019-07-26 18:39:35 +02:00
Dennis Guse 6428074cdc Ask for ACCESS_FINE_LOCATION only (and really do it). 2019-07-26 18:39:35 +02:00
Dennis Guse 4e2eb2a0a1 Really removed translations referencing Google Drive functionality that is not present anymore. 2019-07-26 18:39:35 +02:00
Dennis Guse 6903a3e048 Rebranding to OpenTracks (translations). 2019-07-26 18:39:35 +02:00
Dennis Guse 233522a5e6 Rebranding to OpenTracks (code). 2019-07-26 18:39:35 +02:00
Dennis Guse cd52dc29c9 Autoformatted all resources. 2019-07-26 18:39:35 +02:00
Dennis Guse 363cb14bff Autoformatted all classes (non-testing). 2019-07-26 18:39:35 +02:00
Dennis Guse 5cfae845b7 Removed 'mytracks' from documentation, code, and filenames. 2019-07-26 18:39:35 +02:00
Dennis Guse 6dc03f567a Removed 'My Tracks' from documentation and code. 2019-07-26 18:39:35 +02:00
Dennis Guse b11f671c59 Removed translation_description from all strings.xml (except default). 2019-07-26 18:39:34 +02:00
Dennis Guse a4cabf1f0f Formatting translations. 2019-07-26 18:39:29 +02:00
Dennis Guse 0bd94e5f3f Removed "E.g., '/MyTracks/kml'.'." from translation instructions. 2019-07-24 06:17:52 +02:00
Dennis Guse 9c00d1afd1 Replaced logo png with a svg. 2019-07-24 06:17:52 +02:00
Dennis Guse 6eecef0048 Removed "E.g., 'Google location settings'." from translation instructions. 2019-07-24 06:17:52 +02:00
Dennis Guse 88c7e6ce1b Removed unused permissions as TrackRecordingService is now only reachable from within the app. 2019-07-24 06:17:52 +02:00
Dennis Guse 86a42f3c7c Use TEXT instead of String for SQLite. 2019-07-24 06:17:52 +02:00
Dennis Guse 58135607e8 (Re-)Enabled SaveActivity. 2019-07-24 06:17:45 +02:00
Dennis Guse 601c2fe9fa Cleanup R.strings. 2019-07-24 06:17:32 +02:00
Dennis Guse d6af46ed58 Remove MyTracks from resource names and styles. 2019-07-24 06:17:32 +02:00
Dennis Guse 186efc0a23 Removed IntegerListPreference and use a ListPreference instead. 2019-07-24 06:17:32 +02:00
Dennis Guse a1f62ec79f Cleanup. 2019-07-24 06:17:32 +02:00
Dennis Guse 111baff976 Preferences: use ListPreference instead of MyTracksListPreference. 2019-07-24 06:17:32 +02:00
Dennis Guse 02bb5bb48e Cleanup and default track name is location+date. 2019-07-24 06:17:32 +02:00
Dennis Guse 86aac36153 Removed unused permissions. 2019-07-24 06:17:32 +02:00
Dennis Guse 8438f7f7b3 Renamed settings configuration files. 2019-07-24 06:17:32 +02:00
Dennis Guse 617335e8b7 Use markdown LICENSE. 2019-07-24 06:17:31 +02:00
Dennis Guse 772e1ebce8 Cleanup. 2019-07-24 06:17:31 +02:00
Dennis Guse 89a6b56a61 TrackDetailActivity: only show heart rate if sensor is configured. 2019-07-24 06:17:31 +02:00
Dennis Guse 70eea7baea TrackDetailView: show connected bluetooth device. 2019-07-24 06:17:25 +02:00
Dennis Guse 5b22487059 TrackDetailView: show markerListMenu only as action if not recording as the icon is reused in this case. 2019-07-24 06:16:53 +02:00
Dennis Guse e22ff7742e Fixed index out of bounds. 2019-07-24 06:16:53 +02:00
Dennis Guse 3d99fab808 Removed SensorStateActivity. 2019-07-24 06:16:53 +02:00
Dennis Guse f19948e4cd Removed listener for map updates as there is no map anymore. 2019-07-24 06:16:53 +02:00
Dennis Guse cf0419f27b TrackDetailActivity: show heart rate. 2019-07-24 06:16:53 +02:00
Dennis Guse 09df2dd20f TrackDetailActivity: show activity type caption. 2019-07-24 06:16:53 +02:00
Dennis Guse 3ef1ae4b09 Sensor settings: added NONE bluetooth sensor. 2019-07-24 06:16:46 +02:00
Dennis Guse 1e1d4f6f4b TrackListActivity: show all markers. 2019-07-24 06:16:21 +02:00
Dennis Guse 15155aa394 SearchListActivity: show on map for individual markers. 2019-07-24 06:16:21 +02:00
Dennis Guse ef7db315d3 Code cleanup. 2019-07-24 06:16:21 +02:00
Dennis Guse b480623884 MarkerDetailActivity: show on map in external app. 2019-07-24 06:16:21 +02:00
Dennis Guse 4f6db25dd3 Always use the same icon for markers in menu. 2019-07-24 06:16:21 +02:00
Dennis Guse 6dcdd93195 Actionbar icons are now shown (still tinting programmatically). 2019-07-24 06:16:21 +02:00
Dennis Guse 39433f94cb Removed unused sharing and seach icons. 2019-07-24 06:16:21 +02:00
Dennis Guse 01701e5f0b Removed unused sharing icon. 2019-07-24 06:16:21 +02:00
Dennis Guse 01b4bc0e76 Cleanup. 2019-07-24 06:16:21 +02:00
Dennis Guse ff611795a0 Cleanup. 2019-07-24 06:16:21 +02:00
Dennis Guse 33650d3fe6 Do not use appcompat for android:showAsAction. 2019-07-24 06:16:21 +02:00
Dennis Guse bd58187c4e Activated search in MarkerList. 2019-07-24 06:16:21 +02:00
Dennis Guse 330c6b09cf ImageView can load URIs directly. 2019-07-24 06:16:21 +02:00
Dennis Guse af0c1a5ce9 Some menu items are action items. 2019-07-24 06:16:21 +02:00
Dennis Guse f792b9f59a Showing marker images now works (also with content:// URI).
content:// was required to get picture from the camera.
2019-07-24 06:16:21 +02:00
Dennis Guse 5e6a505a37 Code cleanup. 2019-07-24 06:16:21 +02:00
Dennis Guse 9c81157856 MarkerDetailActivity: set title. 2019-07-24 06:16:21 +02:00
Dennis Guse 0d01c0ee40 Upgraded some test cases. 2019-07-24 06:16:04 +02:00
Dennis Guse 0b2b306022 Added libraries for test cases. 2019-07-23 07:29:43 +02:00
Dennis Guse 175023645d Cleanup. 2019-07-23 07:29:36 +02:00
Dennis Guse 820b5b89e1 Cleanup Database: removed unused data fields. 2019-07-23 07:28:43 +02:00
Dennis Guse 1e8a843952 Removed external access check to now internal service. 2019-07-23 07:28:43 +02:00
Dennis Guse 4d5c19e3ef Fixed ServiceBinder for TrackRecordingService. 2019-07-23 07:28:43 +02:00
Dennis Guse d92106abec Moved myTrackLib into MyTracks: compiles, but recording service is not started correctly. 2019-07-23 07:28:43 +02:00
Dennis Guse 1706e8e8f9 Moved myTrackLib into MyTracks: moved files.
Moved resources from lib to app.
2019-07-23 07:28:43 +02:00
Dennis Guse 96de908487 Code formatting. 2019-07-23 07:28:43 +02:00
Dennis Guse 21c59bc2f6 Removed unused permissions. 2019-07-23 07:28:43 +02:00
Dennis Guse a8ff1628c4 Search working in TrackDetailActivity. 2019-07-23 07:28:43 +02:00
Dennis Guse 34450aa5e7 Share is working in TrackDetailActivity. 2019-07-23 07:28:43 +02:00
Dennis Guse b56f20f0c2 Code cleanup. 2019-07-23 07:28:43 +02:00
Dennis Guse 71c2bcbd0c Removed trackball support. 2019-07-23 07:28:43 +02:00
Dennis Guse f0eb85660a Use LocationManager instead of Google Play Service (completely removed). 2019-07-23 07:28:43 +02:00
Dennis Guse 44eeb9142c Removed use of Google Drive's shared owner. 2019-07-23 07:28:43 +02:00
Dennis Guse 41be6916bb Removed use of Google Drive's shared with me. 2019-07-23 07:28:43 +02:00
Dennis Guse 840ea69276 Added AndroidX appcompat. 2019-07-23 07:28:43 +02:00
Dennis Guse 2763c27283 Disabled proguard. 2019-07-23 07:28:43 +02:00
Dennis Guse 8bc84114d7 Renamed AbstractSendToGoogleActivity. 2019-07-23 07:28:43 +02:00
Dennis Guse 828a19aea1 Fixed taking camera images. 2019-07-23 07:28:43 +02:00
Dennis Guse 705c9b2538 Request GPS permission. 2019-07-23 07:28:43 +02:00
Dennis Guse ab7e8d2f43 Removed obsolete preferences keys. 2019-07-23 07:28:43 +02:00
Dennis Guse 24d60f570c Removed obsolete test. 2019-07-23 07:28:43 +02:00
Dennis Guse 8cb0559062 Removed UI seemingly used by removed "shared with me" functionality. 2019-07-23 07:28:43 +02:00
Dennis Guse 525cb5fd26 Removed references to Google Drive and Google Earth. 2019-07-23 07:28:43 +02:00
Dennis Guse 2cf77d09b2 Removed testing code that is "All rights reserved." by Google. 2019-07-23 07:28:43 +02:00
Dennis Guse fa0b154d0d Removed obsolete settings. 2019-07-23 07:28:43 +02:00
Dennis Guse 9684429d96 Activity selection dialog is now immediately selecting. 2019-07-23 07:28:43 +02:00
Dennis Guse 88cd919d92 Removed calories and weight. 2019-07-23 07:28:43 +02:00
Dennis Guse 6678d5b36b Fixed check if GPS is enabled. 2019-07-23 07:28:43 +02:00
Dennis Guse 53d91be9d9 Finish activity after pressing "save". 2019-07-23 07:28:43 +02:00
Dennis Guse 162e2c78a9 Fix for Android O and above. 2019-07-23 07:28:43 +02:00
Dennis Guse 19f7636259 Implemented heart rate via Bluetooth LE. 2019-07-23 07:28:43 +02:00
Dennis Guse 199f74ffad Code cleanup. 2019-07-23 07:28:43 +02:00
Dennis Guse cc0bef8546 Added foreground service permission. 2019-07-23 07:28:43 +02:00
Dennis Guse 3a685c609d Removed Polar and Zephyr (pre Bluetooth LE) sensors. 2019-07-23 07:28:43 +02:00
Dennis Guse 864f7cb595 Don't use apk/res-auto namespace. 2019-07-23 07:28:43 +02:00
Dennis Guse 376c0137a7 Removed AndroidMockGenerator.jar and robotium-solo.jar. 2019-07-23 07:28:43 +02:00
Dennis Guse bc7c5736ac TrackDetail: show first stats and then the chart. 2019-07-23 07:28:43 +02:00
Dennis Guse 1cf2a33525 Removed most @SuppressLint. 2019-07-23 07:28:43 +02:00
Dennis Guse 71d625e43e Code cleanup using static code analysis (Android Studio). 2019-07-23 07:28:43 +02:00
Dennis Guse 5b71810763 Removed all @SuppressWarnings. 2019-07-23 07:28:43 +02:00
Dennis Guse 3e728e0d91 Automated code cleanup using Android Studio. 2019-07-23 07:28:43 +02:00
Dennis Guse ca7e741304 Workaround disabling the search functionality. 2019-07-23 07:28:43 +02:00
Dennis Guse 0d4d1769f0 Upgraded project to AndroidX. 2019-07-23 07:28:43 +02:00
Dennis Guse 539285f6cf Upgraded menu configuration. 2019-07-23 07:28:43 +02:00
Dennis Guse 7394e8b382 Removed obsolete resources. 2019-07-23 07:28:43 +02:00
Dennis Guse 4362989d3a Readded GPS onConnect functionality (without permission check). 2019-07-23 07:28:43 +02:00
Dennis Guse 3d09ee363d Lint cleanup. 2019-07-23 07:28:43 +02:00
Dennis Guse 5efe1dba62 Manifest: removed removed Activities. 2019-07-23 07:28:42 +02:00
Dennis Guse ae25cae1bb Removed unused resources. 2019-07-23 07:28:42 +02:00
Dennis Guse 8a5cb93210 Removed unused translations. 2019-07-23 07:28:42 +02:00
Dennis Guse f33db6c766 Share: removed Google's chart generator 2019-07-23 07:28:42 +02:00
Dennis Guse 5a479c6dfe Settings: removed map configuration. 2019-07-23 07:28:42 +02:00
Dennis Guse 1661fc96b2 Removed support for ANT+. 2019-07-23 07:28:42 +02:00
Dennis Guse eb78c66ea6 Removed ActivityRecognition via Google Play service. 2019-07-23 07:28:42 +02:00
Dennis Guse 5a264c5c53 Removed MapOverlay. 2019-07-23 07:28:42 +02:00
Dennis Guse 8255fef72d File formats: removed CSV and TCX. 2019-07-23 07:28:42 +02:00
Dennis Guse 1c26dd109a Removed old-school key/value backup. 2019-07-23 07:28:42 +02:00
Dennis Guse a62dee645b Cleanup. 2019-07-23 07:28:42 +02:00
Dennis Guse de49a947f3 Removed export stuff. 2019-07-23 07:28:42 +02:00
Dennis Guse 078533dd3f Update dependencies and removed integration code. 2019-07-23 07:28:42 +02:00
Dennis Guse 09798c95c2 Removed Accounts and sync. 2019-07-23 07:28:42 +02:00
Dennis Guse 57bcded2a9 App now compiles and runs. 2019-07-23 07:28:42 +02:00
Dennis Guse 7d9a7659d8 Removed analytics code. 2019-07-23 07:28:42 +02:00
Dennis Guse 9d8dee86e8 Code compiles now. Removed large parts of sync. 2019-07-23 07:28:42 +02:00
Dennis Guse d170e92de5 Build: disabled Google API keys. 2019-07-23 07:28:42 +02:00
Dennis Guse 3a699f95be Build: upgraded build toolchain. 2019-07-23 07:28:37 +02:00
Dennis Guse ce61530431 Upgraded .gitignore. 2019-07-23 07:27:24 +02:00
Clément Poulain 0e1a20edd3 Merge pull request #6 from garyvdm/remove_iml
Remove and ignore .iml files.
2016-09-25 23:03:32 +02:00
Clément Poulain 177a28611e Merge pull request #5 from garyvdm/gradle_upgrade
Update gradle version. Make gradlew executable.
2016-09-18 12:49:56 +02:00
Clément Poulain 5b60a879b2 Add "How to build" section to README 2016-09-18 12:31:25 +02:00
Clément Poulain fd42cae3b1 Use same name format for backup and map API keys 2016-09-18 12:19:23 +02:00
Gary van der Merwe 944861d225 Remove and ignore .iml files. 2016-09-15 14:59:13 +02:00
Gary van der Merwe 8e5192de50 Update gradle version. Make gradlew executable. 2016-09-15 14:24:37 +02:00
Plonk42 aa53e87e10 Bump gradle version to fix build errors 2016-03-28 15:51:16 +02:00
Plonk42 e76004162a Upgrade robotium lib 2016-03-01 21:37:00 +01:00
Plonk42 35482511af Revert "Bump SDK versions"
This reverts a4c41643f0
2016-03-01 21:36:59 +01:00
Plonk42 b604f0619e Update releases information 2016-03-01 21:24:10 +01:00
Plonk42 8eed97cf3e Move protobuf dependency to maven 2016-02-19 00:51:06 +01:00
Plonk42 a4c41643f0 Bump SDK versions 2016-02-19 00:50:42 +01:00
Plonk42 592333afab Create README.md 2016-02-18 22:36:02 +01:00
Plonk42 cf6b1d9489 Move Google Backup API key in its own git-ignored file 2016-02-18 01:59:25 +01:00
Plonk42 83c6b1924f More .idea files 2016-02-18 01:05:50 +01:00
Plonk42 e7fd12ee19 Remove file that should not be versioned 2016-02-17 22:52:19 +01:00
Plonk42 c1cec71bf1 Add Apache License 2.0 notice 2016-02-17 00:33:59 +01:00
Plonk42 4639b2092c Move Google Maps API key in its own git-ignored file 2016-02-17 00:25:37 +01:00
Plonk42 6e6ffe178b Update .iml 2016-02-17 00:25:02 +01:00
Plonk42 3ee0976ac4 Merge branch 'adt_to_android_studio' 2016-02-17 00:17:49 +01:00
Plonk42 a9b1581d1d Move everything one directory upper 2016-02-16 23:51:42 +01:00
Plonk42 aba8cb4090 Integrate EndToEnd tests and removed unused tests projects 2016-02-16 23:43:00 +01:00
Plonk42 b90c680805 Use google-play-services dependency instead of project 2016-02-16 23:32:39 +01:00
Plonk42 ca87a6b751 Remove unused projects avec migration to gradle 2016-02-16 23:08:08 +01:00
Plonk42 70f0475171 Move from Eclipse ADT to Android Studio 2016-02-16 21:20:00 +01:00
Jimmy Shih 17ce705dfe Update author for PolarSensorManager 2014-03-31 13:14:30 -07:00
Jimmy Shih 34e48b0f02 Added tag v2.0.6 for changeset 42c74d340f83 2014-01-31 16:32:31 -08:00
1635 changed files with 68183 additions and 74902 deletions
+4
View File
@@ -0,0 +1,4 @@
# These are supported funding model platforms
liberapay: OpenTracks
custom: https://play.google.com/store/apps/details?id=de.dennisguse.opentracks.playstore
+26
View File
@@ -0,0 +1,26 @@
---
name: Bug report
about: Report issues of OpenTracks features
title: ''
labels: potential bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
If applicable:
* add screenshots
* add logcat output
**Technical information**
- Device: [e.g. Nexus 7 (2013)]
- OS: [e.g. LineageOS 15.1]
- Version [e.g. v3.2.4]
+20
View File
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for OpenTracks
title: ''
labels: enhancement
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
+21
View File
@@ -0,0 +1,21 @@
# Thanks for your contribution.
## PLEASE REMOVE
To support us in providing a nice (and fast) open-source experience:
1. Verify that the tests are passing
2. Check that the code is properly formatted (using AndroidStudio's autoformatter)
3. Provide write access to the [branch](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/allowing-changes-to-a-pull-request-branch-created-from-a-fork)
4. If the PR is not ready for review, please submit it as a [draft](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests#draft-pull-requests)
## PLEASE REMOVE
**Describe the pull request**
A clear and concise description of what the pull request changes/adds.
**Link to the the issue**
(If available): The link to the issue that this pull request solves.
**License agreement**
By opening this pull request, you are providing your contribution under the _Apache License 2.0_ (see [LICENSE.md](LICENSE.md)).
**Note: new dependencies/libraries**
Please refrain from introducing new libraries without consulting the team.
+10
View File
@@ -0,0 +1,10 @@
version: 2
updates:
- package-ecosystem: "gradle"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
+34
View File
@@ -0,0 +1,34 @@
name: "CodeQL"
on:
push:
branches: [main]
pull_request:
branches: [main]
schedule:
- cron: '0 6 * * 1'
jobs:
analyse:
name: Analyse
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
fetch-depth: 2
- run: git checkout HEAD^2
if: ${{ github.event_name == 'pull_request' }}
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: java
- run: |
./gradlew build
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
+21
View File
@@ -0,0 +1,21 @@
#https://github.com/marketplace/actions/android-emulator-runner
name: Test
on: [push, pull_request]
jobs:
test:
runs-on: macos-latest
strategy:
matrix:
api-level: [29]
target: [default]
steps:
- name: checkout
uses: actions/checkout@v2
- name: run tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ matrix.api-level }}
target: ${{ matrix.target }}
arch: x86_64
script: ./gradlew connectedCheck
+82
View File
@@ -0,0 +1,82 @@
# Built application files
*.apk
*.ap_
# Files for the ART/Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
out/
release/
# Gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Android Studio Navigation editor temp files
.navigation/
# Android Studio captures folder
captures/
# IntelliJ
*.iml
.idea/workspace.xml
.idea/tasks.xml
.idea/gradle.xml
.idea/assetWizardSettings.xml
.idea/dictionaries
.idea/libraries
.idea/caches
# IntelliJ IDEA
*.iws
/out/
# User-specific configurations
.idea/.name
.idea/caches/
.idea/compiler.xml
.idea/copyright/profiles_settings.xml
.idea/dataSources.ids
.idea/datasources.xml
.idea/dynamic.xml
.idea/encodings.xml
.idea/jsLibraryMappings.xml
.idea/libraries/
.idea/misc.xml
.idea/modules.xml
.idea/scopes/scope_settings.xml
.idea/shelf/
.idea/sqlDataSources.xml
.idea/vcs.xml
.idea/uiDesigner.xml
.idea/jarRepositories.xml
.idea/markdown-navigator-enh.xml
.idea/markdown-navigator.xml
# Keystore files
*.jks
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
# Fastlane
Appfile
releasePlayStore/*
Gemfile.lock
-11
View File
@@ -1,11 +0,0 @@
syntax:glob
*/bin
*/gen/**
*/proguard/**
.metadata
MyTracksTest/AnnotationProcessor.log
**/*.pyc
**/*.pyo
syntax: glob
MyTracksTest/hs_err_pid*.log
+137
View File
@@ -0,0 +1,137 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<JetCodeStyleSettings>
<option name="PACKAGES_TO_USE_STAR_IMPORTS">
<value>
<package name="java.util" alias="false" withSubpackages="false" />
<package name="kotlinx.android.synthetic" alias="false" withSubpackages="true" />
<package name="io.ktor" alias="false" withSubpackages="true" />
</value>
</option>
<option name="PACKAGES_IMPORT_LAYOUT">
<value>
<package name="" alias="false" withSubpackages="true" />
<package name="java" alias="false" withSubpackages="true" />
<package name="javax" alias="false" withSubpackages="true" />
<package name="kotlin" alias="false" withSubpackages="true" />
<package name="" alias="true" withSubpackages="true" />
</value>
</option>
</JetCodeStyleSettings>
<MarkdownNavigatorCodeStyleSettings>
<option name="RIGHT_MARGIN" value="72" />
</MarkdownNavigatorCodeStyleSettings>
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>
+4
View File
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
</project>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RenderSettings">
<option name="showDecorations" value="true" />
</component>
</project>
+12
View File
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
</set>
</option>
</component>
</project>
Generated
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>
+35
View File
@@ -0,0 +1,35 @@
# How to contribute?
## Testing
Just use OpenTracks and tell us what can be improved by opening an issue [here](https://github.com/OpenTracksApp/OpenTracks/issues/new/choose)
If we broke things (happens now and then), please tell us also.
## Coding new features
You have a cool idea for a feature that is missing in OpenTracks?
And you would like to help by implementing it?
If not, you can just take a look at the [issue tracker](https://github.com/OpenTracksApp/OpenTracks/issues).
Advices:
* creating an issue beforehand might be a good idea
Sometimes it is helpful to discuss your idea and also your implementation approach first.
We may be able to give you some hints on how to tackle the problem.
It also makes merging your changes easier and, usually, faster.
* please only add new dependencies if is absolutely necessary
If you need to:
* tell us why those are required,
* what alternatives are existing, and
* why you choose this dependency.
And also verify that the license(s) are compatible with _Apache 2.0_ as well as open-source.
## Coding conventions
None so far.
Just keep it simple.
And follow the _scout rule_.
You can take a look at existing code and get a feeling for it.
Please autoformat your code using AndroidStudio's code formatter.
+3
View File
@@ -0,0 +1,3 @@
source "https://rubygems.org"
gem "fastlane"
+201
View File
@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-12
View File
@@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry kind="con" path="com.google.gdt.eclipse.managedapis.MANAGED_API_CONTAINER/drive-v2r30lv1.12.0-beta"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.google.gdt.eclipse.managedapis.MANAGED_API_CONTAINER/fusiontables-v1r16lv1.12.0-beta"/>
<classpathentry kind="con" path="com.google.gdt.eclipse.managedapis.MANAGED_API_CONTAINER/gdata-spreadsheet-2.1"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
@@ -1,22 +0,0 @@
<classpathentry kind="lib" path="libs/google-api-services-{{ api.name }}-{{ api.version }}-rev{{ api.revision }}-{{ features.releaseVersion }}.jar" sourcepath="libs-sources/google-api-services-{{ api.name }}-{{ api.version }}-rev{{ api.revision }}-{{ features.releaseVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-android2-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-android2-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-appengine-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-appengine-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-servlet-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-servlet-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib"path="libs/google-oauth-client-{{ features.oauthClientLibrary }}.jar" sourcepath="libs-sources/google-oauth-client-{{ features.oauthClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-oauth-client-appengine-{{ features.oauthClientLibrary }}.jar" sourcepath="libs-sources/google-oauth-client-appengine-{{ features.oauthClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-oauth-client-servlet-{{ features.oauthClientLibrary }}.jar" sourcepath="libs-sources/google-oauth-client-servlet-{{ features.oauthClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-android2-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-android2-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-android3-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-android3-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-appengine-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-appengine-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/commons-logging-{{ features.commonsLoggingVersion }}.jar" sourcepath="libs-sources/commons-logging-{{ features.commonsLoggingVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/gson-{{ features.gsonVersion }}.jar" sourcepath="libs-sources/gson-{{ features.gsonVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/guava-{{ features.guavaVersion }}.jar" sourcepath="libs-sources/guava-{{ features.guavaVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/httpclient-{{ features.httpClientVersion }}.jar" sourcepath="libs-sources/httpclient-{{ features.httpClientVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/httpcore-{{ features.httpCoreVersion }}.jar" sourcepath="libs-sources/httpcore-{{ features.httpCoreVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/jackson-core-asl-{{ features.jacksonCoreAslVersion }}.jar" sourcepath="libs-sources/jackson-core-asl-{{ features.jacksonCoreAslVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/jdo2-api-{{ features.jdo2ApiVersion }}.jar" sourcepath="libs-sources/jdo2-api-{{ features.jdo2ApiVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/protobuf-java-{{ features.protobufVersion }}.jar" sourcepath="libs-sources/protobuf-java-{{ features.protobufVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/transaction-api-{{ features.transactionApiVersion }}.jar" sourcepath="libs-sources/transaction-api-{{ features.transactionApiVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/xpp3-{{ features.xpp3Version }}.jar" sourcepath="libs-sources/xpp3-{{ features.xpp3Version }}-sources.jar"/>
@@ -1,27 +0,0 @@
BSD License
Copyright (c) 2000-2006, www.hamcrest.org
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of
conditions and the following disclaimer. Redistributions in binary form must reproduce
the above copyright notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the distribution.
Neither the name of Hamcrest nor the names of its contributors may be used to endorse
or promote products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
@@ -1,151 +0,0 @@
body {
margin: 0px;
padding: 0px;
}
img {
border:none;
}
table {
padding:0px;
width: 100%;
margin-left: -2px;
margin-right: -2px;
}
acronym {
cursor: help;
border-bottom: 1px dotted #feb;
}
table.bodyTable th, table.bodyTable td {
padding: 2px 4px 2px 4px;
vertical-align: top;
}
div.clear{
clear:both;
visibility: hidden;
}
div.clear hr{
display: none;
}
#bannerLeft, #bannerRight {
font-size: xx-large;
font-weight: bold;
}
#bannerLeft img, #bannerRight img {
margin: 0px;
}
.xleft, #bannerLeft img {
float:left;
}
.xright, #bannerRight {
float:right;
}
#banner {
padding: 0px;
}
#banner img {
border: none;
}
#breadcrumbs {
padding: 3px 10px 3px 10px;
}
#leftColumn {
width: 170px;
float:left;
overflow: auto;
}
#bodyColumn {
margin-right: 1.5em;
margin-left: 197px;
}
#legend {
padding: 8px 0 8px 0;
}
#navcolumn {
padding: 8px 4px 0 8px;
}
#navcolumn h5 {
margin: 0;
padding: 0;
font-size: small;
}
#navcolumn ul {
margin: 0;
padding: 0;
font-size: small;
}
#navcolumn li {
list-style-type: none;
background-image: none;
background-repeat: no-repeat;
background-position: 0 0.4em;
padding-left: 16px;
list-style-position: outside;
line-height: 1.2em;
font-size: smaller;
}
#navcolumn li.expanded {
background-image: url(../images/expanded.gif);
}
#navcolumn li.collapsed {
background-image: url(../images/collapsed.gif);
}
#poweredBy {
text-align: center;
}
#navcolumn img {
margin-top: 10px;
margin-bottom: 3px;
}
#poweredBy img {
display:block;
margin: 20px 0 20px 17px;
}
#search img {
margin: 0px;
display: block;
}
#search #q, #search #btnG {
border: 1px solid #999;
margin-bottom:10px;
}
#search form {
margin: 0px;
}
#lastPublished {
font-size: x-small;
}
.navSection {
margin-bottom: 2px;
padding: 8px;
}
.navSectionHead {
font-weight: bold;
font-size: x-small;
}
.section {
padding: 4px;
}
#footer {
padding: 3px 10px 3px 10px;
font-size: x-small;
}
#breadcrumbs {
font-size: x-small;
margin: 0pt;
}
.source {
padding: 12px;
margin: 1em 7px 1em 7px;
}
.source pre {
margin: 0px;
padding: 0px;
}
#navcolumn img.imageLink, .imageLink {
padding-left: 0px;
padding-bottom: 0px;
padding-top: 0px;
padding-right: 2px;
border: 0px;
margin: 0px;
}
@@ -1,141 +0,0 @@
body {
padding: 0px 0px 10px 0px;
}
body, td, select, input, li{
font-family: Verdana, Helvetica, Arial, sans-serif;
font-size: 13px;
}
code{
font-family: Courier, monospace;
font-size: 13px;
}
a {
text-decoration: none;
}
a:link {
color:#36a;
}
a:visited {
color:#47a;
}
a:active, a:hover {
color:#69c;
}
#legend li.externalLink {
background: url(../images/external.png) left top no-repeat;
padding-left: 18px;
}
a.externalLink, a.externalLink:link, a.externalLink:visited, a.externalLink:active, a.externalLink:hover {
background: url(../images/external.png) right center no-repeat;
padding-right: 18px;
}
#legend li.newWindow {
background: url(../images/newwindow.png) left top no-repeat;
padding-left: 18px;
}
a.newWindow, a.newWindow:link, a.newWindow:visited, a.newWindow:active, a.newWindow:hover {
background: url(../images/newwindow.png) right center no-repeat;
padding-right: 18px;
}
h2 {
padding: 4px 4px 4px 6px;
border: 1px solid #999;
color: #900;
background-color: #ddd;
font-weight:900;
font-size: x-large;
}
h3 {
padding: 4px 4px 4px 6px;
border: 1px solid #aaa;
color: #900;
background-color: #eee;
font-weight: normal;
font-size: large;
}
h4 {
padding: 4px 4px 4px 6px;
border: 1px solid #bbb;
color: #900;
background-color: #fff;
font-weight: normal;
font-size: large;
}
h5 {
padding: 4px 4px 4px 6px;
color: #900;
font-size: normal;
}
p {
line-height: 1.3em;
font-size: small;
}
#breadcrumbs {
border-top: 1px solid #aaa;
border-bottom: 1px solid #aaa;
background-color: #ccc;
}
#leftColumn {
margin: 10px 0 0 5px;
border: 1px solid #999;
background-color: #eee;
}
#navcolumn h5 {
font-size: smaller;
border-bottom: 1px solid #aaaaaa;
padding-top: 2px;
color: #000;
}
table.bodyTable th {
color: white;
background-color: #bbb;
text-align: left;
font-weight: bold;
}
table.bodyTable th, table.bodyTable td {
font-size: 1em;
}
table.bodyTable tr.a {
background-color: #ddd;
}
table.bodyTable tr.b {
background-color: #eee;
}
.source {
border: 1px solid #999;
}
dl {
padding: 4px 4px 4px 6px;
border: 1px solid #aaa;
background-color: #ffc;
}
dt {
color: #900;
}
#organizationLogo img, #projectLogo img, #projectLogo span{
margin: 8px;
}
#banner {
border-bottom: 1px solid #fff;
}
.errormark, .warningmark, .donemark, .infomark {
background: url(../images/icon_error_sml.gif) no-repeat;
}
.warningmark {
background-image: url(../images/icon_warning_sml.gif);
}
.donemark {
background-image: url(../images/icon_success_sml.gif);
}
.infomark {
background-image: url(../images/icon_info_sml.gif);
}
@@ -1,7 +0,0 @@
#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {
display: none !important;
}
#bodyColumn, body.docs div.docs {
margin: 0 !important;
border: none !important
}
@@ -1 +0,0 @@
/* You can override this file with your own styles */
File diff suppressed because one or more lines are too long
Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 53 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1010 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 990 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 220 B

@@ -1,686 +0,0 @@
{
"discoveryLink": "./apis/drive/v2/rest",
"kind": "discovery#directoryItem",
"description": "The API to interact with Drive.",
"title": "Drive API",
"discoveryRestUrl": "https://www.googleapis.com/discovery/v1/apis/drive/v2/rest",
"preferred": true,
"version": "v2",
"icons": {
"x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png",
"x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png"
},
"documentationLink": "https://developers.google.com/drive/",
"id": "drive:v2",
"name": "drive",
"files": [
{
"downloadUrl": "/downloads/drive/v2/30/java/1.12.0-beta/google-api-services-drive-v2-rev30-1.12.0-beta.jar",
"path": "google-api-services-drive-v2-rev30-1.12.0-beta.jar",
"type": "binary",
"timestamp": "2012-12-08 00:32"
},
{
"downloadUrl": "/downloads/drive/v2/30/java/1.12.0-beta/google-api-services-drive-v2-rev30-1.12.0-beta-javadoc.jar",
"path": "google-api-services-drive-v2-rev30-1.12.0-beta-javadoc.jar",
"type": "documentation",
"timestamp": "2012-12-08 00:33"
},
{
"downloadUrl": "/downloads/drive/v2/30/java/1.12.0-beta/google-api-services-drive-v2-rev30-1.12.0-beta-sources.jar",
"path": "google-api-services-drive-v2-rev30-1.12.0-beta-sources.jar",
"type": "source",
"timestamp": "2012-12-08 00:32"
},
{
"path": "google-api-services-drive-v2-rev30-1.12.0-beta.jar.properties",
"type": "android.properties"
}
],
"revision": 30,
"language": "java",
"language_version": "1.12.0-beta",
"dependencies": [
{
"files": [
{
"downloadUrl": "http://google-api-java-client.googlecode.com/files/google-api-java-client-1.12.0-beta.zip",
"type": "bundle"
}
],
"version": "1.12.0-beta",
"name": "Google API Java Client Bundle",
"environments": [
"manual"
]
},
{
"files": [
{
"path": "libs/google-api-client-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-api-client-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-api-client-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Google APIs Client Library",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/google-api-client-android-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-api-client-android-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-api-client-android-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Android platform extensions to the Google APIs Client Library",
"environments": [
"android"
]
},
{
"files": [
{
"path": "libs/google-api-client-appengine-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-api-client-appengine-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Google App Engine extensions to the Google APIs Client Library",
"environments": [
"appengine"
]
},
{
"files": [
{
"path": "libs/google-api-client-java6-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-api-client-java6-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Java 6 (and higher) extensions to the Google APIs Client Library",
"environments": [
"generic"
]
},
{
"files": [
{
"path": "libs/google-oauth-client-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-oauth-client-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-oauth-client-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Google OAuth Client Library",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/google-oauth-client-appengine-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-oauth-client-appengine-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Google App Engine extensions to the Google OAuth Client Library",
"environments": [
"appengine"
]
},
{
"files": [
{
"path": "libs/google-oauth-client-java6-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-oauth-client-java6-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Java 6 (and higher) extensions to the Google OAuth Client Library",
"environments": [
"generic"
]
},
{
"files": [
{
"path": "libs/google-oauth-client-jetty-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-oauth-client-jetty-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Jetty extensions to the Google OAuth Client Library",
"environments": [
"generic"
]
},
{
"files": [
{
"path": "libs/google-oauth-client-servlet-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-oauth-client-servlet-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Servlet and JDO extensions to the Google OAuth Client Library",
"environments": [
"appengine",
"servlet"
]
},
{
"files": [
{
"path": "libs/google-http-client-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-http-client-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-http-client-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Google HTTP Client Library",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/google-http-client-android-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-http-client-android-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-http-client-android-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Android platform extensions to the Google HTTP Client Library",
"environments": [
"android"
]
},
{
"files": [
{
"path": "libs/google-http-client-appengine-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-http-client-appengine-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.12.0-beta",
"name": "Google App Engine extensions to the Google HTTP Client Library",
"environments": [
"appengine"
]
},
{
"files": [
{
"path": "libs/google-http-client-gson-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-http-client-gson-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-http-client-gson-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "GSON extensions to the Google HTTP Client Library",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/google-http-client-jackson-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-http-client-jackson-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-http-client-jackson-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Jackson extensions to the Google HTTP Client Library",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/google-http-client-jackson2-1.12.0-beta.jar",
"type": "binary"
},
{
"path": "libs-sources/google-http-client-jackson2-1.12.0-beta-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/google-http-client-jackson2-1.12.0-beta.jar.properties",
"type": "android-properties"
}
],
"version": "1.12.0-beta",
"name": "Jackson 2 extensions to the Google HTTP Client Library",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/commons-logging-1.1.1.jar",
"type": "binary"
},
{
"path": "libs-sources/commons-logging-1.1.1-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "1.1.1",
"name": "Commons Logging",
"environments": [
"servlet",
"generic"
]
},
{
"files": [
{
"path": "libs/guava-jdk5-13.0.jar",
"type": "binary"
},
{
"path": "libs-sources/guava-jdk5-13.0-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/guava-jdk5-13.0.jar.properties",
"type": "android-properties"
}
],
"version": "jdk5-13.0",
"name": "Google Guava",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/gson-2.1.jar",
"type": "binary"
},
{
"path": "libs-sources/gson-2.1-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/gson-2.1.jar.properties",
"type": "android-properties"
}
],
"version": "2.1",
"name": "GSON",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/httpclient-4.0.3.jar",
"type": "binary"
},
{
"path": "libs-sources/httpclient-4.0.3-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "4.0.3",
"name": "HTTP Client",
"environments": [
"servlet",
"generic"
]
},
{
"files": [
{
"path": "libs/httpcore-4.0.1.jar",
"type": "binary"
},
{
"path": "libs-sources/httpcore-4.0.1-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "4.0.1",
"name": "HTTP Core",
"environments": [
"servlet",
"generic"
]
},
{
"files": [
{
"path": "libs/jackson-core-asl-1.9.9.jar",
"type": "binary"
},
{
"path": "libs-sources/jackson-core-asl-1.9.9-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/jackson-core-asl-1.9.9.jar.properties",
"type": "android-properties"
}
],
"version": "1.9.9",
"name": "Jackson Core ASL",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/jackson-core-2.0.5.jar",
"type": "binary"
},
{
"path": "libs-sources/jackson-core-2.0.5-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
},
{
"path": "libs/jackson-core-2.0.5.jar.properties",
"type": "android-properties"
}
],
"version": "2.0.5",
"name": "Jackson2 Core",
"environments": [
"*"
]
},
{
"files": [
{
"path": "libs/jdo2-api-2.3-eb.jar",
"type": "binary"
},
{
"path": "libs-sources/jdo2-api-2.3-eb-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "2.3-eb",
"name": "JDO2 API",
"environments": [
"appengine",
"servlet"
]
},
{
"files": [
{
"path": "libs/jetty-6.1.26.jar",
"type": "binary"
},
{
"path": "libs-sources/jetty-6.1.26-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "6.1.26",
"name": "Jetty",
"environments": [
"generic"
]
},
{
"files": [
{
"path": "libs/jetty-util-6.1.26.jar",
"type": "binary"
},
{
"path": "libs-sources/jetty-util-6.1.26-sources.jar",
"type": "source"
},
{
"path": "dependencies/APACHE-LICENSE.txt",
"type": "license"
}
],
"version": "6.1.26",
"name": "Jetty Util",
"environments": [
"generic"
]
},
{
"files": [
{
"path": "libs/transaction-api-1.1.jar",
"type": "binary"
},
{
"path": "libs-sources/transaction-api-1.1-sources.jar",
"type": "source"
},
{
"path": "dependencies/CDDL-LICENSE.txt",
"type": "license"
}
],
"version": "1.1",
"name": "Transaction API",
"environments": [
"appengine",
"servlet"
]
},
{
"files": [
{
"path": "libs/xpp3-1.1.4c.jar",
"type": "binary"
},
{
"path": "libs-sources/xpp3-1.1.4c-sources.jar",
"type": "source"
},
{
"path": "dependencies/xpp3_LICENSE.txt",
"type": "license"
}
],
"version": "1.1.4c",
"name": "XPP3",
"environments": [
"appengine",
"servlet",
"generic"
]
}
],
"proguard-config": "proguard-google-api-client.txt",
"icon_files": {
"x32": "icons/drive_icon_32.png",
"x16": "icons/drive_icon_16.png"
}
}
@@ -1 +0,0 @@
src=../libs-sources/google-api-services-drive-v2-rev30-1.12.0-beta-sources.jar
Binary file not shown.

Before

Width:  |  Height:  |  Size: 612 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

@@ -1 +0,0 @@
src=../libs-sources/google-api-client-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-api-client-android-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-http-client-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-http-client-android-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-http-client-gson-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-http-client-jackson-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-http-client-jackson2-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/google-oauth-client-1.12.0-beta-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/gson-2.1-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/guava-jdk5-13.0-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/jackson-core-2.0.5-sources.jar
@@ -1 +0,0 @@
src=../libs-sources/jackson-core-asl-1.9.9-sources.jar
@@ -1,25 +0,0 @@
# ProGuard Configuration file
#
# See http://proguard.sourceforge.net/index.html#manual/usage.html
# Needed to keep generic types and @Key annotations accessed via reflection
-keepattributes Signature,RuntimeVisibleAnnotations,AnnotationDefault
-keepclassmembers class * {
@com.google.api.client.util.Key <fields>;
}
# Needed by Guava
# See https://groups.google.com/forum/#!topic/guava-discuss/YCZzeCiIVoI
-dontwarn sun.misc.Unsafe
-dontwarn com.google.common.collect.MinMaxPriorityQueue
# Needed by google-http-client-android when linking against an older platform version
-dontwarn com.google.api.client.extensions.android.**
# Needed by google-api-client-android when linking against an older platform version
-dontwarn com.google.api.client.googleapis.extensions.android.**
@@ -1,158 +0,0 @@
<html>
<title>Drive API v2 Client Library for Java</title>
<body>
<h2>Drive API v2 Client Library for Java</h2>
<h3>Overview</h3>
<p>High-level details about this library can be found at
<a href="http://code.google.com/p/google-api-java-client">http://code.google.com/p/google-api-java-client</a>
<ul>
<li><a href='http://code.google.com/p/google-api-java-client/wiki/ReleaseNotes#Version_1.12.0-beta'>Release Notes</a></li>
<li><a href='http://javadoc.google-api-java-client.googlecode.com/hg/apis/drive/v2/index.html'>JavaDoc</a></li>
<li><a href='http://code.google.com/p/google-api-java-client/wiki/DeveloperGuide'>Developer's Guide</a></li>
<li><a href='http://groups.google.com/group/google-api-java-client'>Support</a></li>
</ul>
<h3>License</h3>
The license can be found <a href='LICENSE.txt'>here</a>.<br/>
<h3>Generated service-specific Library</h3>
The generated service-specific library can be found in the top level directory
of the zip file:
google-api-services-drive-v2-rev30-1.12.0-beta.jar
<h3>Maven Usage</h3>
Maven users can specify the service-specific generated library in their
project's plugin configuration:
<pre>
&lt;repositories&gt;
&lt;repository&gt;
&lt;id&gt;googleapis&lt;/id&gt;
&lt;url&gt;http://mavenrepo.google-api-java-client.googlecode.com/hg/&lt;/url&gt;
&lt;/repository&gt;
&lt;/repositories&gt;
&lt;dependency&gt;
&lt;groupId&gt;com.google.apis&lt;/groupId&gt;
&lt;artifactId&gt;google-api-services-drive&lt;/artifactId&gt;
&lt;version&gt;v2-rev30-1.12.0-beta&lt;/version&gt;
&lt;/dependency&gt;
</pre>
<h3>Eclipse</h3>
A .classpath file snippet that can be included in your project's .classpath has been provided <a href='classpath-include'>here</a>.
Please only use the classpathentry's you actually need (see below for details).
<h3>ProGuard</h3>
A ProGuard configuration file <a href="proguard-google-api-client.txt">proguard-google-api-client.txt</a>
is included for common settings for using the library. On Android projects, you may want to add a reference to
<code>proguard-google-api-client.txt</code> in the <code>project.properties</code> file under the
<code>proguard.config</code> property.
<h3>Dependencies</h3>
<p>
Dependent jars for
google-api-services-drive-v2-rev30-1.12.0-beta.jar
can be found in the <a href='libs'>libs</a> folder and the corresponding source
jars can be found in the <a href='libs-sources'>libs-sources</a> folder.
<br/><br/>
The dependency structure and licenses can be found in
<a href='dependencies/dependencies.html'>dependencies.html</a>.
</p>
<h3>Dependencies for all Platforms</h3>
The following are the jars from the <a href='libs'>libs</a> folder required for
applications on all platforms:
<ul>
<li>google-api-client-1.12.0-beta.jar</li>
<li>google-oauth-client-1.12.0-beta.jar</li>
<li>google-http-client-1.12.0-beta.jar</li>
<li>guava-jdk5-13.0.jar</li>
<li>jsr305-1.3.9.jar</li>
<li>google-http-client-gson-1.12.0-beta.jar (when using GSON)
<ul>
<li>gson-2.1.jar</li>
</ul>
</li>
<li>google-http-client-jackson-1.12.0-beta.jar (when using Jackson)
<ul>
<li>jackson-core-asl-1.9.9.jar</li>
</ul>
</li>
<li>google-http-client-jackson2-1.12.0-beta.jar (when using Jackson 2)
<ul>
<li>jackson-core-$2.0.5.jar</li>
</ul>
</li>
</ul>
<h3>Android Dependencies</h3>
The following are the jars from the <a href='libs'>libs</a> folder required for
android applications or a newer compatible version of each dependency:
<ul>
<li>google-api-client-android-1.12.0-beta.jar (for SDK >= 2.1)</li>
<li>google-http-client-android-1.12.0-beta.jar (for SDK >= 2.1)</li>
<li>[deprecated] google-api-client-android2-1.12.0-beta.jar (for SDK >= 2.1)</li>
<li>[deprecated] google-http-client-android2-1.12.0-beta.jar (for SDK >= 2.1)</li>
<li>[deprecated] google-http-client-android3-1.12.0-beta.jar (for SDK >= 3.0)</li>
</ul>
<The <a href='libs'>libs</a> folder also contains properties files that specify the location of source
jars for Android projects in Eclipse.<br/>
Please see the
<a href='http://code.google.com/p/google-api-java-client/wiki/Android'>Android wiki</a>
for the Android Developer's Guide.
<h3>Google App Engine Dependencies</h3>
The following are the jars from the <a href='libs'>libs</a> folder required for
Google App Engine applications or a newer compatible version of each dependency:
<ul>
<li>google-api-client-appengine-1.12.0-beta.jar</li>
<li>google-oauth-client-appengine-1.12.0-beta.jar</li>
<li>google-oauth-client-servlet-1.12.0-beta.jar</li>
<li>google-http-client-appengine-1.12.0-beta.jar</li>
<li>jdo2-api-2.3-eb.jar</li>
<li>transaction-api-1.1.jar</li>
<li>xpp3-1.1.4c.jar</li>
</ul>
Please see the
<a href='http://code.google.com/p/google-api-java-client/wiki/GoogleAppEngine'>GoogleAppEngine wiki</a>
for the Google App Engine Developer's Guide.
<h3>Servlet Dependencies</h3>
The following are the jars from the <a href='libs'>libs</a> folder required for
Servlet applications or a newer compatible version of each dependency:
<ul>
<li>google-oauth-client-1.12.0-beta.jar</li>
<li>google-oauth-client-servlet-1.12.0-beta.jar</li>
<li>commons-logging-1.1.1.jar</li>
<li>httpclient-4.0.3.jar</li>
<li>httpcore-4.0.1.jar</li>
<li>jdo2-api-2.3-eb.jar</li>
<li>transaction-api-1.1.jar</li>
<li>xpp3-1.1.4c.jar</li>
</ul>
<h3>General Purpose Java 5 Environment Dependencies</h3>
The following are the jars from the <a href='libs'>libs</a> folder required for
general purpose Java 5 applications (or a newer compatible version of each dependency):
<ul>
<li>google-api-client-java6-1.12.0-beta.jar</li>
<li>google-oauth-client-java6-1.12.0-beta.jar</li>
<ul>
<li>google-oauth-client-jetty-${project.oauth.version}.jar (for Jetty 6)
<ul>
<li>jetty-${jettyVersion}</li>
<li>jetty-util-${jettyUtilVersion}</li>
</ul>
</li>
</ul>
<li>commons-logging-1.1.1.jar</li>
<li>httpclient-4.0.3.jar</li>
<li>httpcore-4.0.1.jar</li>
<li>xpp3-1.1.4c.jar</li>
</ul>
</body>
</html>
@@ -1,202 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@@ -1,22 +0,0 @@
<classpathentry kind="lib" path="libs/google-api-services-{{ api.name }}-{{ api.version }}-rev{{ api.revision }}-{{ features.releaseVersion }}.jar" sourcepath="libs-sources/google-api-services-{{ api.name }}-{{ api.version }}-rev{{ api.revision }}-{{ features.releaseVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-android2-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-android2-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-appengine-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-appengine-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-api-client-servlet-{{ features.baseClientLibrary }}.jar" sourcepath="libs-sources/google-api-client-servlet-{{ features.baseClientLibrary }}-sources.jar"/>
<classpathentry kind="lib"path="libs/google-oauth-client-{{ features.oauthClientLibrary }}.jar" sourcepath="libs-sources/google-oauth-client-{{ features.oauthClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-oauth-client-appengine-{{ features.oauthClientLibrary }}.jar" sourcepath="libs-sources/google-oauth-client-appengine-{{ features.oauthClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-oauth-client-servlet-{{ features.oauthClientLibrary }}.jar" sourcepath="libs-sources/google-oauth-client-servlet-{{ features.oauthClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-android2-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-android2-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-android3-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-android3-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/google-http-client-appengine-{{ features.httpClientLibrary }}.jar" sourcepath="libs-sources/google-http-client-appengine-{{ features.httpClientLibrary }}-sources.jar"/>
<classpathentry kind="lib" path="libs/commons-logging-{{ features.commonsLoggingVersion }}.jar" sourcepath="libs-sources/commons-logging-{{ features.commonsLoggingVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/gson-{{ features.gsonVersion }}.jar" sourcepath="libs-sources/gson-{{ features.gsonVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/guava-{{ features.guavaVersion }}.jar" sourcepath="libs-sources/guava-{{ features.guavaVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/httpclient-{{ features.httpClientVersion }}.jar" sourcepath="libs-sources/httpclient-{{ features.httpClientVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/httpcore-{{ features.httpCoreVersion }}.jar" sourcepath="libs-sources/httpcore-{{ features.httpCoreVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/jackson-core-asl-{{ features.jacksonCoreAslVersion }}.jar" sourcepath="libs-sources/jackson-core-asl-{{ features.jacksonCoreAslVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/jdo2-api-{{ features.jdo2ApiVersion }}.jar" sourcepath="libs-sources/jdo2-api-{{ features.jdo2ApiVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/protobuf-java-{{ features.protobufVersion }}.jar" sourcepath="libs-sources/protobuf-java-{{ features.protobufVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/transaction-api-{{ features.transactionApiVersion }}.jar" sourcepath="libs-sources/transaction-api-{{ features.transactionApiVersion }}-sources.jar"/>
<classpathentry kind="lib" path="libs/xpp3-{{ features.xpp3Version }}.jar" sourcepath="libs-sources/xpp3-{{ features.xpp3Version }}-sources.jar"/>
@@ -1,27 +0,0 @@
BSD License
Copyright (c) 2000-2006, www.hamcrest.org
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of
conditions and the following disclaimer. Redistributions in binary form must reproduce
the above copyright notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the distribution.
Neither the name of Hamcrest nor the names of its contributors may be used to endorse
or promote products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
@@ -1,151 +0,0 @@
body {
margin: 0px;
padding: 0px;
}
img {
border:none;
}
table {
padding:0px;
width: 100%;
margin-left: -2px;
margin-right: -2px;
}
acronym {
cursor: help;
border-bottom: 1px dotted #feb;
}
table.bodyTable th, table.bodyTable td {
padding: 2px 4px 2px 4px;
vertical-align: top;
}
div.clear{
clear:both;
visibility: hidden;
}
div.clear hr{
display: none;
}
#bannerLeft, #bannerRight {
font-size: xx-large;
font-weight: bold;
}
#bannerLeft img, #bannerRight img {
margin: 0px;
}
.xleft, #bannerLeft img {
float:left;
}
.xright, #bannerRight {
float:right;
}
#banner {
padding: 0px;
}
#banner img {
border: none;
}
#breadcrumbs {
padding: 3px 10px 3px 10px;
}
#leftColumn {
width: 170px;
float:left;
overflow: auto;
}
#bodyColumn {
margin-right: 1.5em;
margin-left: 197px;
}
#legend {
padding: 8px 0 8px 0;
}
#navcolumn {
padding: 8px 4px 0 8px;
}
#navcolumn h5 {
margin: 0;
padding: 0;
font-size: small;
}
#navcolumn ul {
margin: 0;
padding: 0;
font-size: small;
}
#navcolumn li {
list-style-type: none;
background-image: none;
background-repeat: no-repeat;
background-position: 0 0.4em;
padding-left: 16px;
list-style-position: outside;
line-height: 1.2em;
font-size: smaller;
}
#navcolumn li.expanded {
background-image: url(../images/expanded.gif);
}
#navcolumn li.collapsed {
background-image: url(../images/collapsed.gif);
}
#poweredBy {
text-align: center;
}
#navcolumn img {
margin-top: 10px;
margin-bottom: 3px;
}
#poweredBy img {
display:block;
margin: 20px 0 20px 17px;
}
#search img {
margin: 0px;
display: block;
}
#search #q, #search #btnG {
border: 1px solid #999;
margin-bottom:10px;
}
#search form {
margin: 0px;
}
#lastPublished {
font-size: x-small;
}
.navSection {
margin-bottom: 2px;
padding: 8px;
}
.navSectionHead {
font-weight: bold;
font-size: x-small;
}
.section {
padding: 4px;
}
#footer {
padding: 3px 10px 3px 10px;
font-size: x-small;
}
#breadcrumbs {
font-size: x-small;
margin: 0pt;
}
.source {
padding: 12px;
margin: 1em 7px 1em 7px;
}
.source pre {
margin: 0px;
padding: 0px;
}
#navcolumn img.imageLink, .imageLink {
padding-left: 0px;
padding-bottom: 0px;
padding-top: 0px;
padding-right: 2px;
border: 0px;
margin: 0px;
}
@@ -1,141 +0,0 @@
body {
padding: 0px 0px 10px 0px;
}
body, td, select, input, li{
font-family: Verdana, Helvetica, Arial, sans-serif;
font-size: 13px;
}
code{
font-family: Courier, monospace;
font-size: 13px;
}
a {
text-decoration: none;
}
a:link {
color:#36a;
}
a:visited {
color:#47a;
}
a:active, a:hover {
color:#69c;
}
#legend li.externalLink {
background: url(../images/external.png) left top no-repeat;
padding-left: 18px;
}
a.externalLink, a.externalLink:link, a.externalLink:visited, a.externalLink:active, a.externalLink:hover {
background: url(../images/external.png) right center no-repeat;
padding-right: 18px;
}
#legend li.newWindow {
background: url(../images/newwindow.png) left top no-repeat;
padding-left: 18px;
}
a.newWindow, a.newWindow:link, a.newWindow:visited, a.newWindow:active, a.newWindow:hover {
background: url(../images/newwindow.png) right center no-repeat;
padding-right: 18px;
}
h2 {
padding: 4px 4px 4px 6px;
border: 1px solid #999;
color: #900;
background-color: #ddd;
font-weight:900;
font-size: x-large;
}
h3 {
padding: 4px 4px 4px 6px;
border: 1px solid #aaa;
color: #900;
background-color: #eee;
font-weight: normal;
font-size: large;
}
h4 {
padding: 4px 4px 4px 6px;
border: 1px solid #bbb;
color: #900;
background-color: #fff;
font-weight: normal;
font-size: large;
}
h5 {
padding: 4px 4px 4px 6px;
color: #900;
font-size: normal;
}
p {
line-height: 1.3em;
font-size: small;
}
#breadcrumbs {
border-top: 1px solid #aaa;
border-bottom: 1px solid #aaa;
background-color: #ccc;
}
#leftColumn {
margin: 10px 0 0 5px;
border: 1px solid #999;
background-color: #eee;
}
#navcolumn h5 {
font-size: smaller;
border-bottom: 1px solid #aaaaaa;
padding-top: 2px;
color: #000;
}
table.bodyTable th {
color: white;
background-color: #bbb;
text-align: left;
font-weight: bold;
}
table.bodyTable th, table.bodyTable td {
font-size: 1em;
}
table.bodyTable tr.a {
background-color: #ddd;
}
table.bodyTable tr.b {
background-color: #eee;
}
.source {
border: 1px solid #999;
}
dl {
padding: 4px 4px 4px 6px;
border: 1px solid #aaa;
background-color: #ffc;
}
dt {
color: #900;
}
#organizationLogo img, #projectLogo img, #projectLogo span{
margin: 8px;
}
#banner {
border-bottom: 1px solid #fff;
}
.errormark, .warningmark, .donemark, .infomark {
background: url(../images/icon_error_sml.gif) no-repeat;
}
.warningmark {
background-image: url(../images/icon_warning_sml.gif);
}
.donemark {
background-image: url(../images/icon_success_sml.gif);
}
.infomark {
background-image: url(../images/icon_info_sml.gif);
}
@@ -1,7 +0,0 @@
#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {
display: none !important;
}
#bodyColumn, body.docs div.docs {
margin: 0 !important;
border: none !important
}
@@ -1 +0,0 @@
/* You can override this file with your own styles */
File diff suppressed because one or more lines are too long
Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 53 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1010 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 990 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Some files were not shown because too many files have changed in this diff Show More