Commit graph

359 commits

Author SHA1 Message Date
Kyle Spearrin
dbd697a473 Do not show no data message when searching and no results. 2016-09-06 00:34:27 -04:00
Kyle Spearrin
24722d3644 Lock password page tableview to properly adjust row height on iOS. 2016-08-30 22:34:49 -04:00
Kyle Spearrin
22ac095dce Created device specific navigation push/pops in order to support non-modal navigation on android (so we get the back button in nav). 2016-08-29 23:50:22 -04:00
Kyle Spearrin
0cba25fc0c Apply auth service token when it is present. 2016-08-29 23:15:03 -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
a077944629 Cannot make OnCreate method async or things don't execute in correct order 2016-08-27 15:00:12 -04:00
Kyle Spearrin
5c6ff45cc9 Proper conditions for push reregistration. Added fix for app compat crash on resume from sleep while app was open. 2016-08-27 14:36:32 -04:00
Kyle Spearrin
c26960380a Still need to unregister push each time on android for some reason 2016-08-27 02:59:34 -04:00
Kyle Spearrin
42434229ce longer sleep for input focus on android 2016-08-27 02:37:52 -04:00
Kyle Spearrin
0a3857b1c2 Assembly updates 2016-08-26 23:53:50 -04:00
Kyle Spearrin
185e234ef2 Catch Date toString exceptions to resolve crashing 2016-08-26 19:23:59 -04:00
Kyle Spearrin
aac4aafde0 Button styling update 2016-08-26 19:13:25 -04:00
Kyle Spearrin
16058c5efb auto-fill service tools page 2016-08-25 22:48:19 -04:00
Kyle Spearrin
18ff80875a small padding adjustments 2016-08-25 22:31:11 -04:00
Kyle Spearrin
0cdba2a13d Added Scale to device info service. Stack layout padding adjsutments depending on android scale. 2016-08-25 21:43:47 -04:00
Kyle Spearrin
5ff9131910 App extension callout alert on first time visiting the add site screen in iOS. 2016-08-25 00:23:24 -04:00
Kyle Spearrin
a4a7d2180c Search bar adjustments. No data message and loading indicator for vault list. 2016-08-24 23:57:45 -04:00
Kyle Spearrin
fe422a101a do not update activity on lock pages appearing 2016-08-24 00:16:54 -04:00
Kyle Spearrin
6cec61dc42 Do not record LastActivityDate on sleep if currently viewing a lock page on android 2016-08-24 00:15:13 -04:00
Kyle Spearrin
d4f52bce2b Button uppercase styling enforcement 2016-08-24 00:07:46 -04:00
Kyle Spearrin
2262e1c4c2 Created extension for adjusting margins on entry fields for specific android API levels. 2016-08-23 23:57:11 -04:00
Kyle Spearrin
a7ba21f2f9 Implemented specific entry padding for android api 21. 2016-08-23 23:15:28 -04:00
Kyle Spearrin
043a4122b4 Added custom device info service for determining model and version (ios = major version, android = API level). 2016-08-23 22:43:17 -04:00
Kyle Spearrin
e5f3be9669 transparent buttons for lock page 2016-08-23 20:12:27 -04:00
Kyle Spearrin
34cb04cbde Android UI updates. 2016-08-22 22:59:42 -04:00
Kyle Spearrin
610789fd6d Android font size adjustments 2016-08-22 18:59:15 -04:00
Kyle Spearrin
aa880264e3 Fixed issue with noheader property in extended table view. 2016-08-22 00:49:52 -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
8d33d8f216 Catch task cancellation of App.cs syncs 2016-08-19 18:42:27 -04:00
Kyle Spearrin
c27d427799 Splash screen, styling updates, focus with delay for android. 2016-08-19 00:27:37 -04:00
Kyle Spearrin
90a6855e39 Android style updates 2016-08-18 20:20:18 -04:00
Kyle Spearrin
1c4efb91b9 Hide android soft keyboard. Android styling of table view. 2016-08-18 19:09:01 -04:00
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