Skip to content

Commit 272d167

Browse files
committed
Use actual width and height instead of measuredWidth and measuredHeight
Fixes square#552
1 parent 16b6c22 commit 272d167

File tree

4 files changed

+13
-13
lines changed

4 files changed

+13
-13
lines changed

picasso/src/main/java/com/squareup/picasso/DeferredRequestCreator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ class DeferredRequestCreator implements ViewTreeObserver.OnPreDrawListener {
4747
return true;
4848
}
4949

50-
int width = target.getMeasuredWidth();
51-
int height = target.getMeasuredHeight();
50+
int width = target.getWidth();
51+
int height = target.getHeight();
5252

5353
if (width <= 0 || height <= 0) {
5454
return true;

picasso/src/main/java/com/squareup/picasso/RequestCreator.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ public RequestCreator error(Drawable errorDrawable) {
157157

158158
/**
159159
* Attempt to resize the image to fit exactly into the target {@link ImageView}'s bounds. This
160-
* will result in delayed execution of the request until the {@link ImageView} has been measured.
160+
* will result in delayed execution of the request until the {@link ImageView} has been laid out.
161161
* <p>
162162
* <em>Note:</em> This method works only when your target is an {@link ImageView}.
163163
*/
@@ -489,14 +489,14 @@ public void into(ImageView target, Callback callback) {
489489
if (data.hasSize()) {
490490
throw new IllegalStateException("Fit cannot be used with resize.");
491491
}
492-
int measuredWidth = target.getMeasuredWidth();
493-
int measuredHeight = target.getMeasuredHeight();
494-
if (measuredWidth == 0 || measuredHeight == 0) {
492+
int width = target.getWidth();
493+
int height = target.getHeight();
494+
if (width == 0 || height == 0) {
495495
setPlaceholder(target, placeholderResId, placeholderDrawable);
496496
picasso.defer(target, new DeferredRequestCreator(this, target, callback));
497497
return;
498498
}
499-
data.resize(measuredWidth, measuredHeight);
499+
data.resize(width, height);
500500
}
501501

502502
Request request = createRequest(started);

picasso/src/test/java/com/squareup/picasso/DeferredRequestCreatorTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,8 @@ public class DeferredRequestCreatorTest {
101101

102102
@Test public void waitsForAnotherLayoutIfWidthOrHeightIsZero() throws Exception {
103103
ImageView target = mockFitImageViewTarget(true);
104-
when(target.getMeasuredWidth()).thenReturn(0);
105-
when(target.getMeasuredHeight()).thenReturn(0);
104+
when(target.getWidth()).thenReturn(0);
105+
when(target.getHeight()).thenReturn(0);
106106
RequestCreator creator = mock(RequestCreator.class);
107107
DeferredRequestCreator request = new DeferredRequestCreator(creator, target);
108108
request.onPreDraw();
@@ -134,8 +134,8 @@ public class DeferredRequestCreatorTest {
134134
RequestCreator creator = new RequestCreator(picasso, URI_1, 0);
135135

136136
ImageView target = mockFitImageViewTarget(true);
137-
when(target.getMeasuredWidth()).thenReturn(100);
138-
when(target.getMeasuredHeight()).thenReturn(100);
137+
when(target.getWidth()).thenReturn(100);
138+
when(target.getHeight()).thenReturn(100);
139139

140140
ViewTreeObserver observer = target.getViewTreeObserver();
141141

picasso/src/test/java/com/squareup/picasso/RequestCreatorTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -300,8 +300,8 @@ public void intoImageViewWithFitAndNoDimensionsQueuesDeferredImageViewRequest()
300300
@Test
301301
public void intoImageViewWithFitAndDimensionsQueuesImageViewRequest() throws Exception {
302302
ImageView target = mockFitImageViewTarget(true);
303-
when(target.getMeasuredWidth()).thenReturn(100);
304-
when(target.getMeasuredHeight()).thenReturn(100);
303+
when(target.getWidth()).thenReturn(100);
304+
when(target.getHeight()).thenReturn(100);
305305
new RequestCreator(picasso, URI_1, 0).fit().into(target);
306306
verify(picasso).enqueueAndSubmit(actionCaptor.capture());
307307
assertThat(actionCaptor.getValue()).isInstanceOf(ImageViewAction.class);

0 commit comments

Comments
 (0)