Files
Lawnchair/src/com/android/launcher3/DrawableStateProxyView.java
T
Cristina Stancu 476493bcc3 Get the view to be used as qsb bar from the launcher directly.
This will allow more control over the qsb visuals and behaviour in GEL.
Depends on ag/339203

Future changes:
- revert ag/344333 since we won't need the normal qsb to support hotword
  anymore
- Dragging icons over the Drop target bar (to remove/uninstall them or
  get App info) doesn't currently work in GEL. There might be future
  changes needed to fix that.

Change-Id: Ic498f0abee5ad99ef1644ff94f174b61f8e1f5f0
2013-08-22 11:41:11 +01:00

72 lines
2.0 KiB
Java

/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.launcher3;
import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.widget.LinearLayout;
import com.android.launcher3.R;
public class DrawableStateProxyView extends LinearLayout {
private View mView;
private int mViewId;
public DrawableStateProxyView(Context context) {
this(context, null);
}
public DrawableStateProxyView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public DrawableStateProxyView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.DrawableStateProxyView,
defStyle, 0);
mViewId = a.getResourceId(R.styleable.DrawableStateProxyView_sourceViewId, -1);
a.recycle();
setFocusable(false);
}
@Override
protected void drawableStateChanged() {
super.drawableStateChanged();
if (mView == null) {
View parent = (View) getParent();
mView = parent.findViewById(mViewId);
}
if (mView != null) {
mView.setPressed(isPressed());
mView.setHovered(isHovered());
}
}
@Override
public boolean onHoverEvent(MotionEvent event) {
return false;
}
}