Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9b34d45c authored by Romain Guy's avatar Romain Guy
Browse files

Correctly apply alpha on TextView.

Bug #2969691

Change-Id: Ied46e9a38718cb37df10f9dc79b48fbc3a8bd237
parent 8eb1bfe0
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -58,7 +58,6 @@ import android.util.PoolableManager;
import android.util.Pools;
import android.util.SparseArray;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.MeasureSpec;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityEventSource;
import android.view.accessibility.AccessibilityManager;
@@ -5251,6 +5250,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility
     */
    public void setAlpha(float alpha) {
        mAlpha = alpha;
        onSetAlpha((int) (alpha * 255));
        invalidate();
    }

@@ -5536,15 +5536,12 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility
                    final Rect r = mAttachInfo.mTmpInvalRect;
                    int minLeft;
                    int maxRight;
                    int xLoc;
                    if (offset < 0) {
                        minLeft = mLeft + offset;
                        maxRight = mRight;
                        xLoc = offset;
                    } else {
                        minLeft = mLeft;
                        maxRight = mRight + offset;
                        xLoc = 0;
                    }
                    r.set(0, 0, maxRight - minLeft, mBottom - mTop);
                    p.invalidateChild(this, r);
+2 −23
Original line number Diff line number Diff line
@@ -35,7 +35,6 @@ import android.util.Config;
import android.util.EventLog;
import android.util.Log;
import android.util.SparseArray;
import android.view.ViewGroup.LayoutParams;
import android.view.accessibility.AccessibilityEvent;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
@@ -43,7 +42,6 @@ import android.view.animation.LayoutAnimationController;
import android.view.animation.Transformation;

import java.util.ArrayList;
import java.util.Arrays;

/**
 * <p>
@@ -1970,6 +1968,7 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
            }
        } else if ((child.mPrivateFlags & ALPHA_SET) == ALPHA_SET) {
            child.onSetAlpha(255);
            child.mPrivateFlags &= ~ALPHA_SET;
        }

        if ((flags & FLAG_CLIP_CHILDREN) == FLAG_CLIP_CHILDREN) {
@@ -4190,18 +4189,10 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
            return mTargets.get(id);
        }

        public int indexOfId(int id) {
            return mTargets.indexOfKey(id);
        }

        public int indexOfTarget(View target) {
            return mTargets.indexOfValue(target);
        }

        public int idAt(int index) {
            return mTargets.keyAt(index);
        }

        public View targetAt(int index) {
            return mTargets.valueAt(index);
        }
@@ -4224,17 +4215,6 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
            return null;
        }

        public boolean hasTarget(View target) {
            final TargetInfo[] unique = mUniqueTargets;
            final int uniqueCount = mUniqueTargetCount;
            for (int i = 0; i < uniqueCount; i++) {
                if (unique[i].view == target) {
                    return true;
                }
            }
            return false;
        }

        public boolean isEmpty() {
            return mUniqueTargetCount == 0;
        }
@@ -4384,11 +4364,10 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
                        (newActionIndex << MotionEvent.ACTION_POINTER_INDEX_SHIFT);
            }

            MotionEvent result = MotionEvent.obtain(downTime, ev.getEventTime(),
            return MotionEvent.obtain(downTime, ev.getEventTime(),
                    action, pointerCount, mPointerIds, mPointerCoords, ev.getMetaState(),
                    ev.getXPrecision(), ev.getYPrecision(), ev.getDeviceId(), ev.getEdgeFlags(),
                    ev.getSource());
            return result;
        }

        static class TargetInfo {