Search in sources :

Example 6 with NetworkController

use of com.android.systemui.statusbar.policy.NetworkController in project android_frameworks_base by DirtyUnicorns.

the class TileServicesTests method setUp.

@Override
protected void setUp() throws Exception {
    super.setUp();
    mManagers = new ArrayList<>();
    final NetworkController networkController = Mockito.mock(NetworkController.class);
    Mockito.when(networkController.getDataSaverController()).thenReturn(Mockito.mock(DataSaverController.class));
    QSTileHost host = new QSTileHost(mContext, null, null, null, null, networkController, null, Mockito.mock(HotspotController.class), null, null, null, null, null, null, null, null, null);
    mTileService = new TestTileServices(host, Looper.myLooper());
}
Also used : DataSaverController(com.android.systemui.statusbar.policy.DataSaverController) QSTileHost(com.android.systemui.statusbar.phone.QSTileHost) HotspotController(com.android.systemui.statusbar.policy.HotspotController) NetworkController(com.android.systemui.statusbar.policy.NetworkController)

Example 7 with NetworkController

use of com.android.systemui.statusbar.policy.NetworkController in project android_frameworks_base by ParanoidAndroid.

the class MobileNetworkTile method onPostCreate.

@Override
void onPostCreate() {
    NetworkController controller = new NetworkController(mContext);
    controller.addNetworkSignalChangedCallback(this);
    updateTile();
    super.onPostCreate();
}
Also used : NetworkController(com.android.systemui.statusbar.policy.NetworkController)

Example 8 with NetworkController

use of com.android.systemui.statusbar.policy.NetworkController in project android_frameworks_base by ParanoidAndroid.

the class WiFiTile method onPostCreate.

@Override
void onPostCreate() {
    NetworkController controller = new NetworkController(mContext);
    controller.addNetworkSignalChangedCallback(this);
    updateTile();
    super.onPostCreate();
}
Also used : NetworkController(com.android.systemui.statusbar.policy.NetworkController)

Example 9 with NetworkController

use of com.android.systemui.statusbar.policy.NetworkController in project android_frameworks_base by ParanoidAndroid.

the class TabletStatusBar method makeStatusBarView.

