Commit Graph

72 Commits

Author SHA1 Message Date
Kirill Kamakin
79dee6a9ad Allow users to trust self-signed certificates (#160)
* Implement CERT-Store

* Trust user-added certificates

* Improve code readability

* Implement saving self-signed certs to storage

* Create interface for TrustedCertificatesStore

* Remove unused code

* Make datasource implementation internal

* Bump app version to 29 (0.4.0)

---------

Co-authored-by: fz72 <fz72@gmx.de>
2023-07-04 22:53:05 +02:00
Kirill Kamakin
1e5e727e92 Implement shopping lists screen (#129)
* Initialize shopping lists feature

* Start shopping lists screen with Compose

* Add icon to shopping list name

* Add shopping lists to menu

* Set max size for the list

* Replace compose-adapter with accompanist

* Remove unused fields from shopping lists response

* Show list of shopping lists from BE

* Hide shopping lists if Mealie is 0.5.6

* Add shopping list item click listener

* Create material app theme for Compose

* Use shorter names

* Load shopping lists by pages and save to db

* Make page handling logic match recipes

* Add swipe to refresh to shopping lists

* Extract SwipeToRefresh Composable

* Make LazyPagingColumn generic

* Show refresh only when mediator is refreshing

* Do not refresh automatically

* Allow controlling Activity state from modules

* Implement navigating to shopping list screen

* Move Compose libraries setup to a plugin

* Implement loading full shopping list info

* Move Storage classes to database module

* Save shopping list items to DB

* Use separate names for separate ids

* Do only one DB version update

* Use unique names for all columns

* Display shopping list items

* Move OperationUiState to ui module

* Subscribe to shopping lists updates

* Indicate progress with progress bar

* Use strings from resources

* Format shopping list item quantities

* Hide unit/food/note/quantity if they are not set

* Implement updating shopping list item checked state

* Remove unnecessary null checks

* Disable checkbox when it is being updated

* Split shopping list screen into composables

* Show items immediately if they are saved

* Fix showing "list is empty" before the items

* Show Snackbar when error happens

* Reduce shopping list items paddings

* Remove shopping lists when URL is changed

* Add error/empty state handling to shopping lists

* Fix empty error state

* Fix tests compilation

* Add margin between text and button

* Add divider between checked and unchecked items

* Move divider to the item

* Refresh the shopping lists on authentication

* Use retry when necessary

* Remove excessive logging

* Fix pages bounds check

* Move FlowExtensionsTest

* Update Compose version

* Fix showing loading indicator for shopping lists

* Add Russian translation

* Fix SDK version lint check

* Rename parameter to match interface

* Add DB migration TODO

* Get rid of DB migrations

* Do not use pagination with shopping lists

* Cleanup after the pagination removal

* Load shopping list items

* Remove shopping lists storage

* Rethrow CancellationException in LoadingHelper

* Add pull-to-refresh on shopping list screen

* Extract LazyColumnWithLoadingState

* Split refresh errors and loading state

* Reuse LazyColumnWithLoadingState for shopping list items

* Remove paging-compose dependency

* Refresh shopping list items on authentication

* Disable missing translation lint check

* Update Compose and Kotlin versions

* Fix order of checked items

* Hide useless information from a shopping list item
2023-07-03 15:07:19 +02:00
Kirill Kamakin
980bcb1f43 Update email input field hint 2023-04-07 15:05:18 +02:00
Kirill Kamakin
9b03cfcbb4 Show Toast when recipe favorite status is updated 2023-04-07 14:14:25 +02:00
Kirill Kamakin
822fdf86e4 Show confirmation dialog before deleting recipe 2022-12-16 19:42:46 +01:00
Kirill Kamakin
9ab86e7be3 Initialize recipe removal feature 2022-12-16 17:56:03 +01:00
Kirill Kamakin
cd3931e147 Show error message when favorite update fails 2022-12-16 17:24:35 +01:00
Kirill Kamakin
3eb99206e8 Display favorite icon on recipe holders 2022-12-16 17:24:33 +01:00
Kirill Kamakin
4a68916433 Show progress when parsing recipe 2022-11-29 19:42:07 +01:00
Kirill Kamakin
4826478a2a Implement saving recipes by URLs 2022-11-28 21:22:24 +01:00
Kirill Kamakin
7fa96affe8 Show text when no recipes found 2022-11-21 20:17:16 +01:00
Kirill Kamakin
3cc3658544 Implement custom Toolbar View 2022-11-20 14:18:51 +01:00
Kirill Kamakin
817a72b567 Add round corners to recipe images 2022-11-20 11:22:20 +01:00
Kirill Kamakin
7bcfc9ef1e Update splash screen 2022-11-19 11:52:50 +01:00
Kirill Kamakin
73a703b0b8 Make navigation bar match color 2022-11-19 10:57:08 +01:00
Kirill Kamakin
4510087209 Remove custom shapes and elevations 2022-11-19 10:00:04 +01:00
Kirill Kamakin
c86782708c Add navigation drawer header 2022-11-18 23:45:33 +01:00
Kirill Kamakin
85001f6952 Make status bar transparent 2022-11-18 23:31:04 +01:00
Kirill Kamakin
1c0d98850d Disable action bar in theme 2022-11-18 22:53:08 +01:00
Kirill Kamakin
a329d6a4ec Use dynamic colors 2022-11-18 22:50:31 +01:00
Kirill Kamakin
ac0eb2bfd2 Generate colors with material color generator 2022-11-18 22:20:52 +01:00
Kirill Kamakin
7faaeb511e Change recipes list colors 2022-11-18 21:41:04 +01:00
Kirill Kamakin
a6a47a5eae Move login/logout to navigation drawer 2022-11-18 21:06:42 +01:00
Kirill Kamakin
9ae34e314f Remove unused searchable configuration 2022-11-13 10:58:54 +01:00
Kirill Kamakin
929aad5659 Fix search text color 2022-11-13 10:46:29 +01:00
Kirill Kamakin
21abf38282 Start search implementation 2022-11-12 15:27:27 +01:00
Kirill Kamakin
4e1e3f81e3 Allow changing base URL from UI 2022-11-12 12:32:44 +01:00
Kirill Kamakin
b7bb6c8566 Simplify edge case handling 2022-11-05 10:40:15 +01:00
Kirill Kamakin
33bdaf9726 Show load end/load failure toasts 2022-11-04 22:13:57 +01:00
Kirill Kamakin
e0780e9a9f Add login data examples 2022-11-04 20:53:01 +01:00
Kirill Kamakin
2a3a7e32e7 Improve URL input screen 2022-11-04 20:48:45 +01:00
Kirill Kamakin
30e6263ce1 Update splash icon for pre-31 APIs 2022-11-04 19:40:31 +01:00
Kirill Kamakin
db4aaf0bbd Use animated drawable on 31+ only 2022-11-03 20:35:50 +01:00
Kirill Kamakin
81e3fcfd98 Start splash screen API migration 2022-10-31 21:08:17 +01:00
Kirill Kamakin
02fd24367b Remove unused resource 2022-06-12 20:00:22 +02:00
Kirill Kamakin
140709f8c5 Remove unused strings 2022-06-12 18:42:39 +02:00
Kirill Kamakin
e18f726da5 Implement adding recipes through app 2022-06-12 12:49:18 +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
096b5389bd Use AccountManager 2022-04-08 17:54:21 +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
f74973e40a Fix expanding bottom sheet when not enough content (#15)
This commit makes sure bottom sheet dialog has the size
of its contents. That way it doesn't expand further than it
should. Fixes #4
2021-11-27 16:40:41 +00:00
Kirill Kamakin
44458dd146 Fix a number of lint issues (#2)
* Fix systemUiVisibility deprecation warnings

This commit extracts setSystemUiVisibility as
an extension and uses the new API depending on
the Build.VERSION

* Fix splash fragment vector issues

Clip-path isn't available before V24 and
width/height should not exceed 200 dp.

* Remove unused disclaimer fragment header

* Remove unused ic_launcher_round

* Ignore IconMissingDensityFolder lint

Ignoring it because all the images are vector

* Ignore UnusedAttribute lint

It warns about networkSecurityConfig which
is used only in debug builds to allow
user SSL certificates. Lint says it's not
available before v24. But it doesn't matter
since before v24 the user SSL certificates
were allowed by default.

* Use plurals for disclaimer count down
2021-11-27 13:10:00 +00:00
Kirill Kamakin
339f8327de Implement URL input format checks 2021-11-27 12:27:25 +03:00
Kirill Kamakin
e701b5d7df Show recipe info in bottom sheet dialog 2021-11-25 20:06:53 +03:00
Kirill Kamakin
d2032380c7 Extract corner radius dimension 2021-11-25 19:06:46 +03:00
Kirill Kamakin
54753f6ee9 Improve view holder recipe layout 2021-11-23 20:17:24 +03:00
Kirill Kamakin
9e39b286b9 Set new primary color 2021-11-21 20:42:11 +03:00
Kirill Kamakin
9f0b85127a Remove "tools:targetApi=l" because minSdk is already L 2021-11-21 20:39:58 +03:00