65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package androidx.appcompat.widget;
 | |
| 
 | |
| import android.graphics.Rect;
 | |
| import android.os.Build;
 | |
| import android.util.Log;
 | |
| import android.view.View;
 | |
| import androidx.core.view.ViewCompat;
 | |
| import java.lang.reflect.InvocationTargetException;
 | |
| import java.lang.reflect.Method;
 | |
| 
 | |
| /* loaded from: classes.dex */
 | |
| public class ViewUtils {
 | |
|     static final boolean SDK_LEVEL_SUPPORTS_AUTOSIZE;
 | |
|     private static final String TAG = "ViewUtils";
 | |
|     private static Method sComputeFitSystemWindowsMethod;
 | |
| 
 | |
|     static {
 | |
|         SDK_LEVEL_SUPPORTS_AUTOSIZE = Build.VERSION.SDK_INT >= 27;
 | |
|         try {
 | |
|             Method declaredMethod = View.class.getDeclaredMethod("computeFitSystemWindows", Rect.class, Rect.class);
 | |
|             sComputeFitSystemWindowsMethod = declaredMethod;
 | |
|             if (declaredMethod.isAccessible()) {
 | |
|                 return;
 | |
|             }
 | |
|             sComputeFitSystemWindowsMethod.setAccessible(true);
 | |
|         } catch (NoSuchMethodException unused) {
 | |
|             Log.d(TAG, "Could not find method computeFitSystemWindows. Oh well.");
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     private ViewUtils() {
 | |
|     }
 | |
| 
 | |
|     public static boolean isLayoutRtl(View view) {
 | |
|         return ViewCompat.getLayoutDirection(view) == 1;
 | |
|     }
 | |
| 
 | |
|     public static void computeFitSystemWindows(View view, Rect rect, Rect rect2) {
 | |
|         Method method = sComputeFitSystemWindowsMethod;
 | |
|         if (method != null) {
 | |
|             try {
 | |
|                 method.invoke(view, rect, rect2);
 | |
|             } catch (Exception e) {
 | |
|                 Log.d(TAG, "Could not invoke computeFitSystemWindows", e);
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     public static void makeOptionalFitsSystemWindows(View view) {
 | |
|         try {
 | |
|             Method method = view.getClass().getMethod("makeOptionalFitsSystemWindows", new Class[0]);
 | |
|             if (!method.isAccessible()) {
 | |
|                 method.setAccessible(true);
 | |
|             }
 | |
|             method.invoke(view, new Object[0]);
 | |
|         } catch (IllegalAccessException e) {
 | |
|             Log.d(TAG, "Could not invoke makeOptionalFitsSystemWindows", e);
 | |
|         } catch (NoSuchMethodException unused) {
 | |
|             Log.d(TAG, "Could not find method makeOptionalFitsSystemWindows. Oh well...");
 | |
|         } catch (InvocationTargetException e2) {
 | |
|             Log.d(TAG, "Could not invoke makeOptionalFitsSystemWindows", e2);
 | |
|         }
 | |
|     }
 | |
| }
 |