Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f71d1c56 authored by Zoey Chen's avatar Zoey Chen
Browse files

[ProviderModel] Fix dialog's UI layout

    - Move down the dialog to overlay the gesture navigation bar.
    - Mobile data layout need to align UX figma

Bug: 192803404
Test: atest InternetDialogTest
Change-Id: Ib5ac6ee909e666b66b41fd0069f6c9528858dd37
parent 3ac82b7a
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -27,15 +27,16 @@
        android:layout_width="match_parent"
        style="@style/Widget.SliceView.Panel"
        android:gravity="center_vertical|center_horizontal"
        android:layout_marginTop="20dp"
        android:layout_height="64dp"
        android:layout_marginTop="24dp"
        android:layout_marginBottom="24dp"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/internet_dialog_title"
            android:gravity="center_vertical|center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_height="32dp"
            android:textColor="?android:attr/textColorPrimary"
            android:fontFamily="google-sans"
            android:textSize="24sp"/>
@@ -44,7 +45,8 @@
            android:id="@+id/internet_dialog_subtitle"
            android:gravity="center_vertical|center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_height="20dp"
            android:layout_marginTop="8dp"
            android:ellipsize="end"
            android:maxLines="1"
            android:fontFamily="google-sans"
+10 −9
Original line number Diff line number Diff line
@@ -15,8 +15,7 @@
 */
package com.android.systemui.qs.tiles.dialog;

import static android.view.WindowInsets.Type.navigationBars;
import static android.view.WindowInsets.Type.statusBars;
import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS;

import static com.android.systemui.Prefs.Key.QS_HAS_TURNED_OFF_MOBILE_DATA;

@@ -166,7 +165,6 @@ public class InternetDialog extends SystemUIDialog implements
        if (!aboveStatusBar) {
            getWindow().setType(WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY);
        }
        show();
    }

    @Override
@@ -179,16 +177,19 @@ public class InternetDialog extends SystemUIDialog implements
        mDialogView = LayoutInflater.from(mContext).inflate(R.layout.internet_connectivity_dialog,
                null);
        final Window window = getWindow();
        final WindowManager.LayoutParams lp = window.getAttributes();
        lp.gravity = Gravity.BOTTOM;
        lp.setFitInsetsTypes(statusBars() | navigationBars());
        lp.setFitInsetsSides(WindowInsets.Side.all());
        lp.setFitInsetsIgnoringVisibility(true);
        window.setAttributes(lp);
        final WindowManager.LayoutParams layoutParams = window.getAttributes();
        layoutParams.gravity = Gravity.BOTTOM;
        // Move down the dialog to overlay the navigation bar.
        layoutParams.setFitInsetsTypes(
                layoutParams.getFitInsetsTypes() & ~WindowInsets.Type.navigationBars());
        layoutParams.setFitInsetsSides(WindowInsets.Side.all());
        layoutParams.setFitInsetsIgnoringVisibility(true);
        window.setAttributes(layoutParams);
        window.setContentView(mDialogView);
        window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        window.setWindowAnimations(R.style.Animation_InternetDialog);
        window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
        window.addFlags(FLAG_LAYOUT_NO_LIMITS);

        mInternetDialogTitle = mDialogView.requireViewById(R.id.internet_dialog_title);
        mInternetDialogSubTitle = mDialogView.requireViewById(R.id.internet_dialog_subtitle);
+1 −0
Original line number Diff line number Diff line
@@ -50,6 +50,7 @@ class InternetDialogFactory @Inject constructor(
        } else {
            internetDialog = InternetDialog(context, this, internetDialogController, aboveStatusBar,
                    uiEventLogger, handler)
            internetDialog?.show()
        }
    }

+3 −2
Original line number Diff line number Diff line
@@ -74,6 +74,7 @@ public class InternetDialogTest extends SysuiTestCase {
        MockitoAnnotations.initMocks(this);
        mInternetDialog = new MockInternetDialog(mContext, mInternetDialogFactory,
                mInternetDialogController, true, mUiEventLogger, mHandler);
        mInternetDialog.show();
        doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
        when(mMockWifiManager.isWifiEnabled()).thenReturn(true);
        when(mMockWifiManager.getConnectionInfo()).thenReturn(mWifiInfo);
@@ -177,8 +178,8 @@ public class InternetDialogTest extends SysuiTestCase {
        private String mConnectedWifiSummary;

        MockInternetDialog(Context context, InternetDialogFactory internetDialogFactory,
                InternetDialogController internetDialogController,
                boolean aboveStatusBar, UiEventLogger uiEventLogger, @Main Handler handler) {
                InternetDialogController internetDialogController, boolean aboveStatusBar,
                UiEventLogger uiEventLogger, @Main Handler handler) {
            super(context, internetDialogFactory, internetDialogController, aboveStatusBar,
                    uiEventLogger, handler);
            mAdapter = mInternetAdapter;