1
0
Fork 0
mirror of https://github.com/syncthing/syncthing-android.git synced 2024-11-30 00:01:19 +00:00
Commit graph

260 commits

Author SHA1 Message Date
Catfriend1
5fbd99619e
Add dialog if no compatible file manager was found (fixes #97) (#98)
Added a dialog to suggest a compatible open-source file-manager app if none is found.
Updated translations
2018-10-21 12:59:47 +02:00
Catfriend1
78b1af9d02 Update README and translations 2018-10-16 10:26:44 +02:00
Catfriend1
f8692f02ef
Add individual sync conditions for devices (#96)
* SyncConditionsActivity - Rename "folder" to "object" as it can mean a folder or device.

* Implement per-device sync conditions

* Default custom wifi whitelist to "all enabled"

* Update APK version to 0.14.51.7 / 4170

* Add checkbox "use Wi-Fi whitelist" in global run conditions

* Rename variable
2018-10-16 10:18:15 +02:00
Catfriend1
b84d4da34f
Default global pref PREF_RUN_ON_WIFI to true (#95)
in SyncConditionsActivity, according to definition in  app_settings.xml
2018-10-15 01:13:14 +02:00
Catfriend1
f6f90c9c2b
Allow specifying different sync conditions per folder (fixes #57) (#66)
* WIP - https://github.com/Catfriend1/syncthing-android/issues/57

* Add sync conditions activity

* Update folder edit layout

Implement SyncConditionsActivity stub

* Add dialog open logic

* Fix UI glitches

* Update APK version to 0.14.51.4 / 4167

* Revert "Update APK version to 0.14.51.4 / 4167"

This reverts commit 47bc4aa9ba219c134047765cc2fb49a9fa651fbe.

* Implement WiFi Ssid Whitelist UI

* Read per-folder sync conditions from prefs

* Implement onCheckedChange listeners

* Implement saving object sync conditions

* Remove early draft stuff

* Implement per folder master switch for custom sync conditions

* FolderActivity - More log

* Improve generation of object-specific constants

* Added onSyncPreconditionChanged to RunConditionMonitor

* Fix UI glitch

* Fix non-harming typos

* Refactor "on mobile data" sync condition

* Refactor "on wifi" sync condition

* Refactor "on whitelisted wifi" sync condition

* Refactor "on metered wifi" sync condition

* Refactor RunConditionMonitor#decideShouldRun

* RunConditionMonitor - Rename variables

* Pause/Unpause folders using RunConditionMonitor events

* Implement RunConditionMonitor#SyncConditionResult

* Fix lint - use editor.apply instead of editor.commit

* Updated translations

* Add null check in RestApi

* Fix missing explanation text

* Fix german translation

* Update APK version to 0.14.51.6 / 4169

* Update whatsnew
2018-10-15 00:29:52 +02:00
Catfriend1
c5a436fb61 Update APK version to 0.14.51.5 / 4168
Updated whatsnew
2018-10-13 11:58:56 +02:00
Catfriend1
b63eeb002b
Remove pref "advanced_folder_picker", make it default to enabled (fixes #92) (#94)
Remove shared pref "advanced_folder_picker" and make it default to enabled - only relevant for Android 4.x
2018-10-13 11:54:00 +02:00
Catfriend1
85daca6eb7
Preserve xml encoding on read, parse and save (fixes #88) (#89)
* Preserve xml encoding on read, parse and save (fixes #88)
2018-10-11 22:42:34 +02:00
Catfriend1
f9145b9fd5 Update APK version to 0.14.51.4 / 4167 2018-10-10 02:48:21 +02:00
Catfriend1
6030d6105c QA: Remove unused format string 2018-10-10 02:37:50 +02:00
Catfriend1
28040869e6
Tell user if location is disabled but "run on selected" WiFi is enabled (fixes #16) (#87)
* Tell user if location is disabled but "run on selected" WiFi is enabled.

* Update status tab while user looks at the UI and syncthing is disabled

* UI: Offer a solution
2018-10-10 02:16:38 +02:00
Catfriend1
12bc08c6dd
Implement import/export of the index database (fixes #83) (#84)
* Add export of index database

* Add import of index database

* Shutdown service before export and restart it afterwards.

* Do not import database if it doesn't exist on sdcard

* Do not attempt to delete the database export directory on export if it does not exist.

* Return to MainActivity after successful export

* Import/Export using an AsyncTask

* Fix compatibility with Android 5.x
2018-10-10 01:06:25 +02:00
Catfriend1
79d0d7cc4c
Fix notification not being cancelled on app shutdown (#81)
Fix notification not being cancelled on app shutdown if the app was continously in DISABLED state.
2018-10-08 05:19:52 +02:00
Catfriend1
c224bcb04a
Fix service.startForeground on Android 8+ (fixes #18) (fixes #80) (#79)
* Add push APK to device after build script

* Fix typo in SyncthingService comment

* Refactor SettingsActivity - updatePersistentNotification

Call updatePersistentNotification after the settings screen was left and not when the user toggles the alwaysRunInBackgroundAsAService checkbox.

* Automatically start app if push-to-device is enabled

* Remove PREF_NOTIFICATION_TYPE

* Only push APK to device if build succeeded

* Fix notifications and foreground service start/stop

* Use startForegroundService on Android 8+

* Fix startActivity called from non-Activity context (fixes #80)

* Fix comment
2018-10-08 05:00:59 +02:00
Catfriend1
cd3bca5141 Update APK version to 0.14.51.3 / 4166 2018-10-07 18:30:02 +02:00
Catfriend1
2021ef6806
Disable wakelock experimental option on Android 6+ (#77) 2018-10-07 18:28:46 +02:00
Catfriend1
466fc971dd
Add launcher icon indicating a debug build (#76) 2018-10-07 17:33:41 +02:00
Catfriend1
ecd8e7cd21 Update APK version to 0.14.51.2 / 4165 2018-10-07 15:34:36 +02:00
Catfriend1
c83422bb28
Update build.gradle to CompileSdkVersion 28 (#74) 2018-10-07 15:32:55 +02:00
Catfriend1
c57f53bd33
Add mdpi drawables (#75) 2018-10-07 15:13:49 +02:00
Catfriend1
fa6e4f4fd8 Update syncthing to v0.14.51
Update APK version to 0.14.51.1 / 4164
2018-10-04 18:34:10 +02:00
Catfriend1
9b8b04c105
Update syncthing to v0.14.51.rc4 (#72)
Update APK version to 0.14.51.rc4.1 / 4163
2018-09-29 23:09:41 +02:00
Catfriend1
1f3abb127b
Update NDK to android-ndk-r18 (#68)
* Update NDK to android-ndk-r18

* Update build.gradle, resolve lint warnings
2018-09-22 19:19:18 +02:00
Catfriend1
73775a116d
Improve building wrapper and native binaries on Windows and Linux
* Do not ask for root if root is disabled in settings
* Show error in UI when libSyncthing.so is missing
* build-syncthing - Install Go on demand on windows
* build-syncthing - Install Android NDK on demand on windows
* Update README.md
* Update APK version to 0.14.51.rc3.6 / 4162
2018-09-22 18:31:36 +02:00
Catfriend1
0203aebc40
Allow stopping the service manually when running as a service (#65) (fixes #63)
Allow stopping the service manually when running as a service in extraordinary cases to avoid the user has to reboot the phone (fixes #63)
2018-09-20 23:39:02 +02:00
Catfriend1
0ed501c362
Update Play/FDroid screenshots for en-GB (#64)
* Update APK version to 0.14.51.rc3.5 / 4161

* Update Play/FDroid screenshots for en-GB
2018-09-20 22:44:48 +02:00
Catfriend1
d1feb89082 Updated APK version to 0.14.51.rc3.4 / 4160 2018-09-17 09:15:17 +02:00
Catfriend1
38db4d9c32
Add import/export for app settings (SharedPreferences) (#61)
* Add export of SharedPreferences app settings
Add import/export to drawer

* Add import for app settings (SharedPreferences)
Move last_sync_id pref to Constants.java

* Add drawer icon for import / export feature

* Start or stay stopped according to run conditions after import

* Close SettingsActivity after sharedPref import
2018-09-17 09:13:07 +02:00
Catfriend1
861d92b855 Updated APK version to 0.14.51.rc3.3 / 4159
Updated whatsnew
2018-09-15 22:40:45 +02:00
Catfriend1
3eab8fe132
Speed up syncthing startup and reduce log spam (#60) 2018-09-15 22:26:16 +02:00
Catfriend1
ebb26d6a4b
Fix home volume not recognized on Android 8 (fixes #58) (#59)
* Fix home volume not recognized on Android 8 (fixes #58)

* Fix Downloads volume not recognized on Android 8
2018-09-15 22:06:32 +02:00
Catfriend1
cc0a35dc4e
Fix android.view.ViewRootImpl$CalledFromWrongThreadException (#56) 2018-09-15 21:09:15 +02:00
Catfriend1
6e3899f7e0
Fix UI glitch - folder type explanation not updating (fixes #53) (#54) 2018-09-15 20:37:56 +02:00
Catfriend1
23c9663023
Fix crash when ignoring devices or folders (fixes #50) (#52)
Fix unignoring devices and folders
Improve performance of RestApi#getDevices
2018-09-15 20:16:20 +02:00
Catfriend1
d084026548 Updated APK version to 0.14.51.rc3.2 / 4158 2018-09-15 12:52:16 +02:00
Catfriend1
3f93ec3ca4
Update Play screenshots de-DE (#51)
* Remove play language de_DE

* Update Play screenshots de-DE
2018-09-15 12:49:34 +02:00
Catfriend1
bdce748ac4
Fix parsing connectionServiceStatus (#49)
* Catch failures on gson-parsing SystemInfo

* Fix parsing connectionServiceStatus on recent syncthing version

* Add SystemStatusConnectionServiceStatusElement to model
2018-09-14 21:05:51 +02:00
Catfriend1
8a5e5d7e47
Update play descriptions (#47)
* Update play - app title and contact email

* Update apk version to 4157 - 0.14.51.rc3.1
Update EN, DE play descriptions to indicate the fork

* Add fork notice to all languages
2018-09-14 20:19:08 +02:00
Catfriend1
fdcafc6d1b
Update syncthing to v0.14.51-rc.2 (#43)
* Update syncthing to v0.14.51-rc.1

* Update syncthing to v0.14.51-rc.2

* Update fdroid metadata

* Update python build script
Use prebuilt go binaries from google and check SHA-256
after downloading requires files from google.
2018-09-13 09:57:31 +02:00
Catfriend1
9a8a43d273 Bumped version to 0.14.50.rc2.6 / 4154 2018-09-01 22:40:14 +02:00
Catfriend1
836624a93f
Rename app to "Syncthing-Fork" (#42)
* Rename app to "Syncthing-Fork"
* Update com.github.catfriend1.syncthingandroid.yml for F-Droid
* Update README.md
* Updated whatsnew
2018-09-01 22:33:13 +02:00
Catfriend1
850cad223c
Fix type of "mIgnoreListContent" in FolderActivity (#41)
App worked okay, but the type was wrong. Better fix it.
Verified working after fix.
2018-08-28 08:49:19 +02:00
Catfriend1
609cf1fffe Bumped version to 0.14.50.rc2.5 / 4153 2018-08-26 13:04:33 +02:00
Catfriend1
19991abd0d
Support in-app editing of folder's ignore list items (fixes #19) (#40)
* Read ignore list from REST
* Add write back of ignore list via REST endpoint call
* Disable the edit ignore EditText when a new folder is created to preserve existing ".stignore" contents
2018-08-26 13:02:37 +02:00
Catfriend1
bad36c4809
Fix override changes button not showing (fixes #38) (#39) 2018-08-26 10:47:55 +02:00
Catfriend1
a9ad589a95
Don't lock the drawer (#37)
If you start syncthing and run conditions do not apply, the drawer is locked. You can then only change settings, press the back or home button to leave the app running but exiting the app is not possible.
2018-08-26 01:24:29 +02:00
Catfriend1
49dc1d80af
Imported translations, bumped version to 0.14.50.rc2.4 / 4152 (#36) 2018-08-25 23:39:32 +02:00
Catfriend1
640d7f1e02
Remove unused import (#35) 2018-08-25 23:30:47 +02:00
Catfriend1
c44996012a
Fix shutdown during pending startup of the runtime (#34) 2018-08-25 23:09:09 +02:00
Catfriend1
4164798955
Stop polling when the user doesn't look at a tab (#32)
* Fix status tab refresh

* Stop polling when the user doesn't look at a tab
2018-08-25 22:28:25 +02:00
Catfriend1
a834edb2bd
Fix runtime left behind on app update (#31)
* Fix runtime left behind on app update

* Always kill runtime synchronously and run it asynchronously

* More log output
2018-08-25 21:35:00 +02:00
Catfriend1
bbeecc8777
Add "Uptime" to status tab (#30) 2018-08-25 17:52:43 +02:00
Catfriend1
d42f11ccff
Import translations (#29)
* Imported translations

* Update prepare-release.bash

* Imported translations
2018-08-25 02:21:28 +02:00
Catfriend1
e6af3ce3d2
Fix phone plugged to charger detection (#27)
* Fix phone plugged to charger detection

* Add detection for wireless charging
Correct API level from 21 to 17

* Fix typo in strings.xml
2018-08-25 01:21:30 +02:00
Catfriend1
f50b933278 Bump version to 0.14.50.rc2.3 / 4151 2018-08-23 09:47:17 +02:00
Catfriend1
8fea022982
Fix exit code 9 handling in SyncthingRunnable (#25)
Display syncthing native exit code on crash
2018-08-23 09:45:54 +02:00
Catfriend1
fb0479e5f2
Reorder welcome wizard slides (#24) 2018-08-23 08:05:31 +02:00
Catfriend1
ce9ea0b1d1 Bump version to 0.14.50.rc2.2 2018-08-22 22:58:29 +02:00
Catfriend1
d9a8cbb0d7
Better default prefs and crash detection
Move pref "use_root" to behaviour category (#23)
Always show notification if syncthing binary crashed
fixes #https://github.com/Catfriend1/syncthing-android/issues/17
fixes #https://github.com/syncthing/syncthing-android/issues/1172
fixes #https://github.com/syncthing/syncthing-android/issues/1220
2018-08-22 22:50:23 +02:00
Catfriend1
0bfc7e3e27
Remove "loading" overlay dialog as the status tab tells (#22)
us if syncthing is starting or restarting.
2018-08-22 22:23:35 +02:00
Catfriend1
b48bed7319
Add "Ignore battery optimizations" to welcome wizard (#21)
* Move "Ignore battery optimizations" dialog from MainActivity
to FirstStartActivity

* Add welcome slide "ignore doze"

* Make "ignore doze" mandatory
2018-08-22 22:12:02 +02:00
Catfriend1
b358c6cf2d
Fix DeviceListFragment NPE on Comparator (#20) 2018-08-22 12:59:31 +02:00
Catfriend1
2614887862
Remove upstream support URLs (#11) 2018-08-20 02:03:18 +02:00
Catfriend1
b60c019f46
Update build.gradle and suppress lint warnings temporarily (#9) 2018-08-20 00:26:26 +02:00
Catfriend1
6a8f8b3267
Update package name and version (#8)
* Update package name and version
2018-08-20 00:02:15 +02:00
Catfriend1
d2bf20aaa6
Revert "Update package name and version (#6)" (#7)
This reverts commit a19b43f73a.
2018-08-20 00:00:37 +02:00
Catfriend1
a19b43f73a
Update package name and version (#6) 2018-08-19 23:58:31 +02:00
Catfriend1
e0d8153b6d
Add explanation in UI why syncthing is (not) running (fixes #729)
* WIP - Allow expanding the drawer if syncting is not running
- Hide syncthing process stats in Drawer if syncthing is not running
- Hide menu action button if syncthing is not running (except settings and exit)

* WIP - Add RunConditionsMonitor#getRunDecisionExplanation

* WIP - Show run status explanation in StatusFragment

* Fix duplicate declaration in RunConditionMonitor

* Explain all syncthing service statuses instead of only
differentiating between ACTIVE and NON-ACTIVE

* Remove parts marked "// to-remove"

* Remove unused resources

* Move syncthing live status from drawer into status tab

* Fix handler start and stop in StatusFragments
Note: onResume is intentionally not overidden as the fragment
is not active after the user left and reentered the app

* Fix crash on orientation change

* Only update MainActivity.ViewPager when a service state occured
This fixes a UI glitch occuring because onResume also results in
onServiceStateChanged as the serviceStateChangeListeners are
re-registered.

* Remove unused strings
2018-08-19 23:22:38 +02:00
Catfriend1
b7cfd12c06
Add welcome slide for secure key generation (#4)
* Add welcome slide "key generation"

* Improve slide icon

* Add key generation via ConfigXml to welcome wizard slide
If key and config files are already present in syncthing's data folder
they won't be overwritten (as ConfigXml checks for that). It's also
no problem to go through the slides again, e.g. if the storage permission
got revoked after the first app launch granting it.

* Remove test mode

* Remove "Enjoy Syncthing."

* Improve string "Consider backing up your sync data"

* Show welcome slides only if mandatory prerequisites are
missing. Show only slides that are necessary because of
missing prerequisites. Mandatory prerequisites are
a) storage permission b) existance of keys and config
Remove key generation UI from StateDialogActivity as this
is no longer required in the main UI as we ensure generating
keys and config before launching to MainActivity.

* Minor review adjustments

* Review - Improve explanation string on config corruption
2018-08-19 23:10:02 +02:00
Catfriend1
680eb7dc86 Add "useLargeBlocks" to model/Folder.java (#1215) 2018-08-12 10:38:58 +01:00
Licaon_Kter
4428ac869f Keep Wi-Fi naming consistent (#1213) 2018-08-09 07:47:52 +01:00
Audrius Butkevicius
7279ac7630 Bumped version to 0.10.14-beta1 2018-08-07 19:22:35 +01:00
Audrius Butkevicius
cd2df3b117 Imported translations 2018-08-07 19:18:16 +01:00
Catfriend1
3bd1c753a6 Root only - Temporarily increase fs.inotify.max_user_watches to 128K (fixes #1208) (#1209)
Forum discussion: https://forum.syncthing.net/t/android-failed-to-set-up-inotify-handler-please-increase-inotify-limits/11924/15
2018-08-07 18:22:15 +01:00
Catfriend1
4b7024bf8a Add "receiveonly" folder type to UI and model (fixes #1210) (#1211) 2018-08-07 13:14:21 +01:00
Catfriend1
6a04d640bd
Improve run conditions and run conditions UI (#1189)
* WIP - Extend run condition monitor functions

* WIP - Better run conditions UI

* WIP - Allow applying run conditions to foreground and background
execution of the syncthing app

* WIP - Add mobile data run condition

* WIP - Fix RunConditionMonitor#onSharedPreferenceChanged

* WIP - Directly go to SettingsActivity#Run_Conditions screen
after the "change run condition" button has been clicked in
StateDialogActivity during STATE_DISABLED

* Disable Syncthing in flight mode (fixes #1173)
... and allow to enable it on phone that have problems
detecting wifi connection if the user manually enables
one during flight mode.

* Add run condition "Run on metered wifi" (fixes #937)

* Improve string

* Add run condition "Respect Android Auto-sync data quick toggle" (fixes #588)

* Remove SharedPreferences.OnSharedPreferenceChangeListener

* Added SyncthingService#reEvaluateRunConditions

* Implement mPendingRunConditions in SettingsActivity
to queue run condition changes until the user leaves
the preferences screen after making changes. (fixes #1196)

* Rename reEvaluateRunConditions to evaluateRunConditions
according to review

* Fix implementation of ContentResolver.removeStatusChangeListener

* Reordered run conditions
wifi, metered wifi, wifi whitelist, mobile data

* Review 1/2

* Fix logic for metered/non-metered wifi run condition

* Remove PreferenceScreen dividers on API level > 21

* Revert "Remove PreferenceScreen dividers on API level > 21"

This reverts commit ec037b02e4.

* Detect changes made to wifi connections in android's data usage dialog
related to the metered wifi flag.

* Review - Minor string improvements
Removed unused variable from RunConditionMonitor
Move always_run_in_background pref to pref category
"Behaviour".

* Review - "Start service automatically on boot" string

* Remove unused strings
2018-08-02 10:50:21 +02:00
Catfriend1
cdaf8e69c5
Add welcome wizard slides on first start requesting permissions (#1176)
* Prepare welcome wizard related to issues
https://github.com/syncthing/syncthing-android/issues/1129
https://github.com/syncthing/syncthing-android/issues/622

* Add drawables and texts

* Disable scrolling the ViewPager, we have buttons for that

* Add welcome wizard code
Ask for storage and location permission
Location permission is required to run the app
Recheck storage permission on each app start, if revoked the
welcome slides show again.

* Review

* Review - Do not quit the app when storage permission is not granted

* Review - Minor string improvements
2018-08-01 20:10:31 +02:00
Catfriend1
b50fcf1fa1
Fix races during config access, add missing null check (fixes #1194) (#1195)
* Fix race during config reload and missing null check
in FolderListFragment and DeviceListFragment (fixes #1194)

* Review - synchronize(mConfigLock) when mConfig is accessed

* Review - add two breaks in RestApi
in removeFolderInternal, removeDeviceInternal
2018-07-29 18:25:56 +02:00
Catfriend1
5426e750ef
Fix sending wrongly encoded commands into the unix subshell (fixes #1198) (#1199)
* Fix sending wrongly encoded commands into the unix subshell (fixes #1198)

This reverts commit 7541fa978e.
2018-07-28 01:05:41 +02:00
Catfriend1
b99d6d47d4 Revert "Disable write test to work around (ref #1198)"
This reverts commit a9a863ace9.
2018-07-28 00:54:48 +02:00
Audrius Butkevicius
815f945bb4 Bumped version to 0.10.13 2018-07-27 20:38:00 +01:00
Audrius Butkevicius
f5bec66232 Imported translations 2018-07-27 20:34:59 +01:00
Audrius Butkevicius
a9a863ace9 Disable write test to work around (ref #1198) 2018-07-27 20:30:15 +01:00
Catfriend1
d0dbb695eb Implement mPendingRunConditions in SettingsActivity to queue run condition changes until the user leaves the preferences screen after making changes. (fixes #1196) 2018-07-26 23:52:36 +01:00
Catfriend1
d78b86f5b4 Fix missing blank line 2018-07-26 10:24:58 +02:00
Catfriend1
aad57de03d Initialize mFolder.type to FOLDER_TYPE_SEND_RECEIVE
according to the switch element having android:checked=false
by default in the xml layout.
2018-07-26 10:23:16 +02:00
Catfriend1
9382685fc9 More Log 2018-07-26 10:16:11 +02:00
Catfriend1
69913ebead Add paranoid safety checks to FolderActivity#onOptionsItemSelected (fixes #1190) 2018-07-25 14:02:02 +02:00
Audrius Butkevicius
7cfe0855bb Bumped version to 0.10.12 2018-07-24 21:52:18 +01:00
Audrius Butkevicius
ecb6200503 Imported translations 2018-07-24 21:47:51 +01:00
Catfriend1
02b6f987eb Refactor DeviceStateHolder and its receivers into RunConditionMonitor (#1187) 2018-07-24 20:10:10 +01:00
Catfriend1
6ead66b359 Add options button "undo ingoring devices and folders" (fixes #938) (#1185) 2018-07-18 18:11:11 +01:00
Catfriend1
765bc4a984 Add error description UI on folder error (fixes #965) (#1182) 2018-07-18 07:42:12 +01:00
Catfriend1
b8511cfd41 Add "Override changes" UI button (fixes #396) (#1183) 2018-07-18 07:20:26 +01:00
Catfriend1
88535ed16f Remove shell boilerplate code (fixes #1181) (#1180) 2018-07-17 10:26:33 +01:00
Catfriend1
40b16cb065 Implement proper permission handling using SAF (fixes #1160) 2018-07-15 22:34:25 +01:00
Catfriend1
23f407ed74 Add pull order to folder create and edit UI (fixes #677) (#1178) 2018-07-08 11:32:03 +01:00
Catfriend1
53aec6a313 Fix recurring device, folder accept notifications, add ignore action (fixes #679) (#1177) 2018-07-07 19:35:18 +01:00
Catfriend1
b9f45f5162 remove duplicate line (#1175) 2018-06-30 11:14:50 +01:00
Catfriend1
d83060975c Fix warning about missing write perm in root mode (fixes #1165) (#1166) 2018-06-24 11:37:06 +01:00