Commit Graph

326 Commits

Author SHA1 Message Date
Kirill Kamakin
12c5d8d5d3 Update Kotlin coroutines 2022-05-26 10:32:55 +02:00
Kirill Kamakin
e46fb3bb1c Upgrade AGP to 7.2.1 2022-05-26 10:17:52 +02:00
Kirill Kamakin
3079cd9588 Implement Glide image preload in RecyclerView 2022-04-18 18:08:06 +02:00
Kirill Kamakin
1ffd2d2359 Use OkHttp for Glide requests 2022-04-18 13:38:19 +02:00
Kirill Kamakin
2686f757ea Replace Picasso with Glide 2022-04-18 13:17:07 +02:00
Kirill Kamakin
96bce0e5f4 Remove unused class 2022-04-18 12:42:08 +02:00
Kirill Kamakin
50c8e14593 Implement showing authentication progress 2022-04-09 18:56:25 +05:00
Kirill Kamakin
9db89965c0 Start migration to Material 3
Theme was generated here
https://material-foundation.github.io/material-theme-builder/#/custom
Primary: BB86FC
Secondary: 655A70
Tertiary: 805159
Neutral: 605D62
2022-04-09 17:32:19 +05:00
Kirill Kamakin
a5ae5e91cd Disable Picasso logging 2022-04-09 17:32:18 +05:00
Kirill Kamakin
15b4c2b91a Replace if with when in SplashViewModel 2022-04-09 17:32:18 +05:00
Kirill Kamakin
a9e0842a38 Simplify RecipeInfoFragment code 2022-04-09 03:38:30 +05:00
Kirill Kamakin
e7620400b8 Use single UI state for activity 2022-04-09 03:06:02 +05:00
Kirill Kamakin
fb4e081e33 Fix restarting count down 2022-04-08 23:26:22 +05:00
Kirill Kamakin
ad1077510b Add auth repo and storage tests 2022-04-08 23:03:36 +05:00
Kirill Kamakin
869fa21e3f Make code more readable 2022-04-08 22:08:21 +05:00
Kirill Kamakin
a3d320bb79 Fix logout button 2022-04-08 21:54:43 +05:00
Kirill Kamakin
0768842405 Fix restarting count down in disclaimer 2022-04-08 21:27:59 +05:00
Kirill Kamakin
d2029438d7 Fix handling result in BaseURLFragment and AuthenticationFragment 2022-04-08 21:19:05 +05:00
Kirill Kamakin
5b56ff9932 Remove unused methods 2022-04-08 20:15:02 +05:00
Kirill Kamakin
0a854947a9 Move base url implementation to impl package 2022-04-08 20:10:13 +05:00
Kirill Kamakin
7c081c199a Replace AccountManager with EncryptedSharedPreferences 2022-04-08 20:07:32 +05:00
Kirill Kamakin
ba28f7d322 Start AddAccountActivity implementation 2022-04-08 17:54:23 +05:00
Kirill Kamakin
d1578afab9 Fix AuthenticationInterceptor calling getAuthHeader twice 2022-04-08 17:54:23 +05:00
Kirill Kamakin
b129913a82 Clear unused and fix tests 2022-04-08 17:54:23 +05:00
Kirill Kamakin
d40793104f Fix recursive calls to getAuthToken 2022-04-08 17:54:23 +05:00
Kirill Kamakin
b3f7527884 Add authentication timeout 2022-04-08 17:54:23 +05:00
Kirill Kamakin
76a49a41a1 Implement token invalidation 2022-04-08 17:54:23 +05:00
Kirill Kamakin
57f4ec4e22 Implement the simplest account manager authentication 2022-04-08 17:54:22 +05:00
Kirill Kamakin
096b5389bd Use AccountManager 2022-04-08 17:54:21 +05:00
Kirill Kamakin
680afcc99a Fix inability to press back on recipes after input URL 2022-04-06 15:48:15 +05:00
Kirill Kamakin
0c3767645c Implement migration from 1 to 2 2022-04-06 15:30:51 +05:00
Kirill Kamakin
eca325ebe4 Simplify error handling 2022-04-05 15:35:18 +05:00
Kirill Kamakin
97ffbff89a Trim e-mail and username to ease the login process
Spaces aren't visible in EditText and it's possible to
get authentication errors because of that invisible space.
2022-04-04 21:19:57 +05:00
Kirill Kamakin
f14afd2ebe Fix IllegalStateException when clicking login after logout
The previous login result was stored as live data and
prevented AuthenticationFragment from being shown
properly. However, an attempt to destroy RecipesFragment
was made. This attempt caused IllegalStateException
when accessing view in onDestroyView.
2022-04-04 20:52:14 +05:00
Kirill Kamakin
fb10333c2c Fix showing login/logout button on initial screens 2022-04-04 19:34:21 +05:00
Kirill Kamakin
c98feceab4 Fix pressing back on AuthenticationFragment
If login request isn't disabled when user presses
back then they might get navigated back to
authentication again.
2022-04-04 18:54:48 +05:00
Kirill Kamakin
e6dbff4a67 Fix IllegalStateException when inflating menu 2022-04-04 18:52:19 +05:00
Kirill Kamakin
468aa8c02a Implement login/logout functionality 2022-04-04 16:42:22 +05:00
Kirill Kamakin
f44f54522d Extract Base URL from authentication 2022-04-04 03:34:50 +05:00
Kirill Kamakin
617bcc7eae Reduce page size to something more efficient 2022-04-04 02:38:47 +05:00
Kirill Kamakin
ef2aa5b412 Allow recipe image to be null 2022-04-04 02:37:51 +05:00
Kirill Kamakin
b3e25db4df Replace Shared Preferences with Data Store 2022-04-03 19:59:57 +05:00
Kirill Kamakin
ec5d05c819 Use @Singleton where possible 2022-04-03 17:24:38 +05:00
Kirill Kamakin
8fee0c3a3d Reorganize code 2022-04-03 17:21:18 +05:00
Kirill Kamakin
915ffa521b Use @Singleton where possible 2022-04-03 00:34:29 +05:00
Kirill Kamakin
7fc2887dc7 Major code refactoring
Main goals are:
1. Ability to use mocks in unit tests instead of
having to setup mock web server as if it was an
integration test.
2. Cache Retrofit services in memory
3. Make it easier to read
4. Use OptIn where possible instead of propagating
Experimental* annotations everywhere
2022-04-03 00:17:28 +05:00
Kirill Kamakin
b56f267979 Use viewLifecycleOwner to observe auth status
Even though views aren't modified when auth
status changes, we still need to operate
only when view is visible.
2022-04-02 18:12:32 +05:00
Kirill Kamakin
706f981cca Suppress Room warning 2022-04-02 18:08:14 +05:00
Kirill Kamakin
c8019e9c85 Implement hiding ingredients and instructions 2021-12-27 19:41:56 +03:00
Kirill Kamakin
6232af2295 Improve recipe info screen UI 2021-12-27 14:47:53 +03:00