16142a54baae3289f734947c6b5375b12eb0fb722Chris Banes/*
26142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * Copyright (C) 2015 The Android Open Source Project
36142a54baae3289f734947c6b5375b12eb0fb722Chris Banes *
46142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * Licensed under the Apache License, Version 2.0 (the "License");
56142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * you may not use this file except in compliance with the License.
66142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * You may obtain a copy of the License at
76142a54baae3289f734947c6b5375b12eb0fb722Chris Banes *
86142a54baae3289f734947c6b5375b12eb0fb722Chris Banes *      http://www.apache.org/licenses/LICENSE-2.0
96142a54baae3289f734947c6b5375b12eb0fb722Chris Banes *
106142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * Unless required by applicable law or agreed to in writing, software
116142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * distributed under the License is distributed on an "AS IS" BASIS,
126142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * See the License for the specific language governing permissions and
146142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * limitations under the License.
156142a54baae3289f734947c6b5375b12eb0fb722Chris Banes */
166142a54baae3289f734947c6b5375b12eb0fb722Chris Banes
17ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikaspackage androidx.appcompat.view.menu;
186142a54baae3289f734947c6b5375b12eb0fb722Chris Banes
19ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikasimport static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP;
208e10080c914d1ad0784394fa3026b85535535847Aurimas Liutikas
216142a54baae3289f734947c6b5375b12eb0fb722Chris Banesimport android.widget.ListView;
226142a54baae3289f734947c6b5375b12eb0fb722Chris Banes
233de8a4e8305507475d7890205184946a25cf45e7Aurimas Liutikasimport androidx.annotation.RestrictTo;
243de8a4e8305507475d7890205184946a25cf45e7Aurimas Liutikas
256142a54baae3289f734947c6b5375b12eb0fb722Chris Banes/**
266142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * A list menu which can be shown and hidden and which is internally represented by a ListView.
276142a54baae3289f734947c6b5375b12eb0fb722Chris Banes *
286142a54baae3289f734947c6b5375b12eb0fb722Chris Banes * @hide
296142a54baae3289f734947c6b5375b12eb0fb722Chris Banes */
308e10080c914d1ad0784394fa3026b85535535847Aurimas Liutikas@RestrictTo(LIBRARY_GROUP)
316142a54baae3289f734947c6b5375b12eb0fb722Chris Banespublic interface ShowableListMenu {
32c39d9c75590eca86a5e7e32a8824ba04a0d42e9bAlan Viverette    void show();
336142a54baae3289f734947c6b5375b12eb0fb722Chris Banes
34c39d9c75590eca86a5e7e32a8824ba04a0d42e9bAlan Viverette    void dismiss();
356142a54baae3289f734947c6b5375b12eb0fb722Chris Banes
36c39d9c75590eca86a5e7e32a8824ba04a0d42e9bAlan Viverette    boolean isShowing();
376142a54baae3289f734947c6b5375b12eb0fb722Chris Banes
386142a54baae3289f734947c6b5375b12eb0fb722Chris Banes    /**
396142a54baae3289f734947c6b5375b12eb0fb722Chris Banes     * @return The internal ListView for the visible menu.
406142a54baae3289f734947c6b5375b12eb0fb722Chris Banes     */
41c39d9c75590eca86a5e7e32a8824ba04a0d42e9bAlan Viverette    ListView getListView();
426142a54baae3289f734947c6b5375b12eb0fb722Chris Banes}