1 /* 2 * Copyright (C) 2023 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.wm.shell.bubbles; 18 19 import android.content.Intent; 20 import com.android.wm.shell.bubbles.IBubblesListener; 21 22 /** 23 * Interface that is exposed to remote callers (launcher) to manipulate the bubbles feature when 24 * showing in the bubble bar. 25 */ 26 interface IBubbles { 27 28 oneway void registerBubbleListener(in IBubblesListener listener) = 1; 29 30 oneway void unregisterBubbleListener(in IBubblesListener listener) = 2; 31 showBubble(in String key, in int bubbleBarOffsetX, in int bubbleBarOffsetY)32 oneway void showBubble(in String key, in int bubbleBarOffsetX, in int bubbleBarOffsetY) = 3; 33 34 oneway void removeBubble(in String key) = 4; 35 removeAllBubbles()36 oneway void removeAllBubbles() = 5; 37 collapseBubbles()38 oneway void collapseBubbles() = 6; 39 onBubbleDrag(in String key, in boolean isBeingDragged)40 oneway void onBubbleDrag(in String key, in boolean isBeingDragged) = 7; 41 42 }