15135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten/* 25135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * Copyright 2018 The Android Open Source Project 35135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * 45135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * Licensed under the Apache License, Version 2.0 (the "License"); 55135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * you may not use this file except in compliance with the License. 65135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * You may obtain a copy of the License at 75135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * 85135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * http://www.apache.org/licenses/LICENSE-2.0 95135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * 105135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * Unless required by applicable law or agreed to in writing, software 115135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * distributed under the License is distributed on an "AS IS" BASIS, 125135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * See the License for the specific language governing permissions and 145135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten * limitations under the License. 155135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten */ 165135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 175135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenpackage com.android.widget; 185135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 195135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenimport android.media.update.ViewGroupProvider; 205135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenimport android.util.AttributeSet; 215135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenimport android.view.MotionEvent; 225135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenimport android.view.View; 235135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenimport android.view.ViewGroup; 245135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 255135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkerstenpublic abstract class ViewGroupImpl implements ViewGroupProvider { 265135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten private final ViewGroupProvider mSuperProvider; 275135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 285135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public ViewGroupImpl(ViewGroup instance, 295135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten ViewGroupProvider superProvider, ViewGroupProvider privateProvider) { 305135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider = superProvider; 315135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 325135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 335135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 345135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void onAttachedToWindow_impl() { 355135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.onAttachedToWindow_impl(); 365135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 375135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 385135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 395135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void onDetachedFromWindow_impl() { 405135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.onDetachedFromWindow_impl(); 415135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 425135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 435135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 445135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public CharSequence getAccessibilityClassName_impl() { 455135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.getAccessibilityClassName_impl(); 465135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 475135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 485135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 495135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public boolean onTouchEvent_impl(MotionEvent ev) { 505135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.onTouchEvent_impl(ev); 515135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 525135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 535135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 545135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public boolean onTrackballEvent_impl(MotionEvent ev) { 555135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.onTrackballEvent_impl(ev); 565135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 575135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 585135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 595135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void onFinishInflate_impl() { 605135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.onFinishInflate_impl(); 615135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 625135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 635135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 645135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void setEnabled_impl(boolean enabled) { 655135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.setEnabled_impl(enabled); 665135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 675135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 685135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 695135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void onVisibilityAggregated_impl(boolean isVisible) { 705135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.onVisibilityAggregated_impl(isVisible); 715135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 725135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 735135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 745135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void onLayout_impl(boolean changed, int left, int top, int right, int bottom) { 755135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.onLayout_impl(changed, left, top, right, bottom); 765135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 775135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 785135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 795135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void onMeasure_impl(int widthMeasureSpec, int heightMeasureSpec) { 805135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.onMeasure_impl(widthMeasureSpec, heightMeasureSpec); 815135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 825135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 835135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 845135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public int getSuggestedMinimumWidth_impl() { 855135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.getSuggestedMinimumWidth_impl(); 865135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 875135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 885135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 895135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public int getSuggestedMinimumHeight_impl() { 905135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.getSuggestedMinimumHeight_impl(); 915135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 925135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 935135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 945135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void setMeasuredDimension_impl(int measuredWidth, int measuredHeight) { 955135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.setMeasuredDimension_impl(measuredWidth, measuredHeight); 965135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 975135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 985135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 992d9c21635def5c3f681c319febb54e6753574d12Insun Kang public boolean dispatchTouchEvent_impl(MotionEvent ev) { 1002d9c21635def5c3f681c319febb54e6753574d12Insun Kang return mSuperProvider.dispatchTouchEvent_impl(ev); 1012d9c21635def5c3f681c319febb54e6753574d12Insun Kang } 1022d9c21635def5c3f681c319febb54e6753574d12Insun Kang 1032d9c21635def5c3f681c319febb54e6753574d12Insun Kang @Override 1045135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public boolean checkLayoutParams_impl(ViewGroup.LayoutParams p) { 1055135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.checkLayoutParams_impl(p); 1065135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 1075135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 1085135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 1095135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public ViewGroup.LayoutParams generateDefaultLayoutParams_impl() { 1105135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.generateDefaultLayoutParams_impl(); 1115135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 1125135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 1135135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 1145135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public ViewGroup.LayoutParams generateLayoutParams_impl(AttributeSet attrs) { 1155135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.generateLayoutParams_impl(attrs); 1165135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 1175135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 1185135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 1195135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public ViewGroup.LayoutParams generateLayoutParams_impl(ViewGroup.LayoutParams lp) { 1205135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.generateLayoutParams_impl(lp); 1215135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 1225135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 1235135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 1245135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public boolean shouldDelayChildPressedState_impl() { 1255135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten return mSuperProvider.shouldDelayChildPressedState_impl(); 1265135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 1275135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten 1285135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten @Override 1295135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten public void measureChildWithMargins_impl(View child, 1305135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten int parentWidthMeasureSpec, int widthUsed, int parentHeightMeasureSpec, int heightUsed) { 1315135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten mSuperProvider.measureChildWithMargins_impl(child, 1325135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten parentWidthMeasureSpec, widthUsed, parentHeightMeasureSpec, heightUsed); 1335135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten } 1345135ac1345395dc5c2974f8e735dfb4eb2706d02Christofer Åkersten} 135