* Adblock Browser (AccessibilityHelpers.SupportedBrowsers): add support for v2+ (stable/beta)
Support for older versions (based on Firefox for Android, instead of Chromium) in the list remains.
* Adblock Browser (AutofillHelpers.CompatBrowsers): add it to the list
* Adblock Browser (autofillservice.xml): add it to the list
* [Brave] Add all other variants to AccessibilityHelpers.SupportedBrowsers
* [Brave] Add all other variants to AutofillHelpers.CompatBrowsers
* [Brave] Add all other variants to autofillservice.xml
Previously a call to BiometricPrompt.AuthenticationCallback#OnAuthenticationFailed()
was treated as though an unrecoverable failure had occurred. However this is called on
each failed fingerprint match, for example, and is not a terminal failure. Now these
intermittent failures are ignored and a call to #OnAuthenticationError() is recognised
as an unrecoverable failure instead.
* Output to bundle (play store build only) and enable startup tracing
* Update ci build script to recognize bundle (.aab) for Google Play build
* Added bundle awareness to `appveyor.yml` and `Program.cs`
* Log upload exception
* Restore original apk creation alongside the bundle
* Remove link skip as AOT doesn't support linking
* Added Quick Settings tile for triggering accessibility autofill
* Fix crash when tile attempt to cancel non-visible but non-null overlay
* Persist tile state plus cleanup
* New translations AppResources.resx (Belarusian)
* New translations copy.resx (Hebrew)
* New translations copy.resx (Hindi)
* New translations copy.resx (Hungarian)
* New translations copy.resx (Indonesian)
* New translations copy.resx (Italian)
* New translations AppResources.resx (Korean)
* New translations AppResources.resx (Norwegian Bokmal)
* New translations copy.resx (Norwegian Bokmal)
* New translations AppResources.resx (Polish)
* New translations copy.resx (German)
* New translations copy.resx (Chinese Simplified)
* New translations copy.resx (Czech)
* New translations copy.resx (Croatian)
* New translations copy.resx (Danish)
* New translations AppResources.resx (Dutch)
* New translations copy.resx (Finnish)
* New translations copy.resx (Estonian)
* New translations AppResources.resx (Estonian)
* New translations copy.resx (English, United Kingdom)
* New translations AppResources.resx (English, United Kingdom)
* New translations AppResources.resx (Russian)
* New translations copy.resx (Russian)
* New translations AppResources.resx (Spanish)
* Password generator policy enforcement
* Formatting
* Changed to simple cast (double unboxing for int64/long)
* Added ui indication of active policy on password generator page and fixed issue with switch enable logic
The code expects to be called form UI thread, but it loks like JavaScript
callbacks are not. Switch to UI thread when invoking a callback.
Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
In the callback the processing does not go in the main UI thread, so we
need to switch there. Otherwise on Android this throws
Android.Util.AndroidRuntimeException with detail “Only the original thread
that created a view hierarchy can touch its views”.
Discovered by trying to login with Duo as a two-factor login type.
Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
* Add clone ability to personal vault items
* Fixed formatter
* Made requested changes and removed some extra whitespace added by Rider formatter
* Removed formatting on AppResources file
* Fixed casing on UpdateCipherId method
* Update calling method
* First pass at vault export UI
* Password validation via cryptoService
* Export service framework
* support for constructing json export data
* Support for constructing csv export data
* Cleanup and simplification
* Completion of vault export feature
* Formatting and simplification
* Use dialog instead of toast for invalid master password entry
* Show/hide accessibility overlay on scroll based on several visibility factors
* Improvements to accessibility overlay anchor view tracking
* Increase recursion limit and check for null children when walking the node tree
* Cleanup
* Hide overlay when expanding status (notification) bar
* use .Any() instead of .Count()
* Trigger overlay prompt when focusing on username field
* Adjust accessibility overlay position in response to scroll events
* Get username EditText with a single pass of the node tree, plus additional cleanup
* UI support in app settings for handling overlay permission requirement in Accessibility Service implementation
* Cleaned up shorthand operator with new var
* Replaced accessibility service notification with in-line overlay. Requires draw-over permission to be enabled (will prompt if not, though this will be enhanced in subsequent commits)
* Updated with requested changes
* Fix for FDroid build
AccessibilityNodeInfo.FindAccessibilityNodeInfosByViewId(..) returns
null when the source package is a supported browser, return a null
uri to prevent overwriting the existing notification's pendingIntent
uri extra with the brower's packageName.
* AccessibilityService.cs: Added null uri checks as it is now possible
for AccessibilityHelpers.getUri(..) to return a null uri when the
Accessibility Service is misbehaving.
* Change password generator to use ColoredPassword
* Change ColoredPassword from FormattedString to HTML string for improved performance
* PasswordFormatter fixes
* Correct || to && condition
* Apply password colouring to history pages
* New translations AppResources.resx (Bulgarian)
* New translations AppResources.resx (Hungarian)
* New translations AppResources.resx (Turkish)
* New translations AppResources.resx (Spanish)
* New translations AppResources.resx (Russian)
* New translations AppResources.resx (Romanian)
* New translations AppResources.resx (Portuguese, Brazilian)
* New translations AppResources.resx (Portuguese)
* New translations AppResources.resx (Polish)
* New translations copy.resx (Persian)
* New translations copy.resx (Persian)
* New translations AppResources.resx (Persian)
* New translations AppResources.resx (Japanese)
* New translations AppResources.resx (Italian)
* New translations AppResources.resx (Hebrew)
* New translations AppResources.resx (Catalan)
* New translations AppResources.resx (German)
* New translations AppResources.resx (French)
* New translations AppResources.resx (Finnish)
* New translations AppResources.resx (Estonian)
* New translations AppResources.resx (English, United Kingdom)
* New translations copy.resx (Dutch)
* New translations copy.resx (Dutch)
* New translations AppResources.resx (Dutch)
* New translations AppResources.resx (Danish)
* New translations AppResources.resx (Czech)
* New translations AppResources.resx (Croatian)
* New translations AppResources.resx (Chinese Traditional)
* New translations AppResources.resx (Chinese Simplified)
* New translations AppResources.resx (Ukrainian)