1
0
Fork 0
mirror of https://github.com/syncthing/syncthing-android.git synced 2024-11-26 14:21:16 +00:00
Commit graph

1867 commits

Author SHA1 Message Date
Catfriend1
337faa8373
Add helper scripts to quickly enable/disable lint (#212)
Requires UnixTools sed.exe on Windows
2019-01-07 21:11:01 +01:00
Catfriend1
66af682ec5 Update helper script for renaming built APKs 2019-01-07 21:06:05 +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
9f499e8ee0 Add wiki page: Switch-between-releases_Verify-APK-is-genuine 2019-01-06 16:33:12 +01:00
Catfriend1
a984dd038e Update gplay en-GB fulldescription 2019-01-06 04:40:57 +01:00
Catfriend1
e4a7e18157 Update postbuild_rename_apk.cmd helper script 2019-01-06 04:07:07 +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
27e98b675b
Add privacy policy statement for the Syncthing-Fork wrapper (#185) (fixes #78) 2019-01-03 13:53:48 +01:00
Catfriend1
b9214dbcde
Update README.md (#183) 2019-01-03 12:31:34 +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
dbbedd7713
Add helper script: postbuild_rename_apk.cmd (#174)
* Update helper script

* Add helper script: postbuild_rename_apk.cmd

* Improve helper script postbuild_rename_apk.cmd

* Add purpose and example to helper script
2019-01-01 18:40:23 +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
63d9f29ceb
Update fdroiddata (#151) 2018-12-24 12:02:19 +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