desktop-pwas: Content setting icons show appear in title bar when switching from Classic to GTK+ |
|||||||
Issue descriptionChrome Version: (copy from chrome://version) OS: (e.g. Win10, MacOS 10.12, etc...) What steps will reproduce the problem? (1) Go to https://www.pokedex.org/ (2) Open the three dot menu and click "Install Pokedex.org" or sometimes "Create shortcut". (3) Wait for the new window to open (4) Observer no content setting icons in the title bar. (5) Go to about:settings and change theme to GTK+ or Classic. What is the expected result? The title bar is unchanged. What happens instead? All content settings icons are added to the titlebar but only the service handler icon is loaded. All other icons are there and are both clickable and focusable. Also, if we were showing any content settings icons, they will disappear until the invisible icons go away.
,
Aug 29
,
Aug 29
This is an edge case, but pretty bad. Bumping to P2 (not strictly needed for this milestone). Assigning Alan.
,
Aug 29
,
Aug 30
,
Oct 31
WIP CL screencasts: https://chromium-review.googlesource.com/c/chromium/src/+/1308960
,
Oct 31
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8728d0475b4724115ff89656a333ea6c5b9603b5 commit 8728d0475b4724115ff89656a333ea6c5b9603b5 Author: Alan Cutter <alancutter@chromium.org> Date: Wed Oct 31 23:53:37 2018 Linux: Fix content settings in PWA titlebar glitch when toggling GTK theme This CL updates a DCHECK to allow for the BrowserNonClientFrameView getting recreated when the browser window frame is updated via NonClientView::UpdateFrame(). This also fixes a UI bug where we don't initialise the content setting icons properly for PWA windows resulting in uninitialised state after toggling GTK themes. Before: https://bugs.chromium.org/p/chromium/issues/attachment?aid=365396&signed_aid=Z-gwLwzrT9I5krg3sUoY7Q==&inline=1 After (ignore Linux screen glitching): https://bugs.chromium.org/p/chromium/issues/attachment?aid=365397&signed_aid=e_kvzb_AGaLLi5zzKY_o7w==&inline=1 Bug: 878639 Change-Id: I57bd1a6f7f94687a0f95557914f34eda737129ee Reviewed-on: https://chromium-review.googlesource.com/c/1308960 Reviewed-by: Bret Sepulveda <bsep@chromium.org> Commit-Queue: Alan Cutter <alancutter@chromium.org> Cr-Commit-Position: refs/heads/master@{#604452} [modify] https://crrev.com/8728d0475b4724115ff89656a333ea6c5b9603b5/chrome/browser/ui/views/frame/browser_view.cc [modify] https://crrev.com/8728d0475b4724115ff89656a333ea6c5b9603b5/chrome/browser/ui/views/frame/hosted_app_button_container.cc
,
Nov 1
,
Nov 1
Tried testing this issue on Windows 7 and Ubuntu 17.10 on the build without fix 70.0.3538.77 and on latest M-72 - 72.0.3598.0 build by following the given steps. 1. Launched Chrome and navigated to https://www.pokedex.org/ 2. Open the three dot menu and clicked on "Install Pokedex.org". 3. Waited for the new window to open 4. navigated to chrome://settings and changed theme to GTK+ or Classic. 5. Cannot observe any content settings icon on the title bar on the latest M-72 build. Attached is the screen cast for reference. Note: On Windows 7, unable to find the options for switching between Aero and Basic modes, as per comment #1. alancutter@ Request you to check and confirm if anything is missed from our end in verifying the issue and help us in verifying the fix on the latest M-72 build. Thanks..
,
Nov 2
Yep, Windows 7 doesn't have GTK theme options. This looks verified to me. |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by alancutter@chromium.org
, Aug 29This affects Windows 7 when switching between Aero and Basic modes. DCHECK is hit: [11420:9764:0829/114607.143:FATAL:browser_view.cc(1010)] Check failed: !toolbar_button_provider_. Backtrace: base::debug::StackTrace::StackTrace [0x72E34900+32] base::debug::StackTrace::StackTrace [0x72E33F4D+13] logging::LogMessage::~LogMessage [0x72E5DEB4+84] BrowserView::SetToolbarButtonProvider [0x6E0DD467+91] HostedAppButtonContainer::HostedAppButtonContainer [0x6ED3B5F1+969] OpaqueBrowserFrameView::OpaqueBrowserFrameView [0x6EBC50D1+853] chrome::CreateBrowserNonClientFrameView [0x6E92E0B3+95] BrowserFrame::CreateNonClientFrameView [0x6E448BEA+18] views::NonClientView::UpdateFrame [0x6C70ED2C+24] views::HWNDMessageHandler::PerformDwmTransition [0x6C7158A4+42] views::DesktopWindowTreeHostWin::FrameTypeChanged [0x6C733245+17] BrowserDesktopWindowTreeHostWin::FrameTypeChanged [0x6EE138D2+12] views::DesktopNativeWidgetAura::FrameTypeChanged [0x6C72C5B3+17] BrowserView::NativeThemeUpdated [0x6E0DEA66+34] ui::NativeTheme::NotifyObservers [0x6A841C89+81] gfx::SysColorChangeObserver::OnWndProc [0x728E8280+106] base::internal::Invoker<base::internal::BindState<void (__thiscall gfx::SysColorChangeObserver::*)(HWND__ *,unsigned int,unsigned int,long),base::internal::UnretainedWrapper<gfx::SysColorChangeObserver> >,void __cdecl(HWND__ *,unsigned int,unsigned int,lo [0x728E8872+24] gfx::SingletonHwndObserver::OnWndProc [0x728EEB80+32] gfx::SingletonHwnd::ProcessWindowMessage [0x728EDF97+93] gfx::WindowImpl::OnWndProc [0x728EF944+66] gfx::WindowImpl::WndProc [0x728EFA10+156] base::win::WrappedWindowProc<&gfx::WindowImpl::WndProc> [0x728EF42E+80] gapfnScSendMessage [0x750562FA+818]