Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(87)

Issue 2537713002: Add support for transparent/translucent pixels in the user image (Closed)

Created:
4 years ago by satorux1
Modified:
4 years ago
CC:
chromium-reviews, dbeam+watch-options_chromium.org, alemate+watch_chromium.org, droger+watchlist_chromium.org, michaelpg+watch-md-settings_chromium.org, blundell+watchlist_chromium.org, sdefresne+watchlist_chromium.org, achuith+watch_chromium.org, michaelpg+watch-options_chromium.org, pam+watch_chromium.org, oshima+watch_chromium.org, dbeam+watch-settings_chromium.org, stevenjb+watch-md-settings_chromium.org, davemoore+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add support for transparent/translucent pixels in the user image Previously, the user image was always saved in JPEG format at /home/chronos/<email-address>.jpg even if the user chose a PNG file with transparent/translucent pixels. Since JPEG format does not support transparent/translucent pixels, these pixels were replaced with black ones. This patch solves the problem by storing the user image in PNG format at /home/chronos/<email-address>.png, when transparent/translucent pixels are present. BUG=587289 TEST=transparent pixels are honored in the login and lock screens, as well as the settings page Committed: https://crrev.com/0a1936275b756e3e36de00ecf83058553d9d7217 Cr-Commit-Position: refs/heads/master@{#436230}

Patch Set 1 : Add support for transparent/translucent pixels in the user image #

Total comments: 17

Patch Set 2 : address comments #

Patch Set 3 : Add support for transparent/translucent pixels in the user image #

Total comments: 4

Patch Set 4 : address comments #

Patch Set 5 : fix test failures #

Total comments: 6

Patch Set 6 : add a period #

Patch Set 7 : rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+275 lines, -68 lines) Patch
M chrome/browser/chromeos/login/screens/user_image_screen.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/login/supervised/supervised_user_creation_screen.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/login/users/avatar/user_image_loader.cc View 1 6 chunks +48 lines, -10 lines 0 comments Download
M chrome/browser/chromeos/login/users/avatar/user_image_manager_browsertest.cc View 1 3 chunks +34 lines, -4 lines 0 comments Download
M chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc View 1 2 3 4 5 10 chunks +98 lines, -23 lines 0 comments Download
M chrome/browser/chromeos/login/users/avatar/user_image_manager_test_util.h View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/login/users/avatar/user_image_manager_test_util.cc View 1 2 chunks +6 lines, -2 lines 0 comments Download
M chrome/browser/ui/webui/options/chromeos/change_picture_options_handler.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M chrome/browser/ui/webui/settings/chromeos/change_picture_handler.cc View 2 chunks +5 lines, -2 lines 0 comments Download
A chrome/test/data/chromeos/avatar3.png View 1 Binary file 0 comments Download
M components/user_manager/DEPS View 1 chunk +1 line, -0 lines 0 comments Download
M components/user_manager/user.h View 1 chunk +5 lines, -0 lines 0 comments Download
M components/user_manager/user_image/user_image.h View 4 chunks +26 lines, -6 lines 0 comments Download
M components/user_manager/user_image/user_image.cc View 1 2 3 chunks +42 lines, -15 lines 0 comments Download

Messages

