Lightmeter app inspired by Material 3 design system.
Find a file
Vadim e001c153fb
ML-11 Implement volume buttons actions (#86)
* [Android] wip

* implemented `VolumeEventsService`

* implemented `VolumeKeysListener` (wip)

* Added screenshots links

* [Android] nullable typo

* implemented `VolumeKeysNotifier`

* deinitialize camera when on Settings screen

* disable volume handling when on Settings screen

* used "platform" package to mock `isAndroid`

* init/deinit camera on settings open

* allow volume action override only on metering screen

* lints

* cleanup

* await dispose

* tests

* reduced `SwitchListTile.contentPadding`

* fixed tests

* removed `VolumeAction.zoom`

* added social preview

* typo

* fixed `CameraContainerBloc` tests

* added `Stream.empty()` tests
2023-07-09 13:39:33 +02:00
.github/workflows ML-61 Allow pushes from Github Action to protected branch (#85) 2023-06-28 17:53:54 +02:00
.vscode ML-58 Metering UX improvements (#63) 2023-05-16 11:47:53 +02:00
android ML-11 Implement volume buttons actions (#86) 2023-07-09 13:39:33 +02:00
assets Generated launcher icons 2022-12-16 18:52:26 +03:00
doc Added GP resources 2023-04-08 17:27:04 +03:00
ios ML-42 Implement equipment profiles creating (#45) 2023-03-30 22:24:18 +03:00
lib ML-11 Implement volume buttons actions (#86) 2023-07-09 13:39:33 +02:00
resources ML-11 Implement volume buttons actions (#86) 2023-07-09 13:39:33 +02:00
test ML-11 Implement volume buttons actions (#86) 2023-07-09 13:39:33 +02:00
.gitignore ML-62 Bloc's tests (#78) 2023-06-20 08:43:49 +02:00
.metadata init project 2022-10-15 19:35:35 +03:00
analysis_options.yaml Updated dependencies versions + lints 2023-05-19 10:47:58 +02:00
crowdin.yml Push new localization strings to Crowdin (#30) 2023-02-12 13:09:55 +03:00
LICENSE Initial commit 2022-10-15 16:00:14 +03:00
PRIVACY_POLICY.md Update PRIVACY_POLICY.md 2023-02-24 10:22:56 +03:00
pubspec.yaml ML-11 Implement volume buttons actions (#86) 2023-07-09 13:39:33 +02:00
README.md ML-11 Implement volume buttons actions (#86) 2023-07-09 13:39:33 +02:00
test_coverage.sh ML-62 Bloc's tests (#78) 2023-06-20 08:43:49 +02:00

Table of contents

Backstory

Some time ago I've started developing the Material Lightmeter app. Unfortunately, the last update of this app was almost a year prior to creation of this repo. So after reading some positive review on Google Play saying that "this is an excellent app, too bad it is no longer updated", I've decided to make an update and also make this app open source. Maybe someone sometime will decide to contribute to this project.

But as the existing repo contained some sensitive data, that I've pushed due to lack of experience, I had to make a new one. And if creating a new repo, why not rewrite the app from scratch?

Without further delay behold my new Lightmeter app inspired by Material You (a.k.a. M3)

Screenshots

Build

As part of this project is private, you will be able to run this app from the main_dev.dart file (i.e. --flavor dev). Also to avoid fatal errors the main_prod.dart file is excluded from analysis.

Contribution

To report a bug or suggest a new feature open a new issue.

In case you want to help develop this project you need to follow this style guide.

iOS Limitations

A list of features, that Android version of the app has and that iOS does not.

Incident light metering

Apple does not provide API for reading Lux stream form the ambient light sensor. Lux can be calculated based on front camera image stream, but this would be a reflected light. So there is no way incident light metering can be implemented on iOS.

Volume buttons action

This can be implemented but the app will be rejected due to 2.5.9