scaled icon in launcher looks bad |
||||||||||
Issue descriptiontested on low dpi with different display size (zoom). Not sure if this is regression nor has been this way. wutao@ can you look into this?
,
May 15 2018
I saw a similar regression but only for android app icons. Chrome icons are sharp.
,
May 15 2018
+alex who worked on the same bug for the shelf icons
,
May 15 2018
Malay and Alex, is this ToT?
,
May 15 2018
Yes this is ToT.
,
May 17 2018
,
May 24 2018
The icons in the suggested row look bad, but the icons in the apps grid look normal. Malay, not sure what did you see.
,
May 24 2018
The shelf icons look fine to me.
,
May 24 2018
possible to attach screenshots?
,
May 24 2018
xiyuan@, please see the attached images. See Hangout app as an example. In the suggested row, the icon quality is worse than the icon in the apps_grid.
,
May 24 2018
To repo #10, at EVE, decrease the UI resolution by pressing "ctrl + shift + =" all the way to no changes any more.
,
May 24 2018
Is that an ARC app or chrome app?
,
May 24 2018
I think it does not matter. Please see this attached app, the Files and Settings app icon also worse in Suggested row.
,
May 25 2018
Can we try do EnsureRepsForSupportedScales in [1] before sending the icons (icon and badge icon) to ash like what did for the app items in [2] and see if that helps? [1] https://cs.chromium.org/chromium/src/chrome/browser/ui/app_list/chrome_app_list_model_updater.cc?rcl=a7d22335e2c320fc13207239b1287b2642b34a6e&l=265 [2] https://cs.chromium.org/chromium/src/chrome/browser/ui/app_list/chrome_app_list_item.cc?rcl=a7d22335e2c320fc13207239b1287b2642b34a6e&l=156
,
May 25 2018
xiyuan@, didn't we do EnsureRepsForSupportedScales when SetIcon [1] [1] https://cs.chromium.org/chromium/src/chrome/browser/ui/app_list/search/chrome_search_result.cc?l=126&rcl=fffc1827c80420b2dea178412e6281a060a4cd01
,
May 25 2018
In #15, maybe we need to do this: metadata_->icon = icon; metadata_->icon.EnsureRepsForSupportedScales();
,
May 25 2018
Re #15: Right. Ignore my comment in #14 since we already do that. Re #16: It should not be necessary. EnsureRepsForSupportedScales updates |storage_|, which is ref-counted and shared when creating a ImageSkia by copy/assignment. Well, we have to add logs to see where the representations got lost. Logging the icon.image_reps().size() in chrome, in AppListControllerImpl::SetSearchResultMetadata and SearchResultTileItemView::OnMetadataChanged. And check whether the ImageSkia has expected reps inside along the path.
,
May 25 2018
,
May 29 2018
On Eve and Desktop emulator, I only get two icon.image_reps() with scales: 1 and 2. Is this why other scale get bad quality?
,
May 30 2018
Does disabling pixel canvas fix this?
,
May 30 2018
#20, disabling the features::kEnablePixelCanvasRecording, does not fix this.
,
May 30 2018
#19, that's the image scale and expected for scaled image (at least right now) For the launcher I believe what we want is to use the highest image as an unscaled image, then downscale (or upscale if necessary) using RESIZE_BEST.
,
May 30 2018
Re #19: As oshima said, two reps with scale 1 and 2 are expected. Do we get them on the app list ui side as well?
,
May 30 2018
#23, yes, I have two bmp with pixel of 48 and 96 at the SearchResultTileItemView. Comparing ChromeSearchResult (bad quality image) and ChromeAppListItem (good quality), the only difference is that in AppListItemView::SetIcon, we CreateResizedImage using RESIZE_BEST again [1]. Adding the resize in SearchResultTileItemView::SetIcon [2] fixes this bug. [1] https://cs.chromium.org/chromium/src/ui/app_list/views/app_list_item_view.cc?l=127&rcl=c8dce893601359f0a97e8d2657bb1395a8edcb53 [2] https://cs.chromium.org/chromium/src/ui/app_list/views/search_result_tile_item_view.cc?l=398&rcl=c8dce893601359f0a97e8d2657bb1395a8edcb53
,
May 30 2018
Issue 841998 has been merged into this issue.
,
May 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/10c002c62a6d5f4cd26065ce4a5c81150a580cd5 commit 10c002c62a6d5f4cd26065ce4a5c81150a580cd5 Author: wutao <wutao@chromium.org> Date: Wed May 30 22:35:30 2018 app_list: Resize icon in search result view When SetIcon in the SearchResultTileItemview, the icon is not resized for different display size. Therefore the image quality is bad when the scale is not 1. Resizing the icon will fix this bug. Bug: 842997 Test: manual Change-Id: I00189636fbb2499e778f777d7e93cd60a3cc9057 Reviewed-on: https://chromium-review.googlesource.com/1080011 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Commit-Queue: Tao Wu <wutao@chromium.org> Cr-Commit-Position: refs/heads/master@{#563035} [modify] https://crrev.com/10c002c62a6d5f4cd26065ce4a5c81150a580cd5/ui/app_list/views/search_result_tile_item_view.cc
,
May 30 2018
,
May 31 2018
Your change meets the bar and is auto-approved for M68. Please go ahead and merge the CL to branch 3440 manually. Please contact milestone owner if you have questions. Owners: cmasso@(Android), kariahda@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 1 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0c086c306669727596be8660adabf242c8ac6e99 commit 0c086c306669727596be8660adabf242c8ac6e99 Author: wutao <wutao@chromium.org> Date: Fri Jun 01 17:52:57 2018 M68 merge: app_list: Resize icon in search result view When SetIcon in the SearchResultTileItemview, the icon is not resized for different display size. Therefore the image quality is bad when the scale is not 1. Resizing the icon will fix this bug. TBR=xiyuan@chromium.org Bug: 842997 Test: manual Change-Id: I00189636fbb2499e778f777d7e93cd60a3cc9057 Reviewed-on: https://chromium-review.googlesource.com/1080011 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Commit-Queue: Tao Wu <wutao@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#563035}(cherry picked from commit 10c002c62a6d5f4cd26065ce4a5c81150a580cd5) Reviewed-on: https://chromium-review.googlesource.com/1082811 Reviewed-by: Tao Wu <wutao@chromium.org> Cr-Commit-Position: refs/branch-heads/3440@{#92} Cr-Branched-From: 010ddcfda246975d194964ccf20038ebbdec6084-refs/heads/master@{#561733} [modify] https://crrev.com/0c086c306669727596be8660adabf242c8ac6e99/ui/app_list/views/search_result_tile_item_view.cc
,
Jun 1 2018
,
Jun 7 2018
Issue 847317 has been merged into this issue.
,
Jun 7 2018
Just a follow up. The quality of the scaling algorithm used in ImageView when the size doesn't match is low. https://cs.chromium.org/chromium/src/ui/views/controls/image_view.cc?rcl=839d0e8229bad522896c5f6f8e242c2631c6c272&l=217 Note that it can be scaled again for the target scale https://cs.chromium.org/chromium/src/ui/gfx/image/image_skia.cc?rcl=3d7f15c742e7aff293b9b2065837bf98cb3a042b&l=60 and the best way would still be using unscaled image with highest available image, but if pre-scaling with high quality scaling works, then it should be fine. |
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by osh...@chromium.org
, May 15 2018Summary: scaled icon in launcher looks badstable (was: scaled icon in launcher looks bad)