protected View makeStatusBarView() {
    final Context context = mContext;
    CustomTheme currentTheme = mContext.getResources().getConfiguration().customTheme;
    if (currentTheme != null) {
        mCurrentTheme = (CustomTheme) currentTheme.clone();
    }
    loadDimens();
    final TabletStatusBarView sb = (TabletStatusBarView) View.inflate(context, R.layout.system_bar, null);
    mStatusBarView = sb;
    sb.setHandler(mHandler);
    try {
        // bar on a tablet that has only the system bar
        if (mWindowManagerService.hasNavigationBar()) {
            Slog.e(TAG, "Tablet device cannot show navigation bar and system bar");
        }
    } catch (RemoteException ex) {
    }
    // Overload screen with views that literally do nothing, thank you Google
    int[] dummyGravity = { Gravity.LEFT, Gravity.TOP, Gravity.RIGHT, Gravity.BOTTOM };
    for (int i = 0; i < 4; i++) {
        mPieDummyTrigger[i] = new View(mContext);
        mWindowManager.addView(mPieDummyTrigger[i], getDummyTriggerLayoutParams(mContext, dummyGravity[i]));
    }
    // set recents activity navigation bar view
    RecentsActivity.addNavigationCallback(this);
    mBarContents = (ViewGroup) sb.findViewById(R.id.bar_contents);
    // system bar clock
    mClock = (Clock) mBarContents.findViewById(R.id.clock);
    // the whole right-hand side of the bar
    mNotificationArea = sb.findViewById(R.id.notificationArea);
    mNotificationArea.setOnTouchListener(new NotificationTriggerTouchListener());
    // the button to open the notification area
    mNotificationTrigger = sb.findViewById(R.id.notificationTrigger);
    // the more notifications icon
    mNotificationIconArea = (NotificationIconArea) sb.findViewById(R.id.notificationIcons);
    // where the icons go
    mIconLayout = (NotificationIconArea.IconLayout) sb.findViewById(R.id.icons);
    mNotificationPeekTapDuration = ViewConfiguration.getTapTimeout();
    // px/s
    mNotificationFlingVelocity = 300;
    mTabletTicker = new TabletTicker(this);
    // The icons
    // will post a notification
    mLocationController = new LocationController(mContext);
    // watch the PREF_DO_NOT_DISTURB and convert to appropriate disable() calls
    mDoNotDisturb = new DoNotDisturb(mContext);
    mBatteryController = new BatteryController(mContext);
    mBatteryController.addIconView((ImageView) sb.findViewById(R.id.battery));
    mBluetoothController = new BluetoothController(mContext);
    mBluetoothController.addIconView((ImageView) sb.findViewById(R.id.bluetooth));
    mNetworkController = new NetworkController(mContext);
    mSignalCluster = (SignalClusterView) sb.findViewById(R.id.signal_cluster);
    mNetworkController.addSignalCluster(mSignalCluster);
    mSignalCluster.setNetworkController(mNetworkController);
    mBarView = (ViewGroup) mStatusBarView;
    mHasDockBattery = mContext.getResources().getBoolean(com.android.internal.R.bool.config_hasDockBattery);
    if (mHasDockBattery) {
        mDockBatteryController = new DockBatteryController(mContext);
        mDockBatteryController.addIconView((ImageView) sb.findViewById(R.id.dock_battery));
    }
    // The navigation buttons
    mBackButton = (ImageView) sb.findViewById(R.id.back);
    mNavigationArea = (ViewGroup) sb.findViewById(R.id.navigationArea);
    mHomeButton = mNavigationArea.findViewById(R.id.home);
    mMenuButton = mNavigationArea.findViewById(R.id.menu);
    mRecentButton = mNavigationArea.findViewById(R.id.recent_apps);
    if (Settings.System.getInt(context.getContentResolver(), Settings.System.NAV_BAR_TABUI_MENU, 0) == 1) {
        MarginLayoutParams marginParams = new MarginLayoutParams(mMenuButton.getLayoutParams());
        RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(marginParams);
        layoutParams.addRule(RelativeLayout.RIGHT_OF, R.id.recent_apps);
        layoutParams.setMargins(-(context.getResources().getDimensionPixelSize(R.dimen.navigation_menu_key_width) / 3), 0, 0, 0);
        mMenuButton.setLayoutParams(layoutParams);
        ((ImageView) mMenuButton).setImageDrawable(context.getResources().getDrawable(R.drawable.ic_sysbar_menu));
    } else {
        mRecentButton.setOnLongClickListener(new OnLongClickListener() {

            public boolean onLongClick(View v) {
                ((KeyButtonView) mMenuButton).sendEventSequence(new int[][] { new int[] { KeyEvent.ACTION_DOWN, KeyEvent.FLAG_CANCELED }, new int[] { KeyEvent.ACTION_UP, 0 } });
                mButtonBusy = false;
                return true;
            }
        });
    }
    mRecentButton.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            if (mButtonBusy) {
                onClickRecentButton();
            } else {
                mButtonBusy = true;
            }
        }
    });
    LayoutTransition lt = new LayoutTransition();
    lt.setDuration(250);
    // don't wait for these transitions; we just want icons to fade in/out, not move around
    lt.setDuration(LayoutTransition.CHANGE_APPEARING, 0);
    lt.setDuration(LayoutTransition.CHANGE_DISAPPEARING, 0);
    lt.addTransitionListener(new LayoutTransition.TransitionListener() {

        public void endTransition(LayoutTransition transition, ViewGroup container, View view, int transitionType) {
            // ensure the menu button doesn't stick around on the status bar after it's been
            // removed
            mBarContents.invalidate();
        }

        public void startTransition(LayoutTransition transition, ViewGroup container, View view, int transitionType) {
        }
    });
    mNavigationArea.setLayoutTransition(lt);
    // no multi-touch on the nav buttons
    mNavigationArea.setMotionEventSplittingEnabled(false);
    // The bar contents buttons
    mFeedbackIconArea = (ViewGroup) sb.findViewById(R.id.feedbackIconArea);
    mInputMethodSwitchButton = (InputMethodButton) sb.findViewById(R.id.imeSwitchButton);
    // Overwrite the lister
    mInputMethodSwitchButton.setOnClickListener(mOnClickListener);
    mCompatModeButton = (CompatModeButton) sb.findViewById(R.id.compatModeButton);
    mCompatModeButton.setOnClickListener(mOnClickListener);
    mCompatModeButton.setVisibility(View.GONE);
    // for redirecting errant bar taps to the IME
    mFakeSpaceBar = sb.findViewById(R.id.fake_space_bar);
    // "shadows" of the status bar features, for lights-out mode
    mShadow = sb.findViewById(R.id.bar_shadow);
    mShadow.setOnTouchListener(new View.OnTouchListener() {

        public boolean onTouch(View v, MotionEvent ev) {
            if (ev.getAction() == MotionEvent.ACTION_DOWN) {
                // even though setting the systemUI visibility below will turn these views
                // on, we need them to come up faster so that they can catch this motion
                // event
                mShadow.setVisibility(View.GONE);
                mBarContents.setVisibility(View.VISIBLE);
                try {
                    mBarService.setSystemUiVisibility(0, View.SYSTEM_UI_FLAG_LOW_PROFILE);
                } catch (RemoteException ex) {
                // system process dead
                }
            }
            return false;
        }
    });
    // tuning parameters
    final int LIGHTS_GOING_OUT_SYSBAR_DURATION = 750;
    final int LIGHTS_GOING_OUT_SHADOW_DURATION = 750;
    final int LIGHTS_GOING_OUT_SHADOW_DELAY = 0;
    final int LIGHTS_COMING_UP_SYSBAR_DURATION = 200;
    //        final int LIGHTS_COMING_UP_SYSBAR_DELAY    = 50;
    final int LIGHTS_COMING_UP_SHADOW_DURATION = 0;
    LayoutTransition xition = new LayoutTransition();
    xition.setAnimator(LayoutTransition.APPEARING, ObjectAnimator.ofFloat(null, "alpha", 0.5f, 1f));
    xition.setDuration(LayoutTransition.APPEARING, LIGHTS_COMING_UP_SYSBAR_DURATION);
    xition.setStartDelay(LayoutTransition.APPEARING, 0);
    xition.setAnimator(LayoutTransition.DISAPPEARING, ObjectAnimator.ofFloat(null, "alpha", 1f, 0f));
    xition.setDuration(LayoutTransition.DISAPPEARING, LIGHTS_GOING_OUT_SYSBAR_DURATION);
    xition.setStartDelay(LayoutTransition.DISAPPEARING, 0);
    ((ViewGroup) sb.findViewById(R.id.bar_contents_holder)).setLayoutTransition(xition);
    xition = new LayoutTransition();
    xition.setAnimator(LayoutTransition.APPEARING, ObjectAnimator.ofFloat(null, "alpha", 0f, 1f));
    xition.setDuration(LayoutTransition.APPEARING, LIGHTS_GOING_OUT_SHADOW_DURATION);
    xition.setStartDelay(LayoutTransition.APPEARING, LIGHTS_GOING_OUT_SHADOW_DELAY);
    xition.setAnimator(LayoutTransition.DISAPPEARING, ObjectAnimator.ofFloat(null, "alpha", 1f, 0f));
    xition.setDuration(LayoutTransition.DISAPPEARING, LIGHTS_COMING_UP_SHADOW_DURATION);
    xition.setStartDelay(LayoutTransition.DISAPPEARING, 0);
    ((ViewGroup) sb.findViewById(R.id.bar_shadow_holder)).setLayoutTransition(xition);
    // set the initial view visibility
    setAreThereNotifications();
    // receive broadcasts
    IntentFilter filter = new IntentFilter();
    filter.addAction(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
    filter.addAction(Intent.ACTION_SCREEN_OFF);
    context.registerReceiver(mBroadcastReceiver, filter);
    return sb;
}
Also used : LocationController(com.android.systemui.statusbar.policy.LocationController) LayoutTransition(android.animation.LayoutTransition) BluetoothController(com.android.systemui.statusbar.policy.BluetoothController) OnLongClickListener(android.view.View.OnLongClickListener) DockBatteryController(com.android.systemui.statusbar.policy.DockBatteryController) BatteryController(com.android.systemui.statusbar.policy.BatteryController) ImageView(android.widget.ImageView) Context(android.content.Context) IntentFilter(android.content.IntentFilter) MarginLayoutParams(android.view.ViewGroup.MarginLayoutParams) LayoutParams(android.view.ViewGroup.LayoutParams) ViewGroup(android.view.ViewGroup) DockBatteryController(com.android.systemui.statusbar.policy.DockBatteryController) MarginLayoutParams(android.view.ViewGroup.MarginLayoutParams) ImageView(android.widget.ImageView) QuickSettingsContainerView(com.android.systemui.statusbar.phone.QuickSettingsContainerView) View(android.view.View) TextView(android.widget.TextView) SignalClusterView(com.android.systemui.statusbar.SignalClusterView) StatusBarIconView(com.android.systemui.statusbar.StatusBarIconView) KeyButtonView(com.android.systemui.statusbar.policy.KeyButtonView) ScrollView(android.widget.ScrollView) CustomTheme(android.content.res.CustomTheme) Point(android.graphics.Point) NetworkController(com.android.systemui.statusbar.policy.NetworkController) MotionEvent(android.view.MotionEvent) RelativeLayout(android.widget.RelativeLayout) DoNotDisturb(com.android.systemui.statusbar.DoNotDisturb) OnClickListener(android.view.View.OnClickListener) RemoteException(android.os.RemoteException)

