ImageViews are normally not clipped but extend to cover the entire width and
height set.
CardViews as a parent can help with that but on lower APIS they still need a
shapeAppearance which is a property already in the added style.
To get the index of the current selected browser tab when using reverse layout
we should also account for items placed below of the browser tabs.
The patch here unifies the logic already used for some calls but not all.
* Enable webrender for all tests and run a subset without webrender.
* Run tests on PR.
* Change task labels for webrender-enabled tests.
* Move transform logic to after the main transform.
* Reformat group symbol.
* Check if extra field is empty.
* Try a different method for treeherder info.
* Fix up assignment issue.
* Reformat symbol field instead of groupSymbol.
* Add new task group to config.
* Change the platform name for webrender tasks.
* Undo testing changes.
* Undo platform naming changes.
They're currently lazy { lazy { value } }. Accessing `lazy.value`
directly allows us to make it lazy { value }. This should be more
performant and prevents us from double-counting these components.
By having LazyMonitored implement Lazy, we can continue to pass these
values directly into the ac APIs that require Lazy references. For some
reason, implementing `Lazy.value` can replace `operator fun getValue`
required for delegates.
By component groups, I mean I applied this to any class with the
class kdoc, "Component group for...".
There are a few instances of lazy we had to keep using the old API to
avoid having to update constructor arguments.
With the Fennec -> Fenix migration complete there is no other Mozilla
application that would serve as a custom account provider hence the automatic
signin would not be possible.
Make this more obvious by commenting out the code that would trigger an
onboarding banner for it but keep the code in the app for when #15694 would add
to Fenix the ability to serve as a custom account provider.
STATE_HALF_EXPANDED cannot be disabled while also keeping fitToContents = true
based on which the tabs tray layout is currently set.
To work around this we'll set a a minuscule height for the tab tray when in
this state and then immediately advance to STATE_HIDDEN so to make it
imperceptible to the users.
Since I couldn't write unit tests because of InflateExceptions in Robolectric
I've written UI tests to protect against regressions.
This patch introduces a build flag that can be used on demand on the command line (`./gradlew -PmozillaOnline [..}`) or
permanently when added to local.properties (`mozillaOnline`).
At runtime `Config.channel.isMozillaOnline` will return `true` if the flag was set at build time.