1919 * adapted from existing ImageGetter code in NoteCommentFragment
2020 */
2121public class WPImageGetter implements Html .ImageGetter {
22- private WeakReference <TextView > mWeakView ;
23- private int mMaxSize ;
22+ private final WeakReference <TextView > mWeakView ;
23+ private final int mMaxSize ;
2424 private ImageLoader mImageLoader ;
2525 private Drawable mLoadingDrawable ;
2626 private Drawable mFailedDrawable ;
@@ -43,18 +43,6 @@ public WPImageGetter(TextView view, int maxSize, ImageLoader imageLoader, Drawab
4343 mFailedDrawable = failedDrawable ;
4444 }
4545
46- public void setImageLoader (ImageLoader imageLoader ) {
47- mImageLoader = imageLoader ;
48- }
49-
50- public void setLoadingDrawable (Drawable loadingDrawable ) {
51- mLoadingDrawable = loadingDrawable ;
52- }
53-
54- public void setFailedDrawable (Drawable failedDrawable ) {
55- mFailedDrawable = failedDrawable ;
56- }
57-
5846 private TextView getView () {
5947 return mWeakView .get ();
6048 }
@@ -80,9 +68,6 @@ public Drawable getDrawable(String source) {
8068 source = PhotonUtils .getPhotonImageUrl (source , mMaxSize , 0 );
8169 }
8270
83- TextView view = getView ();
84- // Drawable loading = view.getContext().getResources().getDrawable(R.drawable.remote_image); FIXME: here
85- // Drawable failed = view.getContext().getResources().getDrawable(R.drawable.remote_failed);
8671 final RemoteDrawable remote = new RemoteDrawable (mLoadingDrawable , mFailedDrawable );
8772
8873 mImageLoader .get (source , new ImageLoader .ImageListener () {
@@ -110,30 +95,29 @@ public void onResponse(ImageLoader.ImageContainer response, boolean isImmediate)
11095 int maxWidth = view .getWidth () - view .getPaddingLeft () - view .getPaddingRight ();
11196 if (mMaxSize > 0 && (maxWidth > mMaxSize || maxWidth == 0 )) {
11297 maxWidth = mMaxSize ;
98+ AppLog .d (T .UTILS , "WPImageGetter maxWidth = mMaxSize" );
11399 }
114100 remote .setRemoteDrawable (drawable , maxWidth );
115101
116102 // image is from cache? don't need to modify view height
117103 if (isImmediate ) {
104+ AppLog .d (T .UTILS , "WPImageGetter isImmediate" );
118105 return ;
119106 }
120107
121108 int newHeight = remote .getBounds ().height ();
122- view .invalidate ();
123- // For ICS
124109 view .setHeight (view .getHeight () + newHeight - oldHeight );
125- // Pre ICS
126- view .setEllipsize (null );
110+ view .invalidate ();
127111 }
128112 }
129113 });
130114 return remote ;
131115 }
132116
133117 private static class RemoteDrawable extends BitmapDrawable {
134- protected Drawable mRemoteDrawable ;
135- protected Drawable mLoadingDrawable ;
136- protected Drawable mFailedDrawable ;
118+ Drawable mRemoteDrawable ;
119+ final Drawable mLoadingDrawable ;
120+ final Drawable mFailedDrawable ;
137121 private boolean mDidFail = false ;
138122
139123 public RemoteDrawable (Drawable loadingDrawable , Drawable failedDrawable ) {
@@ -158,11 +142,6 @@ public void setBounds(int x, int y, int width, int height) {
158142 }
159143 }
160144
161- public void setRemoteDrawable (Drawable remote ) {
162- mRemoteDrawable = remote ;
163- setBounds (0 , 0 , mRemoteDrawable .getIntrinsicWidth (), mRemoteDrawable .getIntrinsicHeight ());
164- }
165-
166145 public void setRemoteDrawable (Drawable remote , int maxWidth ) {
167146 // null sentinel for now
168147 if (remote == null ) {
0 commit comments