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.
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.
* For #4596: move code from CollectionCreationComponent to CollectionCreationStore
Other than adding comments, no changes were made. The code will be updated in a following commit. This is in order to make the commit diff more readable.
* For 4596: update CollectionCreateStore to libstate
* For 4596: copied CollectionCreationUIView into CollectionCreationView
Otherwise, no code was changed. The next commit will update this code. This is in order to make the commit diff more readable.
* For 4596: update CollectionCreationView to LibState
Note that the minimal changes possible to enable migration were made. Refactoring will happen in a later commit.
* For 4596: updated CollectionCreationTabListAdapter to work with the new View
* For 4596: updated SaveCollectionListAdapter to work with the new View
* For 4596: implemented CollectionCreationController
For now, it has an identical interface to the interactor. In a later commit several of its responsibilities will be moved around, some to the interactor and some to the reducer
* For 4596: copied over previous reducer code
No other changes were made. The code will be updated in the following commit. This is done to make changes more readable for the reviewer
* For 4596: update reducer code param names
Otherwise, no changes at this time
* For 4596: add arguments to CreateCollectionFragment in nav_graph
These will be used to replace the current CreateCollectionViewModel, which shares data between fragments in a way that doesn't fit within our architecture.
* For 4596: pass arguments to collection via transaction instead of VM
The VM will be removed in a later commit
* For 4596: update BrowserToolbarController to share state to collection via its Direction
* For 4596: removed CreateCollectionViewModel
* For 4596: test tab retrieval in CreateCollectionFragment
* For 4596: fix crashing CreateCollectionFragmentTest
* For 4596: removed classes create collection classes used by old architecture
* For 4596: collection interactor rename + kdoc
* For 4596: moved collection interactor interface
* For 4596: renamed CreateCollectionFragment
All related classes followed the pattern of CollectionCreationX
* For 4596: kdoc CollectionCreationController
There's no effective difference between these calls and their interactor equivalent, so I linked to them
* For 4596: fix bug that caused rename to not work
* For 4596: removed unused collection actions
These were unused before the LibState refactor
* For 4596: kdoc StepChanged
* For 4596: removed todos about moving logic to the reducer
saveTabsToCollection: this could be moved, but that would involve creating a new action. SaveCollectionStep should probably be refactored out, so adding this layer of indirection seemed counterproductive
handleBackPress: needs to be able to call dismiss(). The reducer doesn't (and shouldn't) be able to do that, so this needs to live here
stepBack: called by handleBackPress. See above
* For 4596: wrote tests for CollectionCreationController#stepback
* For 4596: fixed tests broken by changes to collections
* For 4596: small readability refactor for CollectionController#stepBack
No change to functionality (see tests)
* For 4596: broke apart CollectionView#update
There's probably a lot more that could be done here, but smaller changes were made to reduce scope
* For 4596: remove unnecessary todos
It looks like we don't follow the suggested pattern in this project
* For 4596: test CollectionCreationController#normalSessionSize
* For 4596: updated naming in CollectionCreationController per review
* Closes mozilla-mobile#2435 Change edit icon to share icon on the bookmark toolbar
* Closes mozilla-mobile#2435 Changed raw string to string resources
* Pass bookmark arguments to share fragment
* Closes mozilla-mobile#2435 add orEmpty
6102: For #6018 Re-add Search Shortcuts Button r=boek a=BranescuMihai
6106: For #5872 & #6075: Set TabHeader buttons to invisible instead of gone. r=boek a=mcarare
At least one button has to be invisible instead of gone to keep layout height.
Tabs overflow button kept gone to avoid empty space on view end in private mode.
Co-authored-by: Mihai Branescu <branescu.mihai2@gmail.com>
Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
5507: For #1383 Added tab title to close button content description r=ekager a=mcarare
### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [ ] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [x] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features
### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.
### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture
5846: For #3604 Snackbar messages for closing tabs use closed instead of deleted r=sblatz a=mcarare
### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [x] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features
### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.
### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture
Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
5633: Add fxa/sync integration tests r=csadilek a=isabelrios
Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [-] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [-] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features
This PR tries to add new tests, sync integration tests, to check the sync process Desktop<->Fenix, first for Bookmarks and in the future for more.
Co-authored-by: Isabel Rios <isabelrios@mackbookirios.home>
Co-authored-by: isabelrios <isabelrios@gmail.com>
5882: For #5873 Added on/off indicator for delete browsing data on exit pref r=sblatz a=mcarare
### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [x] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features
### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.
### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture
Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
This patch includes:
- WebChannels support enabled by default, with ability to disable it via remote flag
- expanded FxA telemetry (closes#4971)
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
* For #2754 Add tab cards to share sheet
* For #2754: Fix background near rounded corners and ShareButtonAppearanceTest
* Add license to share_tab_item
* For #5092 - Show a Snackbar with retry option if sharing to devices fails
ShareController will contain all the business logic for checking the result
status of the `share to device` operations. When this fails it will show a
snackbar which also offer the possibility to retry the just failed operation.
To allow this even in the event the user has closed the share fragment we'll
use a GlobalScope's coroutine.
Refactored out the TabsSharedCallback from ShareFragment because otherwise we
would have neede to sent through that the just failed operation. After the
refactor the ShareController is solely responsable for showing the right
snackbar and handling the retry actions.
* For #5092 - Refactor ShareControllerTest
* For #5092: Adds color theming of snackbars
Added separate TextView for link text
Used UnderlineSpan to show text as link
Split string private_browsing_placeholder, one for each TextView
Set clickListener on TextView so it can be accessed via Talkback
Added paddingTop to layout to maintain similar space above title.
Added image's bottom colour as background color to fill space below image.
Refactored TextViews alignment to chain.
Changed guideline to percent instead of dp for wider screens including tablets.
This patch includes:
- WebChannels support enabled by default, with ability to disable it via remote flag
- expanded FxA telemetry (closes#4971)
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
* fixes#4193 - made close button for tabs more accessible.
set recommended minimum size for accessibility 48x48, while keeping image size the same
removed margin from button and text as it was not needed anymore
aligned close button in center of tab to be visual consistent with alignment of favicon and more visual accessible
* Fix margins
In an effort to respect the initial MVI architecture I've broken the
complex `AppShareView` in 3 separate Views
- `ShareCloseView`
- `ShareToAccountDevicesView`
- `ShareToAppsView`
They are standalone Views (extending LayoutContainer) which know nothing about
each other or their parent and so offer their container the possibility to
order or display them in any form later.
According to the lib-state contract they are only responsible to
- inflate themselves in their injected containerView
- render a certain state (to be added in later commits)
- delegate all user interaction to an associated Interactor
As per #4341.
Also reformatted layouts to have a more consistent style.
Also refactored `AppShareRecyclerView` and `AccountDevicesShareRecyclerView` by
defining their LayoutManager in XML to reduce code complexity.
Removed drawableStart and added ImageView in layouts
Set ImageView logo programmatically: bitmap for SDK<24, vector for SDK>=24
Added onClickPendingIntent for ImageView in large and medium layouts
* Fixes#4067 besides snackbar
Makes layout hierarchy more shallow to increase performance.
* Fix#4067 Feedback
Make sure quick_action_overlay appears on top and use horizontal chain in tab_header.
* fixes#4434 - made close button for collections more accessible.
set recommended minimum size for accessibility 48x48, while keeping image size the same
removed margin from button as it was not needed anymore
aligned close button in center of tab to be visual consistent with alignment of favicon and more visual accessible
implemented same visual solution as for #4193 - close button for tabs
* fixes#4434 - made buttons for collection home list row more accessible and aligned 3 dot menu with individual tabs close button
set buttons sizes to recommended minimum size for accessibility 48x48, while keeping image size the same
removed margins from buttons as they were not needed anymore
aligned center of menu buttons with center of collection icon
constrained description top to bottom of title, instead of share button to reduce empty space. (overlap with share button is already prevented by end constraint of description)
To fix the overlapping issue I used Guideline and
layout_constraintWidth_default property. I also used the
layout_constraintHorizontal_bias property to make the back_button to
lean to the left and the select_all_button to lean to the right.
setting menu title should also set content description. I added the setContentDescription programmatically in order to ensure that the content description is being set. If content description matches title it won't be read twice
changed size of buttons to 48X48 following Material Design Accessibility guidelines.
removed margins from end of layout and spaces between buttons to provide consistency with the buttons from the top
changes size of buttons to 48X48 following Material Design Accessibility guidelines.
removed margins from end of layout and spaces between buttons to provide consistency with the buttons from the top
changed height to match_constraints instead of wrap_content - this makes for a better calculation of space, avoids setting textView on two lines, with blank line below.
* For #3548 - Fix close tab button visibility.
* Switch to 'wrap_content' instead of fixed values.
* Align close tab button with settings button.
* Change margin top
To make this match the style of the other button I applied the same style to it
and also changed it to be a MaterialButton.
I also decided to extract the margin and padding values of the button.
HomeFragment's onboarding items included drawableStart values, but also
built drawables in the view holders to replace them. Instead, we should
just use ImageViews so that work isn't duplicated.
This cleans up how we're displaying account state in the main preference UI.
Before when it worked, it worked mostly accidentally.
'launch' wrapper around "update ui" methods would trigger a race condition
between binding the account pref view holder and actually updating that view
with values. Sometimes the "update view with values" would happen after view
was bound, and the UI will be correct. Most of the time it would happen before,
and so there will be nothing to update and we'd get into an inconsistent state.
This also splits up the "accountpreference" into two: account is good,
and account needs re-auth. This greatly simplifies their management.
* For #2977 - Update add new collections flow
* Rename shared elements to be more general
* Make tab list not clickable in other modes
* For #2577 - Stop Flickering in List
* Add extensions function for next step with collections list size
This patch adds in a virtual "Desktop Bookmarks" folder to the top
of the mobile root child list, and makes sure to change internal
bookmark root names to user friendly labels.
* Closes#2782: Hide send tab when no devices available
* For #2752: Enabled send tab for debug and nightly builds
* For #2753: Add Send Tab functionality to UI
* Closes#2770: Allow receiving tabs from FxA devices
Now that we're on a-c 0.54, we can land this since it supports device
capability migration.
This patch adds a SEND_TAB device capability, making Fenix a valid target
in the Send Tab device list on Desktop Firefox.
Additionally, it adds a notification manager which manages notification
channels and knows how to display "received tabs" notifications".
* Post: remove unusued test file that's causing issues
* For #1574: Adds collections to home view
* Adds colored icons and expansion
* Adds state change
* Adds more styling
* Adds ItsNotBrokenSnacks
* Adds chevron
* Improves styling of swipe to delete and adds delete action
* Fix nits
* Try to add real saving