Commit graph

229 commits

Author SHA1 Message Date
Vadim
0c58134733
ML-62 Services tests (#82)
* removed redundant `UserPreferencesService` from `MeteringBloc`

* wip

* post-merge fixes

* `MeasureEvent` tests

* `MeasureEvent` tests revision

* `MeasureEvent` tests added timeout

* added stubs for other `MeteringBloc` events

* rewritten `MeteringBloc` logic

* wip

* `IsoChangedEvent` tests

* refined `IsoChangedEvent` tests

* `NdChangedEvent` tests

* `FilmChangedEvent` tests

* `MeteringCommunicationBloc` tests

* added test run to ci

* overriden `==` for `MeasuredState`

* `LuxMeteringEvent` tests

* refined `LuxMeteringEvent` tests

* rename

* wip

* wip

* `InitializeEvent`/`DeinitializeEvent` tests

* clamp minZoomLevel

* fixed `MeteringCommunicationBloc` tests

* wip

* `ZoomChangedEvent` tests

* `ExposureOffsetChangedEvent`/`ExposureOffsetResetEvent` tests

* renamed test groups

* added test coverage script

* improved `CameraContainerBloc` test coverage

* `EquipmentProfileChangedEvent` tests

* verify response vibration

* fixed running all tests

* `MeteringCommunicationBloc` equality tests

* `CameraContainerBloc` equality tests

* removed generated code from coverage

* `MeteringScreenLayoutFeature` tests

* `SupportedLocale` tests

* `Film` tests

* `CaffeineService` tests

* `UserPreferencesService` tests (wip)

* `LightSensorService` tests (wip)

* `migrateOldKeys()` tests

* ignore currently unused getters & setters

* gradle upgrade

* `reset(sharedPreferences);` calls count

* typo
2023-06-23 10:35:33 +02:00
Vadim
a7b8de6912
ML-62 Models tests (#80)
* removed redundant `UserPreferencesService` from `MeteringBloc`

* wip

* post-merge fixes

* `MeasureEvent` tests

* `MeasureEvent` tests revision

* `MeasureEvent` tests added timeout

* added stubs for other `MeteringBloc` events

* rewritten `MeteringBloc` logic

* wip

* `IsoChangedEvent` tests

* refined `IsoChangedEvent` tests

* `NdChangedEvent` tests

* `FilmChangedEvent` tests

* `MeteringCommunicationBloc` tests

* added test run to ci

* overriden `==` for `MeasuredState`

* `LuxMeteringEvent` tests

* refined `LuxMeteringEvent` tests

* rename

* wip

* wip

* `InitializeEvent`/`DeinitializeEvent` tests

* clamp minZoomLevel

* fixed `MeteringCommunicationBloc` tests

* wip

* `ZoomChangedEvent` tests

* `ExposureOffsetChangedEvent`/`ExposureOffsetResetEvent` tests

* renamed test groups

* added test coverage script

* improved `CameraContainerBloc` test coverage

* `EquipmentProfileChangedEvent` tests

* verify response vibration

* fixed running all tests

* `MeteringCommunicationBloc` equality tests

* `CameraContainerBloc` equality tests

* removed generated code from coverage

* `MeteringScreenLayoutFeature` tests

* `SupportedLocale` tests

* `Film` tests
2023-06-21 11:29:36 +02:00
Vadim
4d1550f1e7 Version bump 2023-06-20 15:05:57 +02:00
Vadim
02ece15c5d
ML-61 Try using buildTypes.release.ndk.debugSymbolLevel 'FULL' (#79)
* Replaced zipping action

thedoctor0/zip-release@0.7.1 -> vimtor/action-zip@v1.1

* typo

* recursive: false

* typo

* typo

* debugSymbolLevel 'FULL'

* Update build.gradle
2023-06-20 14:48:28 +02:00
Vadim
74d0a7101c
ML-62 Bloc's tests (#78)
* removed redundant `UserPreferencesService` from `MeteringBloc`

* wip

* post-merge fixes

* `MeasureEvent` tests

* `MeasureEvent` tests revision

* `MeasureEvent` tests added timeout

* added stubs for other `MeteringBloc` events

* rewritten `MeteringBloc` logic

* wip

* `IsoChangedEvent` tests

* refined `IsoChangedEvent` tests

* `NdChangedEvent` tests

* `FilmChangedEvent` tests

* `MeteringCommunicationBloc` tests

* added test run to ci

* overriden `==` for `MeasuredState`

* `LuxMeteringEvent` tests

* refined `LuxMeteringEvent` tests

* rename

* wip

* wip

* `InitializeEvent`/`DeinitializeEvent` tests

* clamp minZoomLevel

* fixed `MeteringCommunicationBloc` tests

* wip

* `ZoomChangedEvent` tests

* `ExposureOffsetChangedEvent`/`ExposureOffsetResetEvent` tests

* renamed test groups

* added test coverage script

* improved `CameraContainerBloc` test coverage

* `EquipmentProfileChangedEvent` tests

* verify response vibration

* fixed running all tests

* `MeteringCommunicationBloc` equality tests

* `CameraContainerBloc` equality tests

* removed generated code from coverage
2023-06-20 08:43:49 +02:00
Vadim
0013125d68 Version bump 2023-06-08 10:23:35 +02:00
Vadim
ad8f0d895a Fixed film discard on ISO change 2023-06-08 10:23:16 +02:00
Vadim
1a64ef987b Version bump 2023-06-04 13:10:56 +02:00
Vadim
cdf7372913
ML-77 Redundant vibrations (#76)
* wip

* `MeteringScreenLayout = InheritedModelBase<MeteringScreenLayoutFeature, bool>`

* removed `Provider` from providers folder

* wip

* Update pubspec.yaml

* `context.get<MeteringInteractor>()`

* `context.get<Environment>()`

* `context.get<SettingsInteractor>()`

* typo

* fixed `MeteringScreenLayout`

* fixed redundant vibrations
2023-06-04 13:04:04 +02:00
Vadim
a0eb641cf3 Version bump 2023-05-21 11:52:10 +02:00
Vadim
c63b5a420d
ML-74 CameraContainerBloc crashes (#75)
* nullable var instead of `late`

* `.then((_) => _cameraController = null));`
2023-05-21 11:50:46 +02:00
Vadim
ba0d6d3fab Version bump 2023-05-19 11:24:02 +02:00
Vadim
8b74c4e1a4
ML-72 buildPreview() was called on a disposed CameraController (#73)
* added `DeinitializeEvent`

* typo
2023-05-19 11:12:10 +02:00
Vadim
00b2728453 Updated dependencies versions + lints 2023-05-19 10:47:58 +02:00
Vadim
749f2beb47 Updated kotlin version 2023-05-16 12:04:49 +02:00
Vadim
239e1004a3 Version bump 2023-05-16 11:54:00 +02:00
Vadim
ec9ba1a779
ML-58 Metering UX improvements (#63)
* indicate EV value error

* allow nullable ev100 in `CameraContainerBloc`

* log exif keys

* wip

* removed `UserPreferencesService` from `MeteringBloc`

* added error toast

* conflicts

* lints

* allow stop metering if `hasError`

* fixed `AnimatedDialogPicker` inability to close

* Update build.gradle
2023-05-16 11:47:53 +02:00
Vadim
5602b1ed80
ML-70 Migrate to Dart 3 + stricter lints (#71)
* updated pub version

* added lint

* --code=always_use_package_imports

* dart fixes

* format

* other lints
2023-05-11 15:30:18 +02:00
Vadim
19a788adcb
ML-67 ScaffoldMessenger Null check operator used on a null value (#68) 2023-05-10 17:05:27 +02:00
Vadim
f68aea5133 Version bump 2023-05-08 17:18:59 +02:00
Vadim
4f8a415503
ML-65 [Android] Exception on mailto intent (#66)
* added error toast

* lints
2023-05-08 17:13:43 +02:00
Vadim
0d3641f618
ML-51 Updated abiFilters (#64) 2023-05-08 13:45:29 +02:00
Vadim
bd675184de Version bump 2023-05-05 23:37:06 +02:00
Vadim
f1f8d74338
ML-59 ND filter value is not applied on measure (#60) 2023-05-05 23:32:17 +02:00
Vadim
1a73cefa76 Updated Firebase versions 2023-05-05 18:18:34 +02:00
Vadim
8ded9cf98a Version bump 2023-05-05 16:32:25 +02:00
Vadim
4cabd17eb2
ML-51 Added abiFilters (#57)
* added abiFilters

* CD next try...
2023-05-05 15:02:12 +02:00
Vadim
2f478836ed Zip merged_native_libs
Zip merged_native_libs

Changed actions zipper

Added zip directory to CD

Removed zip directory from CD
2023-05-04 18:19:30 +02:00
Vadim
34ea034e67 Build appbundle & apk
Build appbundle & apk

Renamed github workflows
2023-05-04 18:18:21 +02:00
Vadim
7a0b563d75 Version bump 2023-05-04 15:39:35 +02:00
Vadim
2102213344
ML-54 AnimatedDialogState issues (#56)
* LateInitializationError: Field '_foregroundColorAnimation@1004358584'

* FlutterError: Null check operator used on a null value
2023-05-04 13:14:53 +02:00
Vadim
0583b07cb9
ML-53 Unsupported operation: Infinity or NaN toInt (#54)
added `isNan` & `isInfinite` checks
2023-05-04 12:49:26 +02:00
Vadim
6232ad555a
ML-51 Integrate Crashlytics (#52)
* added crashlytics

* added firebase_options to CD

* Version bump

* added firebase_options to CI

* timeout
2023-05-03 12:45:10 +02:00
Vadim
6944da25fa Version bump 2023-05-01 11:07:58 +02:00
Vadim
77cbd11268 [Android] Probably fixed grey screen issue 2023-05-01 11:07:07 +02:00
Vadim
d3512faa9b Fixed incorrect ISO for some films 2023-05-01 10:49:22 +02:00
Vadim
d346e706ff Moved StopTypeProvider to providers folder 2023-04-17 10:25:56 +03:00
Vadim
59b71abba0
Checked reciprocity in legacy features 2023-04-09 17:31:51 +03:00
Vadim
8a168b1424 Secrets typo 2023-04-09 13:52:57 +03:00
Vadim
0ac24e5d2c Temporarily removed firebase 2023-04-09 13:35:58 +03:00
Vadim
b936924452 Added GP resources 2023-04-08 17:27:04 +03:00
Vadim
dc2c33e494 Added google-services.json to cd 2023-04-05 22:34:06 +03:00
Vadim
efad098ea5 Version bump 2023-04-05 22:18:17 +03:00
Vadim
aaadd1ded6
ML-48 Allow users to hide fastest/shortest exposure pairs #48 (#49)
* implemented `MeteringScreenLayoutProvider`

* refined topbar height difference calculation

* implemented `MeteringScreenLayoutFeaturesDialog`

* added icons to all dialogs

* save & restore `MeteringScreenLayoutConfig`

* reset film on film picker disabling

* fixed Fomapan reciprocity

* fixed dependencies

* added translations
2023-04-05 22:15:11 +03:00
Vadim
be0617a99c
ML-46 Add reciprocity failure formulas for some films (#47)
* added `Film` model with reciprocity formulas

* added `FeaturesConfig`

* added film picker

* unused import

* get ISO and ND from equipment profile

* udpate iso on film changed

* typo
2023-04-01 22:04:55 +03:00
Vadim
6bf059ed4d
ML-42 Implement equipment profiles creating (#45)
* added Equipment section placeholder

* get iso & nd values from equipment profile

* use photography values from remote repo

* removed equipment section

* wip

* moved `EquipmentProfileProvider` from iap repo

* wip

* moved equipment profiles screen from iap

* improved equipment profiles screen

* mock add/delete

* collapse on expand

* add profile with name

* show selected values count (wip)

* fixed profile update

* cleanup

* Update pubspec.yaml

* made `AnimatedDialogPicker` more generic

* switched to local `Dimens`

* fixed `MeteringTopBarShape`

* rename

* animated `EquipmentProfileContainer`

* added default equipment profile

* change equipment profile name via dialog

* fixed profile selection

* filter equipment profile update/delete

* removed `enabled` param from settings section

* non-null `EquipmentProfile`

* fixed duplicate GlobalKeys

* animated equipment list

* Update ci.yml

* fixed shutter speed anchor issue

* autofocus

* added firebase to project

* save/restore equipment profiles

* unified `SliverList`

* added SSH key to iap repo

* Update ci.yml

* ci recursive submodules

* try full url

* Revert "try full url"

This reverts commit a9b692b60e.

* restore firebase_options.dart

* changed runner to macos

* restore options earlier

* removed problematic file from analysis :)

* removed launch_app

* textoverflow

* implemented `DialogRangePicker`

* add iap repo to cd

* typo

* added    workflow_dispatch to crowdin push

* removed `equipmentProfileValuesCount` from intl

* fr & ru translations

* style

* removed iap
2023-03-30 22:24:18 +03:00
Vadim
6ffd164171
Added workflow_dispatch to crowdin push 2023-03-30 14:05:37 +03:00
Vadim
cd61204e50 Version bump 2023-03-17 22:11:03 +03:00
Vadim
6bd104660c Version bump 2023-03-17 21:47:05 +03:00
Vadim
81e01c126a Fixed android launcher icon size 2023-03-17 21:43:15 +03:00