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

Commit f28b2db8 authored by Wolfram Liebchen's avatar Wolfram Liebchen Committed by Michael Bestas
Browse files

SystemUI: Network traffic with center cutout [1/3]

Add possible network traffic display locations on the left
and right side.

Change-Id: Ic209aa1c0816cb22a5cf4ad9f19908746d38fc68
parent b1f18c6a
Loading
Loading
Loading
Loading
+40 −2
Original line number Diff line number Diff line
@@ -104,6 +104,25 @@
                        android:orientation="horizontal"
                        android:clipChildren="false"/>

                    <com.android.systemui.statusbar.LineageStatusBarItemHolder
                        android:id="@+id/network_traffic_holder_start"
                        android:layout_width="wrap_content"
                        android:layout_height="match_parent"
                        android:layoutDirection="ltr"
                        android:gravity="center"
                        android:paddingStart="4dp"
                        >

                        <org.lineageos.internal.statusbar.NetworkTraffic
                            android:id="@+id/network_traffic_start"
                            android:layout_width="wrap_content"
                            android:layout_height="match_parent"
                            android:maxLines="2"
                            android:gravity="center"
                        />

                    </com.android.systemui.statusbar.LineageStatusBarItemHolder>

                </LinearLayout>
            </FrameLayout>
        </FrameLayout>
@@ -117,7 +136,7 @@
        />

        <com.android.systemui.statusbar.LineageStatusBarItemHolder
            android:id="@+id/network_traffic_holder"
            android:id="@+id/network_traffic_holder_center"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layoutDirection="ltr"
@@ -125,7 +144,7 @@
            >

            <org.lineageos.internal.statusbar.NetworkTraffic
                android:id="@+id/network_traffic"
                android:id="@+id/network_traffic_center"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:maxLines="2"
@@ -155,6 +174,25 @@
                android:gravity="center_vertical|end"
                android:clipChildren="false">

                <com.android.systemui.statusbar.LineageStatusBarItemHolder
                    android:id="@+id/network_traffic_holder_end"
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent"
                    android:layoutDirection="ltr"
                    android:gravity="center"
                    android:paddingLeft="2dp"
                    >

                    <org.lineageos.internal.statusbar.NetworkTraffic
                        android:id="@+id/network_traffic_end"
                        android:layout_width="wrap_content"
                        android:layout_height="match_parent"
                        android:maxLines="2"
                        android:gravity="center"
                    />

                </com.android.systemui.statusbar.LineageStatusBarItemHolder>

                <include
                    android:id="@+id/user_switcher_container"
                    android:layout_width="wrap_content"
+16 −4
Original line number Diff line number Diff line
@@ -24,6 +24,8 @@ import android.view.View;

import com.android.systemui.R;

import org.lineageos.internal.statusbar.NetworkTraffic;

