Merge "Dismiss panel when requested to close system dialogs" into rvc-dev
This commit is contained in:
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.systemui.car.notification;
|
package com.android.systemui.car.notification;
|
||||||
|
|
||||||
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
import com.android.systemui.car.CarDeviceProvisionedController;
|
import com.android.systemui.car.CarDeviceProvisionedController;
|
||||||
import com.android.systemui.car.navigationbar.CarNavigationBarController;
|
import com.android.systemui.car.navigationbar.CarNavigationBarController;
|
||||||
import com.android.systemui.car.window.OverlayPanelViewController;
|
import com.android.systemui.car.window.OverlayPanelViewController;
|
||||||
@@ -37,6 +38,7 @@ public class BottomNotificationPanelViewMediator extends NotificationPanelViewMe
|
|||||||
NotificationPanelViewController notificationPanelViewController,
|
NotificationPanelViewController notificationPanelViewController,
|
||||||
|
|
||||||
PowerManagerHelper powerManagerHelper,
|
PowerManagerHelper powerManagerHelper,
|
||||||
|
BroadcastDispatcher broadcastDispatcher,
|
||||||
|
|
||||||
CarDeviceProvisionedController carDeviceProvisionedController,
|
CarDeviceProvisionedController carDeviceProvisionedController,
|
||||||
ConfigurationController configurationController
|
ConfigurationController configurationController
|
||||||
@@ -44,6 +46,7 @@ public class BottomNotificationPanelViewMediator extends NotificationPanelViewMe
|
|||||||
super(carNavigationBarController,
|
super(carNavigationBarController,
|
||||||
notificationPanelViewController,
|
notificationPanelViewController,
|
||||||
powerManagerHelper,
|
powerManagerHelper,
|
||||||
|
broadcastDispatcher,
|
||||||
carDeviceProvisionedController,
|
carDeviceProvisionedController,
|
||||||
configurationController);
|
configurationController);
|
||||||
notificationPanelViewController.setOverlayDirection(
|
notificationPanelViewController.setOverlayDirection(
|
||||||
|
|||||||
@@ -17,10 +17,17 @@
|
|||||||
package com.android.systemui.car.notification;
|
package com.android.systemui.car.notification;
|
||||||
|
|
||||||
import android.car.hardware.power.CarPowerManager;
|
import android.car.hardware.power.CarPowerManager;
|
||||||
|
import android.content.BroadcastReceiver;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.content.IntentFilter;
|
||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
|
import android.os.UserHandle;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.annotation.CallSuper;
|
import androidx.annotation.CallSuper;
|
||||||
|
|
||||||
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
import com.android.systemui.car.CarDeviceProvisionedController;
|
import com.android.systemui.car.CarDeviceProvisionedController;
|
||||||
import com.android.systemui.car.navigationbar.CarNavigationBarController;
|
import com.android.systemui.car.navigationbar.CarNavigationBarController;
|
||||||
import com.android.systemui.car.window.OverlayViewMediator;
|
import com.android.systemui.car.window.OverlayViewMediator;
|
||||||
@@ -37,18 +44,36 @@ import javax.inject.Singleton;
|
|||||||
public class NotificationPanelViewMediator implements OverlayViewMediator,
|
public class NotificationPanelViewMediator implements OverlayViewMediator,
|
||||||
ConfigurationController.ConfigurationListener {
|
ConfigurationController.ConfigurationListener {
|
||||||
|
|
||||||
|
private static final boolean DEBUG = false;
|
||||||
|
private static final String TAG = "NotificationPanelVM";
|
||||||
|
|
||||||
private final CarNavigationBarController mCarNavigationBarController;
|
private final CarNavigationBarController mCarNavigationBarController;
|
||||||
private final NotificationPanelViewController mNotificationPanelViewController;
|
private final NotificationPanelViewController mNotificationPanelViewController;
|
||||||
private final PowerManagerHelper mPowerManagerHelper;
|
private final PowerManagerHelper mPowerManagerHelper;
|
||||||
|
private final BroadcastDispatcher mBroadcastDispatcher;
|
||||||
private final CarDeviceProvisionedController mCarDeviceProvisionedController;
|
private final CarDeviceProvisionedController mCarDeviceProvisionedController;
|
||||||
private final ConfigurationController mConfigurationController;
|
private final ConfigurationController mConfigurationController;
|
||||||
|
|
||||||
|
private final BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
|
||||||
|
@Override
|
||||||
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
if (DEBUG) Log.v(TAG, "onReceive: " + intent);
|
||||||
|
String action = intent.getAction();
|
||||||
|
if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)) {
|
||||||
|
if (mNotificationPanelViewController.isPanelExpanded()) {
|
||||||
|
mNotificationPanelViewController.toggle();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public NotificationPanelViewMediator(
|
public NotificationPanelViewMediator(
|
||||||
CarNavigationBarController carNavigationBarController,
|
CarNavigationBarController carNavigationBarController,
|
||||||
NotificationPanelViewController notificationPanelViewController,
|
NotificationPanelViewController notificationPanelViewController,
|
||||||
|
|
||||||
PowerManagerHelper powerManagerHelper,
|
PowerManagerHelper powerManagerHelper,
|
||||||
|
BroadcastDispatcher broadcastDispatcher,
|
||||||
|
|
||||||
CarDeviceProvisionedController carDeviceProvisionedController,
|
CarDeviceProvisionedController carDeviceProvisionedController,
|
||||||
ConfigurationController configurationController
|
ConfigurationController configurationController
|
||||||
@@ -56,6 +81,7 @@ public class NotificationPanelViewMediator implements OverlayViewMediator,
|
|||||||
mCarNavigationBarController = carNavigationBarController;
|
mCarNavigationBarController = carNavigationBarController;
|
||||||
mNotificationPanelViewController = notificationPanelViewController;
|
mNotificationPanelViewController = notificationPanelViewController;
|
||||||
mPowerManagerHelper = powerManagerHelper;
|
mPowerManagerHelper = powerManagerHelper;
|
||||||
|
mBroadcastDispatcher = broadcastDispatcher;
|
||||||
mCarDeviceProvisionedController = carDeviceProvisionedController;
|
mCarDeviceProvisionedController = carDeviceProvisionedController;
|
||||||
mConfigurationController = configurationController;
|
mConfigurationController = configurationController;
|
||||||
}
|
}
|
||||||
@@ -84,6 +110,9 @@ public class NotificationPanelViewMediator implements OverlayViewMediator,
|
|||||||
return mNotificationPanelViewController.isPanelExpanded();
|
return mNotificationPanelViewController.isPanelExpanded();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
mBroadcastDispatcher.registerReceiver(mBroadcastReceiver,
|
||||||
|
new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS), null, UserHandle.ALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.systemui.car.notification;
|
package com.android.systemui.car.notification;
|
||||||
|
|
||||||
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
import com.android.systemui.car.CarDeviceProvisionedController;
|
import com.android.systemui.car.CarDeviceProvisionedController;
|
||||||
import com.android.systemui.car.navigationbar.CarNavigationBarController;
|
import com.android.systemui.car.navigationbar.CarNavigationBarController;
|
||||||
import com.android.systemui.car.window.OverlayPanelViewController;
|
import com.android.systemui.car.window.OverlayPanelViewController;
|
||||||
@@ -37,6 +38,7 @@ public class TopNotificationPanelViewMediator extends NotificationPanelViewMedia
|
|||||||
NotificationPanelViewController notificationPanelViewController,
|
NotificationPanelViewController notificationPanelViewController,
|
||||||
|
|
||||||
PowerManagerHelper powerManagerHelper,
|
PowerManagerHelper powerManagerHelper,
|
||||||
|
BroadcastDispatcher broadcastDispatcher,
|
||||||
|
|
||||||
CarDeviceProvisionedController carDeviceProvisionedController,
|
CarDeviceProvisionedController carDeviceProvisionedController,
|
||||||
ConfigurationController configurationController
|
ConfigurationController configurationController
|
||||||
@@ -44,6 +46,7 @@ public class TopNotificationPanelViewMediator extends NotificationPanelViewMedia
|
|||||||
super(carNavigationBarController,
|
super(carNavigationBarController,
|
||||||
notificationPanelViewController,
|
notificationPanelViewController,
|
||||||
powerManagerHelper,
|
powerManagerHelper,
|
||||||
|
broadcastDispatcher,
|
||||||
carDeviceProvisionedController,
|
carDeviceProvisionedController,
|
||||||
configurationController);
|
configurationController);
|
||||||
notificationPanelViewController.setOverlayDirection(
|
notificationPanelViewController.setOverlayDirection(
|
||||||
|
|||||||
Reference in New Issue
Block a user