diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2014-02-02 14:13:09 +0100 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2014-02-02 14:13:09 +0100 |
commit | 6eaf45940e415ba66ed28b339d63bac9d8623718 (patch) | |
tree | d21a37f42ffca30502843cf19acd0c9469304d54 /libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/widget/TabsLinearLayout.java | |
parent | f916c8f5af5fd46037dd7d4be28155dac67b1634 (diff) | |
download | open-keychain-6eaf45940e415ba66ed28b339d63bac9d8623718.tar.gz open-keychain-6eaf45940e415ba66ed28b339d63bac9d8623718.tar.bz2 open-keychain-6eaf45940e415ba66ed28b339d63bac9d8623718.zip |
Switch from ActionBarSherlock to ActionBarCompat
Diffstat (limited to 'libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/widget/TabsLinearLayout.java')
-rw-r--r-- | libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/widget/TabsLinearLayout.java | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/widget/TabsLinearLayout.java b/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/widget/TabsLinearLayout.java deleted file mode 100644 index 03d09b1f6..000000000 --- a/libraries/ActionBarSherlock/src/com/actionbarsherlock/internal/widget/TabsLinearLayout.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.actionbarsherlock.internal.widget; - -import android.content.Context; -import android.content.res.TypedArray; -import android.util.AttributeSet; -import android.view.View; -import android.widget.LinearLayout; - -public class TabsLinearLayout extends IcsLinearLayout { - private static final int[] R_styleable_LinearLayout = new int[] { - /* 0 */ android.R.attr.measureWithLargestChild, - }; - private static final int LinearLayout_measureWithLargestChild = 0; - - private boolean mUseLargestChild; - - public TabsLinearLayout(Context context, AttributeSet attrs) { - super(context, attrs); - - TypedArray a = context.obtainStyledAttributes(attrs, /*com.android.internal.R.styleable.*/R_styleable_LinearLayout); - mUseLargestChild = a.getBoolean(/*com.android.internal.R.styleable.*/LinearLayout_measureWithLargestChild, false); - - a.recycle(); - } - - /** - * When true, all children with a weight will be considered having - * the minimum size of the largest child. If false, all children are - * measured normally. - * - * @return True to measure children with a weight using the minimum - * size of the largest child, false otherwise. - * - * @attr ref android.R.styleable#LinearLayout_measureWithLargestChild - */ - public boolean isMeasureWithLargestChildEnabled() { - return mUseLargestChild; - } - - /** - * When set to true, all children with a weight will be considered having - * the minimum size of the largest child. If false, all children are - * measured normally. - * - * Disabled by default. - * - * @param enabled True to measure children with a weight using the - * minimum size of the largest child, false otherwise. - * - * @attr ref android.R.styleable#LinearLayout_measureWithLargestChild - */ - public void setMeasureWithLargestChildEnabled(boolean enabled) { - mUseLargestChild = enabled; - } - - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - super.onMeasure(widthMeasureSpec, heightMeasureSpec); - - final int childCount = getChildCount(); - if (childCount <= 2) return; - - final int mode = MeasureSpec.getMode(widthMeasureSpec); - if (mUseLargestChild && mode == MeasureSpec.UNSPECIFIED) { - final int orientation = getOrientation(); - if (orientation == HORIZONTAL) { - useLargestChildHorizontal(); - } - } - } - - private void useLargestChildHorizontal() { - final int childCount = getChildCount(); - - // Find largest child width - int largestChildWidth = 0; - for (int i = 0; i < childCount; i++) { - final View child = getChildAt(i); - largestChildWidth = Math.max(child.getMeasuredWidth(), largestChildWidth); - } - - int totalWidth = 0; - // Re-measure childs - for (int i = 0; i < childCount; i++) { - final View child = getChildAt(i); - - if (child == null || child.getVisibility() == View.GONE) { - continue; - } - - final LinearLayout.LayoutParams lp = - (LinearLayout.LayoutParams) child.getLayoutParams(); - - float childExtra = lp.weight; - if (childExtra > 0) { - child.measure( - MeasureSpec.makeMeasureSpec(largestChildWidth, - MeasureSpec.EXACTLY), - MeasureSpec.makeMeasureSpec(child.getMeasuredHeight(), - MeasureSpec.EXACTLY)); - totalWidth += largestChildWidth; - - } else { - totalWidth += child.getMeasuredWidth(); - } - - totalWidth += lp.leftMargin + lp.rightMargin; - } - - totalWidth += getPaddingLeft() + getPaddingRight(); - setMeasuredDimension(totalWidth, getMeasuredHeight()); - } -} |