Used runBlocking to ensure we wait for the code using coroutines to execute
instead of runBlockingTest and join() since this last option led to failed
tests in CI because of
"java.lang.IllegalStateException: This job has not completed yet".
Combined all Stores into one for all Views shown in on Fragment.
Used a static `createStore()` which will build the initial state residing
inside the Store and not in the Fragment as to decouple the Fragment from the
business logic needed to build all the needed initial States.
Added Interactors that handle a MVI View's business logic for
TrackingProtectionView and WebsitePermissionsView.
WebsiteInfoView doesn't register any user input events and does not have any
reason to change while it is displayed so it does not have an Interactor.
The two Interactors will delegate Fragment's QuickSettingsController for
complex Android interactions, communication with other app features or for
Store updates.
Also refactored the stubs from the previous commit so that with this commit the
the quicksettings feature should all be working now based on lib-state.
Refactored `fragment_quick_settings_dialog_sheet` to now be composed of of
FrameLayouts placeholders in which each independent View will inflate itself.
Refactored the QuickSettingsUIView and Component to 3 standalone Views with
their own lib-state components: Store, State, Actions, Reducer.
The problem was that the parameter 'selectedTabIds' was not taken into account
when initializing the variable 'selectedTabs'. So I made the initialization
based on both the selected tab and the number of open tabs.
Removed failing verifyOverflowMenuButton method
Added new Robot for MultipleSelectionTooolbar
Renamed MultipleSelectionToolbarRobot to LibrarySubMenusMultipleSelectionToolbarRobot
The bug occurred because the activity/fragment is not recreated on
orientation change. A simple fix was to just set width and height to 0dp
to let it match constraints.
- Moved toolbar coloring to extension method
- Refactored classes using it
- Removed selection mode colouring for EditBookmarkFragment toolbar,
making it only black and white (normal mode)
- added PRIVATE MODE intent extra to the notification action
(could use also the OPEN_FROM_NOTIFICATION, but I considered this one to
be more explicit. Kept the old one in case other checks will be done
filtering for it)
- added intent? param to the getPrivateModeFromIntent method, because
onNewIntent() method does not set the activities intent, and it was needed
to be used both in onCreate() and onNewIntent()
This bug occurs because the activity/fragment is not recreated on
orientation change. A simple fix was to just set width and height to 0dp
to let it match constraints.
This reverts commit b1ce8ffcb7710fd98b692358309db42690593e11.
We're choosing to revert LeanPlum push messaging integration since we believe
that this has introduced a crash in Firebase push messaging. To verify
this assumption we're reverting this change, and when confirmed, we can
re-introduce Leamplum in a safer manner.
See https://github.com/mozilla-mobile/fenix/issues/6250 and https://github.com/mozilla-mobile/fenix/issues/6251 for related info.