1ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes/* 2ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * Copyright (C) 2014 The Android Open Source Project 3ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * 4ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * Licensed under the Apache License, Version 2.0 (the "License"); 5ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * you may not use this file except in compliance with the License. 6ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * You may obtain a copy of the License at 7ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * 8ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * http://www.apache.org/licenses/LICENSE-2.0 9ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * 10ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * Unless required by applicable law or agreed to in writing, software 11ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * distributed under the License is distributed on an "AS IS" BASIS, 12ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * See the License for the specific language governing permissions and 14ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * limitations under the License. 15ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes */ 16ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 17ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikaspackage androidx.appcompat.widget; 18ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 19ac5fe7c617c66850fff75a9fce9979c6e5674b0fAurimas Liutikasimport static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP; 208e10080c914d1ad0784394fa3026b85535535847Aurimas Liutikas 21ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banesimport android.content.Context; 22ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banesimport android.graphics.Rect; 23ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banesimport android.util.AttributeSet; 24ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banesimport android.widget.LinearLayout; 25ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 263de8a4e8305507475d7890205184946a25cf45e7Aurimas Liutikasimport androidx.annotation.RestrictTo; 273de8a4e8305507475d7890205184946a25cf45e7Aurimas Liutikas 28ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes/** 29ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes * @hide 30ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes */ 318e10080c914d1ad0784394fa3026b85535535847Aurimas Liutikas@RestrictTo(LIBRARY_GROUP) 32ea4f700ac38424954c56df5138ff794def50b019Chris Banespublic class FitWindowsLinearLayout extends LinearLayout implements FitWindowsViewGroup { 33ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 34ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes private OnFitSystemWindowsListener mListener; 35ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 36ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes public FitWindowsLinearLayout(Context context) { 37ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes super(context); 38ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes } 39ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 40ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes public FitWindowsLinearLayout(Context context, AttributeSet attrs) { 41ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes super(context, attrs); 42ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes } 43ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 44dc8e099ed130434c0238f558277c5bcb6a533121Aurimas Liutikas @Override 45ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes public void setOnFitSystemWindowsListener(OnFitSystemWindowsListener listener) { 46ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes mListener = listener; 47ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes } 48ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes 49ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes @Override 50ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes protected boolean fitSystemWindows(Rect insets) { 51ea4f700ac38424954c56df5138ff794def50b019Chris Banes if (mListener != null) { 52ea4f700ac38424954c56df5138ff794def50b019Chris Banes mListener.onFitSystemWindows(insets); 53ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes } 54ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes return super.fitSystemWindows(insets); 55ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes } 56ec3f49d21a507835c1f50ce5600000b587a2af08Chris Banes} 57