public final class PhoneStatusBarTransitions extends BarTransitions {
    private static final float ICON_ALPHA_WHEN_NOT_OPAQUE = 1;
    private static final float ICON_ALPHA_WHEN_LIGHTS_OUT_BATTERY_CLOCK = 0.5f;
@@ -31,7 +33,8 @@ public final class PhoneStatusBarTransitions extends BarTransitions {

    private final float mIconAlphaWhenOpaque;

    private View mStartSide, mStatusIcons, mNetworkTraffic, mBattery;
    private View mStartSide, mStatusIcons, mBattery;
    private NetworkTraffic mNetworkTrafficStart, mNetworkTrafficCenter, mNetworkTrafficEnd;
    private Animator mCurrentAnimation;

    /**
@@ -43,8 +46,13 @@ public final class PhoneStatusBarTransitions extends BarTransitions {
        mIconAlphaWhenOpaque = res.getFraction(R.dimen.status_bar_icon_drawing_alpha, 1, 1);
        mStartSide = statusBarView.findViewById(R.id.status_bar_start_side_except_heads_up);
        mStatusIcons = statusBarView.findViewById(R.id.statusIcons);
        mNetworkTraffic = statusBarView.findViewById(R.id.network_traffic);
        mNetworkTrafficStart = statusBarView.findViewById(R.id.network_traffic_start);
        mNetworkTrafficCenter = statusBarView.findViewById(R.id.network_traffic_center);
        mNetworkTrafficEnd = statusBarView.findViewById(R.id.network_traffic_end);
        mBattery = statusBarView.findViewById(R.id.battery);
        mNetworkTrafficStart.setViewPosition(0);        /* start side display */
        mNetworkTrafficCenter.setViewPosition(1);       /* center display */
        mNetworkTrafficEnd.setViewPosition(2);          /* end side display */
        applyModeBackground(-1, getMode(), false /*animate*/);
        applyMode(getMode(), false /*animate*/);
    }
@@ -87,7 +95,9 @@ public final class PhoneStatusBarTransitions extends BarTransitions {
            anims.playTogether(
                    animateTransitionTo(mStartSide, newAlpha),
                    animateTransitionTo(mStatusIcons, newAlpha),
                    animateTransitionTo(mNetworkTraffic, newAlpha),
                    animateTransitionTo(mNetworkTrafficStart, newAlpha),
                    animateTransitionTo(mNetworkTrafficCenter, newAlpha),
                    animateTransitionTo(mNetworkTrafficEnd, newAlpha),
                    animateTransitionTo(mBattery, newAlphaBC)
                    );
            if (isLightsOut(mode)) {
@@ -98,7 +108,9 @@ public final class PhoneStatusBarTransitions extends BarTransitions {
        } else {
            mStartSide.setAlpha(newAlpha);
            mStatusIcons.setAlpha(newAlpha);
            mNetworkTraffic.setAlpha(newAlpha);
            mNetworkTrafficStart.setAlpha(newAlpha);
            mNetworkTrafficCenter.setAlpha(newAlpha);
            mNetworkTrafficEnd.setAlpha(newAlpha);
            mBattery.setAlpha(newAlphaBC);
        }
    }
+15 −5
Original line number Diff line number Diff line
@@ -120,7 +120,9 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
    private LinearLayout mEndSideContent;
    private View mOngoingCallChip;
    private View mNotificationIconAreaInner;
    private View mNetworkTrafficHolder;
    private View mNetworkTrafficHolderStart;
    private View mNetworkTrafficHolderCenter;
    private View mNetworkTrafficHolderEnd;
    private int mDisabled1;
    private int mDisabled2;
    private DarkIconManager mDarkIconManager;
@@ -266,7 +268,9 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
        updateBlockedIcons();
        mStatusBarIconController.addIconGroup(mDarkIconManager);
        mEndSideContent = mStatusBar.findViewById(R.id.status_bar_end_side_content);
        mNetworkTrafficHolder = mStatusBar.findViewById(R.id.network_traffic_holder);
        mNetworkTrafficHolderStart = mStatusBar.findViewById(R.id.network_traffic_holder_start);
        mNetworkTrafficHolderCenter = mStatusBar.findViewById(R.id.network_traffic_holder_center);
        mNetworkTrafficHolderEnd = mStatusBar.findViewById(R.id.network_traffic_holder_end);
        mClockController = mStatusBar.getClockController();
        mOngoingCallChip = mStatusBar.findViewById(R.id.ongoing_call_chip);
        showEndSideContent(false);
@@ -528,7 +532,9 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue

    private void hideEndSideContent(boolean animate) {
        animateHide(mEndSideContent, animate);
        animateHide(mNetworkTrafficHolder, animate);
        animateHide(mNetworkTrafficHolderStart, animate);
        animateHide(mNetworkTrafficHolderCenter, animate);
        animateHide(mNetworkTrafficHolderEnd, animate);
    }

    private void showEndSideContent(boolean animate) {
@@ -536,12 +542,16 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
        int state = mAnimationScheduler.getAnimationState();
        if (state == IDLE || state == SHOWING_PERSISTENT_DOT) {
            animateShow(mEndSideContent, animate);
            animateShow(mNetworkTrafficHolder, animate);
            animateShow(mNetworkTrafficHolderStart, animate);
            animateShow(mNetworkTrafficHolderCenter, animate);
            animateShow(mNetworkTrafficHolderEnd, animate);
        } else {
            // We are in the middle of a system status event animation, which will animate the
            // alpha (but not the visibility). Allow the view to become visible again
            mEndSideContent.setVisibility(View.VISIBLE);
            mNetworkTrafficHolder.setVisibility(View.VISIBLE);
            mNetworkTrafficHolderStart.setVisibility(View.VISIBLE);
            mNetworkTrafficHolderCenter.setVisibility(View.VISIBLE);
            mNetworkTrafficHolderEnd.setVisibility(View.VISIBLE);
        }
    }