1
0
Fork 0
mirror of https://github.com/syncthing/syncthing-android.git synced 2025-02-05 16:44:42 +00:00
Commit graph

135 commits

Author SHA1 Message Date
Catfriend1
7ca62c946a
Add "recent changes" UI to drawer (fixes #117) (#116)
* Add "recent changes" UI to drawer

* Update build.gradle - guava 26.0-android

* Add REST endpoint

* Add DiskEvent to model

* Add DiskEventData to model

* Add RestApi#getDiskEvents

* Add ChangeListAdapter#clear

* Implement data exchange between UI and service

* Display DiskEvents

* Add icons

* Return DiskEvents in reverse order

* Display device name instead of partial ID

* Format dateTime

* Update whatsnew

* Imported translations

* Update APK version to 0.14.51.12 / 4175

* Fix lint

* Review

* Update README.md
2018-10-28 22:46:51 +01:00
Catfriend1
6ee9f26fb7
Fix lint issues after build.gradle update (#115)
* Update build.gradle
Remove unused menu resource
Insert constant instead of static string
Obey new wakelock tag naming rule

* Add annotations - importantForAutofill
2018-10-27 16:21:03 +02:00
Catfriend1
e0bf5589db
Incorporate feedback from issue #110 (1) + (3) (#114)
* Fix issue 110 (3) - remove checkmark

in per object sync conditions dialog

* Fix UI glitches, feedback issue #110 (1)

* Stop onscreen keyboard popping up

when FolderActivity starts

* RunConditionMonitor - Add more logging

* Always save UI state back to prefs

in SyncConditionsActivity until we abandon global run conditions.
2018-10-27 15:52:20 +02:00
Catfriend1
39e1329f41
Follow-Up to issue 108 "IllegalStateEx" workaround (fixes #108) (#113)
* MainActivity updateViewPager - Add isServiceActive

* Add numPages, setOffscreenPageLimit (fixes #108)

* Fix numPages
2018-10-26 17:23:25 +02:00
Catfriend1
6712ca657d
Fallback to built-in path selector (fixes #111) (#112)
* Fallback to built-in path selector (fixes #111)

* Update APK version to 0.14.51.11 / 4174
2018-10-25 16:20:23 +02:00
Catfriend1
e94495f40b
Add bug notice (closes #108) (#109)
* Add bug notice (fixes #108)

* Update strings

* Updated translations
2018-10-23 09:19:13 +02:00
Catfriend1
f3dac90124 Add tip - Workaround for device disconnected on Huawei
* Update APK version to 0.14.51.9 / 4172

* Add tip - Workaround for device disconnected on Huawei
2018-10-22 08:49:32 +02:00
Catfriend1
200f50e940
Add offline "Tips & Tricks" library (fixes #91) (#102)
* Add TipsAndTricks activity

* Add TipListAdapter

* Fix lint

* Fix typo

* Fix toolbar

* Fix layout

* Add onClick listener

* Add tips

* Update APK version to 0.14.51.8 / 4171

* Update README.md and whatsnew

* Fix Android 4.x compatibility

* Imported translations
2018-10-21 20:50:52 +02:00
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
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
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
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
2021ef6806
Disable wakelock experimental option on Android 6+ (#77) 2018-10-07 18:28:46 +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
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
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
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
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
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
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
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
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
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
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
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