| | | |
Offset 1, 38 lines modified | Offset 1, 28 lines modified |
| |
1 | package·androidx.core.view; | 1 | package·androidx.core.view; |
| |
2 | import·androidx.core.util.ObjectsCompat; | 2 | import·androidx.core.util.ObjectsCompat; |
3 | import·android.graphics.Rect; | |
4 | import·androidx.core.util.Preconditions; | 3 | import·androidx.core.util.Preconditions; |
5 | import·android.view.View; | |
6 | import·androidx.core.graphics.Insets; | 4 | import·androidx.core.graphics.Insets; |
7 | import·android.view.WindowInsets; | |
8 | import·android.os.Build$VERSION; | 5 | import·android.os.Build$VERSION; |
| 6 | import·android.view.WindowInsets; |
| |
9 | public·class·WindowInsetsCompat | 7 | public·class·WindowInsetsCompat |
10 | { | 8 | { |
11 | ····public·static·final·WindowInsetsCompat·CONSUMED; | 9 | ····public·static·final·WindowInsetsCompat·CONSUMED; |
12 | ····private·final·WindowInsetsCompat$Impl·mImpl; | 10 | ····private·final·WindowInsetsCompat$Impl·mImpl; |
13 | ···· | 11 | ···· |
14 | ····static·{ | 12 | ····static·{ |
| 13 | ········CONSUMED·=·new·WindowInsetsCompat$Builder().build().consumeDisplayCutout().consumeStableInsets().consumeSystemWindowInsets(); |
15 | ········if·(Build$VERSION.SDK_INT·>=·30)·{ | |
16 | ············CONSUMED·=·WindowInsetsCompat$Impl30.CONSUMED; | |
17 | ········} | |
18 | ········else·{ | |
19 | ············CONSUMED·=·WindowInsetsCompat$Impl.CONSUMED; | |
20 | ········} | |
21 | ····} | 14 | ····} |
22 | ···· | 15 | ···· |
23 | ····private·WindowInsetsCompat(final·WindowInsets·windowInsets)·{ | 16 | ····private·WindowInsetsCompat(final·WindowInsets·windowInsets)·{ |
24 | ········final·int·sdk_INT·=·Build$VERSION.SDK_INT; | 17 | ········final·int·sdk_INT·=·Build$VERSION.SDK_INT; |
25 | ········if·(sdk_INT·>=·30)·{ | 18 | ········if·(sdk_INT·>=·29)·{ |
26 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl30(this,·windowInsets); | |
27 | ········} | |
28 | ········else·if·(sdk_INT·>=·29)·{ | |
29 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl29(this,·windowInsets); | 19 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl29(this,·windowInsets); |
30 | ········} | 20 | ········} |
31 | ········else·if·(sdk_INT·>=·28)·{ | 21 | ········else·if·(sdk_INT·>=·28)·{ |
32 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl28(this,·windowInsets); | 22 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl28(this,·windowInsets); |
33 | ········} | 23 | ········} |
34 | ········else·if·(sdk_INT·>=·21)·{ | 24 | ········else·if·(sdk_INT·>=·21)·{ |
35 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl21(this,·windowInsets); | 25 | ············this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl21(this,·windowInsets); |
Offset 45, 33 lines modified | Offset 35, 29 lines modified |
45 | ········} | 35 | ········} |
46 | ····} | 36 | ····} |
47 | ···· | 37 | ···· |
48 | ····public·WindowInsetsCompat(final·WindowInsetsCompat·windowInsetsCompat)·{ | 38 | ····public·WindowInsetsCompat(final·WindowInsetsCompat·windowInsetsCompat)·{ |
49 | ········final·int·sdk_INT·=·Build$VERSION.SDK_INT; | 39 | ········final·int·sdk_INT·=·Build$VERSION.SDK_INT; |
50 | ········if·(windowInsetsCompat·!=·null)·{ | 40 | ········if·(windowInsetsCompat·!=·null)·{ |
51 | ············final·WindowInsetsCompat$Impl·mImpl·=·windowInsetsCompat.mImpl; | 41 | ············final·WindowInsetsCompat$Impl·mImpl·=·windowInsetsCompat.mImpl; |
52 | ············if·(sdk_INT·>=·30·&&·mImpl·instanceof·WindowInsetsCompat$Impl30)·{ | |
53 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl30(this,·(WindowInsetsCompat$Impl30)mImpl); | |
54 | ············} | |
55 | ············else·if·(sdk_INT·>=·29·&&·mImpl·instanceof·WindowInsetsCompat$Impl29)·{ | 42 | ············if·(sdk_INT·>=·29·&&·mImpl·instanceof·WindowInsetsCompat$Impl29)·{ |
56 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl29(this,·(WindowInsetsCompat$Impl29)mImpl); | 43 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl29(this,·(WindowInsetsCompat$Impl29)mImpl); |
57 | ············} | 44 | ············} |
58 | ············else·if·(sdk_INT·>=·28·&&·mImpl·instanceof·WindowInsetsCompat$Impl28)·{ | 45 | ············else·if·(sdk_INT·>=·28·&&·mImpl·instanceof·WindowInsetsCompat$Impl28)·{ |
59 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl28(this,·(WindowInsetsCompat$Impl28)mImpl); | 46 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl28(this,·(WindowInsetsCompat$Impl28)mImpl); |
60 | ············} | 47 | ············} |
61 | ············else·if·(sdk_INT·>=·21·&&·mImpl·instanceof·WindowInsetsCompat$Impl21)·{ | 48 | ············else·if·(sdk_INT·>=·21·&&·mImpl·instanceof·WindowInsetsCompat$Impl21)·{ |
62 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl21(this,·(WindowInsetsCompat$Impl21)mImpl); | 49 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl21(this,·(WindowInsetsCompat$Impl21)mImpl); |
63 | ············} | 50 | ············} |
64 | ············else·if·(sdk_INT·>=·20·&&·mImpl·instanceof·WindowInsetsCompat$Impl20)·{ | 51 | ············else·if·(sdk_INT·>=·20·&&·mImpl·instanceof·WindowInsetsCompat$Impl20)·{ |
65 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl20(this,·(WindowInsetsCompat$Impl20)mImpl); | 52 | ················this.mImpl·=·(WindowInsetsCompat$Impl)new·WindowInsetsCompat$Impl20(this,·(WindowInsetsCompat$Impl20)mImpl); |
66 | ············} | 53 | ············} |
67 | ············else·{ | 54 | ············else·{ |
68 | ················this.mImpl·=·new·WindowInsetsCompat$Impl(this); | 55 | ················this.mImpl·=·new·WindowInsetsCompat$Impl(this); |
69 | ············} | 56 | ············} |
70 | ············((WindowInsetsCompat$Impl)mImpl).copyWindowDataInto(this); | |
71 | ········} | 57 | ········} |
72 | ········else·{ | 58 | ········else·{ |
73 | ············this.mImpl·=·new·WindowInsetsCompat$Impl(this); | 59 | ············this.mImpl·=·new·WindowInsetsCompat$Impl(this); |
74 | ········} | 60 | ········} |
75 | ····} | 61 | ····} |
76 | ···· | 62 | ···· |
77 | ····static·Insets·insetInsets(final·Insets·insets,·final·int·n,·final·int·n2,·final·int·n3,·final·int·n4)·{ | 63 | ····static·Insets·insetInsets(final·Insets·insets,·final·int·n,·final·int·n2,·final·int·n3,·final·int·n4)·{ |
Offset 81, 65 lines modified | Offset 67, 54 lines modified |
81 | ········final·int·max4·=·Math.max(0,·insets.bottom·-·n4); | 67 | ········final·int·max4·=·Math.max(0,·insets.bottom·-·n4); |
82 | ········if·(max·==·n·&&·max2·==·n2·&&·max3·==·n3·&&·max4·==·n4)·{ | 68 | ········if·(max·==·n·&&·max2·==·n2·&&·max3·==·n3·&&·max4·==·n4)·{ |
83 | ············return·insets; | 69 | ············return·insets; |
84 | ········} | 70 | ········} |
85 | ········return·Insets.of(max,·max2,·max3,·max4); | 71 | ········return·Insets.of(max,·max2,·max3,·max4); |
86 | ····} | 72 | ····} |
87 | ···· | 73 | ···· |
88 | ····public·static·WindowInsetsCompat·toWindowInsetsCompat(final·WindowInsets·windowInsets)·{ | 74 | ····public·static·WindowInsetsCompat·toWindowInsetsCompat(WindowInsets·windowInsets)·{ |
89 | ········return·toWindowInsetsCompat(windowInsets,·null); | |
90 | ····} | |
91 | ···· | |
92 | ····public·static·WindowInsetsCompat·toWindowInsetsCompat(WindowInsets·windowInsets,·final·View·view)·{ | |
93 | ········Preconditions.checkNotNull((Object)windowInsets); | 75 | ········Preconditions.checkNotNull((Object)windowInsets); |
94 | ········windowInsets·=·windowInsets; | 76 | ········windowInsets·=·windowInsets; |
95 | ········final·WindowInsetsCompat·windowInsetsCompat·=·new·WindowInsetsCompat(windowInsets); | |
96 | ········if·(view·!=·null·&&·view.isAttachedToWindow())·{ | |
97 | ············windowInsetsCompat.setRootWindowInsets(ViewCompat.getRootWindowInsets(view)); | |
98 | ············windowInsetsCompat.copyRootViewBounds(view.getRootView()); | |
99 | ········} | |
100 | ········return·windowInsetsCompat; | 77 | ········return·new·WindowInsetsCompat(windowInsets); |
101 | ····} | 78 | ····} |
102 | ···· | 79 | ···· |
103 | ····public·WindowInsetsCompat·consumeDisplayCutout()·{ | 80 | ····public·WindowInsetsCompat·consumeDisplayCutout()·{ |
104 | ········return·this.mImpl.consumeDisplayCutout(); | 81 | ········return·this.mImpl.consumeDisplayCutout(); |
105 | ····} | 82 | ····} |
106 | ···· | 83 | ···· |
107 | ····public·WindowInsetsCompat·consumeStableInsets()·{ | 84 | ····public·WindowInsetsCompat·consumeStableInsets()·{ |
108 | ········return·this.mImpl.consumeStableInsets(); | 85 | ········return·this.mImpl.consumeStableInsets(); |
109 | ····} | 86 | ····} |
110 | ···· | 87 | ···· |
111 | ····public·WindowInsetsCompat·consumeSystemWindowInsets()·{ | 88 | ····public·WindowInsetsCompat·consumeSystemWindowInsets()·{ |
112 | ········return·this.mImpl.consumeSystemWindowInsets(); | 89 | ········return·this.mImpl.consumeSystemWindowInsets(); |
113 | ····} | 90 | ····} |
114 | ···· | 91 | ···· |
115 | ····void·copyRootViewBounds(final·View·view)·{ | |
116 | ········final·Rect·rect·=·new·Rect(); | |
117 | ········view.getWindowVisibleDisplayFrame(rect); | |
118 | ········this.setRootViewData(rect,·view.getHeight()); | |
119 | ····} | |
120 | ···· | |
121 | ····public·boolean·equals(final·Object·o)·{ | 92 | ····public·boolean·equals(final·Object·o)·{ |
122 | ········return·this·==·o·||·(o·instanceof·WindowInsetsCompat·&&·ObjectsCompat.equals((Object)this.mImpl,·(Object)((WindowInsetsCompat)o).mImpl)); | 93 | ········return·this·==·o·||·(o·instanceof·WindowInsetsCompat·&&·ObjectsCompat.equals((Object)this.mImpl,·(Object)((WindowInsetsCompat)o).mImpl)); |
123 | ····} | 94 | ····} |
124 | ···· | 95 | ···· |
125 | ····public·int·getSystemWindowInsetBottom()·{ | 96 | ····public·int·getSystemWindowInsetBottom()·{ |
126 | ········return·this.mImpl.getSystemWindowInsets().bottom; | 97 | ········return·this.getSystemWindowInsets().bottom; |
127 | ····} | 98 | ····} |
128 | ···· | 99 | ···· |
129 | ····public·int·getSystemWindowInsetLeft()·{ | 100 | ····public·int·getSystemWindowInsetLeft()·{ |
130 | ········return·this.mImpl.getSystemWindowInsets().left; | 101 | ········return·this.getSystemWindowInsets().left; |
131 | ····} | 102 | ····} |
132 | ···· | 103 | ···· |
133 | ····public·int·getSystemWindowInsetRight()·{ | 104 | ····public·int·getSystemWindowInsetRight()·{ |
134 | ········return·this.mImpl.getSystemWindowInsets().right; | 105 | ········return·this.getSystemWindowInsets().right; |
135 | ····} | 106 | ····} |
136 | ···· | 107 | ···· |
137 | ····public·int·getSystemWindowInsetTop()·{ | 108 | ····public·int·getSystemWindowInsetTop()·{ |
| 109 | ········return·this.getSystemWindowInsets().top; |
| 110 | ····} |
| 111 | ···· |
| 112 | ····public·Insets·getSystemWindowInsets()·{ |
138 | ········return·this.mImpl.getSystemWindowInsets().top; | 113 | ········return·this.mImpl.getSystemWindowInsets(); |
139 | ····} | 114 | ····} |
140 | ···· | 115 | ···· |
141 | ····public·int·hashCode()·{ | 116 | ····public·int·hashCode()·{ |
142 | ········final·WindowInsetsCompat$Impl·mImpl·=·this.mImpl; | 117 | ········final·WindowInsetsCompat$Impl·mImpl·=·this.mImpl; |
143 | ········int·hashCode; | 118 | ········int·hashCode; |
144 | ········if·(mImpl·==·null)·{ | 119 | ········if·(mImpl·==·null)·{ |
145 | ············hashCode·=·0; | 120 | ············hashCode·=·0; |
Offset 156, 22 lines modified | Offset 131, 14 lines modified |
156 | ···· | 131 | ···· |
157 | ····public·WindowInsetsCompat·replaceSystemWindowInsets(final·int·n,·final·int·n2,·final·int·n3,·final·int·n4)·{ | 132 | ····public·WindowInsetsCompat·replaceSystemWindowInsets(final·int·n,·final·int·n2,·final·int·n3,·final·int·n4)·{ |
158 | ········final·WindowInsetsCompat$Builder·windowInsetsCompat$Builder·=·new·WindowInsetsCompat$Builder(this); | 133 | ········final·WindowInsetsCompat$Builder·windowInsetsCompat$Builder·=·new·WindowInsetsCompat$Builder(this); |
159 | ········windowInsetsCompat$Builder.setSystemWindowInsets(Insets.of(n,·n2,·n3,·n4)); | 134 | ········windowInsetsCompat$Builder.setSystemWindowInsets(Insets.of(n,·n2,·n3,·n4)); |
160 | ········return·windowInsetsCompat$Builder.build(); | 135 | ········return·windowInsetsCompat$Builder.build(); |
161 | ····} | 136 | ····} |
162 | ···· | 137 | ···· |
163 | ····void·setRootViewData(final·Rect·rect,·final·int·n)·{ | |
164 | ········this.mImpl.setRootViewData(rect,·n); | |
165 | ····} | |
166 | ···· | |
167 | ····void·setRootWindowInsets(final·WindowInsetsCompat·rootWindowInsets)·{ | |
168 | ········this.mImpl.setRootWindowInsets(rootWindowInsets); | |
169 | ····} | |
170 | ···· | |
171 | ····public·WindowInsets·toWindowInsets()·{ | 138 | ····public·WindowInsets·toWindowInsets()·{ |
172 | ········final·WindowInsetsCompat$Impl·mImpl·=·this.mImpl; | 139 | ········final·WindowInsetsCompat$Impl·mImpl·=·this.mImpl; |
173 | ········WindowInsets·mPlatformInsets; | 140 | ········WindowInsets·mPlatformInsets; |
174 | ········if·(mImpl·instanceof·WindowInsetsCompat$Impl20)·{ | 141 | ········if·(mImpl·instanceof·WindowInsetsCompat$Impl20)·{ |
175 | ············mPlatformInsets·=·((WindowInsetsCompat$Impl20)mImpl).mPlatformInsets; | 142 | ············mPlatformInsets·=·((WindowInsetsCompat$Impl20)mImpl).mPlatformInsets; |
176 | ········} | 143 | ········} |
177 | ········else·{ | 144 | ········else·{ |