Commit Graph

214 Commits

Author SHA1 Message Date
Kyle Spearrin fe778293c1 renaming files for Site => Login refactor 2017-01-03 00:25:17 -05:00
Kyle Spearrin 991afb7722 Reactor rename Sites => Logins 2017-01-03 00:17:15 -05:00
Kyle Spearrin 7bc38a35e8 Support for encrypt-then-mac 2016-12-10 22:05:52 -05:00
Kyle Spearrin 428e35237f null checks around `Application.Current` for `SyncService`. 2016-10-29 10:30:03 -04:00
Kyle Spearrin fc1b825f46 cryptographically secure RNG for password generator 2016-10-15 01:18:12 -04:00
Kyle Spearrin 9c0c819dce remove unused instance of Random 2016-10-10 22:09:58 -04:00
Kyle Spearrin ee883571da Settings plusin doesn't support string null values for default on android. ref https://github.com/jamesmontemagno/SettingsPlugin/issues/8 2016-08-29 23:06:29 -04:00
Kyle Spearrin fb77747a1b Only process push messages for the current logged in user. Do not unregister from push on logout. 2016-08-20 22:18:05 -04:00
Kyle Spearrin 7b9c00cd77 More accurate push registration for android 2016-08-20 19:19:10 -04:00
Kyle Spearrin ca4a00196a Android styling. Invoke lock and isbusy updates on main UI thread. ConfigureAwaits in sync service. 2016-08-17 00:39:42 -04:00
Kyle Spearrin d3b1fed9b7 Track activity more accurately throughout the app & extension so that lock screen is not presented prematurly. 2016-08-08 19:00:36 -04:00
Kyle Spearrin 36629b0855 Optimized full and incremental syncs with IDictionary key/value lookup rather than enumerating the collections. 2016-08-08 18:59:47 -04:00
Kyle Spearrin 98ceaba5f5 Created anonymous app id for google analytics. 2016-08-06 19:03:48 -04:00
Kyle Spearrin a267bf9cf7 adjusted put token by identifier to not have a response 2016-08-06 18:45:23 -04:00
Kyle Spearrin 8c8db7c34b catch when key is null 2016-08-06 03:10:54 -04:00
Kyle Spearrin 33a01c0512 Since a sync operation is running on a background thread and is long-running, it is possible someone could log out during its processing. Do some auth checking during the loops process. 2016-08-06 01:48:24 -04:00
Kyle Spearrin 48b5545a33 unregister push on logout. iOS has no concept of unregistering for push. 2016-08-06 01:43:48 -04:00
Kyle Spearrin b1da05474a clear push token on unregister 2016-08-06 00:41:00 -04:00
Kyle Spearrin 38184e4893 Added "first load" check on site list to wait for sync to complete if key changed. Renamed "other" constants. 2016-08-05 23:58:31 -04:00
Kyle Spearrin d96a94b478 store previous key and userid so we can determine if stored crypto is usable before a sync 2016-08-05 21:59:25 -04:00
Kyle Spearrin 2947809d78 Convert everything back to UTC since thats now settings plugin stores them. Move sync page ToLocalTime conversion. 2016-08-02 00:32:57 -04:00
Kyle Spearrin 6f800896c3 Removed BouncyCastle in favor of PCLCrypto. Created KeyDerivationService for Android using BouncyCastle. Applied key derivation service to CryptoService. Create iOS Test project. 2016-08-01 20:23:46 -04:00
Kyle Spearrin d0fa6841c3 cascade null to sites on folder delete 2016-07-31 00:19:12 -04:00
Kyle Spearrin a315f36e09 Moved local times to DateTime.Now. Styled sync page with last sync time shown. 2016-07-30 17:29:04 -04:00
Kyle Spearrin c44726bd54 Moved to default lock of 15 minutes. Removed context options from vault list. Made folder add name selectable. 2016-07-30 16:39:52 -04:00
Kyle Spearrin 7b76f2c238 Incremental sync only every 30 minutes 2016-07-28 21:41:45 -04:00
Kyle Spearrin 9ef840412a Use secure storage for app id so that it will persist over reinstalls. Use separate app identifier for extension in hockeyapp. 2016-07-27 18:46:55 -04:00
Kyle Spearrin 0a2bc7f053 adjusted build configs for ios. safer parsing od push notifications 2016-07-23 15:04:05 -04:00
Kyle Spearrin cf27ace05e support for two factor login flow 2016-07-23 02:17:11 -04:00
Kyle Spearrin d0bf141c5d centralized lock logic into a new lock service to be shared to extension 2016-07-19 23:29:32 -04:00
Kyle Spearrin 81f2f2b1bb Moved BeginInvokeOnMainThread to App.cs 2016-07-19 22:00:28 -04:00
Kyle Spearrin 2fb2d99541 Invoke logout message always on main thread. 2016-07-19 19:38:13 -04:00
Kyle Spearrin 6c496bea14 Change sync started/compelted flag 2016-07-19 19:01:40 -04:00
Kyle Spearrin d07210c7dc Centralized logout into a message subscription in app class. Logout when API results are forbidden or unauthorized. 2016-07-19 18:46:39 -04:00
Kyle Spearrin d82c0d7d71 Lock by master password page. 2016-07-18 19:16:27 -04:00
Kyle Spearrin b90c153353 Respect options on gneerate password. Allow override parameters to be passed into password generation service. Respect context password options. Copy password. 2016-07-15 01:01:00 -04:00
Kyle Spearrin f2893e788d Added busy indicator for sync operations. Optimized vault list loading. Customized search bar appearance on iOS. 2016-07-11 23:55:16 -04:00
Kyle Spearrin 635b09de9b move CbcBlockCipher into crypto methods instead of singleton instance to avoid multithreaded issues 2016-07-11 20:14:24 -04:00
Kyle Spearrin f0455aad74 async vault fetch and filter (search) tasks. Resolved singleton crypto issue around reuse of `PaddedBufferedBlockCipher` 2016-07-11 19:36:39 -04:00
Kyle Spearrin d61d3c201a singleton Random() 2016-07-09 13:12:46 -04:00
Kyle Spearrin 29c7a0ccf0 background thread full/incremental sync operations. pool sqlconnection. sqlconnection to FullMutex mode for multithread environment. try/catch decryption errors. 2016-07-06 22:33:50 -04:00
Kyle Spearrin 55ed801fe7 Password generator page. Password generation service. Tests. Renamed some settings constants. 2016-07-02 02:01:47 -04:00
Kyle Spearrin 5a34d4cd6d Check push registration once per day 2016-07-01 19:16:47 -04:00
kspearrin 6d6f4b350b Fix build errors with delete repo contract change 2016-07-01 19:06:07 -04:00
Kyle Spearrin 8fd4e09b78 More sync operations with broadcast refreshes of listing pages 2016-06-30 20:08:34 -04:00
Kyle Spearrin 17af08b7d4 Removed disclosure from view cell in favor of button. Updated sync logic for incrementals. Store revision date from server record. Apply more accessability font size support for editor and picker controls 2016-06-30 18:53:43 -04:00
Kyle Spearrin 7a48128e43 Push notification and sync fixes 2016-06-30 00:36:44 -04:00
Kyle Spearrin 2d6e0bd95a Cipher api repository and various sync operations from push notifications. 2016-06-29 21:59:18 -04:00
Kyle Spearrin 818b1c426f push notification registration for iOS 2016-06-28 00:55:53 -04:00
Kyle Spearrin a1798f68af added extension back ios project references 2016-06-24 00:04:32 -04:00
Kyle Spearrin 4cfa8e2dee device registration on login 2016-06-21 22:29:29 -04:00
Kyle Spearrin 0f5b2f5721 push device /w token to server upon registration 2016-06-18 16:20:31 -04:00
Kyle Spearrin 8677e9e7ae Setup push notifications for android and ios 2016-06-18 02:45:46 -04:00
Kyle Spearrin a238523551 repurpose vaultlistpage to also serve favorites page 2016-06-14 23:23:05 -04:00
Kyle Spearrin e85fd53d56 PIN settings page 2016-06-12 00:49:35 -04:00
Kyle Spearrin a470f35465 fixed bug in crypto service where field was not being returned when set. 2016-05-18 23:09:17 -04:00
Kyle Spearrin 11f908aab2 folder delete 2016-05-17 23:25:40 -04:00
Kyle Spearrin 71be9f8780 save last sync in settings 2016-05-06 18:49:01 -04:00
Kyle Spearrin decd3fc24e Added icons for iOS. Broke out data access into repositories. Added syncing service. 2016-05-06 00:17:38 -04:00
Kyle Spearrin 24a5a16723 wip 2016-05-03 19:49:49 -04:00
Kyle Spearrin 92e74274e0 wip 2016-05-03 02:08:50 -04:00
Kyle Spearrin c6222c8ed3 Add folder page, folder picker on add site page. 2016-05-02 18:35:01 -04:00
Kyle Spearrin e05ed4c1f2 updates 2016-05-02 17:50:16 -04:00
Kyle Spearrin bc3d9c4465 initial commit 2016-05-02 02:52:09 -04:00