2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-11 13:11:01 +00:00

For #8212 - Fixes shadow/border when toolbar is on top (#8234)

This commit is contained in:
Jeff Boek 2020-02-10 10:32:26 -08:00 committed by GitHub
parent cb19c6e868
commit f9b05e7d5a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 69 additions and 2 deletions

View File

@ -20,6 +20,9 @@ import android.widget.PopupWindow
import androidx.annotation.StringRes import androidx.annotation.StringRes
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
import androidx.constraintlayout.widget.ConstraintSet
import androidx.constraintlayout.widget.ConstraintSet.BOTTOM
import androidx.constraintlayout.widget.ConstraintSet.TOP
import androidx.coordinatorlayout.widget.CoordinatorLayout import androidx.coordinatorlayout.widget.CoordinatorLayout
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.core.view.updateLayoutParams import androidx.core.view.updateLayoutParams
@ -229,6 +232,18 @@ class HomeFragment : Fragment() {
gravity = Gravity.TOP gravity = Gravity.TOP
} }
ConstraintSet().apply {
clone(view.toolbarLayout)
clear(view.bottomBarShadow.id, BOTTOM)
connect(view.bottomBarShadow.id, TOP, view.bottom_bar.id, BOTTOM)
applyTo(view.toolbarLayout)
}
view.bottom_bar.background = resources.getDrawable(
ThemeManager.resolveAttribute(R.attr.bottomBarBackgroundTop, requireContext()),
null
)
view.homeAppBar.updateLayoutParams<ViewGroup.MarginLayoutParams> { view.homeAppBar.updateLayoutParams<ViewGroup.MarginLayoutParams> {
topMargin = HEADER_MARGIN.dpToPx(resources.displayMetrics) topMargin = HEADER_MARGIN.dpToPx(resources.displayMetrics)
} }

View File

@ -9,7 +9,7 @@
<solid android:color="@color/foundation_normal_theme" /> <solid android:color="@color/foundation_normal_theme" />
</shape> </shape>
</item> </item>
<item android:height="1dp" > <item android:height="1dp">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="#1AFFFFFF" /> <solid android:color="#1AFFFFFF" />
</shape> </shape>

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 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/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="@color/foundation_normal_theme" />
</shape>
</item>
<item android:height="1dp" android:gravity="bottom">
<shape android:shape="rectangle">
<solid android:color="#1AFFFFFF" />
</shape>
</item>
</layer-list>

View File

@ -14,7 +14,7 @@
android:type="linear" /> android:type="linear" />
</shape> </shape>
</item> </item>
<item android:height="1dp" > <item android:height="1dp">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="#1AFFFFFF" /> <solid android:color="#1AFFFFFF" />
</shape> </shape>

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 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/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<gradient
android:angle="45"
android:startColor="#7529A7"
android:centerColor="#492E85"
android:endColor="#383372"
android:type="linear" />
</shape>
</item>
<item android:height="1dp" android:gravity="bottom">
<shape android:shape="rectangle">
<solid android:color="#1AFFFFFF" />
</shape>
</item>
</layer-list>

View File

@ -91,11 +91,21 @@
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBottom_toTopOf="@id/bottom_bar" /> app:layout_constraintBottom_toTopOf="@id/bottom_bar" />
<View
android:id="@+id/bottomBarHighlight"
android:layout_width="0dp"
android:layout_height="1dp"
android:background="@color/bottom_bar_shadow"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBottom_toTopOf="@id/bottom_bar" />
<View <View
android:id="@+id/bottom_bar" android:id="@+id/bottom_bar"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="56dp" android:layout_height="56dp"
android:background="?bottomBarBackground" android:background="?bottomBarBackground"
android:foregroundGravity="bottom"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintStart_toStartOf="parent" />

View File

@ -31,6 +31,7 @@
<!-- Misc --> <!-- Misc -->
<attr name="homeBackground" format="reference"/> <attr name="homeBackground" format="reference"/>
<attr name="bottomBarBackground" format="reference"/> <attr name="bottomBarBackground" format="reference"/>
<attr name="bottomBarBackgroundTop" format="reference"/>
<attr name="privateBrowsingButtonBackground" format="reference" /> <attr name="privateBrowsingButtonBackground" format="reference" />
<attr name="privateBrowsingButtonAccent" format="reference" /> <attr name="privateBrowsingButtonAccent" format="reference" />
<attr name="fenixLogo" format="reference" /> <attr name="fenixLogo" format="reference" />

View File

@ -59,6 +59,7 @@
<item name="fenixLogo">@drawable/ic_logo_wordmark_normal</item> <item name="fenixLogo">@drawable/ic_logo_wordmark_normal</item>
<item name="homeBackground">@color/foundation_normal_theme</item> <item name="homeBackground">@color/foundation_normal_theme</item>
<item name="bottomBarBackground">@drawable/home_bottom_bar_background</item> <item name="bottomBarBackground">@drawable/home_bottom_bar_background</item>
<item name="bottomBarBackgroundTop">@drawable/home_bottom_bar_background_top</item>
<item name="privateBrowsingButtonBackground">@android:color/transparent</item> <item name="privateBrowsingButtonBackground">@android:color/transparent</item>
<item name="privateBrowsingButtonAccent">@color/primary_text_normal_theme</item> <item name="privateBrowsingButtonAccent">@color/primary_text_normal_theme</item>
<item name="shieldLottieFile">@raw/shield_json</item> <item name="shieldLottieFile">@raw/shield_json</item>
@ -147,6 +148,7 @@
<item name="fenixLogo">@drawable/ic_logo_wordmark_private</item> <item name="fenixLogo">@drawable/ic_logo_wordmark_private</item>
<item name="homeBackground">@drawable/private_home_background_gradient</item> <item name="homeBackground">@drawable/private_home_background_gradient</item>
<item name="bottomBarBackground">@drawable/private_home_bottom_bar_background_gradient</item> <item name="bottomBarBackground">@drawable/private_home_bottom_bar_background_gradient</item>
<item name="bottomBarBackgroundTop">@drawable/private_home_bottom_bar_background_gradient_top</item>
<item name="privateBrowsingButtonBackground">@color/primary_text_private_theme</item> <item name="privateBrowsingButtonBackground">@color/primary_text_private_theme</item>
<item name="privateBrowsingButtonAccent">@color/above_private_theme</item> <item name="privateBrowsingButtonAccent">@color/above_private_theme</item>
<item name="shieldLottieFile">@raw/shield_json_dark</item> <item name="shieldLottieFile">@raw/shield_json_dark</item>