1
0
Fork 0
mirror of https://github.com/syncthing/syncthing-android.git synced 2024-12-05 10:41:17 +00:00
Commit graph

473 commits

Author SHA1 Message Date
Catfriend1
9ab2f280e0
Add "folder is unshared" status label (fixes #347) (#351)
* res/colors: Add text_orange

* strings: Add state_unshared

* Imported de translation

* Add "folder is unshared" status label (fixes #347)
2019-03-06 00:58:34 +01:00
Catfriend1
ce213b9c9e model/Folder: Add getDeviceCount 2019-03-06 00:47:50 +01:00
Catfriend1
8873111510 FoldersAdapter: Merge getLocalizedState into updateFolderStatusView 2019-03-06 00:44:26 +01:00
Catfriend1
f679ca2cc5
Show Android Open File Limit (fixes #346) (#350)
* Show Android Open File Limit (fixes #346)

* Imported de translation
2019-03-06 00:12:37 +01:00
Catfriend1
226b84a5d9
MainActivity/DeviceList: Improve "no devices configured" UI text (#349)
* Add string: no_devices_configured

* Imported de translation

* Add newline

* Import de translation
2019-03-05 23:58:34 +01:00
Catfriend1
9187280687
Enable largeBlocks for new folders by default (fixes #300) (#301)
* Enable largeBlocks for new folders by default (fixes #300)

* Remove duplicate code to set folder defaults on creation
2019-03-05 23:46:11 +01:00
Catfriend1
5151c3485b
Add model/Folder#CopyOwnershipFromParent (fixes #286) (#287)
* Add model/Folder#CopyOwnershipFromParent (fixes #286)

See https://github.com/syncthing/syncthing/pull/5479/files

* Fix typo, update doc ref

* Update ConfigXml
2019-03-05 23:40:42 +01:00
Catfriend1
c1abb476b6
Update SyncthingNative to v1.1.0 (#348)
* Use go stable instead of 1.9 for travis (#1283)

* Restore modules

* Update Syncthing submodule to v1.1.0

* Update .gitignore

* Update whatsnew
2019-03-05 23:23:52 +01:00
Catfriend1
30d493a206 Update APK version to 1.1.0.1 / 1010001 2019-03-05 23:04:35 +01:00
Catfriend1
e1f85548fb
Add folder dialog: "Tap to add device" if no devices are present (fixes #344) (#345)
* Add folder dialog: "Tap to add device" if no devices are present (fixes #344)

* Update string: devices_list_empty

* Add service/TestData

* activity_folder/layout: Make devicesContainer selectable from DPAD

* Imported de translation
2019-03-05 23:01:06 +01:00
Catfriend1
22a302d940 Add service/TestData 2019-03-05 22:59:42 +01:00
Catfriend1
675de8a53b Update whatsnew 2019-02-28 08:38:22 +01:00
Catfriend1
09585e213a
Update status tab text "not allowed to run on mobile data", clarify meaning (fixes #340) (#343)
* Update string reason_mobile_data_disallowed (fixes #340)

* Updated de translation
2019-02-28 08:32:23 +01:00
Catfriend1
3c2e7ddf76
fragmentManager: commitAllowingStateLoss (fixes #321) (#342) 2019-02-28 08:20:01 +01:00
Catfriend1
f9f93a37ce Update APK version to 1.0.1.9 2019-02-24 19:27:25 +01:00
Catfriend1
c6cf442d7a
Add Binary Eye barcode scanner support (fixes #325) (#339)
* Add Binary Eye barcode scanner support (fixes #325)

* Remove "Barcode Scanner" app as preferred choice (fixes #325)

* Add app recommendation: "Binary Eye"

* Imported de translation

* Updated whatsnew
2019-02-24 19:16:20 +01:00
Catfriend1
46054d1c36 Update APK version to 1.0.1.8 2019-02-24 16:13:52 +01:00
Catfriend1
9933294ac5
Publish listings on GPlay (#338)
* Update build.gradle

* Remove unsupported translations

* Update publish-release.sh

* Update APK version to 1.0.1.7

* build.gradle: errorOnSizeLimit = false

* publish_release.sh: Add gradlew publishListingRelease

* Imported string translations

* Updated gplay translation: de_DE

* Add unsupported translations to .gitignore
2019-02-24 16:01:56 +01:00
Catfriend1
5c22110af6 Update README and whatsnew 2019-02-24 14:23:53 +01:00
Catfriend1
b17752aa5a Add label to explain why Syncthing Options are greyed out (fixes #337) 2019-02-24 14:22:56 +01:00
Catfriend1
180dbe6824 Updated gplay translations 2019-02-24 14:04:19 +01:00
Catfriend1
94918bb832 Imported string translations: nl, ru 2019-02-24 14:03:12 +01:00
Catfriend1
0d50bca3d8
Download Support Bundle (fixes #330) (#332)
* http/GetRequest: Add URI_DEBUG_SUPPORT

* Add ConfigXml#getGui

* Update model/Gui

* Add strings en-GB

* Add pref: webUIDebugging

* SettingsActivity: Add mWebUIDebugging, KEY_WEBUI_DEBUGGING

* Add pref button: downloadSupportBundle

* Add string: download_support_bundle_title

* Update string: webui_debugging_summary

* WIP

* WIP

* Use DownloadManager instead

* Revert "Use DownloadManager instead"

This reverts commit f2b24f5f295b27dd4d1aa2bed7bd2a08afce2159.

* Try sending auth to browser - unsafe

* Revert "Try sending auth to browser - unsafe"

This reverts commit 53523aad2e65147c99ee590cd0722c0e221fad8f.

* Add RestApi#downloadSupportBundle (fixes #330)

* Add SettingsActivity#onDownloadSupportBundleClick (fixes #330)

* FileUtils: Move getExternalStorageDownloadsDirectory code into separate function

* RestApi#downloadSupportBundle: Add callback for result UI

* SettingsActivity: Add UI to show if bundle download succeeded (fixes #330)

* Add strings for success, failure, in progress

* Add comment

* Imported de translation
2019-02-24 13:47:56 +01:00
Catfriend1
4ef5853b88 FileUtils: Move getExternalStorageDownloadsDirectory code into separate function 2019-02-24 13:30:54 +01:00
Catfriend1
06526c5547
Update model/Gui to syncthing v1.0.1 (#334)
* Update model/Gui

* Add ConfigXml#getGui
2019-02-24 11:53:05 +01:00
Catfriend1
a1d2884eef Update APK version to 1.0.1.5 2019-02-19 08:34:27 +01:00
Catfriend1
cdcdc3c1c8
Add pref to enable verbose logging (#303)
* Add prefs: verbose_log, expert_mode

* Update prefs in Constants

* Add service.AppPrefs

* Update fragments to read verbose log pref

* Update classes with context or inject to read verbose log pref

* Inherit ENABLE_VERBOSE_LOG from RestApi to Completion

* Restart whole app if verbose log pref was changed

* A line too much

* Revert expert mode pref (DELTA REVERT)
2019-02-19 08:14:21 +01:00
Catfriend1
53d3c13403 MainActivity: Remove setOffscreenPageLimit (fixes #327) (fixes #321) 2019-02-19 08:02:28 +01:00
Catfriend1
88677c9638
Send a shutdown POST request first (fixes #320) (#323)
* Move notificationHandler shutdown from RestApi to SyncthingService

* http/PostRequest: Add shutdown uri

* Add RestApi#shutdown to post a shutdown request (fixes #320)

* SyncthingService#shutdown: Send a shutdown POST request first in case the kill via shell fails (fixes #320)
2019-02-12 02:22:34 +01:00
Catfriend1
cf94716059 Move notificationHandler shutdown from RestApi to SyncthingService 2019-02-12 02:02:42 +01:00
Catfriend1
e468f5a29c
Safeguard the buggy ViewPager (fixes #321) (#322) 2019-02-12 01:53:09 +01:00
Catfriend1
30efd903b5
Allow changing suggested path for new folder (fixes #309) (#318)
* Add pref: Suggested new folder root (fixes #309)

* Fix NPE in offline config reader (fixes #316)

after folder has been created while Syncthing was not running

* Fix language pref and root pref

* Fix action bar not showing on sub-prefs screen (fixes #317)

on Android < 7

* Add DATA, MEDIA to FileUtils#getExternalFilesDirUri (fixes #309)

* SettingsActivity: Remove pref "SuggestNewFolderRoot" on API < 21

* Update Constants

PREF_SUGGEST_NEW_FOLDER_ROOT_DATA, PREF_SUGGEST_NEW_FOLDER_ROOT_MEDIA

* Update FolderActivity#onPathViewClick (fixes #309)

to respect PREF_SUGGEST_NEW_FOLDER_ROOT_DATA

* Imported de translation
2019-02-12 00:24:26 +01:00
Catfriend1
ca17291561 Fix action bar not showing on sub-prefs screen (fixes #317)
on Android < 7
2019-02-10 13:53:39 +01:00
Catfriend1
3a7705bde6 Fix NPE in offline config reader (fixes #316)
after folder has been created while Syncthing was not running
2019-02-10 13:53:16 +01:00
Catfriend1
cfa6ce4e3b Update APK version to 1.0.1.4 / 1000104 2019-02-09 19:02:02 +01:00
Catfriend1
c130bdb7fc
Rename the misleading "Syncthing is disabled" (fixes #314) (#313)
* SettingsActivity: Remove duplicate strings

syncthing_disabled_title, syncthing_disabled

* Remove string: syncthing_disabled_title

* Remove string translations

* Update string: syncthing_disabled

* Updated all translations
2019-02-09 18:47:59 +01:00
Catfriend1
7bd253ab0e
Add device dialog: Implement refresh button and help (fixes #310) (#311)
* Add drawable ic_refresh_black_24

* Add device: Add refresh button to dialog

* Add device dialog: Implement refresh button (fixes #310)

Always show "No devices discovered label" and refresh button if no device ID had been entered yet.

* Update model/Options for SyncthingNative 1.0.1

* Add ConfigRouter#getOptions

* Add ConfigXml#getOptions

* Update README.md

* Add string: local_discovery_disabled

* Add device dialog: Show notice if local discovery is disabled

and explain how to enable it.

* Add device dialog: Show helpful text if no devices were discovered locally

* Updated de translation
2019-02-09 18:26:54 +01:00
Catfriend1
e5a033a64d
Add ConfigRouter#getOptions (#312)
* Add ConfigRouter#getOptions

* Add ConfigXml#getOptions
2019-02-09 17:42:41 +01:00
Catfriend1
3e6266b446 Update model/Options for SyncthingNative 1.0.1 2019-02-09 17:40:41 +01:00
Catfriend1
6b50c598ca Rename fragment_folder to activity_folder 2019-02-09 15:58:23 +01:00
Catfriend1
b99d03f9b9 Rename fragment_device to activity_device 2019-02-09 15:56:25 +01:00
Catfriend1
5a980dfa0b Update APK version to 1.0.1.3 / 1000103 2019-02-08 18:53:12 +01:00
Catfriend1
1163b1ec83
Add locally discovered devices to the "add device" dialog (fixes #305) (#306)
* ENABLE_TEST_DATA

* http/GetRequest: Add URI_SYSTEM_DISCOVERY

* Add model/DiscoveredDevice

* Add RestApi#getDiscoveredDevices (fixes #305)

* Add DeviceActivity#asyncQueryDiscoveredDevices in onServiceConnected (fixes #305)

* Add strings

* Add layout: item_discovered_device_form

* Add discoveredDevicesTitle, discoveredDevicesContainer to "add device" dialog (fixes #305)

* Revert "ENABLE_TEST_DATA"

This reverts commit b2efe73b9b4f7e9d4db8cc50cb48a5422f78c084.

* Fix lint error

* Updated de translation
2019-02-08 18:35:45 +01:00
Catfriend1
f5bb5473e6 Update APK version to 1.0.1.2 / 1000102 2019-02-05 23:48:58 +01:00
Catfriend1
bc6f134046
Update Syncthing to v1.0.1 (#304)
* Update whatsnew

* Update APK version to 1.0.1.1 / 1000101

* Update syncthing submodule to v1.0.1
2019-02-05 23:31:01 +01:00
Catfriend1
697defb1a7
Add screen reader label (fixes #297) (#298) 2019-02-03 11:46:13 +01:00
Catfriend1
72709f3cb8
TipsAndTricks: Add "Backup pictures from phone to computer" (fixes #257) (#299)
* Add tip: tip_ignore_delete (fixes #257)

* Add strings for tip (fixes #257)

* Updated de translation
2019-02-03 11:42:18 +01:00
Catfriend1
b239eec38e Update APK version to 1.0.0.21 / 1000021 2019-02-01 00:07:18 +01:00
Catfriend1
976d4e05c2
Fix deferred native shutdown not working during State.STARTING (fixes #290) (#296)
Remove SyncthingService#mDestroyScheduled
2019-01-31 23:51:39 +01:00
Catfriend1
a30163ea1e
Don't crash if config got corrupted and inform the user (#295)
* Fix crash notification reason is off-screen (fixes #294)

* Indicate a broken config on the welcome wizard (fixes #293)

* SyncthingService must stop if the config got corrupted (fixes #292)

* Show crash notification extraInfo below notification title (fixes #294)

* Fix NPE when config elements gui, options are missing (fixes #291)

* Updated de translation

* Update en translation

* Updated translations

* Remove debug log
2019-01-31 23:17:42 +01:00
Catfriend1
1bdc8fe6ec
Remove boilerplate shell code (#289)
* Util#runShellCommand: Add BufferedReader

* Util: Correct class TAG

* SyncthingRunnable: Use Util.runShellCommand for "chmod 500"

* Util: Add notes

* LogActivity: Replace ProcessBuilder with Util.runShellCommandGetOutput

* SyncthingRunnable: Improve "error" message

* LogActivity: Show Android log by default

* SyncthingRunnable: Don't log if the chmod fail is expected on Android 5+

* LogActivity: Remove SyncthingNativeCode per line repetition if we are showing its own log
2019-01-29 20:41:44 +01:00
Catfriend1
37c11836e1
Fix ANR in SyncthingRunnable#getSyncthingPIDs (fixes #285) (#288)
* Use Util.runShellCommandGetOutput in SyncthingRunnable#getSyncthingPIDs (fixes #285)
2019-01-28 09:03:01 +01:00
Catfriend1
9dcb9f2262 Update APK version to 1.0.0.20 2019-01-27 20:53:39 +01:00
Catfriend1
5911914fbf
Fix minimum free disk space setting not working (fixes #277) (#278)
* WIP

* Revert "WIP"

This reverts commit 98b34c47c6b844bd7c5a332360cd5965708e69d7.

* WIP

* Revert "WIP"

This reverts commit 3b9fc96d90708e4d4c0eef08f8372c5c4a2f2314.

* Add de/serializer for MinDiskFree

* Move MinDiskFree out of Folder

* Move MinDiskFree out of Folder (2)

* Revert "Move MinDiskFree out of Folder (2)"

This reverts commit 65f87db9a59c67d5a59eb713904976c78a5dcb9a.

* Revert "Move MinDiskFree out of Folder"

This reverts commit b71350bd105731d2763d95db7f3f1d1524328cfa.

* Revert "Add de/serializer for MinDiskFree"

This reverts commit 582742662942ece78658ebc3f7fa5c3ec91a5262.

* RestApi: Add MinDiskFreeSerializer, MinDiskFreeDeserializer

* Revert "RestApi: Add MinDiskFreeSerializer, MinDiskFreeDeserializer"

This reverts commit 3922f2451c48850c92e9403607bfb4edab8c591d.

* Test

* Revert "Test"

This reverts commit 355009565aaaf50efcf06c72bdff5b3466547a63.

* FolderActivity/DeviceActivity: Fix restApi unavailable in onCreate()

* Model/Folder#MinDiskFree: Initialize members (fixes #277)

* ConfigXml#getFolders: Add MinDiskFree (fixes #277)

* ConfigXml: Write back minDiskFree (fixes #277)

* Ignore notices about updating gradle dependencies

* ConfigXml: Make number parsing more safe

* FolderActivity#initFolder: Add new Folder.MinDiskFree

* Handle minDiskFree.value as String instead of float

* Revert "Handle minDiskFree.value as String instead of float"

This reverts commit 0552cfcbe139e99e575237a9b47ee4e888721c6f.

* WIP

* Revert "WIP"

This reverts commit 0a3df9144a86a396318c57a089d41da449d284dc.

* RestApi: Avoid creating duplicate Gson() instances

* Model/Folder: Use Integer instead of Float

See gson glitch:
https://github.com/google/gson/pull/1290
https://github.com/google/gson/issues/968

* Try MinDiskFree.value as Long instead of Integer

* Revert "Try MinDiskFree.value as Long instead of Integer"

This reverts commit d3588629818b3f75d30a2486a7c4583b0d4c99c7.

* Revert "Model/Folder: Use Integer instead of Float"

This reverts commit ca3931bd0d06cf500cff2443e4205f7c3211e777.

* Update model/Options: MinHomeDiskFree (fixes #277)
2019-01-27 20:41:02 +01:00
Catfriend1
fb07486404 ConfigXml: Make getOrDefault more safe by catching NumberFormatException 2019-01-27 20:06:08 +01:00
Catfriend1
e4dae20a3a
Fix leftover SyncthingNative instance after update in root mode (fixes #261) (#284)
* Reformat code

* Fix leftover SyncthingNative instance after update in root mode (fixes #261)
2019-01-27 20:01:18 +01:00
Catfriend1
78ba036df7
Save welcome wizard button state on screen rotation (fixes #281) (#283)
* Save welcome wizard button state (fixes #281)

* FirstStartActivity xml: Disallow focus for non-button elements

* Fix ViewPager taking focus on mouse click glitch on TV

* Provide key navigation if ViewPager accidentially took focus (fixes #281)
2019-01-27 19:22:39 +01:00
Catfriend1
f2eacf0401
Treat ethernet connection "like un-metered Wi-Fi" (fixes #280) (#282)
* Treat ethernet connection "like un-metered Wi-Fi" (fixes #280)

* Update string: run_on_wifi_summary

* Updated de translation

* Update explanation string: reason_wifi_disallowed

* Updated de translation
2019-01-27 16:23:44 +01:00
Catfriend1
56bdd740b5 RestApi: Avoid creating duplicate Gson() instances 2019-01-26 22:05:00 +01:00
Catfriend1
f9927aa603 FolderActivity/DeviceActivity: Fix restApi unavailable in onCreate() 2019-01-26 22:01:44 +01:00
Catfriend1
e0dc77d4d1 Ignore notices about updating gradle dependencies 2019-01-26 22:00:15 +01:00
Catfriend1
b27ce3a074 Update APK version to 1.0.0.19 / 1000019 2019-01-25 02:14:42 +01:00
Catfriend1
5c95fd29c9
Disable drawer menu action to open webUI on Android TV (fixes #275) (#276) 2019-01-24 20:49:32 +00:00
Catfriend1
56455fc89d
Device create/edit dialog: Check address input, fix losing changes on screen rotation (#270)
* Add comments

* Add model/Device#checkDeviceAddresses

* Add checkDeviceAddresses to device create dialog

* FolderActivity: Consolidate createDiscardDialog into showDiscardDialog

* folder_settings: R.id.create => R.id.save

* device_settings: R.id.create => R.id.save

* Edit device dialog: Offer back+discard and save action

* Add deviceNeedsToUpdate to savedInstanceState (fixes #271)

Remove dependency SyncthingService.OnServiceStateChangeListener

* Fix folder settings validation doesn't take place when editing folder (fixes #273) (fixes #265)

* Conditional label of the create/save button

* Remove workaround for rotation: mVersioning

* Fix folder.type is reset from SendOnly to Send&Receive on recreation of FolderActivity while creating a new folder (fixes #274)

* Fix typo

* Fix typo

* Fix typo

* Review - Relocate code

* Move null checks to the beginning of onSave

* Updated de translation

* Add ListenAddressesChanged to EventProcessor

as unhandled event.
2019-01-24 20:37:45 +00:00
Catfriend1
b2864cc3c5
Remove unused intent in WebViewActivity (fixes #268) (#269) 2019-01-23 20:18:00 +00:00
Catfriend1
d235eaddc8 Update APK version to 1.0.0.18 / 1000018 2019-01-23 09:19:20 +01:00
Catfriend1
0900d50379 Fix SSL handshake failed on Android 7.0 devices (fixes #262) (fixes #266) 2019-01-23 09:07:43 +01:00
Catfriend1
16769b137f Revert "Fallback to http on Huawei Nova (CAN-Lxx) (fixes #262) (#263)"
This reverts commit 04376d3bc8.
2019-01-23 09:01:11 +01:00
Catfriend1
04376d3bc8
Fallback to http on Huawei Nova (CAN-Lxx) (fixes #262) (#263) 2019-01-22 21:22:32 +00:00
Catfriend1
a16802cfec Update APK version to 1.0.0.17 / 1000017 2019-01-20 23:45:52 +01:00
Catfriend1
80d24c8843
Device overview: Show status "Syncing" in case of data throughput (fixes #240) (#260)
* Device overview: Show status "Syncing" in case of data throughput (fixes #240)

If (incoming_bits_per_second + outgoing_bits_per_second) top the threshold, we'll assume syncing state for the device reporting that data throughput.

* Imported de translation
2019-01-20 22:34:51 +00:00
Catfriend1
e479bf6f77
Use WebViewActivity in MainActivity#previewUr (fixes #241) (#259)
* WebViewActivity: Add intent with EXTRA_WEB_URL

* Use WebViewActivity in MainActivity#previewUr (fixes #241)

* Update string: Debug => Troubleshooting

* Update prepare-release.bash

* Imported de translation
2019-01-20 21:42:00 +00:00
Catfriend1
2f251bc875 Update APK version to 1.0.0.16 / 1000016 2019-01-20 15:25:16 +01:00
Catfriend1
979088f4ca
Make status LED un-clickable, Reduce verbose logging (#254)
Change summary:
* Make status light un-clickable
* Add configurable verbose logging
* Reduce verbose logging
* Initialize model#Folder.label
* EventProcessor: Ignore event "FolderResumed"

Detailed changelog:

* Make status light un-clickable

* Initialize model#Folder.label

* Rename func to applyCustomRunConditions

* RunConditionMonitor: Make verbose log configurable

* ReceiverManager: Make verbose log configurable

* StatusFragment: Make verbose log configurable

* FolderListFragment: Make verbose log configurable

* DeviceListFragment: Make verbose log configurable

* RestApi: Make verbose log configurable

* SyncthingService: Make verbose log configurable

- Remove duplicate log lines referring to the same logic that happened
- Improved log levels

* RestApi: Log.v => LogV

* SyncthingApp ThreadPolicy - I'll need this later

* RestApi: Reduce logging

* applyCustomRunConditions: Log changes and result in non-verbose level

* EventProcessor: Ignore event "FolderResumed"

* RestApi#readConfigFromRestApi: Change log level to verbose

* SyncthingRunnable: Reduce log, make verbose log configurable
2019-01-20 14:06:49 +00:00
Catfriend1
f0d72e7a4b
Remove pref: Start directly into web gui (#253)
* Remove strings

* Remove pref

* Remove implementation
2019-01-20 13:11:12 +00:00
Catfriend1
71c5c494bc
Show toolbar when calling sub-pref screen (fixes #247) (#251)
* SettingsActivity: Fix var name

* Add verbose logging

* SettingsActivity: Use a handler to call sub pref screen (fixes #247)

* Add verbose log

* Fix toolbar ignoring input after going back from subpref screen

when directly opened in subpref screen before (fixes #247)

* Revert "Add verbose log"

This reverts commit 33207d0721dd38ce5efa04dddb891557ade6f5c3.

* SettingsActivity: Re-register actionbar after a subpref screen dismissal (fixes #247)
2019-01-20 12:54:55 +00:00
Catfriend1
beee401baa
Fix crash after sdcard was ejected (fixes #249) (#250) 2019-01-20 11:42:01 +00:00
Catfriend1
b8c35bc098 MainActivity: Use GravityCompat
instead of android.view.Gravity
2019-01-20 12:25:55 +01:00
Catfriend1
bb1aa8af50
Welcome wizard: Disable "back" button on keygen slide (fixes #239) (#248) 2019-01-19 22:38:16 +00:00
Catfriend1
d16ba49416
Improve visual hover indication on Android TVs (#246)
* Add drawables: menu white, black; settings_black (fixes #243) (fixes #244)

* Add drawable: button arrow_back

* Add button desc strings: open/close menu

* WIP: Try to fix issue #244

* WIP: Try to fix issue #244 (2)

* WIP: Try to fix issue #244 (3)

* Fix lint

* Add visual indication when hovering share icon in "Show Device ID" dialog (fixes #242)

* Updated de translation
2019-01-19 22:23:27 +00:00
Catfriend1
8eb94900ae Update whatsnew 2019-01-19 23:17:17 +01:00
Catfriend1
fdd1a5932a Update APK version to 1.0.0.15 / 1000015 2019-01-19 16:45:35 +01:00
Catfriend1
a8b3e4d2a0
Add WebView for Android TVs (fixes #227) (#225)
* WIP

* AndroidManifest: Add WebViewActivity

* Open WebViewActivity from prefs, move to "Debug" menu

* Add WebViewActivity below SettingsActivity

* Add strings for ssl security notice

* Handle web page links and ssl warnings correctly

* Mention issue tracker URL in pref summary

* Don't use ACTION_VIEW for deeplinks on syncthing's WebUI

* Rename string: report_issue_summary to open_issue_tracker_summary

* Imported translations

* Add "open in browser" drawable

* Add webview_options menu

* Add strings: web page loading, open in browser

* Add option to open webpage in browser on non-TV devices (fixes #227)

* Imported de translation
2019-01-19 14:53:36 +00:00
Catfriend1
55eabd4fea Remove unused Activity: RestartActivity 2019-01-19 11:54:01 +01:00
Catfriend1
89212bc956
More Android TV DPAD fixes (fixes #226) (fixes #228) (fixes #230) (fixes #231) (fixes #232) (fixes #233) (#229)
* Fix focus when editing folder (fixes #226)

* Don't show qr code scan button on TV (fixes #230)

* FolderActivity: Prevent accidential scroll by DPAD

* Make DPAD available in Custom Sync Conditions dialog (fixes #231)

* EnhancedEditText: Reformat code

* Remove blank

* DeviceActivity: Move code, set initial focus

* FolderActivity: Fix focus problems on phones with keyboard input (fixes #233)

* DeviceActivity: Set custom sync dialog focus from code (fixes #233)

* DeviceActivity: Use setOnClickListener instead of implementing View.OnClickListener

* fragment_folder: focusableInTouchMode => focusable

* Edit device dialog: Show copy device ID row or edit, scan device row

* Fix unused, outdated refs

* Constants: Static implies final

* Remove double semicolon

* Remove double semicolon

* Remove unused imports

* Remove unnecessary return in void func

* Fix javadoc errors (fixes #234)

* Fix typos

* Fix focus problem on TV/device edit dialog

* Fix create folder dialog focus on TV (fixes #228)
2019-01-19 11:49:41 +01:00
Catfriend1
495c3e9eb6
Fix typos (#236) 2019-01-18 23:26:57 +01:00
Catfriend1
1154fc021e
Fix 20 javadoc errors (fixes #234) (#235)
* Fix unused, outdated refs

* Constants: Static implies final

* Remove double semicolon

* Remove double semicolon

* Remove unused imports

* Remove unnecessary return in void func

* Fix javadoc errors (fixes #234)

* Remove blank

* EnhancedEditText: Reformat code

* Fix imports
2019-01-18 23:06:27 +01:00
Catfriend1
4487857785
Android TV: Handle DPAD input (fixes #194) (#223)
Android TV: Handle DPAD input too (fixes #194)
2019-01-16 09:24:48 +01:00
Catfriend1
cfc1197987
Small translation fixes and updates (#224)
* Add translatable="false" to URLs

* Remove untranslatable strings from other langs

* Updated ru translation

* Updated zh-rCN translation
2019-01-16 02:00:13 +01:00
Catfriend1
a827ee531c Update APK version to 1.0.0.14 2019-01-16 01:10:33 +01:00
Catfriend1
aa57f04e9f Update build.gradle: com.google.code.gson:gson:2.8. 2019-01-16 00:36:50 +01:00
Catfriend1
889a88f69f
Add contentDescription to actionShareId (fixes #219) (#220) 2019-01-12 19:52:41 +01:00
Catfriend1
4f4ffac9bb Update APK version to 1.0.0.13 2019-01-12 18:43:44 +01:00
Catfriend1
2ecba33052
Remove welcome slide dots from screen reading (fixes #216) (#217)
* Remove welcome slide dots from screen reading

according to advice from the prelaunch report.

* Try setImportantForAccessibility on TextViews

* Update APK version to 1.0.0.7

* Try setContentDescription

* Update APK version to 1.0.0.8

* Update APK version to 1.0.0.9

* Add meaningful content description

in case a screen reader unintentionally reads out loud

* Update APK version to 1.0.0.10

* Fix type conversion

* Update APK version to 1.0.0.11

* Add views/CustomViewPager

* Use CustomViewPager in FirstStartActivity

* FirstStartActivity: Use CustomViewPager

* Add main menu string for screen readers

* Reformat code

* Try toolbar.setNavigationContentDescription

* Update APK version to 1.0.0.12

* Import de translation
2019-01-12 17:54:08 +01:00
Catfriend1
48c35fd190 Update APK version to 1.0.0.6 / 1000006 2019-01-12 12:34:29 +01:00
Catfriend1
398cbd4880
Update translations (#215)
* Updated zh_CN translation

* Updated ru-RU translation
2019-01-12 12:32:09 +01:00
Catfriend1
cbd77cad75 Update APK version to 1.0.0.5 / 1000005 2019-01-07 20:51:51 +01:00
Catfriend1
7b82062f54
Detect if another app/process is blocking the tcp port (fixes #193) (#209)
* Add Util#isTcpPortListening (fixes #193)

* Move model/Config.Gui to model/Gui

* Constants: Add default tcp ports

* Add string: webui_tcp_port_unavailable

* Add ConfigXml#getWebGuiBindPort

* Check if webUI tcp port is available before launching native (fixes #193)

Output failure notification if the port is allocated by someone else.

* Settings UI - Valid tcp ports are from 1024 to 65535 (fixes #211)

* Add tcp6 listen port detection, check on connState == LISTEN

* Update translations de
2019-01-07 20:48:04 +01:00
Catfriend1
1b37db6213 Update APK version to 1.0.0.4 / 1000004 2019-01-06 21:18:19 +01:00
Catfriend1
3a6b5e5478
postbuild script - Improve cross-platform compatibility (#208) 2019-01-06 21:12:23 +01:00
Catfriend1
2e034c0239
Update play presentation (#207)
* Add transifex to fulldescription

* Update translations - app/src/main/play - fulldescription

* Update feature_graphic

* Add listing/icon 32-bit png with alpha

* Move tv banner into correct res folder

* Remove tv banner from drawable-nodpi according to lint

* Add banner drawables for alternative dpi

* Move promo graphic

* Add wearScreenshots folder

* Move tvBanner
2019-01-06 19:13:02 +01:00
Catfriend1
839aeb511a Update APK version to 1.0.0.3 / 1000003 2019-01-06 18:11:08 +01:00
Catfriend1
116c5b7cc9
Verify APK certificate hash after build and show release channel (fixes #205) (#206)
* Rename push-to-device.py to postbuild.py
2019-01-06 18:02:59 +01:00
Catfriend1
a984dd038e Update gplay en-GB fulldescription 2019-01-06 04:40:57 +01:00
Catfriend1
ae2e1874a4
Fix ANR while processing deleted files (fixes #199) (#204)
* Refactor file event finisher into EventProcessor#onItemFinished

EventProcessor: Add new unhandled event "FolderWatchStateChanged"

* Perform ContentResolver.delete operations asynchronously (fixes #199)
2019-01-06 03:46:04 +01:00
Catfriend1
c96786bcb9
Fix edit folder dialog and resource window leaks (fixes #200) (fixes #202) (fixes #203) (#201)
#200 - Cannot change folder type or pull order in wrapper UI
#202 - User selections are lost if screen rotation changes during folder edit
#203 - Edit folder dialog - AlertDialogs leak on screen rotation
2019-01-06 02:59:31 +01:00
Catfriend1
a1fef79c2e
res/play: Update tvBanner and feature_graphic (fixes #194) (#198) 2019-01-05 15:28:21 +01:00
Catfriend1
5351e23732
Optimize onboarding screen to fit on screens and improve texts (fixes #126) (fixes #192) (#196)
* Update desc_padding to 20dp

* Update dimens

* Update welcome wizard texts

* Remove unused dimen

* Update welcome slide layouts

* Add dimen: grant_button_padding

* Welcome slides: use dimen/dots_height as marginBottom

* Update ic_location

* Add @dimen/welcome_title

* Remove res-auto/autoSizeTextType

Add @dimen/slide_desc

* Add dimen for 540dp TV displays

* Add FirstStartActivity#isRunningOnTV detection

* Updated translations

* Increase default slide_desc textSize to 16sp (fixes #126)

* Add dimens for devics with at least 320dp

* Update dimens defintions

* Detect missing "ignore doze" dialog on Android TV's (fixes #192)
2019-01-05 15:08:10 +01:00
Catfriend1
0664c33551
Add notice to "ignore battery optimizations" welcome slide for nVidia shield TV's (fixes #192) (#195)
* Add wiki article: nVidia Shield TV preparations (fixes #192)

* Update wiki: line breaks

* Add os notice to ignore doze permission welcome slide (fixes #192)

* Add Util#containsIgnoreCase

* Updated translations
2019-01-05 12:25:08 +01:00
Catfriend1
21cd185d75 Imported translation de 2019-01-04 16:27:31 +01:00
Catfriend1
461d65d9b3
Add status light to toolbar in MainActivity to indicate if syncthing is running (fixes #187) (#188)
* SyncthingActivity: Reformat code

* Add status light to toolbar

* MainActivity: Add status light indicating if syncthing is running (fixes #187)

* New colors for status light

* Tri-state status light
2019-01-03 23:47:55 +01:00
Catfriend1
8a2fe3ceec
Properly dismiss usage reporting dialog on orientation change (fixes #184) (#186)
* Add RestApi#isUsageReportingAccepted (fixes #184)

* Add verbose log when usage report question dialog triggers (fixes #184)

* Remove asynchronous requests to determine if user opted-in to usage reporting (fixes #184)

* Check if the config is loaded before evaluating current ur user wish

* Properly dismiss mUsageReportingDialog on orientation change (fixes #184)

- Consolidate createRestartDialog into showRestartDialog
- Remove unused var mBatteryOptimizationsDialog
2019-01-03 18:37:01 +01:00
Catfriend1
8919a26083
Add network_security_config.xml (fixes #180) (#181) 2019-01-03 10:25:18 +01:00
Catfriend1
74ab89fb4e
Settings: Split gui tcp port and bind address (fixes #168) (#179)
* Settings: Split gui tcp port and bind address (fixes #168)

Reorder SettingsActivity pref init code according to settings order derived from UI.

* Start browser after adb forward

from helper script.

* Remove unused translation strings

* Updated translations - shortdescription
2019-01-02 18:56:27 +01:00
Catfriend1
755483e9ed Update shortdescription
de-DE, en-GB
2019-01-02 14:46:12 +01:00
Catfriend1
df6bcdcc73 Update contact website 2019-01-02 14:43:02 +01:00
Catfriend1
205af4d692 Updated whatsnew 2019-01-02 13:47:21 +01:00
Catfriend1
936a53ede3
Save ignore list reliably when returning from edit folder dialog (fixes #140) (#175)
* Save ignore list reliably when returning from edit folder dialog (fixes #140)

* Do not return on empty ignore list (fixes #140)
2019-01-01 19:28:57 +01:00
Catfriend1
cf762acb19 Update APK version to 1.0.0.2 / 1000002 2019-01-01 18:45:02 +01:00
Catfriend1
7d59e75aea
Bump syncthing version to 1.0.0 (#173)
* Update syncthing to v1.0.0

* Update model/Options: MaxConcurrentScans

Related: https://github.com/syncthing/syncthing/pull/4888

* Fix typo

* Update APK version to 1.0.0.1 / 1000001
2019-01-01 17:23:30 +01:00
Catfriend1
fd2c441ed7
Update APK version to 0.14.54.9 / 145409 (#171) 2018-12-31 16:58:17 +01:00
Catfriend1
e6eaae06f0
Add Database Size status label to Settings/About (fixes #155) (#172)
* Add new label syncthing_database_size on Settings/About

* Add Util#runShellCommandGetOutput

* Make INDEX_DB_FOLDER constant public

* Add Database Size status label to Settings/About (fixes #155)

* Imported translation de-DE

* Fix lint: Application Context within SettingsFragment
2018-12-31 16:57:51 +01:00
Catfriend1
c36efcf038 Update APK version to 0.14.54.8 / 145408 2018-12-30 23:23:02 +01:00
Catfriend1
826dca6f52
Control syncthing start and stop by third-party automation apps like Tasker (fixes #161) (#169)
* Update tasker actions and broadcast intent extras (fixes #161)

according to https://github.com/Catfriend1/syncthing-android/wiki/Remote-Control-by-Broadcast-Intents

* Update AndroidManifest.xml intent filters

-
 com.github.catfriend1.syncthingandroid.action.START
-
 com.github.catfriend1.syncthingandroid.action.STOP

* Fix missing "public" declaration

* Add PREF_BROADCAST_SERVICE_CONTROL

* Add null check for mRunConditionMonitor

in SyncthingService#ACTION_REFRESH_NETWORK_INFO

* Disable RunConditionMonitor completely

when PREF_BROADCAST_SERVICE_CONTROL is enabled.

* Status tab: Display hint if service control by broadcast is enabled in prefs

* Update strings

* Imported translations
- de
- sv
2018-12-30 23:15:57 +01:00
Catfriend1
2a7fb4b376 Update APK version to 0.14.54.7 / 145407 2018-12-30 17:13:56 +01:00
Catfriend1
105ead51ca
Display syncthing's API key in Settings/About dialog (fixes #164) (#167)
* Display syncthing's api key in Settings/About dialog (fixes #164)

* Click to copy API key to clipboard

* Imported translation de-DE
2018-12-30 17:11:50 +01:00
Catfriend1
7fb47b3aba
Fix syncthing version not showing in Drawer (fixes #165) (#166)
Fix Syncthing version not showing in Drawer or incorrectly shown after app first start or update.
Show syncthing native version regardless if syncthing is running or not.
2018-12-30 16:13:09 +01:00
Catfriend1
0fcd84da0e
Improve "share to syncthing" and self-to-service binding (#162)
Related issues:
#158 - FolderActivity not correctly disposed after dialog close
#161 - mRunconditionmonitor not running after config import/export
#163 - "Share to syncthing-folder" doesn't work when syncthing is not running

* import/export Config: Only shutdown native if it is running (fixes #161)

* Remove FolderPickerActivity#kitkat_external_storage_warning

* Remove SyncthingActivity#registerOnServiceConnectedListener

* Make "share to folder" available when syncthing is online or offline (fixes #163)

Improve service connection

* Add script to forward web UI port of an AVD

Update README.md

* SettingsActivity: Improve service connection

* Correct self-class reference in FolderActivity (fixes #158)

* Correct self-class reference in DeviceActivity (fixes #158)

* Correct self-class reference in ShareActivity (fixes #158)

* Remove unused string 1/2

* Remove unused string 2/2
2018-12-30 15:58:39 +01:00
Catfriend1
b1c614cf21 Imported translations
- ru
2018-12-29 22:40:31 +01:00
Catfriend1
18c18ae7b6 Update APK version to 0.14.54.6 / 145406 2018-12-29 22:33:09 +01:00
Catfriend1
ad0ff6f77e
Properly verify Device ID's entered by the user synchronously (fixes #159) (#160)
* Add Utils/Luhn.java for check rune calculation

* Update model/Device.java defaults

according to Device defaults in ConfigXml#getDevices

* Remove errorListener from ConfigRouter#addDevice

* Remove errorListener from RestApi#addDevice

Remove no longer used RestApi#normalizeDeviceId

* Add checkDeviceID to model/Device.java

and verify device ID's entered by the user before writing them to the config.

* Fix lint by using Locale.ROOT for internal strings
2018-12-29 22:28:10 +01:00
Catfriend1
3a88b94487 Imported translations
- ca-rES
- de
- nl
2018-12-28 13:06:06 +01:00
Catfriend1
7bfeb16dcf Update APK version to 145405 / 0.14.54.5 2018-12-28 12:44:19 +01:00
Catfriend1
36bfdbda27
Preserve syncthing running/not running after a database or delta index reset (fixes #154) (#157)
* model/Completion: Switch off verbose log

* Preserve syncthing running/not running after a database or delta index reset (fixes #154)

Remove callback listener triggered by SyncthingService#shutdown.onKilledListener()

* service/EventProcessor: Switch off verbose log
2018-12-28 12:39:31 +01:00
Catfriend1
323f45ae23
Support Variable Size Blocks (VSB) (fixes #153) (#156)
* ConfigXml/Folder - Add "useLargeBlocks"

* Update folder model defaults

* UI for Variable Size Blocks (VBS) (fixes #153)
2018-12-28 12:38:35 +01:00
Catfriend1
d917ac5e73
Binder failed - cannot create handler inside thread that has not called looper.prepare (fixes #149) (#150)
Fix Binder failed - cannot create handler inside thread that has not called looper.prepare (fixes #149)
2018-12-24 09:51:25 +01:00
Catfriend1
190826e660
Refactor ConfigXml (#135)
Changelog:
- "Use default folder path given in config.xml" (#101)
- "IllegalStateException: Fragment already added" (#108)
- "Enhancement request for per-folder(device) sync conditions" (#110)
- "NPE crash after key and config regeneration" (#141)
- "Adjust the folder icon to show if it's send/receive or both" (#143)
- "CPU percentage is not shown on the status tab" (#144)
- "Always make individual sync conditions UI available" (#145)
- "IntroducedBy deviceID lost on config change through wrapper UI" (#146)
- "Wrapper doesn't use the same syntax as syncthing core's web UI for device addresses" (#147)
- "Syncthing wrapper "emergency" shutdown on native binary crash doesn't work" (#148)

Commits:

* WIP

* WIP

* Get folder list and paused setting when syncthing is not running

Preparation to solve #110

* Fix NPE in DeviceListFragment#DEVICES_COMPARATOR

* Remove blank line

* Add ConfigXml#getDevices and comparator

Make ConfigXml#saveChanges public

* SyncthingService evaluates per folder/device

sync conditions when syncthing is not running via ConfigXml

* Fix typos and add stubs

* Fix build errors

* DEBUG - Always run syncthing binary

* Fix NPE at RunConditionMonitor pointer

* Add setFolderPause, setDevicePause

to ConfigXml

* Improve logging

* Remove test mode

* Better log levels

* Make ConfigXml#updateIfNeeded private

* Remove SyncthingService#mStartupTask

AsyncTask no longer needed

* Update model/Options (fixes #101)

* Fix NPE after config regeneration (fixes #140)

* Refactor key and config generation

Refactor ConfigXml public functions to allow checking if a valid config exists and trigger key and config (re)genration if something is corrupted.

* Fix crash on export/import (fixes #142)

* ApiRequest - Disable verbose log in release builds

* ConfigXml#updateIfNeeded - Disable "startBrowser"

because it applies to desktop environments and cannot start a mobile browser app

* MainActivity - Always show all tabs

* Show folder/device tab contents from config.xml

if syncthing is not running

* Update ConfigXml#getDevices return model

- compression
- introducer

* Device tab - Hide in/out rate if syncthing is not running

 or if the device is paused

* Update device item layout

* MainActivity/Devices - Prevent showing outdated status

after syncthing core transitioned from "active" to "disabled"

* MainActivity/Folders - Prevent showing outdated status

after syncthing core transitioned from "active" to "disabled"

* Add ConfigRouter class

Provides a transparent access to the config if ...
a) Syncthing is running and REST API is available.
b) Syncthing is NOT running and config.xml is accessed.

* Add pref - Cache local device ID

* Allow excluding self in ConfigRouter#getDevices

* Allow excluding self in ConfigRouter#getDevices (2)

* Update Folder model default values

* Update Folder model defaults (2)

- copiers
- hashers

* WIP - ConfigXml - FolderActivity

Remove unused pref inject code
Cache local device ID in pref
Reduce verbose logging in release builds
Extend ConfigXml#getFolders
Extend ConfigXml#getDevices
Fix ConfigXml#setDevicePause

ToDo ConfigXml#getFolderIgnoreList needs to be implemented

* Implemented ConfigXml#getFolderIgnoreList

* Extend ConfigXml#getDevices

- device.addresses

* WIP - DeviceActivity

Make it available when syncthing is not running

* Fix unsuccessful API bumps while syncthing is starting

* Fix space

* Adjust the folder icon to show if it's send/receive or both (fixes #143)

* Fix lint - item_device_list

* Preserve active tab when syncthing core transitions between running and not running

* Add xmlns:android to item_folder_list

* Remove unused reference from item_folder_list

* Add device icon to device tab

* Fix CPU percentage not showing (fixes #144)

* SyncthingService - Polish iterator code

* Fix MainActivity#updateViewPager (fixes #108)

* Add ConfigXml#updateFolder, updateDevice (1)

* Add ConfigRouter#updateFolder, updateDevice

* Add missing "final" to ConfigXml#updateDevice

* WIP - FolderActivity - Update updateFolder via ConfigRouter

ToDo: Implement ConfigRouter here.

* ConfigRouter - Fix missing return

* DeviceActivity - Update device via ConfigRouter

* Always make individual sync conditions UI available (fixes #145)

regardless if syncthing core is running or not.
Remove SyncthingService dependency from SyncConditionsActivity

* Fix incorrect folder type icon shown

when syncthing core is not running

* Add "introducedBy" to folder and device model (fixes #146)

* Add Folder#getDevices to model

* ConfigXml#updateFolder - Writeback devices sharing the folder

Support preserving the "introducedBy" model field of Folder.java (fixes #146)

* Add ConfigXml#updateFolder - Versioning

* Remove SyncthingService dependency from FolderPickerActivity

because it is no longer required.

* Update ToDo remarks

* Add ConfigXml#updateDevice - Addresses

* Fix DeviceActivity#persistableAddresses to be more graceful (fixes #147)

and accept the same address syntax as syncthing core web UI does.

* Add ConfigXml#removeFolder, removeDevice

* Add ConfigXml#addDevice, addFolder

- Add ConfigXml#isDeviceIdValid
- Do not allow adding empty folder labels or empty device names.
- Update model Folder.java so ConfigXml can handle the ignorePerms XML attribute

* Fix Syncthing wrapper "emergency" shutdown on native binary crash (fixes #148)

* Update translation de

* Add ConfigXml#postFolderIgnoreList

* Update APK version to 0.14.54.3 / 4182

* Revert DEBUG - Always run syncthing binary

* Update whatsnew
2018-12-22 01:58:44 +01:00
Catfriend1
7791787bbc
Add automastic fallback to http on Android 4.x (fixes #137) (fixes #139) (#138)
* Add script to update submodule

* Update publish-release.sh

* Add helper script to build syncthing submodule only

* Enable HTTPS for REST/WebUI only if OS supports it (fixes #137)

* Update ApiRequest to handle both http or https

* Add Constants#osSupportsTLS12

* Update APK version to 0.14.54.2 / 4181

* Update README.md

* Update whatsnew
2018-12-16 10:44:55 +01:00
Catfriend1
ecef147e5b Updated APK version to 0.14.54.1/4180 2018-12-05 19:35:26 +01:00
Catfriend1
c6734331d4 Updated whatsnew and README.md 2018-12-04 20:24:28 +01:00
Catfriend1
7e1cd49b4c Update APK version to 0.14.53.1 / 4179 2018-12-04 20:16:00 +01:00
Catfriend1
1ca2dadd6f Update APK version to 0.14.52.2 / 4178 2018-11-29 23:08:18 +01:00
Catfriend1
92e6579242
Update filemanager recommendation package name (fixes #125) (#134)
The recommended app is still free on F-Droid at time of writing this.
2018-11-29 23:05:58 +01:00
Catfriend1
cb5c3b074c
Import translations / Force lint checks before build (#132)
* Update app desc en-GB

* Add git_fetch_branch.sh

* Abort on lint error

* Run lint when building the app

* Update app full description

* Imported translation values-sv
2018-11-29 22:16:51 +01:00
Catfriend1
1f7b068eac
Imported values-sv (#129) 2018-11-23 08:46:37 +01:00
Catfriend1
17f14a0d93
Update syncthing submodule to 0.14.52-release (#123)
* Update syncthing submodule to 0.14.52

* Update APK version to 0.14.52.1 / 4177
2018-11-20 23:40:43 +01:00
Catfriend1
49e337ebce Fix imported translations 2018-11-08 11:12:11 +01:00
Catfriend1
86ab7e1053 Imported translations 2018-11-08 10:59:15 +01:00
Catfriend1
5e00d6c65c
Add tip: Xiaomi autostart (#121)
* Add tip: Xiaomi autostart

* Imported translations
2018-11-02 13:27:24 +01:00
Catfriend1
8b15993494
Improve pref explanations (#119)
* Improve autostart explanation in prefs

* Imported translations

* Improve string

* Update flight mode run condition explanation

* Imported translations
2018-10-30 22:25:07 +01:00