{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/fresco/issues/908","labels_url":"https://api.github.com/repos/facebook/fresco/issues/908/labels{/name}","comments_url":"https://api.github.com/repos/facebook/fresco/issues/908/comments","events_url":"https://api.github.com/repos/facebook/fresco/issues/908/events","html_url":"https://github.com/facebook/fresco/issues/908","id":126347131,"number":908,"title":"Use current image as placeholder for the next image, part 2","user":{"login":"ealymbaev","id":377809,"avatar_url":"https://avatars.githubusercontent.com/u/377809?v=3","gravatar_id":"","url":"https://api.github.com/users/ealymbaev","html_url":"https://github.com/ealymbaev","followers_url":"https://api.github.com/users/ealymbaev/followers","following_url":"https://api.github.com/users/ealymbaev/following{/other_user}","gists_url":"https://api.github.com/users/ealymbaev/gists{/gist_id}","starred_url":"https://api.github.com/users/ealymbaev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ealymbaev/subscriptions","organizations_url":"https://api.github.com/users/ealymbaev/orgs","repos_url":"https://api.github.com/users/ealymbaev/repos","events_url":"https://api.github.com/users/ealymbaev/events{/privacy}","received_events_url":"https://api.github.com/users/ealymbaev/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/facebook/fresco/labels/needs-details","name":"needs-details","color":"f4a460"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-01-13T05:53:12Z","updated_at":"2016-01-14T04:33:35Z","closed_at":null,"body":"I have the same issue as in the #236.\r\n\r\nBut the solution provided did not work - i have a FLICKER when replacing the image.\r\n\r\nFirst, I load the thumbnail. After that (on user action) I start loading the original image with low res image request set to thumbnail (that is already loaded). But I have the flicker anyway.\r\n\r\nIs there any way to just keep the existing image and set the new one when it is ready?\r\n\r\nP.S. Please note that I am also resizing the original image (replacing datasource could be tricky)"},"comment":{"url":"https://api.github.com/repos/facebook/fresco/issues/comments/171527541","html_url":"https://github.com/facebook/fresco/issues/908#issuecomment-171527541","issue_url":"https://api.github.com/repos/facebook/fresco/issues/908","id":171527541,"user":{"login":"ealymbaev","id":377809,"avatar_url":"https://avatars.githubusercontent.com/u/377809?v=3","gravatar_id":"","url":"https://api.github.com/users/ealymbaev","html_url":"https://github.com/ealymbaev","followers_url":"https://api.github.com/users/ealymbaev/followers","following_url":"https://api.github.com/users/ealymbaev/following{/other_user}","gists_url":"https://api.github.com/users/ealymbaev/gists{/gist_id}","starred_url":"https://api.github.com/users/ealymbaev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ealymbaev/subscriptions","organizations_url":"https://api.github.com/users/ealymbaev/orgs","repos_url":"https://api.github.com/users/ealymbaev/repos","events_url":"https://api.github.com/users/ealymbaev/events{/privacy}","received_events_url":"https://api.github.com/users/ealymbaev/received_events","type":"User","site_admin":false},"created_at":"2016-01-14T04:33:34Z","updated_at":"2016-01-14T04:33:34Z","body":"The two requests are exactly the same. And I also use the postprocessor for blurring. Here are the codes:\r\n\r\nThumbnail Request: (initially thumbnail is displayed)\r\n\r\n        ImageRequest request = ImageRequestBuilder.newBuilderWithSource(Uri.parse(thumbUrl))\r\n                .setResizeOptions(new ResizeOptions(thumbnailSize, thumbnailSize))\r\n                .setPostprocessor(new BlurPostprocessor(App.getContext()))\r\n                .build();\r\n\r\nAfter that I load the original image (from disk) and set the following low image request:\r\n\r\n        if (thumbUrl != null) {\r\n            ImageRequest thumbRequest = ImageRequestBuilder.newBuilderWithSource(Uri.parse(thumbUrl))\r\n                    .setResizeOptions(new ResizeOptions(thumbnailSize, thumbnailSize))\r\n                    .setPostprocessor(new BlurPostprocessor(App.getContext()))\r\n                    .build();\r\n            controllerBuilder.setLowResImageRequest(thumbRequest);\r\n        }\r\n\r\nThumbnail size:\r\n\r\n        int thumbnailSize = LayoutHelper.dpToPx(100);\r\n\r\nAnd the cache related methods of the BlurPostprocessor:\r\n\r\n    @Override\r\n    public String getName() {\r\n        return getClass().getSimpleName();\r\n    }\r\n\r\n    @Override\r\n    public CacheKey getPostprocessorCacheKey() {\r\n        return new SimpleCacheKey(\"radius=\" + radius + \",sampling=\" + sampling);\r\n    }\r\n\r\nI am also using listeners for requests, but I don't think this can make any difference."}}