1
0
Fork 0
mirror of https://github.com/syncthing/syncthing-android.git synced 2024-11-30 00:01:19 +00:00
Commit graph

343 commits

Author SHA1 Message Date
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
Catfriend1
1f772935f2
Recent changes - open file/dir on click (#118)
* Initialize DiskEventData for tests

* Add FileUtils#getMimeTypeFromFileExtension

* Open file when user clicks on it in RecentChangesActivity

* Add RestApi#getFolderByID

* Add Constants#ENABLE_TEST_DATA

* Add strings

* Move open folder to FileUtils#openFolder

* Add FileUtils#openFolder, FileUtils#openFile

* Fix UI glitch

Make clear to the user that the folder label is not part of the physical full file path and name.

* Open file/folder on item click

Add test data

* Imported translations

* Fix lint

* Update APK version to 0.14.51.13 / 4176

* Update README.md, whatsnew

* Turn off test data mode

* Remove unused import
2018-10-30 21:50:48 +01:00
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
8d59ba1a6c Updated russian translations 2018-10-27 16:39:50 +02:00
Catfriend1
84290ff560 Revert build.gradle to use guava:23.6-android
Reason: Crash on Android 5.x
2018-10-27 16:34:08 +02: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
ba45aa9e82 Update build tools to 28.0.3 / gradle 4.6
Android Studio 3.1.2
2018-10-27 15:09:05 +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
334f24f027 Update APK version to 0.14.51.10 / 4173 2018-10-23 09:22:50 +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
78b1af9d02 Update README and translations 2018-10-16 10:26:44 +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
c5a436fb61 Update APK version to 0.14.51.5 / 4168
Updated whatsnew
2018-10-13 11:58:56 +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
f9145b9fd5 Update APK version to 0.14.51.4 / 4167 2018-10-10 02:48:21 +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
cd3bca5141 Update APK version to 0.14.51.3 / 4166 2018-10-07 18:30:02 +02:00
Catfriend1
2021ef6806
Disable wakelock experimental option on Android 6+ (#77) 2018-10-07 18:28:46 +02:00
Catfriend1
466fc971dd
Add launcher icon indicating a debug build (#76) 2018-10-07 17:33:41 +02:00