Add notification dots and popup menu notification support to the taskbar.

- Added support for notification dots
- Added support for notifications in popup menu
- Added support for dismissing notifications from the popup menu

Bug: 198438631
Test: long pressed launcher and taskbar icons, clicked notifications, clicked shortcuts
Change-Id: I7c981e60a82b4d6ce28332d804bbbfb5eb89c6a8
This commit is contained in:
Schneider Victor-tulias
2021-10-19 14:47:23 -07:00
parent 54def6f083
commit 5173fd8090
14 changed files with 375 additions and 151 deletions

View File

@@ -56,11 +56,14 @@ import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.LauncherSettings.Favorites;
import com.android.launcher3.R;
import com.android.launcher3.dot.DotInfo;
import com.android.launcher3.folder.Folder;
import com.android.launcher3.folder.FolderIcon;
import com.android.launcher3.logger.LauncherAtom;
import com.android.launcher3.model.data.FolderInfo;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.WorkspaceItemInfo;
import com.android.launcher3.popup.PopupDataProvider;
import com.android.launcher3.touch.ItemClickHandler;
import com.android.launcher3.util.PackageManagerHelper;
import com.android.launcher3.util.SettingsCache;
@@ -168,7 +171,7 @@ public class TaskbarActivityContext extends ContextThemeWrapper implements Activ
new TaskbarStashController(this),
new TaskbarEduController(this),
new TaskbarAutohideSuspendController(this),
new TaskbarPopupController());
new TaskbarPopupController(this));
}
public void init(TaskbarSharedState sharedState) {
@@ -316,6 +319,17 @@ public class TaskbarActivityContext extends ContextThemeWrapper implements Activ
}
}
@Override
public DotInfo getDotInfoForItem(ItemInfo info) {
return getPopupDataProvider().getDotInfoForItem(info);
}
@NonNull
@Override
public PopupDataProvider getPopupDataProvider() {
return mControllers.taskbarPopupController.getPopupDataProvider();
}
/**
* Sets a new data-source for this taskbar instance
*/