Closes #487 - Replace home toolbar icon with tabs icon
parent
a4a9222a94
commit
06890d0837
|
@ -5,6 +5,8 @@
|
|||
package org.mozilla.fenix.components.toolbar
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.PorterDuff
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.navigation.Navigation
|
||||
import mozilla.components.browser.domains.autocomplete.DomainAutocompleteProvider
|
||||
import mozilla.components.browser.session.SessionManager
|
||||
|
@ -13,11 +15,10 @@ import mozilla.components.browser.toolbar.BrowserToolbar
|
|||
import mozilla.components.concept.storage.HistoryStorage
|
||||
import mozilla.components.feature.toolbar.ToolbarAutocompleteFeature
|
||||
import mozilla.components.feature.toolbar.ToolbarFeature
|
||||
import org.mozilla.fenix.DefaultThemeManager
|
||||
import mozilla.components.support.base.feature.LifecycleAwareFeature
|
||||
import org.mozilla.fenix.DefaultThemeManager
|
||||
import org.mozilla.fenix.R
|
||||
import org.mozilla.fenix.browser.BrowserFragmentDirections
|
||||
import org.mozilla.fenix.ext.application
|
||||
import org.mozilla.fenix.ext.components
|
||||
|
||||
class ToolbarIntegration(
|
||||
|
@ -32,19 +33,30 @@ class ToolbarIntegration(
|
|||
init {
|
||||
toolbar.setMenuBuilder(toolbarMenu.menuBuilder)
|
||||
|
||||
val home = BrowserToolbar.Button(
|
||||
context.resources
|
||||
.getDrawable(DefaultThemeManager.resolveAttribute(R.attr.browserToolbarHomeIcon, context),
|
||||
context.application.theme),
|
||||
context.getString(R.string.browser_home_button),
|
||||
visible = { sessionId == null ||
|
||||
sessionManager.runWithSession(sessionId) { it.isCustomTabSession().not() } }
|
||||
) {
|
||||
Navigation.findNavController(toolbar)
|
||||
.navigate(BrowserFragmentDirections.actionBrowserFragmentToHomeFragment())
|
||||
}
|
||||
val tabsIcon = context.getDrawable(R.drawable.ic_tabs)
|
||||
tabsIcon?.setColorFilter(
|
||||
ContextCompat.getColor(
|
||||
context,
|
||||
DefaultThemeManager.resolveAttribute(R.attr.browserToolbarIcons, context)
|
||||
), PorterDuff.Mode.SRC_IN
|
||||
)
|
||||
tabsIcon?.let {
|
||||
val home = BrowserToolbar.Button(
|
||||
it,
|
||||
context.getString(R.string.browser_home_button),
|
||||
visible = {
|
||||
sessionId == null ||
|
||||
sessionManager.runWithSession(sessionId) {
|
||||
it.isCustomTabSession().not()
|
||||
}
|
||||
}
|
||||
) {
|
||||
Navigation.findNavController(toolbar)
|
||||
.navigate(BrowserFragmentDirections.actionBrowserFragmentToHomeFragment())
|
||||
}
|
||||
|
||||
toolbar.addBrowserAction(home)
|
||||
toolbar.addBrowserAction(home)
|
||||
}
|
||||
|
||||
ToolbarAutocompleteFeature(toolbar).apply {
|
||||
addDomainProvider(domainAutocompleteProvider)
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -34,6 +34,5 @@
|
|||
<attr name="browserToolbarBackground" format="reference"/>
|
||||
<attr name="browserToolbarIcons" format="reference"/>
|
||||
<attr name="browserToolbarMenuIcons" format="reference"/>
|
||||
<attr name="browserToolbarHomeIcon" format="reference"/>
|
||||
<attr name="navigationBarColorBrowser" format="reference"/>
|
||||
</resources>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
- License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
<resources>
|
||||
|
||||
<style name="LightThemeBase" parent="Theme.AppCompat.Light.NoActionBar">
|
||||
<item name="android:statusBarColor">@android:color/black</item>
|
||||
|
@ -37,7 +37,6 @@
|
|||
<item name="browserToolbarBackground">@color/off_white</item>
|
||||
<item name="browserToolbarIcons">@color/icons</item>
|
||||
<item name="browserToolbarMenuIcons">@color/icons</item>
|
||||
<item name="browserToolbarHomeIcon">@drawable/ic_home</item>
|
||||
</style>
|
||||
|
||||
<style name="LightTheme" parent="LightThemeBase">
|
||||
|
@ -78,7 +77,6 @@
|
|||
<item name="browserToolbarBackground">@color/private_browsing_top_gradient</item>
|
||||
<item name="browserToolbarIcons">@color/off_white</item>
|
||||
<item name="browserToolbarMenuIcons">@color/icons</item>
|
||||
<item name="browserToolbarHomeIcon">@drawable/ic_home_white</item>
|
||||
</style>
|
||||
|
||||
<style name="PrivateTheme" parent="PrivateThemeBase">
|
||||
|
|
Loading…
Reference in New Issue