Example 10 with NetworkController

use of com.android.systemui.statusbar.policy.NetworkController in project android_frameworks_base by AOSPA.

the class TileServicesTests method setUp.

@Override
protected void setUp() throws Exception {
    super.setUp();
    mManagers = new ArrayList<>();
    final NetworkController networkController = Mockito.mock(NetworkController.class);
    Mockito.when(networkController.getDataSaverController()).thenReturn(Mockito.mock(DataSaverController.class));
    QSTileHost host = new QSTileHost(mContext, null, null, null, null, networkController, null, Mockito.mock(HotspotController.class), null, null, null, null, null, null, null, null, null);
    mTileService = new TestTileServices(host, Looper.myLooper());
}
Also used : DataSaverController(com.android.systemui.statusbar.policy.DataSaverController) QSTileHost(com.android.systemui.statusbar.phone.QSTileHost) HotspotController(com.android.systemui.statusbar.policy.HotspotController) NetworkController(com.android.systemui.statusbar.policy.NetworkController)

Aggregations

NetworkController (com.android.systemui.statusbar.policy.NetworkController)11 QSTileHost (com.android.systemui.statusbar.phone.QSTileHost)5 DataSaverController (com.android.systemui.statusbar.policy.DataSaverController)5 HotspotController (com.android.systemui.statusbar.policy.HotspotController)5 Context (android.content.Context)2 IntentFilter (android.content.IntentFilter)2 Point (android.graphics.Point)2 RemoteException (android.os.RemoteException)2 MotionEvent (android.view.MotionEvent)2 View (android.view.View)2 ImageView (android.widget.ImageView)2 ScrollView (android.widget.ScrollView)2 TextView (android.widget.TextView)2 SignalClusterView (com.android.systemui.statusbar.SignalClusterView)2 StatusBarIconView (com.android.systemui.statusbar.StatusBarIconView)2 BatteryController (com.android.systemui.statusbar.policy.BatteryController)2 BluetoothController (com.android.systemui.statusbar.policy.BluetoothController)2 DockBatteryController (com.android.systemui.statusbar.policy.DockBatteryController)2 LocationController (com.android.systemui.statusbar.policy.LocationController)2 LayoutTransition (android.animation.LayoutTransition)1