* 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
* 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
* 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
* 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
* 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
* 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
* Catch failures on gson-parsing SystemInfo
* Fix parsing connectionServiceStatus on recent syncthing version
* Add SystemStatusConnectionServiceStatusElement to model
* 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
* 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
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.
* 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
* 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
* 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
* Prepare welcome wizard related to issues
https://github.com/syncthing/syncthing-android/issues/1129https://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
* 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
* Moved launcher icons from drawable to mipmap
* Added alternative drawable resource
* Added background and foreground layers
* Changed refernce in manifest to mipmap
* Updated background
* Added UI experimental option to enable/disable FolderObserver
* Disable android watcher by default.
* WIP - dismiss file watcher notification
todo - SyncthingRunnable has to run and migrate the config v27>28 before the file watcher notification can be dismissed.
* fix object type
* remove unackednotifications instead of altering it
* removed extra blank lines
* fix removeChild
* updated syncthing to v0.14.47-rc.2
* WIP - log remove of unackedNotificationID
* WIP - improved config migration 27>28
Prevent generating the unackedNotification fsWatcher in WebGUI by manual bumping the config version to #28.
* fix typo
* WIP - polish version bump code
* syncthing/imsodin-debugAndroidWatch
* update syncthing to v0.14.47-rc.3
* fix NPE on first app start
* fix pref condition
* add ConfigXML support for fsWatcher transition
Added UI experimental option to enable/disable FolderObserver
Disable android watcher by default.
WIP - dismiss file watcher notification
todo - SyncthingRunnable has to run and migrate the config v27>28 before the file watcher notification can be dismissed.
fix object type
remove unackednotifications instead of altering it
removed extra blank lines
fix removeChild
updated syncthing to v0.14.47-rc.2
WIP - log remove of unackedNotificationID
WIP - improved config migration 27>28
Prevent generating the unackedNotification fsWatcher in WebGUI by manual bumping the config version to #28.
fix typo
WIP - polish version bump code
syncthing/imsodin-debugAndroidWatch
update syncthing to v0.14.47-rc.3
fix NPE on first app start
fix pref condition
* updated syncthing to v0.14.47+3d02fcd notify-fix
* updated ConfigXml, FolderObs explanation, st 0.14.47-rc.4
* fixed string escape
* add restartOnWakeup setting to the UI
* restartOnWakeup = false by default on first app start and config generation
* improved logging of restartOnWakeup option to produce meaningful logs
* restartOnWakeup enabled by default
see discussion in https://github.com/syncthing/syncthing-android/issues/368
* PR improved according to review
* fix intendation - Atom Tab Indent = 4
* move configXml migration to separate function
* changeLocalDeviceName only affects "self device" - fixes https://github.com/syncthing/syncthing-android/issues/1059
* revert changeLocalDeviceName fix
* fixed changed result in migrateSyncthingOptions
* improved dismissing unackedNotificationID
* extend folder settings UI by fsWatcherEnabled checkbox
* remove FolderObserver
+ Constant.PREF_USE_TOR according to AudriusButkevicius' review added instead of static strings
* remove folderchange listener
* WIP - temporary - restApi logging
for better understanding whats going on
* prevent removingthe wrong unackedNotificationID
* fix build
* give me more log
* fix PostConfig REST request not working
due to missing fields in the folder model
* remove unused string
toast_folder_observer_stack_overflow using AndroidStudio
* fix typo
* trigger rebuild
* fix UI icon
* Revert to Syncthing to 0.14.46 and cherry-pick
* improved code according to review
* fix translation indent