Commit graph

628 commits

Author SHA1 Message Date
Vishnu Mohandas 076c55d89c Replace button type to be compatible with Flutter's stable channel 2020-09-27 20:51:00 +05:30
Vishnu Mohandas 16aa9a9eb6 Revert endpoint to OG staging 2020-09-26 23:15:41 +05:30
Vishnu Mohandas e574a0d8d2 Use Dart's file handling APIs correctly to append to a file 2020-09-26 03:54:33 +05:30
Vishnu Mohandas 05a67773e9 Minor refactor 2020-09-26 03:08:14 +05:30
Vishnu Mohandas d6e0671fe7 Rename variable 2020-09-26 02:28:19 +05:30
Vishnu Mohandas bd66a9a309 Simplify encryption code 2020-09-26 02:26:02 +05:30
Vishnu Mohandas 9f6cfebcb1 Ensure file deletion only after read 2020-09-26 01:55:03 +05:30
Vishnu Mohandas 37b7eb1601 Add extra logging to file 2020-09-26 01:54:52 +05:30
Vishnu Mohandas d99ac864af Make sure that video player controller exists before attempting to dispose it 2020-09-26 01:48:36 +05:30
Vishnu Mohandas a7582df1ed Convert nested parameters toMap before relaying them to server 2020-09-26 01:20:32 +05:30
Vishnu Mohandas 727a1684ce Switch to libsodium for file encryption and decryption 2020-09-26 00:37:32 +05:30
Vishnu Mohandas 44866f7ffe Introduce new models to encapsulate encryption attributes 2020-09-26 00:32:00 +05:30
Vishnu Mohandas 3bad6a7c94 Add API to chacha encrypt and decrypt a file 2020-09-25 21:15:00 +05:30
Vishnu Mohandas d362c7286e Log encryption and decryption times 2020-09-25 14:28:48 +05:30
Vishnu Mohandas 739c377a76 Reduce the quality of thumbnails that are uploaded 2020-09-20 21:45:22 +05:30
Vishnu Mohandas 7bf47f545f Update API params for sync 2020-09-19 21:54:12 +05:30
Vishnu Mohandas c77fd5da11 Provide a hook to pause ongoing backups 2020-09-18 01:10:08 +05:30
Vishnu Mohandas 1cc7db043f Change the color of check boxes 2020-09-18 00:33:21 +05:30
Vishnu Mohandas a5028c9605 Display accurate sync state 2020-09-18 00:18:25 +05:30
Vishnu Mohandas 735d30583a Cache downloaded thumbnails and files for 365 days 2020-09-18 00:11:14 +05:30
Vishnu Mohandas 507d21fe18 Optimize location search experience 2020-09-17 20:41:35 +05:30
Vishnu Mohandas ced00f9267 Minor optimizations to the video widget 2020-09-17 20:00:39 +05:30
Vishnu Mohandas 6d8e7c1a43 Save files to cache with the extension 2020-09-17 19:59:42 +05:30
Vishnu Mohandas ff0811dfe1 Safe guard against OOMs while uploading a video file 2020-09-17 17:57:02 +05:30
Vishnu Mohandas 305b7b470d Revert to the HTTPS URL 2020-09-17 17:56:50 +05:30
Vishnu Mohandas 8553a9f25b Add an option to configure the folders whose photos should be backed up 2020-09-17 17:23:17 +05:30
Vishnu Mohandas 7e37df2947 Trigger location search only after the user has entered at least 2 characters 2020-09-17 14:19:21 +05:30
Vishnu Mohandas df800b0e92 Add hint text to location search widget 2020-09-17 14:18:47 +05:30
Vishnu Mohandas 6e780daa80 Don't update the sync time on upload 2020-09-14 12:39:28 +05:30
Vishnu Mohandas 43c9fa37cd Fix duplicate file issue 2020-09-14 12:29:28 +05:30
Vishnu Mohandas aba132058d Add toString for KeyAttributes 2020-09-14 12:23:53 +05:30
Vishnu Mohandas 9e641ba57d Return base64 encoded string 2020-09-10 05:18:11 +05:30
Vishnu Mohandas 87fd87987a Explicitly call the AESCrypt password as password 2020-09-10 03:57:54 +05:30
Vishnu Mohandas db3869fa58 Use existing raw API for steel crypt 2020-09-10 03:00:04 +05:30
Vishnu Mohandas dbdf8ac935 Extract code to fetch diff to a separate class 2020-09-10 02:54:03 +05:30
Vishnu Mohandas 69a6fb9200 Rename file 2020-09-10 02:47:21 +05:30
Vishnu Mohandas 5659adf384 Minor reformatting 2020-09-10 02:42:20 +05:30
Vishnu Mohandas 94a41a72c9 Remove all assumptions related to key attribute encoding 2020-09-10 02:39:41 +05:30
Vishnu Mohandas 5fffea1824 Remove single line hash function 2020-09-10 02:22:18 +05:30
Vishnu Mohandas d9a583a46c Ensure that CBC is always the chosen mode of encryption 2020-09-10 02:17:51 +05:30
Vishnu Mohandas 4cd93610f7 Make no assumptions about the encoding type of the key 2020-09-10 01:01:14 +05:30
Vishnu Mohandas 79b27084f5 Display key attributes in debug builds 2020-09-09 19:34:11 +05:30
Vishnu Mohandas 1f98f8ca8d Modify steel crypt to expose a hashBytes function that does not assume the encoding of the inputs or output 2020-09-09 14:35:24 +05:30
Vishnu Mohandas 3a539ea0aa Update staging endpoint 2020-09-06 13:56:55 +05:30
Vishnu Mohandas 1b2aa9c998 Wait for the configuration to be persisted 2020-09-06 12:00:44 +05:30
Vishnu Mohandas cde0eccc60 Remove redundant base64 encoding 2020-09-06 12:00:26 +05:30
Vishnu Mohandas 6f05e25354 Fix typo 2020-09-06 11:59:46 +05:30
Vishnu Mohandas 831de35e9c Update file upload API 2020-09-06 11:59:30 +05:30
Vishnu Mohandas c61368f7f2 Update structure of a file object 2020-09-06 11:59:03 +05:30
Vishnu Mohandas 29ac224785 Set the key attributes on server post login 2020-09-05 15:08:03 +05:30
Vishnu Mohandas 46d9c45914 Remove unused widgets 2020-09-05 14:59:56 +05:30
Vishnu Mohandas bc36bf8f5e Verify the correctness of the passphrase entered 2020-09-05 14:23:23 +05:30
Vishnu Mohandas a5d3305cbf Encrypt every file with a separate key 2020-09-03 22:20:26 +05:30
Vishnu Mohandas aa2890107f Add API to use AesCrypt to encrypt and decrypt data directly 2020-09-03 21:08:46 +05:30
Vishnu Mohandas 81db6e73d1 Display the full month in billing details 2020-08-29 09:34:59 +05:30
Vishnu Mohandas 8dc5bad44c Integrate support chat 2020-08-29 09:22:12 +05:30
Vishnu Mohandas fc76a77355 Add a support section within settings 2020-08-29 06:09:52 +05:30
Vishnu Mohandas ae99549110 Add settings screen 2020-08-29 05:20:34 +05:30
Vishnu Mohandas a37260d647 Use existing dio instance 2020-08-29 05:20:18 +05:30
Vishnu Mohandas 617ea34f57 Upload data to the presigned s3 bucket URL 2020-08-27 20:11:56 +05:30
Vishnu Mohandas 7a34da5588 Add screen to let a returning user enter her existing passphrase 2020-08-26 08:04:13 +05:30
Vishnu Mohandas 9220f2bef8 Let users set their passphrase on sign up 2020-08-26 07:13:10 +05:30
Vishnu Mohandas 355d87c3f2 Remove useless illustration 2020-08-26 06:23:22 +05:30
Vishnu Mohandas da1d4830e2 Move the logic of deeplink initialization to the home widget 2020-08-26 05:56:07 +05:30
Vishnu Mohandas fd074e96ee Simplify EmailEntryPage 2020-08-26 04:32:43 +05:30
Vishnu Mohandas 12a1ccd8cd Let the user resend emails 2020-08-26 04:09:11 +05:30
Vishnu Mohandas 739c69da22 Breaking changes to OTT verification screens 2020-08-25 11:53:51 +05:30
Vishnu Mohandas ddb2c7dc82 Update UI for the OTT sign in flow 2020-08-25 11:30:19 +05:30
Vishnu Mohandas 8a101af009 Enable OTT verification by email 2020-08-25 11:21:56 +05:30
Vishnu Mohandas b98566459a Add email entry page 2020-08-25 09:40:05 +05:30
Vishnu Mohandas 3f385e63e9 Update app theme 2020-08-25 06:24:32 +05:30
Vishnu Mohandas 0c70cd96fd Fix crash on attempting to share multiple large files 2020-08-25 05:29:57 +05:30
Vishnu Mohandas 2458d5f35c Prefix with _ for consistency 2020-08-22 04:58:52 +05:30
Vishnu Mohandas 1ad3d1f320 Remove unnecessary try-catch block 2020-08-22 04:58:21 +05:30
Vishnu Mohandas f124edecb1 Subscribe to ente://deeplinks 2020-08-22 04:57:29 +05:30
Vishnu Mohandas 414d23d92a Store the key in secure storage 2020-08-18 02:38:23 +05:30
Vishnu Mohandas 09035dff60 Remove hard coded dummy key 2020-08-16 20:07:02 +05:30
Vishnu Mohandas 3d3c1496e7 Pull the key from server on sign in 2020-08-15 06:52:14 +05:30
Vishnu Mohandas f645e00b4e Pause video controller only if it has not been unmounted 2020-08-14 05:34:12 +05:30
Vishnu Mohandas 1ac16347bd Show progress dialog while downloading a video 2020-08-14 05:31:37 +05:30
Vishnu Mohandas a1ebee60b8 Add in memory cache for thumbnails to improve hero experience 2020-08-14 05:17:44 +05:30
Vishnu Mohandas 2505389d00 Use Computer to handle isolates 2020-08-14 04:34:32 +05:30
Vishnu Mohandas 7bd2ad19de Revert "Queue encryption and decryption with work-manager"
This reverts commit 5000a0b3cd.
2020-08-14 04:13:09 +05:30
Vishnu Mohandas 1d2630ecb9 Precache image only if the widget is still mounted 2020-08-14 04:02:54 +05:30
Vishnu Mohandas bda0d8afd9 Minor change to the image decoding API 2020-08-14 04:01:37 +05:30
Vishnu Mohandas 5bd41a9e5b Decode HEIC images before uploading 2020-08-14 04:01:17 +05:30
Vishnu Mohandas 232df2a0bd Catch errors in displaying a network image 2020-08-14 04:00:38 +05:30
Vishnu Mohandas 5000a0b3cd Queue encryption and decryption with work-manager 2020-08-14 03:31:18 +05:30
Vishnu Mohandas 38b2c76892 Ensure that the widget is mounted before resetting the state 2020-08-14 03:30:19 +05:30
Vishnu Mohandas 873f1b631d Use a single cache for thumbnails 2020-08-14 03:03:31 +05:30
Vishnu Mohandas 1ce1479dd9 Perform encryption and decryption on a separate isolate 2020-08-14 02:30:40 +05:30
Vishnu Mohandas 7da487cd4e Decrypt and render encrypted videos 2020-08-14 01:33:29 +05:30
Vishnu Mohandas b4b685de13 Mark the assets loaded from disk as decrypted 2020-08-14 01:32:04 +05:30
Vishnu Mohandas f85a0210ff Use a separate cache for unencrypted thumbnails 2020-08-13 21:18:32 +05:30
Vishnu Mohandas c3265b91ab Move file decrypting logic out of ZoomableImage 2020-08-13 07:05:57 +05:30
Vishnu Mohandas 44dddb818f Rename for consistency 2020-08-13 07:04:16 +05:30
Vishnu Mohandas 2a4404c293 Refactor file util 2020-08-13 06:54:48 +05:30
Vishnu Mohandas 600fd58a46 Augment the getBytes function to take care of encrypted files 2020-08-13 06:48:41 +05:30
Vishnu Mohandas fa53398887 Switch to a global cache 2020-08-13 06:37:44 +05:30
Vishnu Mohandas d36b88aa23 Mark preloadFile as TODO since the logic has to be reworked 2020-08-13 06:28:25 +05:30
Vishnu Mohandas 228ea5990d Download and render encrypted files 2020-08-13 06:22:05 +05:30
Vishnu Mohandas 35aeae2cc7 Setup separate cache for thumbnail files 2020-08-13 05:44:13 +05:30
Vishnu Mohandas 532a9cac46 Cache encrypted thumbnails loaded from the network 2020-08-13 05:04:21 +05:30
Vishnu Mohandas 134b1f417e Show the play button overlay for network videos too 2020-08-13 04:58:16 +05:30
Vishnu Mohandas f6d3a7e6bd Decrypt, save and display encrypted thumbnails 2020-08-13 04:47:15 +05:30
Vishnu Mohandas 2cfefb6805 Remove unnecessary integer parsing 2020-08-13 02:26:01 +05:30
Vishnu Mohandas 79e65f518d Add an isEncrypted property to File 2020-08-13 02:12:00 +05:30
Vishnu Mohandas 746fb18cf7 Download and save encrypted files 2020-08-12 04:34:16 +05:30
Vishnu Mohandas 2e39f2e90a Upload thumbnail along with the file 2020-08-11 05:38:48 +05:30
Vishnu Mohandas 4b63196e34 Encrypt and upload files 2020-08-11 05:17:22 +05:30
Vishnu Mohandas 797c6ae856 Reuse existing library for generating secure random string 2020-08-10 05:49:44 +05:30
Vishnu Mohandas b4940d4fdd Save the encryption preference to configuration 2020-08-10 05:32:37 +05:30
Vishnu Mohandas c7b40265c3 Fix issue with loading remote images 2020-08-10 04:04:59 +05:30
Vishnu Mohandas fe7225cf01 Ensure that the case for devices with no photos is handled 2020-08-10 02:59:21 +05:30
Vishnu Mohandas 0bf140c6b4 Accept passphrase post user creation 2020-08-10 02:54:29 +05:30
Vishnu Mohandas a574d092c4 Refactor variable names 2020-08-10 02:10:55 +05:30
Vishnu Mohandas 87a5c519ba Add functionality to generate and retrieve file encryption keys 2020-08-10 02:09:33 +05:30
Vishnu Mohandas f80e06762f Add crypto util 2020-08-10 02:09:11 +05:30
Vishnu Mohandas dcce6c5962 Add empty states for all grids 2020-08-09 20:28:41 +05:30
Vishnu Mohandas df630c2b91 Reduce the size of the folder icon 2020-08-09 20:21:46 +05:30
Vishnu Mohandas 5e1138f79c Update share successful toast text 2020-08-09 20:01:03 +05:30
Vishnu Mohandas e46553b0c6 Demote delete to the overflow menu 2020-08-09 20:00:58 +05:30
Vishnu Mohandas dea16e8da0 Display a toast after sharing a folder 2020-08-09 20:00:51 +05:30
Vishnu Mohandas 786dba4514 Set the background color for progress dialog 2020-08-09 20:00:46 +05:30
Vishnu Mohandas 805f41f811 Set the background color for toasts 2020-08-09 20:00:42 +05:30
Vishnu Mohandas 1d7840f37a Set the correct width for progress bar within circular image widget 2020-08-09 20:00:35 +05:30
Vishnu Mohandas 127dcb7315 Keep the memory widget alive 2020-08-09 20:00:28 +05:30
Vishnu Mohandas 098b7cf86b Update app name 2020-08-09 20:00:10 +05:30
Vishnu Mohandas 22f879d8d9 Update sharing dialog 2020-08-09 19:58:51 +05:30
Vishnu Mohandas 6721d22c97 Update set folder API 2020-08-07 12:39:29 +05:30
Vishnu Mohandas b1b67913bd Ensure that the userID is saved after both login and signup events 2020-08-01 04:28:30 +05:30
Vishnu Mohandas 8b600143c7 Fix the sharedWith attribute in folders 2020-08-01 04:20:36 +05:30
Vishnu Mohandas d7d5f473f2 Fix face ID attribute to match the updated API param 2020-08-01 03:06:48 +05:30
Vishnu Mohandas e1cf0706f3 Update API parameters 2020-08-01 02:56:53 +05:30
Vishnu Mohandas 54daebf096 Change the endpoint for location search 2020-07-30 13:46:41 +05:30
Vishnu Mohandas f5e4f7a0e2 Update search endpoint 2020-07-30 13:36:54 +05:30
Vishnu Mohandas 85ecdc3c9b Remove unnecessary center widget 2020-07-30 12:37:58 +05:30
Vishnu Mohandas e993a834fb Define size for the memories label text 2020-07-30 12:17:21 +05:30
Vishnu Mohandas dcc6190154 Update loading style 2020-07-30 12:16:58 +05:30
Vishnu Mohandas 9ff3470532 Pause the video if it goes out of view 2020-07-30 00:47:13 +05:30
Vishnu Mohandas 8f2dce89c7 Update the base plugin for memories 2020-07-30 00:47:13 +05:30
Vishnu Mohandas 54984ad661 Set a blurred backdrop to memories 2020-07-30 00:47:13 +05:30
Vishnu Mohandas 904c63f040 Add an option to set a background to the zoomable image 2020-07-30 00:47:13 +05:30
Vishnu Mohandas 590c72f2e5 Preload the next memory 2020-07-29 21:18:13 +05:30
Vishnu Mohandas 9f91c83f77 Resume from the last seen memories for seen memories 2020-07-29 21:08:13 +05:30
Vishnu Mohandas 0b640bf322 Fix errors in the memory widget 2020-07-29 18:50:44 +05:30
Vishnu Mohandas bdc4615599 Delete files that cannot be loaded 2020-07-29 13:27:25 +05:30
Vishnu Mohandas 1c8b29d60f Rename method to delete files 2020-07-29 13:25:29 +05:30
Vishnu Mohandas ce9cf2c026 Extract function to delete a file from the DB 2020-07-29 13:23:13 +05:30
Vishnu Mohandas bf40fc481c Fetch permission to read disk asap 2020-07-28 02:37:56 +05:30