Commit graph

326 commits

Author SHA1 Message Date
Kyle Spearrin
8a47e99a2c Fixed extended button renderer. Added styles for it. 2016-08-18 08:43:55 -04:00
Kyle Spearrin
1ca4cceec8 turn off uppercase for some android buttons 2016-08-18 00:20:21 -04:00
Kyle Spearrin
e3b44ac7d1 Added rate app function and message passing for android 2016-08-17 23:08:26 -04:00
Kyle Spearrin
fd09833df1 Revert micro sizes on android 2016-08-17 21:49:03 -04:00
Kyle Spearrin
8579b7130a Move to lists and arrays for more performant iterating 2016-08-17 21:19:19 -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
189c56342a Extended button and device specific monospace fonts 2016-08-16 22:18:45 -04:00
Kyle Spearrin
2c05c9595b Await async calls after loading. Added ConfigureAwaits throughout API repositories. Formatting. 2016-08-16 19:20:41 -04:00
Kyle Spearrin
db36f618db Invoke PresentationFolders reset on main thread. Formatting. Move to ThrowIfCancellationRequested. 2016-08-15 23:09:41 -04:00
Kyle Spearrin
c03b5d6c00 Updated Xamarin Forms to latest version. 2016-08-15 21:33:07 -04:00
Kyle Spearrin
ee867df0be Added task cancellation to vault list so that search filtering tasks do not stack. 2016-08-14 01:42:18 -04:00
Kyle Spearrin
2180fb6728 Android UI updates to custom cells 2016-08-14 00:54:07 -04:00
Kyle Spearrin
d6a66d1eb0 Android styling for tools page 2016-08-13 22:07:44 -04:00
Kyle Spearrin
b4a80751b2 Android UI improvements. Added hockeyapp for android. Recycle lsitview elements. 2016-08-13 21:43:15 -04:00
Kyle Spearrin
748698b33f Fixes to android. Added assets for android. 2016-08-13 00:30:41 -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
fe1545fbdf catch WebExceptions during API calls 2016-08-06 19:33:04 -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
35da8dd4ed clear push token after logout 2016-08-06 15:21:59 -04:00
Kyle Spearrin
638b3288b4 Don't focus fields if coming from register page so that they can see toast. 2016-08-06 13:14:58 -04:00
Kyle Spearrin
7de33d1c60 load login page after registration completed 2016-08-06 11:57:05 -04:00
Kyle Spearrin
2d6407f9a0 Only show IsBusy indicator on vault list pages 2016-08-06 11:43:22 -04:00
Kyle Spearrin
503561d838 Device-Identifier header 2016-08-06 10:45:16 -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
2d0bfe1a92 Show status bar on mainpage. Getting confused with homepage. 2016-08-05 00:35:37 -04:00
Kyle Spearrin
004812bb09 GA track tools page 2016-08-05 00:20:45 -04:00
Kyle Spearrin
fb925b8fc2 ShowStatusBar set on init of main page 2016-08-05 00:19:10 -04:00
Kyle Spearrin
7eb78ee50f no status base on main page appearing 2016-08-04 23:59:04 -04:00
Kyle Spearrin
c3d7cf125f sync check on disappear 2016-08-04 23:56:44 -04:00
Kyle Spearrin
dac3fed303 Added some analytics events to settings page 2016-08-04 23:27:50 -04:00
Kyle Spearrin
1390316847 cleanup isbusy on page disappearing 2016-08-04 23:14:47 -04:00
Kyle Spearrin
7c29f8b77a More GA event tracking throughout. Added dispatch when ios app is backgrounded. 2016-08-04 19:35:56 -04:00
Kyle Spearrin
dd633d4fc1 Added manual display method to GA service. AutoFilled event for extension. 2016-08-04 08:46:53 -04:00
Kyle Spearrin
ed29ead88e GeneratedPassword events 2016-08-04 00:50:03 -04:00
Kyle Spearrin
fef77e94a4 Updated generatedpassword events so that slider changing doesn't spam the event 2016-08-04 00:44:53 -04:00
Kyle Spearrin
7ba4baa5ce Tracked a few events in the main app. 2016-08-04 00:32:37 -04:00
Kyle Spearrin
561c972c96 Instrumented key events in extension 2016-08-04 00:25:10 -04:00
Kyle Spearrin
a831c9ac4f Added track screen events for pages and controller in extension. UserId refresh on login/logout. 2016-08-04 00:06:09 -04:00
Kyle Spearrin
c86c82ee69 track page appearing 2016-08-03 21:45:01 -04:00
Kyle Spearrin
41deae60f5 Added google analytics service implementation for iOS and android 2016-08-03 21:25:01 -04:00
Kyle Spearrin
ae37c634ef sort sites and folders 2016-08-02 18:45: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
625be7fdd4 Linker config, ARM64 support only. Assembly name updates. 2016-08-02 00:16:13 -04:00
Kyle Spearrin
c42a1504a7 upadted package and isntalled pclcrypto into device projects 2016-08-01 21:15:24 -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
fc07844bb6 key derivation service that pinvokes into CommonCrypto for PBKDF2 key 2016-08-01 00:06:12 -04:00
Kyle Spearrin
d0fa6841c3 cascade null to sites on folder delete 2016-07-31 00:19:12 -04:00
Kyle Spearrin
6068a4bd56 Handle unexpected error cases on API calls better. 2016-07-30 18:16:09 -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
c59549f25a Added remember last email login. adjsuted sizing on extension slider. Added fallback logout to fingerprint. 2016-07-30 13:28:13 -04:00
Kyle Spearrin
912ade4059 fingerprint icon on extension lock page 2016-07-30 12:44:02 -04:00
Kyle Spearrin
ef77ccd189 Added fingerprint icon to unlock page 2016-07-30 12:17:32 -04:00
Kyle Spearrin
86b1b62fbb updated icons and architectures config 2016-07-30 00:46:17 -04:00
Kyle Spearrin
7060ee838c Adjusted some spacing on about and settings 2016-07-30 00:16:40 -04:00
Kyle Spearrin
9e314233d5 tableview no header/footer updates 2016-07-29 00:13:35 -04:00
Kyle Spearrin
63373501b1 moved sections in password generator page. adjusted tableview renderer for AutomaticDimension height in footer. 2016-07-28 22:07:48 -04:00
Kyle Spearrin
7b76f2c238 Incremental sync only every 30 minutes 2016-07-28 21:41:45 -04:00
Kyle Spearrin
9f54296ff0 updated instruction on extension tool page 2016-07-28 00:50:30 -04:00
Kyle Spearrin
010ae19284 two step login 2016-07-28 00:39:35 -04:00
Kyle Spearrin
9338552297 extension tutorial images 2016-07-28 00:24:51 -04:00
Kyle Spearrin
4ac447a13f Added extension icon to setup view controller in extension along with text explanation. 2016-07-27 19:49:23 -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
5b97097a23 tools icon credit 2016-07-26 23:21:04 -04:00
Kyle Spearrin
a5d19bca3b updated tab bar icons 2016-07-26 23:19:01 -04:00
Kyle Spearrin
6371343dc5 Fixed perf issues with IEnumerable. Fixed rate link and row heights for settings. 2016-07-26 19:21:57 -04:00
Kyle Spearrin
39b7420c52 Updated to new version of user dialogs with new toast messages 2016-07-26 00:38:41 -04:00
Kyle Spearrin
3dff2cc6d0 show push prompt before push registration 2016-07-25 23:34:19 -04:00
Kyle Spearrin
193ef8c995 Use tableview on about page for credits selections. Break settings page out into individual table views so we can use footer labels. 2016-07-25 22:24:40 -04:00
Kyle Spearrin
948dc9511f app store rating footer label 2016-07-25 21:57:53 -04:00
Kyle Spearrin
b8c6e77fca About and credit page implementation. Adjusted block screen and launch screen logo margins up some. Added decryption message to extension loading. 2016-07-23 23:50:08 -04:00
Kyle Spearrin
8ad2786bb0 settings help page implementation 2016-07-23 19:13:30 -04:00
Kyle Spearrin
7b083d5d0d added instruction label to pin code screens 2016-07-23 15:58:50 -04:00
Kyle Spearrin
4a136315d5 Control showing status bar for home page 2016-07-23 15:32:11 -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
7113bcca51 added new pages to settings. rearranged security section for settings. 2016-07-23 02:48:56 -04:00
Kyle Spearrin
cf27ace05e support for two factor login flow 2016-07-23 02:17:11 -04:00
Kyle Spearrin
2911af2c16 Password hint page 2016-07-23 00:40:17 -04:00
Kyle Spearrin
9ee5571000 Added hockeyapp configuration for ios 2016-07-22 00:04:05 -04:00
Kyle Spearrin
c206d228fc Fixed locked setting bug. Added no site list message to extension. 2016-07-21 23:41:50 -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
b2c96cb8fc background thread on full sync after login 2016-07-19 18:59:46 -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
a9633e1fd1 added lock setting to persist settings page lock action between app restarts 2016-07-18 19:44:29 -04:00
Kyle Spearrin
299411e9a5 moved password lock page to a table form 2016-07-18 19:37:25 -04:00
Kyle Spearrin
d82c0d7d71 Lock by master password page. 2016-07-18 19:16:27 -04:00
Kyle Spearrin
83f4513604 Move to non-async FetchAndLoadVault 2016-07-15 01:52:33 -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
61c492f85e searchbar adjustments 2016-07-14 00:58:28 -04:00
Kyle Spearrin
822a14e56c Added stepper cell to password generator settings page. Conditionally show sync indicator on pages. 2016-07-12 18:59:09 -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
f9fd53c733 added search to vault list page. 2016-07-11 01:12:31 -04:00
Kyle Spearrin
d61d3c201a singleton Random() 2016-07-09 13:12:46 -04:00
Kyle Spearrin
549ac1f996 Save newly added site in extension 2016-07-09 13:11:18 -04:00
Kyle Spearrin
3a82653ae5 Moved cells from storyboard into being managed in controller code. new ios views for tableview cells. 2016-07-09 01:07:02 -04:00
Kyle Spearrin
edd8e2e1a1 downgrade bouncycastle for xamarin studio nuget restore support 2016-07-07 21:23:25 -04:00
Kyle Spearrin
135f323372 revert back to default ios bar color. Added new Add Site view controller for extension (WIP) 2016-07-07 20:53:01 -04:00
Kyle Spearrin
e7c78f6efa only select when there is an action passed in 2016-07-07 00:35:39 -04:00
Kyle Spearrin
6b996e3a98 Generate password cell added to add/edit site pages. Delete callback from generate password page. 2016-07-07 00:27:29 -04:00
Kyle Spearrin
b7869ed763 order names in vault. getbyid can now return null if not found (use find instead of get) 2016-07-07 00:00:12 -04:00
Kyle Spearrin
31ad96ff31 lazy decrypt password and username for vault listing. dynamically show copy and url launch options if provided. 2016-07-06 22:59:13 -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
0be15d7a34 updated to forms 2.3.0. Few fixes to NoHeader and NoFooter for tableview on iOS. 2016-07-05 19:07:56 -04:00
Kyle Spearrin
eb265503eb wrap long lines 2016-07-04 23:20:16 -04:00
Kyle Spearrin
cd03acfb70 split push sentence with concatination 2016-07-04 23:19:16 -04:00
Kyle Spearrin
84326811dd Redid a few thigns on extension page with messaging. Added reanable button. Updated refresh icon to orange 2016-07-04 23:11:44 -04:00
Kyle Spearrin
2712ae10e6 Focus input when cell tapped. 2016-07-04 22:35:49 -04:00
Kyle Spearrin
2d5d9fd113 Added nofooter and noheader options to extendedtable view. 2016-07-04 22:31:15 -04:00
Kyle Spearrin
02d0e57197 bold "no way" 2016-07-04 03:01:43 -04:00
Kyle Spearrin
f74273999c Relative layout on register page to show help text under password and hint. 2016-07-04 02:45:32 -04:00
Kyle Spearrin
b9c823b0aa Added reflection service to handle sizerequest for extendedtableview. Remove footer spacing on uitableview ios renderer. 2016-07-03 02:57:09 -04:00
Kyle Spearrin
ec419a2306 padding option for form entry cell. increased padding on login and register forms. reduced large font size on iOS 2016-07-03 00:27:10 -04:00
Kyle Spearrin
7e6dbecfe3 update packages 2016-07-03 00:09:34 -04:00
Kyle Spearrin
6bb7651ad1 Added tools extension page to help iOS users activate the action extension. 2016-07-02 15:20:06 -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
cd4f1f4c2f Organizated pages into folders based on app "section" 2016-07-01 19:21:12 -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
7d62a89a51 Init HttpClient with each Api Request. Guarg agsint connectivity issues when making API calls. 2016-07-01 18:54:00 -04:00
Kyle Spearrin
a4e6f49959 Building out tools page options 2016-07-01 00:03:54 -04:00
Kyle Spearrin
94f7f715e6 stubbed out tools page and moved sync to settings 2016-06-30 22:04:45 -04:00
Kyle Spearrin
515412f863 Added device identifier as header to api calls 2016-06-30 21:40:44 -04:00
Kyle Spearrin
57b6c9f67c sync folder id 2016-06-30 21:26:28 -04:00
Kyle Spearrin
8fd4e09b78 More sync operations with broadcast refreshes of listing pages 2016-06-30 20:08:34 -04:00
Kyle Spearrin
acfe0032ef background color updates 2016-06-30 19:08:09 -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
8653a76e26 full sync from sync page 2016-06-29 22:04:09 -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
84836fe89b adjusting cells for vault list view 2016-06-29 00:34:20 -04:00
Kyle Spearrin
2e9410846e Optimizations for dynamic text sizes. 2016-06-28 23:44:47 -04:00
Kyle Spearrin
818b1c426f push notification registration for iOS 2016-06-28 00:55:53 -04:00
Kyle Spearrin
3506383733 gray color on home page label 2016-06-27 22:18:48 -04:00
Kyle Spearrin
0cbda0b574 added image option to form entry cell. Added clear option to extended entry 2016-06-27 22:17:49 -04:00
Kyle Spearrin
54da129887 Move to named sizes 2016-06-27 20:56:59 -04:00
Kyle Spearrin
aac1c22c56 Changed all background colors for pages. Got rid of custom label colors in favor of defaults. 2016-06-27 19:53:31 -04:00
Kyle Spearrin
76cf566c9e base domain proerpty for domain name 2016-06-26 00:32:22 -04:00
Kyle Spearrin
954e2294c0 added domain name parsing. moved iphone debug profile to only arm64 for faster building. 2016-06-26 00:16:10 -04:00