1503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato/*
2503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * Copyright (C) 2008 The Android Open Source Project
3503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato *
4503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * Licensed under the Apache License, Version 2.0 (the "License");
5503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * you may not use this file except in compliance with the License.
6503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * You may obtain a copy of the License at
7503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato *
8503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato *      http://www.apache.org/licenses/LICENSE-2.0
9503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato *
10503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * Unless required by applicable law or agreed to in writing, software
11503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * distributed under the License is distributed on an "AS IS" BASIS,
12503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * See the License for the specific language governing permissions and
14503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato * limitations under the License.
15503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato */
16503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
1779de0c550037a5328bbc7f4fddaf02f192a5c283Joe Onoratopackage com.android.systemui.statusbar;
18503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
19503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.content.Context;
20503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.util.AttributeSet;
21503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.view.Display;
22503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.view.KeyEvent;
23503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.view.MotionEvent;
24503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.view.WindowManager;
25503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.widget.LinearLayout;
26503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratoimport android.util.Slog;
27503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
28503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
29503007dd023668b1e45de948d3673e594d7f5a82Joe Onoratopublic class ExpandedView extends LinearLayout {
301c95ecb47a19e18d0c51f3fd2931d13e9bd845b9Joe Onorato    StatusBarService mService;
31503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    int mPrevHeight = -1;
32503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
33503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    public ExpandedView(Context context, AttributeSet attrs) {
34503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato        super(context, attrs);
35503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    }
36503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
37503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    @Override
38503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    protected void onFinishInflate() {
39503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato        super.onFinishInflate();
40503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    }
41503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
42503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    /** We want to shrink down to 0, and ignore the background. */
43503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    @Override
44503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    public int getSuggestedMinimumHeight() {
45503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato        return 0;
46503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    }
47503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato
48503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato    @Override
49503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato     protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
50503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato         super.onLayout(changed, left, top, right, bottom);
51503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato         int height = bottom - top;
52503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato         if (height != mPrevHeight) {
531c95ecb47a19e18d0c51f3fd2931d13e9bd845b9Joe Onorato             //Slog.d(StatusBarService.TAG, "height changed old=" + mPrevHeight
54503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato             //     + " new=" + height);
55503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato             mPrevHeight = height;
561c95ecb47a19e18d0c51f3fd2931d13e9bd845b9Joe Onorato             mService.updateExpandedViewPos(StatusBarService.EXPANDED_LEAVE_ALONE);
57503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato         }
58503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato     }
59503007dd023668b1e45de948d3673e594d7f5a82Joe Onorato}
60