Total messages: 53 (32 generated)
satorux1
xiyuan: chrome/browser/ui/webui/settings/chromeos/change_picture_handler.cc achuith: everything else
4 years ago (2016-11-29 06:39:38 UTC) #9
xiyuan
change_picture_handler.cc lgtm https://codereview.chromium.org/2537713002/diff/50001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc File chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc (right): https://codereview.chromium.org/2537713002/diff/50001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc#newcode169 chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc:169: if (base::EndsWith(utf8_path, ".jpg", base::CompareCase::INSENSITIVE_ASCII)) nit: image_path.Extension() == ...
4 years ago (2016-11-30 00:04:22 UTC) #14
achuithb
https://codereview.chromium.org/2537713002/diff/50001/chrome/browser/chromeos/login/users/avatar/user_image_loader.cc File chrome/browser/chromeos/login/users/avatar/user_image_loader.cc (right): https://codereview.chromium.org/2537713002/diff/50001/chrome/browser/chromeos/login/users/avatar/user_image_loader.cc#newcode80 chrome/browser/chromeos/login/users/avatar/user_image_loader.cc:80: if (encoded) Does it make sense to reset image_format ...
4 years ago (2016-11-30 00:26:48 UTC) #15
achuithb
Looks like user_image_manager_browsertest.cc needs to be updated as well
4 years ago (2016-11-30 00:31:17 UTC) #16
satorux1
+danakj for adding +ui/gfx/geometry to components/user_manager/DEPS https://codereview.chromium.org/2537713002/diff/50001/chrome/browser/chromeos/login/users/avatar/user_image_loader.cc File chrome/browser/chromeos/login/users/avatar/user_image_loader.cc (right): https://codereview.chromium.org/2537713002/diff/50001/chrome/browser/chromeos/login/users/avatar/user_image_loader.cc#newcode80 chrome/browser/chromeos/login/users/avatar/user_image_loader.cc:80: if (encoded) On ...
4 years ago (2016-12-01 07:43:36 UTC) #22
Alexander Alekseev
Saving files identified by user e-mail - not lgtm . Could you use AccountId::GetAccountIdKey() for ...
4 years ago (2016-12-01 09:41:09 UTC) #26
satorux1
alemate: This email-based file name has been used for many years, and this patch does ...
4 years ago (2016-12-01 11:42:00 UTC) #27
achuithb
lgtm. Thanks for taking care of the comments. https://codereview.chromium.org/2537713002/diff/50001/components/user_manager/user_image/user_image.h File components/user_manager/user_image/user_image.h (right): https://codereview.chromium.org/2537713002/diff/50001/components/user_manager/user_image/user_image.h#newcode41 components/user_manager/user_image/user_image.h:41: // ...
4 years ago (2016-12-01 20:20:32 UTC) #28
danakj
https://codereview.chromium.org/2537713002/diff/90001/components/user_manager/DEPS File components/user_manager/DEPS (right): https://codereview.chromium.org/2537713002/diff/90001/components/user_manager/DEPS#newcode8 components/user_manager/DEPS:8: "+ui/gfx/geometry", deps LGTM
4 years ago (2016-12-01 21:19:47 UTC) #29
Alexander Alekseev
On 2016/12/01 11:42:00, satorux1 wrote: > alemate: This email-based file name has been used for ...
4 years ago (2016-12-01 23:09:46 UTC) #30
achuithb
On 2016/12/01 23:09:46, Alexander Alekseev wrote: > On 2016/12/01 11:42:00, satorux1 wrote: > > alemate: ...
4 years ago (2016-12-01 23:10:24 UTC) #31
achuithb
https://codereview.chromium.org/2537713002/diff/90001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc File chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc (right): https://codereview.chromium.org/2537713002/diff/90001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc#newcode515 chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc:515: prefs_images->GetDictionaryWithoutPathExpansion(user_id(), Please add a TODO to replace this with ...
4 years ago (2016-12-01 23:12:17 UTC) #32
Alexander Alekseev
On 2016/12/01 23:10:24, achuithb wrote: > On 2016/12/01 23:09:46, Alexander Alekseev wrote: > > On ...
4 years ago (2016-12-01 23:16:25 UTC) #33
satorux1
https://codereview.chromium.org/2537713002/diff/90001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc File chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc (right): https://codereview.chromium.org/2537713002/diff/90001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc#newcode156 chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc:156: bool should_remove_old_image) { removed should_remove_old_image parameter to simplify the ...
4 years ago (2016-12-02 04:59:36 UTC) #34
Alexander Alekseev
lgtm
4 years ago (2016-12-02 05:00:53 UTC) #35
satorux1
achuith: please have another look at user_image_manager_impl.cc. I made some minor changes. https://codereview.chromium.org/2537713002/diff/130001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc File chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc ...
4 years ago (2016-12-02 06:42:58 UTC) #38
achuithb
Thanks, and great work! lgtm https://codereview.chromium.org/2537713002/diff/130001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc File chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc (right): https://codereview.chromium.org/2537713002/diff/130001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc#newcode480 chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc:480: // image hasn't been ...
4 years ago (2016-12-02 08:28:18 UTC) #39
satorux1
https://codereview.chromium.org/2537713002/diff/130001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc File chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc (right): https://codereview.chromium.org/2537713002/diff/130001/chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc#newcode480 chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.cc:480: // image hasn't been downloaded yet) On 2016/12/02 08:28:18, ...
4 years ago (2016-12-05 01:57:40 UTC) #44
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2537713002/170001
4 years ago (2016-12-05 04:10:41 UTC) #49
commit-bot: I haz the power
Committed patchset #7 (id:170001)
4 years ago (2016-12-05 04:16:51 UTC) #51
commit-bot: I haz the power
4 years ago (2016-12-05 04:19:41 UTC) #53
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/0a1936275b756e3e36de00ecf83058553d9d7217
Cr-Commit-Position: refs/heads/master@{#436230}

Powered by Google App Engine
This is Rietveld 408576698