* 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