diff options
| author | Jim Miller <jaggies@google.com> | 2009-11-12 17:45:07 -0800 |
|---|---|---|
| committer | Jim Miller <jaggies@google.com> | 2009-11-12 18:15:00 -0800 |
| commit | 4811d62d5f07a1ffbf085d5e424e2b54d0e7ebfd (patch) | |
| tree | 2d57566208787f560a2eb996726c6d792d38b4e4 /core/java/com | |
| parent | b602c328c24f82d61038ac1222bd40a3cc7bc900 (diff) | |
| download | frameworks_base-4811d62d5f07a1ffbf085d5e424e2b54d0e7ebfd.zip frameworks_base-4811d62d5f07a1ffbf085d5e424e2b54d0e7ebfd.tar.gz frameworks_base-4811d62d5f07a1ffbf085d5e424e2b54d0e7ebfd.tar.bz2 | |
Fix 2209086: Updated assets and fixed widget dimension calculation.
Added hvga assets for new lock screen widget.
Tested:
LockScreen on wvga and hvga devices.
InCallScreen on wvga and hvga devices.
Diffstat (limited to 'core/java/com')
| -rw-r--r-- | core/java/com/android/internal/widget/SlidingTab.java | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/core/java/com/android/internal/widget/SlidingTab.java b/core/java/com/android/internal/widget/SlidingTab.java index 4a411d7..6ea6460 100644 --- a/core/java/com/android/internal/widget/SlidingTab.java +++ b/core/java/com/android/internal/widget/SlidingTab.java @@ -309,12 +309,30 @@ public class SlidingTab extends ViewGroup { setState(currentState); } + /** + * Ensure all the dependent widgets are measured. + */ + public void measure() { + tab.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), + View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); + text.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), + View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); + } + + /** + * Get the measured tab width. Must be called after {@link Slider#measure()}. + * @return + */ public int getTabWidth() { - return tab.getDrawable().getIntrinsicWidth(); + return tab.getMeasuredWidth(); } + /** + * Get the measured tab width. Must be called after {@link Slider#measure()}. + * @return + */ public int getTabHeight() { - return tab.getDrawable().getIntrinsicHeight(); + return tab.getMeasuredHeight(); } } @@ -360,11 +378,12 @@ public class SlidingTab extends ViewGroup { throw new RuntimeException(LOG_TAG + " cannot have UNSPECIFIED dimensions"); } - final float density = mDensity; - final int leftTabWidth = (int) (density * mLeftSlider.getTabWidth() + 0.5f); - final int rightTabWidth = (int) (density * mRightSlider.getTabWidth() + 0.5f); - final int leftTabHeight = (int) (density * mLeftSlider.getTabHeight() + 0.5f); - final int rightTabHeight = (int) (density * mRightSlider.getTabHeight() + 0.5f); + mLeftSlider.measure(); + mRightSlider.measure(); + final int leftTabWidth = mLeftSlider.getTabWidth(); + final int rightTabWidth = mRightSlider.getTabWidth(); + final int leftTabHeight = mLeftSlider.getTabHeight(); + final int rightTabHeight = mRightSlider.getTabHeight(); final int width; final int height; if (isHorizontal()) { |
