Vadim
d091f810de
implemented release notes dialog
2024-05-21 21:32:40 +02:00
Vadim
5c27f726c5
ML-173 Add a timer for long exposures ( #174 )
...
* wip
* added start/stop button
* animated timeline
* fixed timer stop state
* added reset button (wip)
* added `onExposurePairTap` callback
* integrated `TimerScreen` to navigation
* separated `TimerTimeline`
* fixed timeline flickering
* added milliseconds to timer
* synchronized timeline with actual timer
* reused `BottomControlsBar`
* fixed default scaffold background color
* moved center button size to the bar itself
* display selected exposure pair on timer screen
* separated reusable `AnimatedCircluarButton`
* release camera when timer is opened
* added `TimerInteractor`
* added `TimerBloc` test
* fixed hours parsing
* added scenarios for timer golden test
* adjusted timer timeline colors
* show iso & nd values on timer screen
* automatically close timer screen after timeout
* added timer autostart
* reverted theme changes
* updated goldens
* typo
* removed timer screen auto-dismiss
* increased timer vibration duration
* replaced outlined locks
* increased 1/3 values font size
2024-05-07 19:24:51 +02:00
Vadim
bc7e6e14d0
ML-170 Show long shutter speeds for all selected aperture values ( #172 )
...
* generate exposures > 1"
* fixed unit tests
* added manual shutter speed to equipment profiles
* fixed integration tests
* fixed unit tests
* fixed long exposures overflow
* migrated to resources 1.2.0 and iap 0.10.0
* removed unnecessary loop
* fixed extreme exposure pairs test
* updated master screenshots
* fixed iap stub
2024-04-30 12:44:01 +02:00
Vadim
2f8bb983d5
MLI-7 Manually restore purchases ( #165 )
...
* added `RestorePurchasesListTile`
* added `restorePurchases` to iap stub
* reordered settings
* migrated to iap 0.9.0
* migrated to iap 0.9.1
* use version in release commit
* Revert "use version in release commit"
This reverts commit 513b13eb96
.
* migrated to iap 0.9.2
* allow manual restore if Pro features are not unlocked
2024-04-10 22:30:35 +02:00
Vadim
2117df2f11
ML-44 Save zoom level for equipment profile ( #164 )
...
* made zoom slider vertical & added more ticks to ruler
* show sliders values
* increased slider tappable area
* more accurate sliders values
* added zoom slider to equipment profiles settings
* split `EquipmentListTiles` widget
* set zoom on equipment profile change
* clamp zoom to the nearest value
* added missing translations
* added zoom checks to e2e test
* removed unused import
2024-04-07 10:54:57 +02:00
Vadim
5fe6c46fd7
Updated Pro features description
2024-01-25 20:04:14 +01:00
ScaredCube
7d0c6684d1
Fix Chinese Translation Errors ( #151 )
...
Fix translation bugs
Fix redundant letter "s"
Fix wrong Traditional Chinese
2024-01-25 09:53:15 +01:00
Vadim
8f5893c7d2
ML-143 EV100 indication ( #148 )
...
* added `showEV100` to user preferences
* integrated EV100 setting to UI
* available for pro
* replaced `IAPProducts.isPurchased` with context extension
* fixed `UserPreferencesProvider` tests
* EV100 -> Ev100
2024-01-15 20:47:10 +01:00
Vadim
73d0c32323
Hide Pro features from the metering screen ( #147 )
...
* implemented `MockCameraContainerBloc` to stub camera on simulator
* hide pro features from metering screen
* disable pro features in settings
* use closed child background color in `AnimatedDialog`
* adjust `AnimatedDialogPicker` to items count
* close `AnimatedDialog` through context
* cleanup
* fixed `ReadingValueContainer` text color
* removed legacy translations
* fixed tests
* fixed `AnimatedDialog` scaling
* added `evFromImage` test
* added no EXIF test to `evFromImage`
2024-01-13 18:20:58 +01:00
nathan musoke
a2b4c88256
Fixed typo in reciprocity description ( #142 )
...
grater -> greater
Co-authored-by: Vadim <44135514+vodemn@users.noreply.github.com>
2024-01-13 17:42:23 +01:00
ScaredCube
55b0e52d7f
Fix Chinese Translation Errors ( #140 )
2023-12-01 14:54:44 +01:00
Vadim
6566108994
ML-129 Spot metering ( #136 )
...
* imlemented `CameraSpotDetector`
* separated generic `DialogSwitch`
* added `CameraFeature` model
* added `CameraFeaturesListTile` to metering section
* added features dialog subtitles
* added long press to remove metering spot
* translations
* hide camera features for purchasable status
* hide `CameraHistogram` & `CameraSpotDetector` if purchasable
* bumped iap version
* fixed tests
* removed redundant camera state emission
* tests
* Fixed remote config initalization
* updated pro features description
2023-11-11 21:05:11 +01:00
Vadim
a52efcd341
ML-130 Integrate Firebase Remote Config ( #132 )
...
* implemented `RemoteConfigService`
* added alternative translations
* typo
* added `firebase_analytics`
* dim paid features list tiles
* log list tile tap instead of dialog
* implemented `RemoteConfigProvider`
* typo
2023-10-31 18:42:25 +01:00
ScaredCube
5b1b0b0540
Update intl_zh.arb of new features ( #125 )
2023-09-23 12:52:58 +02:00
Vadim
9029379697
Merged Equipment section into Metering section
2023-09-19 17:26:32 +02:00
Vadim
abbc4c92de
ML-113 Add ability to copy equipment profile ( #120 )
...
* Display range values instead of values count
* copy equipment profile
* added `IconButton` tooltips
2023-09-18 16:59:53 +02:00
Vadim
0fbf252d9e
ML-117 Improve description of paid features ( #119 )
...
* wip
* added `LightmeterProSettingsSection`
* hide Pro section on purchase
* `ElevatedButton` -> `FilledButton`
* moved Pro description to iap/README.md
* intl
* disable only list tiles
* show iap dialog on every iap list tile
2023-09-17 22:29:02 +02:00
Vadim
cc9f162933
ML-107 Films filter ( #118 )
...
* added stub `FilmsProvider`
* moved dialogs to the shared folder
* typo
* separated `EquipmentSettingsSection`
* copy
* `IAPBuilder` -> `IAPListTile`
* moved `Film` to resources repo
* fixed films selection
* untied iso and selected film
* removed film from exposure pairs building
* indicate push/pull
* copy
* Update .gitignore
* fixed extreme exposure pairs reciprocity display
* sync with iap changes
* sync iap stub with iap changes
* added reciprocity description
* added workspace file
* Update .gitignore
2023-09-14 16:59:16 +02:00
Vadim
cf4373d854
Equipment profiles issues ( #115 )
...
* update equipment profile from dialog
* updated `MeteringScreenLayoutFeaturesDialog` translations
2023-09-08 22:25:13 +02:00
Vadim
4bb080a144
Implemented IAP & Equipment profiles ( #89 )
...
* added equipment profiles to layout config
* calculate layout height based on `MeteringScreenLayoutFeature`
* Update cd_dev.yml
* Fixed equipment profile tile padding
* import
* `webfactory/ssh-agent`
* Update pubspec.yaml
* fixed `MeteringScreenLayoutConfigJson` tests
* fixed `UserPreferencesService` tests
* reset selected equipment profile when layout feature is disabled
* `IAPProductType.equipment` -> `IAPProductType.paidFeatures`
* updated packages versions
* Update shared_prefs_service.dart
* Fixed & tested exposure pairs list builder
* typo
* typo
* added iap repo stub
* Renamed `EquipmentProfileData` ->`EquipmentProfile`
* Moved `EquipmentProfileProvider` to iap repo
* Update README.md
* Fixed `EquipmentProfileListener`
* Improved `EquipmentProfilesListTile` statuses visualization
* Update README.md
* Update ci.yml
* Post-merge fixes
* typo
* Added workflow checks
* more sophisticated iap icons
* Include IAP by default
* added loader for `IAPProductStatus.pending`
* typo
* Added equipment profiles list placeholder
* typo
* separated `IconPlaceholder`
* improved `buildExposureValues` testing
* cleanup
2023-09-02 10:32:08 +02:00
Vadim
886188bb9e
ML-95 Live histogram ( #97 )
...
* Added histogram and separated camera view builder
* Added histogram to `MeteringScreenLayoutConfig`
* `ResolutionPreset.medium` -> `ResolutionPreset.low`
* Adjusted histogram paddings
2023-08-06 16:28:20 +02:00
ScaredCube
b02b50bac3
Fixed Chinese translation ( #93 )
2023-07-24 12:16:35 +02:00
ScaredCube
bb9b023fa7
Add Chinese language support ( #91 )
...
* Add Chinese language support
* Update intl_cn.arb
* Fixed some bugs
* Add Chinese language support
* renamed `cn` to `zh`
---------
Co-authored-by: Vadim <44135514+vodemn@users.noreply.github.com>
Co-authored-by: Vadim <vadim.turko@gmail.com>
2023-07-24 09:35:30 +02:00
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
Vadim
4f8a415503
ML-65 [Android] Exception on mailto
intent ( #66 )
...
* added error toast
* lints
2023-05-08 17:13:43 +02: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
cbee0f350a
ML-37 Fix exposure pairs list creation ( #39 )
...
* integrated EV value to measure button
* fixed
2023-02-18 20:17:39 +03:00
Vadim
0c0e4eeb3b
Added French language
2023-02-14 15:30:49 +03:00
Vadim
485636c706
ML-28 Implement language picker ( #29 )
...
* added language picker
* Create intl_ru.arb
* Update README.md
2023-02-11 22:19:18 +03:00
Vadim
07fd61fa1e
ML-24 Implement caffeine feature ( #27 )
...
* platform-specific code
* implemented caffeine flutter side
* haptics revision
2023-02-11 15:58:47 +03:00
Vadim
a183a5433e
ML-25 Revise permission handling ( #26 )
...
* fixed permission handling
* translations cleanup
* [Android] removed unused permissions
2023-02-11 00:49:51 +03:00
Vadim
9436a59094
Added camera and exposurepairs list placeholders
2023-02-05 16:56:04 +03:00
Vadim
9cfffc3377
ML-18 Implement primary color picker ( #19 )
...
* wip
* hide `DynamicColorListTile` if unavailable
* added color animation for `AnimatedDialog`
* adjusted some colors
* sync `AnimatedDialog` insets with material
* scroll to selected color
2023-02-01 00:24:26 +03:00
Vadim
9ffb5112c1
ML-16 [Android] Implement incident light metering ( #17 )
...
* wip
* rename
* wip
* rename
* fixed camera screen layout
* omit camera measure on startup
* added calibration for light sensor
* save evsource
* Update widget_button_measure.dart
* fixed iOS init
* hide light sensor calibration on ios
* cleanup
2023-01-29 19:57:47 +03:00
Vadim
130f5ff0b2
ML-14 Implement EV calibration legacy feature ( #15 )
...
* wip
* implemented `CalibrationDialog`
* integrated calibration to the metering bloc
* checked legacy feature
2023-01-26 12:10:23 +03:00
Vadim
31ef42c4c0
ML-12 Prepare repo to be public ( #13 )
...
* added source code list tile
* added settings sections
* wip
* moved theme tiles to separate folders
* added env
* added contact email
* widget folders
* dynamic colors -> dynamic color
* fixed `SettingsSection` clipBehavior
* version bump
* typo
* updated flutter to 3.7
* added style guide
* typo
* Update style_guide.md
* Update README.md
* Update README.md
* Update README.md
2023-01-25 13:08:11 +03:00
Vadim
9477f80ada
ML-6 Add support for dynamic colors on A12+ ( #8 )
...
* added dynamic colors
* made dynamic colors enabled/disabled
* fixed tests
2023-01-22 22:30:29 +03:00
Vadim
c7ed4d332e
Added haptics
...
added `HapticsService`
added haptics handling
added `HapticsInteractor`
2023-01-21 14:17:44 +03:00
Vadim
14bac950cf
Fixed _models_ and _screens_ folders structure
...
proper folders for models
unified _screen_ folder filenames
2022-12-18 14:39:02 +03:00
Vadim
e7a8d0e1d5
Added version label
2022-12-17 21:05:50 +03:00
Vadim
9b0cba6ed7
Implemented theme brightness picker
...
implemented `ThemeProvider`
implemented theme switching
save selected theme type
2022-12-16 23:48:03 +03:00
Vadim
10764086ad
Added stop fraction picker
...
TODO: fix `MeteringScreen` double build on fraction change
2022-12-11 17:04:08 +03:00
Vadim
8381e5b753
Enhanced picker dialogs
...
added picker dialogs subtitle
show EV difference (wip)
jump to selected value
added EV difference to pickers
hide inkwell overflow
thirds iso normal style
fixed picker ev difference order
more picker typdefs
2022-12-05 19:50:31 +03:00
Vadim
1c344da29f
Recalculate EV on ND change
...
Recalculate EV on ND change
`PhotographyValue` -> `PhotographyStopValue`
2022-12-04 22:33:20 +03:00
Vadim
00c0a6134d
Implemented metering dialog picker
...
typo
fixed closed container scale
fixed dialog title animation
implemented `AnimatedDialog`
added open/close children transition
clean up
close dialog
2022-12-04 16:22:39 +03:00
Vadim
7460f12211
implemeted permissions check (wip)
2022-11-27 23:22:56 +03:00
Vadim
6dd0a9b192
added some mock tiles to settings
2022-10-30 21:59:33 +03:00
Vadim
6b3be40254
added intl
2022-10-30 21:30:12 +03:00