diff options
author | rouslan <rouslan@chromium.org> | 2014-10-03 17:22:35 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-10-04 00:23:19 +0000 |
commit | 684abf9f49c6dd79a0745689941ea9321f3c10fa (patch) | |
tree | ea5f7b0704f525b957b6df23687aa062741de160 /ash | |
parent | 0cac70342fdc5f7532f26b8954e4f8519c609dc1 (diff) | |
download | chromium_src-684abf9f49c6dd79a0745689941ea9321f3c10fa.zip chromium_src-684abf9f49c6dd79a0745689941ea9321f3c10fa.tar.gz chromium_src-684abf9f49c6dd79a0745689941ea9321f3c10fa.tar.bz2 |
Revert of Reland: Make WindowState::CanMinimize() take into account WidgetDelegate::CanMinimize() (patchset #3 id:40001 of https://codereview.chromium.org/625653002/)
Reason for revert:
Broke LoginWebDialogTest.CannotMinimize browser_tests on "Linux ChromiumOS Tests (dbg)(1)."
Builder:
https://build.chromium.org/p/chromium.chromiumos/waterfall?show=Linux%20ChromiumOS%20Tests%20(dbg)(1)
First failure:
https://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%28dbg%29%281%29/builds/32252
Failing test output:
LoginWebDialogTest.CannotMinimize (run #1):
[ RUN ] LoginWebDialogTest.CannotMinimize
[1:1:1003/163823:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[1:1:1003/163823:ERROR:data_pack.cc(78)] Failed to mmap datapack
[19747:19747:1003/163823:WARNING:chrome_browser_main_chromeos.cc(265)] Running as stub user with profile dir: test-user
[19747:19747:1003/163823:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[19747:19747:1003/163823:ERROR:data_pack.cc(78)] Failed to mmap datapack
[19747:19747:1003/163823:ERROR:logging_chrome.cc(170)] Unable to create symlink /tmp/.org.chromium.Chromium.r5oT7x/dktKdBJ/test-user/chrome_debug.log pointing at /tmp/.org.chromium.Chromium.r5oT7x/dktKdBJ/test-user/chrome_debug_20141003-163823.log: No such file or directory
Xlib: extension "RANDR" missing on display ":9".
[19747:19747:1003/163823:WARNING:data_reduction_proxy_settings.cc(331)] SPDY proxy OFF at startup
[19747:19781:1003/163823:ERROR:owner_key_util_impl.cc(27)] Could not get size of /tmp/.org.chromium.Chromium.r5oT7x/dktKdBJ/stub_owner.key
[19747:19781:1003/163823:WARNING:local_extension_cache.cc(199)] Extensions will not be installed from update URLs until /var/cache/external_cache/.initialized exists.
[19747:19747:1003/163824:WARNING:freezer_cgroup_process_manager.cc(26)] Cgroup freezer does not exist or is not writable. Unable to freeze renderer processes.
[19791:19791:1003/233824:ERROR:vaapi_wrapper.cc(207)] Failed to initialize VAAPI libs
[19747:19747:1003/163825:WARNING:channel.cc(177)] WriteMessage() while shutting down
[19747:19787:1003/163825:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[19747:19787:1003/163825:WARNING:file_descriptor_set_posix.cc(30)] FileDescriptorSet destroyed with unconsumed descriptors: 0/1
[19747:19747:1003/163825:WARNING:channel.cc(177)] WriteMessage() while shutting down
[19747:19787:1003/163825:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[19747:19747:1003/163825:FATAL:login_web_dialog.cc(146)] Check failed: false.
#0 0x7f9d1622d3de base::debug::StackTrace::StackTrace()
#1 0x7f9d162bffd2 logging::LogMessage::~LogMessage()
#2 0x0000026163fd chromeos::LoginWebDialog::OnCloseContents()
#3 0x7f9d1df3eb00 views::WebDialogView::OnCloseContents()
#4 0x7f9d1df3ee55 views::WebDialogView::CloseContents()
#5 0x7f9d1df3eeef views::WebDialogView::CloseContents()
#6 0x7f9d1efd4a28 content::WebContentsImpl::Close()
#7 0x7f9d1efd4a5f content::WebContentsImpl::Close()
#8 0x7f9d1ed62c9a content::RenderViewHostImpl::ClosePageIgnoringUnloadEvents()
#9 0x7f9d1ed62c41 content::RenderViewHostImpl::ClosePage()
#10 0x7f9d1e9509a7 content::RenderFrameHostManager::OnBeforeUnloadACK()
#11 0x7f9d1e933fdb content::RenderFrameHostImpl::OnBeforeUnloadACK()
#12 0x7f9d1e937bfa content::RenderFrameHostImpl::DispatchBeforeUnload()
#13 0x7f9d1efc908f content::WebContentsImpl::DispatchBeforeUnload()
#14 0x7f9d1df3df74 views::WebDialogView::CanClose()
#15 0x7f9d21e0dac0 views::NonClientView::CanClose()
#16 0x7f9d21df265f views::Widget::Close()
#17 0x7f9d1df3e959 views::WebDialogView::OnDialogClosed()
#18 0x7f9d1df3e1f2 views::WebDialogView::WindowClosing()
#19 0x7f9d1df3e22c views::WebDialogView::WindowClosing()
#20 0x7f9d21df4571 views::Widget::OnNativeWidgetDestroying()
#21 0x7f9d21de950c views::NativeWidgetAura::OnWindowDestroying()
#22 0x7f9d21de955f views::NativeWidgetAura::OnWindowDestroying()
#23 0x7f9d13a9fc07 aura::Window::~Window()
#24 0x7f9d13aa0679 aura::Window::~Window()
#25 0x7f9d158566c8 ash::RootWindowController::CloseChildWindows()
#26 0x7f9d157c013d ash::DisplayController::CloseChildWindows()
#27 0x7f9d158a921b ash::Shell::~Shell()
#28 0x7f9d158a9ee9 ash::Shell::~Shell()
#29 0x7f9d158a57ef ash::Shell::DeleteInstance()
#30 0x000002db0a7b chrome::CloseAsh()
#31 0x000002a0ff31 ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun()
#32 0x000004aa0ff8 ChromeBrowserMainParts::PostMainMessageLoopRun()
#33 0x00000245e645 chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun()
#34 0x7f9d1e733929 content::BrowserMainLoop::ShutdownThreadsAndCleanUp()
#35 0x7f9d1e73c739 content::BrowserMainRunnerImpl::Shutdown()
#36 0x7f9d1e72ddd8 content::BrowserMain()
#37 0x7f9d1e5c536f content::RunNamedProcessTypeMain()
#38 0x7f9d1e5c8458 content::ContentMainRunnerImpl::Run()
#39 0x7f9d1e5c4915 content::ContentMain()
#40 0x00000480705b content::BrowserTestBase::SetUp()
#41 0x000002198e3b InProcessBrowserTest::SetUp()
#42 0x0000006f6cf3 _ZN7testing8internal12InvokeHelperIvNSt3tr15tupleIJEEEE12InvokeMethodIN10extensions42BluetoothPrivateApiTest_CancelPairing_TestEMNS7_23BluetoothPrivateApiTestEFvvEEEvPT_T0_RKS4_
#43 0x000002385ffe testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#44 0x00000237b103 testing::Test::Run()
#45 0x00000237b84b testing::TestInfo::Run()
#46 0x00000237be3a testing::TestCase::Run()
#47 0x000002381333 testing::internal::UnitTestImpl::RunAllTests()
#48 0x00000238e5c3 testing::internal::HandleSehExceptionsInMethodIfSupported\u003C>()
#49 0x00000238774e testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#50 0x000002380fd1 testing::UnitTest::Run()
#51 0x00000223cfe1 RUN_ALL_TESTS()
#52 0x00000223bfb7 base::TestSuite::Run()
#53 0x000001376532 ChromeBrowserTestSuiteRunner::RunTestSuite()
#54 0x000002197128 (anonymous namespace)::ChromeTestLauncherDelegate::RunTestSuite()
#55 0x00000485373e content::LaunchTests()
#56 0x000002197059 LaunchChromeTests()
#57 0x00000137648e main
#58 0x7f9d0e8ae76d __libc_start_main
#59 0x000000668105 \u003Cunknown>
LoginWebDialogTest.CannotMinimize (run #2):
[ RUN ] LoginWebDialogTest.CannotMinimize
[1:1:1003/164204:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[1:1:1003/164204:ERROR:data_pack.cc(78)] Failed to mmap datapack
[31329:31329:1003/164205:WARNING:chrome_browser_main_chromeos.cc(265)] Running as stub user with profile dir: test-user
[31329:31329:1003/164205:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[31329:31329:1003/164205:ERROR:data_pack.cc(78)] Failed to mmap datapack
[31329:31329:1003/164205:ERROR:logging_chrome.cc(170)] Unable to create symlink /tmp/.org.chromium.Chromium.r5oT7x/drKJeND/test-user/chrome_debug.log pointing at /tmp/.org.chromium.Chromium.r5oT7x/drKJeND/test-user/chrome_debug_20141003-164205.log: No such file or directory
Xlib: extension "RANDR" missing on display ":9".
[31329:31329:1003/164205:WARNING:data_reduction_proxy_settings.cc(331)] SPDY proxy OFF at startup
[31329:31361:1003/164205:ERROR:owner_key_util_impl.cc(27)] Could not get size of /tmp/.org.chromium.Chromium.r5oT7x/drKJeND/stub_owner.key
[31329:31346:1003/164205:WARNING:local_extension_cache.cc(199)] Extensions will not be installed from update URLs until /var/cache/external_cache/.initialized exists.
[31329:31329:1003/164205:WARNING:freezer_cgroup_process_manager.cc(26)] Cgroup freezer does not exist or is not writable. Unable to freeze renderer processes.
[31356:31356:1003/234205:ERROR:vaapi_wrapper.cc(207)] Failed to initialize VAAPI libs
[31329:31329:1003/164206:WARNING:channel.cc(177)] WriteMessage() while shutting down
[31329:31352:1003/164206:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[31329:31352:1003/164206:WARNING:file_descriptor_set_posix.cc(30)] FileDescriptorSet destroyed with unconsumed descriptors: 0/1
[31329:31329:1003/164206:WARNING:channel.cc(177)] WriteMessage() while shutting down
[31329:31352:1003/164206:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[31329:31329:1003/164206:FATAL:login_web_dialog.cc(146)] Check failed: false.
#0 0x7f6bcf46b3de base::debug::StackTrace::StackTrace()
#1 0x7f6bcf4fdfd2 logging::LogMessage::~LogMessage()
#2 0x0000026163fd chromeos::LoginWebDialog::OnCloseContents()
#3 0x7f6bd717cb00 views::WebDialogView::OnCloseContents()
#4 0x7f6bd717ce55 views::WebDialogView::CloseContents()
#5 0x7f6bd717ceef views::WebDialogView::CloseContents()
#6 0x7f6bd8212a28 content::WebContentsImpl::Close()
#7 0x7f6bd8212a5f content::WebContentsImpl::Close()
#8 0x7f6bd7fa0c9a content::RenderViewHostImpl::ClosePageIgnoringUnloadEvents()
#9 0x7f6bd7fa0c41 content::RenderViewHostImpl::ClosePage()
#10 0x7f6bd7b8e9a7 content::RenderFrameHostManager::OnBeforeUnloadACK()
#11 0x7f6bd7b71fdb content::RenderFrameHostImpl::OnBeforeUnloadACK()
#12 0x7f6bd7b75bfa content::RenderFrameHostImpl::DispatchBeforeUnload()
#13 0x7f6bd820708f content::WebContentsImpl::DispatchBeforeUnload()
#14 0x7f6bd717bf74 views::WebDialogView::CanClose()
#15 0x7f6bdb04bac0 views::NonClientView::CanClose()
#16 0x7f6bdb03065f views::Widget::Close()
#17 0x7f6bd717c959 views::WebDialogView::OnDialogClosed()
#18 0x7f6bd717c1f2 views::WebDialogView::WindowClosing()
#19 0x7f6bd717c22c views::WebDialogView::WindowClosing()
#20 0x7f6bdb032571 views::Widget::OnNativeWidgetDestroying()
#21 0x7f6bdb02750c views::NativeWidgetAura::OnWindowDestroying()
#22 0x7f6bdb02755f views::NativeWidgetAura::OnWindowDestroying()
#23 0x7f6bcccddc07 aura::Window::~Window()
#24 0x7f6bcccde679 aura::Window::~Window()
#25 0x7f6bcea946c8 ash::RootWindowController::CloseChildWindows()
#26 0x7f6bce9fe13d ash::DisplayController::CloseChildWindows()
#27 0x7f6bceae721b ash::Shell::~Shell()
#28 0x7f6bceae7ee9 ash::Shell::~Shell()
#29 0x7f6bceae37ef ash::Shell::DeleteInstance()
#30 0x000002db0a7b chrome::CloseAsh()
#31 0x000002a0ff31 ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun()
#32 0x000004aa0ff8 ChromeBrowserMainParts::PostMainMessageLoopRun()
#33 0x00000245e645 chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun()
#34 0x7f6bd7971929 content::BrowserMainLoop::ShutdownThreadsAndCleanUp()
#35 0x7f6bd797a739 content::BrowserMainRunnerImpl::Shutdown()
#36 0x7f6bd796bdd8 content::BrowserMain()
#37 0x7f6bd780336f content::RunNamedProcessTypeMain()
#38 0x7f6bd7806458 content::ContentMainRunnerImpl::Run()
#39 0x7f6bd7802915 content::ContentMain()
#40 0x00000480705b content::BrowserTestBase::SetUp()
#41 0x000002198e3b InProcessBrowserTest::SetUp()
#42 0x0000006f6cf3 _ZN7testing8internal12InvokeHelperIvNSt3tr15tupleIJEEEE12InvokeMethodIN10extensions42BluetoothPrivateApiTest_CancelPairing_TestEMNS7_23BluetoothPrivateApiTestEFvvEEEvPT_T0_RKS4_
#43 0x000002385ffe testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#44 0x00000237b103 testing::Test::Run()
#45 0x00000237b84b testing::TestInfo::Run()
#46 0x00000237be3a testing::TestCase::Run()
#47 0x000002381333 testing::internal::UnitTestImpl::RunAllTests()
#48 0x00000238e5c3 testing::internal::HandleSehExceptionsInMethodIfSupported\u003C>()
#49 0x00000238774e testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#50 0x000002380fd1 testing::UnitTest::Run()
#51 0x00000223cfe1 RUN_ALL_TESTS()
#52 0x00000223bfb7 base::TestSuite::Run()
#53 0x000001376532 ChromeBrowserTestSuiteRunner::RunTestSuite()
#54 0x000002197128 (anonymous namespace)::ChromeTestLauncherDelegate::RunTestSuite()
#55 0x00000485373e content::LaunchTests()
#56 0x000002197059 LaunchChromeTests()
#57 0x00000137648e main
#58 0x7f6bc7aec76d __libc_start_main
#59 0x000000668105 \u003Cunknown>
LoginWebDialogTest.CannotMinimize (run #3):
[ RUN ] LoginWebDialogTest.CannotMinimize
[1:1:1003/164207:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[1:1:1003/164207:ERROR:data_pack.cc(78)] Failed to mmap datapack
[31389:31389:1003/164208:WARNING:chrome_browser_main_chromeos.cc(265)] Running as stub user with profile dir: test-user
[31389:31389:1003/164208:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[31389:31389:1003/164208:ERROR:data_pack.cc(78)] Failed to mmap datapack
[31389:31389:1003/164208:ERROR:logging_chrome.cc(170)] Unable to create symlink /tmp/.org.chromium.Chromium.r5oT7x/dlJ4c6O/test-user/chrome_debug.log pointing at /tmp/.org.chromium.Chromium.r5oT7x/dlJ4c6O/test-user/chrome_debug_20141003-164208.log: No such file or directory
Xlib: extension "RANDR" missing on display ":9".
[31389:31389:1003/164208:WARNING:data_reduction_proxy_settings.cc(331)] SPDY proxy OFF at startup
[31389:31406:1003/164208:ERROR:owner_key_util_impl.cc(27)] Could not get size of /tmp/.org.chromium.Chromium.r5oT7x/dlJ4c6O/stub_owner.key
[31389:31421:1003/164208:WARNING:local_extension_cache.cc(199)] Extensions will not be installed from update URLs until /var/cache/external_cache/.initialized exists.
[31389:31389:1003/164208:WARNING:freezer_cgroup_process_manager.cc(26)] Cgroup freezer does not exist or is not writable. Unable to freeze renderer processes.
[31416:31416:1003/234208:ERROR:vaapi_wrapper.cc(207)] Failed to initialize VAAPI libs
[31389:31389:1003/164209:WARNING:channel.cc(177)] WriteMessage() while shutting down
[31389:31412:1003/164209:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[31389:31412:1003/164209:WARNING:file_descriptor_set_posix.cc(30)] FileDescriptorSet destroyed with unconsumed descriptors: 0/1
[31389:31389:1003/164209:WARNING:channel.cc(177)] WriteMessage() while shutting down
[31389:31412:1003/164209:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[31389:31389:1003/164209:FATAL:login_web_dialog.cc(146)] Check failed: false.
#0 0x7f4c57aef3de base::debug::StackTrace::StackTrace()
#1 0x7f4c57b81fd2 logging::LogMessage::~LogMessage()
#2 0x0000026163fd chromeos::LoginWebDialog::OnCloseContents()
#3 0x7f4c5f800b00 views::WebDialogView::OnCloseContents()
#4 0x7f4c5f800e55 views::WebDialogView::CloseContents()
#5 0x7f4c5f800eef views::WebDialogView::CloseContents()
#6 0x7f4c60896a28 content::WebContentsImpl::Close()
#7 0x7f4c60896a5f content::WebContentsImpl::Close()
#8 0x7f4c60624c9a content::RenderViewHostImpl::ClosePageIgnoringUnloadEvents()
#9 0x7f4c60624c41 content::RenderViewHostImpl::ClosePage()
#10 0x7f4c602129a7 content::RenderFrameHostManager::OnBeforeUnloadACK()
#11 0x7f4c601f5fdb content::RenderFrameHostImpl::OnBeforeUnloadACK()
#12 0x7f4c601f9bfa content::RenderFrameHostImpl::DispatchBeforeUnload()
#13 0x7f4c6088b08f content::WebContentsImpl::DispatchBeforeUnload()
#14 0x7f4c5f7fff74 views::WebDialogView::CanClose()
#15 0x7f4c636cfac0 views::NonClientView::CanClose()
#16 0x7f4c636b465f views::Widget::Close()
#17 0x7f4c5f800959 views::WebDialogView::OnDialogClosed()
#18 0x7f4c5f8001f2 views::WebDialogView::WindowClosing()
#19 0x7f4c5f80022c views::WebDialogView::WindowClosing()
#20 0x7f4c636b6571 views::Widget::OnNativeWidgetDestroying()
#21 0x7f4c636ab50c views::NativeWidgetAura::OnWindowDestroying()
#22 0x7f4c636ab55f views::NativeWidgetAura::OnWindowDestroying()
#23 0x7f4c55361c07 aura::Window::~Window()
#24 0x7f4c55362679 aura::Window::~Window()
#25 0x7f4c571186c8 ash::RootWindowController::CloseChildWindows()
#26 0x7f4c5708213d ash::DisplayController::CloseChildWindows()
#27 0x7f4c5716b21b ash::Shell::~Shell()
#28 0x7f4c5716bee9 ash::Shell::~Shell()
#29 0x7f4c571677ef ash::Shell::DeleteInstance()
#30 0x000002db0a7b chrome::CloseAsh()
#31 0x000002a0ff31 ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun()
#32 0x000004aa0ff8 ChromeBrowserMainParts::PostMainMessageLoopRun()
#33 0x00000245e645 chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun()
#34 0x7f4c5fff5929 content::BrowserMainLoop::ShutdownThreadsAndCleanUp()
#35 0x7f4c5fffe739 content::BrowserMainRunnerImpl::Shutdown()
#36 0x7f4c5ffefdd8 content::BrowserMain()
#37 0x7f4c5fe8736f content::RunNamedProcessTypeMain()
#38 0x7f4c5fe8a458 content::ContentMainRunnerImpl::Run()
#39 0x7f4c5fe86915 content::ContentMain()
#40 0x00000480705b content::BrowserTestBase::SetUp()
#41 0x000002198e3b InProcessBrowserTest::SetUp()
#42 0x0000006f6cf3 _ZN7testing8internal12InvokeHelperIvNSt3tr15tupleIJEEEE12InvokeMethodIN10extensions42BluetoothPrivateApiTest_CancelPairing_TestEMNS7_23BluetoothPrivateApiTestEFvvEEEvPT_T0_RKS4_
#43 0x000002385ffe testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#44 0x00000237b103 testing::Test::Run()
#45 0x00000237b84b testing::TestInfo::Run()
#46 0x00000237be3a testing::TestCase::Run()
#47 0x000002381333 testing::internal::UnitTestImpl::RunAllTests()
#48 0x00000238e5c3 testing::internal::HandleSehExceptionsInMethodIfSupported\u003C>()
#49 0x00000238774e testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#50 0x000002380fd1 testing::UnitTest::Run()
#51 0x00000223cfe1 RUN_ALL_TESTS()
#52 0x00000223bfb7 base::TestSuite::Run()
#53 0x000001376532 ChromeBrowserTestSuiteRunner::RunTestSuite()
#54 0x000002197128 (anonymous namespace)::ChromeTestLauncherDelegate::RunTestSuite()
#55 0x00000485373e content::LaunchTests()
#56 0x000002197059 LaunchChromeTests()
#57 0x00000137648e main
#58 0x7f4c5017076d __libc_start_main
#59 0x000000668105 \u003Cunknown>
LoginWebDialogTest.CannotMinimize (run #4):
[ RUN ] LoginWebDialogTest.CannotMinimize
[1:1:1003/164210:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[1:1:1003/164210:ERROR:data_pack.cc(78)] Failed to mmap datapack
[31449:31449:1003/164211:WARNING:chrome_browser_main_chromeos.cc(265)] Running as stub user with profile dir: test-user
[31449:31449:1003/164211:ERROR:memory_mapped_file.cc(41)] Couldn't open /tmp/run_tha_testu_emfn/out/Debug/chrome_200_percent.pak
[31449:31449:1003/164211:ERROR:data_pack.cc(78)] Failed to mmap datapack
[31449:31449:1003/164211:ERROR:logging_chrome.cc(170)] Unable to create symlink /tmp/.org.chromium.Chromium.r5oT7x/dwzfYTg/test-user/chrome_debug.log pointing at /tmp/.org.chromium.Chromium.r5oT7x/dwzfYTg/test-user/chrome_debug_20141003-164211.log: No such file or directory
Xlib: extension "RANDR" missing on display ":9".
[31449:31449:1003/164211:WARNING:data_reduction_proxy_settings.cc(331)] SPDY proxy OFF at startup
[31449:31481:1003/164211:ERROR:owner_key_util_impl.cc(27)] Could not get size of /tmp/.org.chromium.Chromium.r5oT7x/dwzfYTg/stub_owner.key
[31449:31466:1003/164211:WARNING:local_extension_cache.cc(199)] Extensions will not be installed from update URLs until /var/cache/external_cache/.initialized exists.
[31449:31449:1003/164211:WARNING:freezer_cgroup_process_manager.cc(26)] Cgroup freezer does not exist or is not writable. Unable to freeze renderer processes.
[31476:31476:1003/234211:ERROR:vaapi_wrapper.cc(207)] Failed to initialize VAAPI libs
[31449:31449:1003/164212:WARNING:channel.cc(177)] WriteMessage() while shutting down
[31449:31472:1003/164212:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[31449:31472:1003/164212:WARNING:file_descriptor_set_posix.cc(30)] FileDescriptorSet destroyed with unconsumed descriptors: 0/1
[31449:31449:1003/164212:WARNING:channel.cc(177)] WriteMessage() while shutting down
[31449:31472:1003/164212:WARNING:message_in_transit_queue.cc(18)] Destroying nonempty message queue
[31449:31449:1003/164212:FATAL:login_web_dialog.cc(146)] Check failed: false.
#0 0x7fded5d263de base::debug::StackTrace::StackTrace()
#1 0x7fded5db8fd2 logging::LogMessage::~LogMessage()
#2 0x0000026163fd chromeos::LoginWebDialog::OnCloseContents()
#3 0x7fdedda37b00 views::WebDialogView::OnCloseContents()
#4 0x7fdedda37e55 views::WebDialogView::CloseContents()
#5 0x7fdedda37eef views::WebDialogView::CloseContents()
#6 0x7fdedeacda28 content::WebContentsImpl::Close()
#7 0x7fdedeacda5f content::WebContentsImpl::Close()
#8 0x7fdede85bc9a content::RenderViewHostImpl::ClosePageIgnoringUnloadEvents()
#9 0x7fdede85bc41 content::RenderViewHostImpl::ClosePage()
#10 0x7fdede4499a7 content::RenderFrameHostManager::OnBeforeUnloadACK()
#11 0x7fdede42cfdb content::RenderFrameHostImpl::OnBeforeUnloadACK()
#12 0x7fdede430bfa content::RenderFrameHostImpl::DispatchBeforeUnload()
#13 0x7fdedeac208f content::WebContentsImpl::DispatchBeforeUnload()
#14 0x7fdedda36f74 views::WebDialogView::CanClose()
#15 0x7fdee1906ac0 views::NonClientView::CanClose()
#16 0x7fdee18eb65f views::Widget::Close()
#17 0x7fdedda37959 views::WebDialogView::OnDialogClosed()
#18 0x7fdedda371f2 views::WebDialogView::WindowClosing()
#19 0x7fdedda3722c views::WebDialogView::WindowClosing()
#20 0x7fdee18ed571 views::Widget::OnNativeWidgetDestroying()
#21 0x7fdee18e250c views::NativeWidgetAura::OnWindowDestroying()
#22 0x7fdee18e255f views::NativeWidgetAura::OnWindowDestroying()
#23 0x7fded3598c07 aura::Window::~Window()
#24 0x7fded3599679 aura::Window::~Window()
#25 0x7fded534f6c8 ash::RootWindowController::CloseChildWindows()
#26 0x7fded52b913d ash::DisplayController::CloseChildWindows()
#27 0x7fded53a221b ash::Shell::~Shell()
#28 0x7fded53a2ee9 ash::Shell::~Shell()
#29 0x7fded539e7ef ash::Shell::DeleteInstance()
#30 0x000002db0a7b chrome::CloseAsh()
#31 0x000002a0ff31 ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun()
#32 0x000004aa0ff8 ChromeBrowserMainParts::PostMainMessageLoopRun()
#33 0x00000245e645 chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun()
#34 0x7fdede22c929 content::BrowserMainLoop::ShutdownThreadsAndCleanUp()
#35 0x7fdede235739 content::BrowserMainRunnerImpl::Shutdown()
#36 0x7fdede226dd8 content::BrowserMain()
#37 0x7fdede0be36f content::RunNamedProcessTypeMain()
#38 0x7fdede0c1458 content::ContentMainRunnerImpl::Run()
#39 0x7fdede0bd915 content::ContentMain()
#40 0x00000480705b content::BrowserTestBase::SetUp()
#41 0x000002198e3b InProcessBrowserTest::SetUp()
#42 0x0000006f6cf3 _ZN7testing8internal12InvokeHelperIvNSt3tr15tupleIJEEEE12InvokeMethodIN10extensions42BluetoothPrivateApiTest_CancelPairing_TestEMNS7_23BluetoothPrivateApiTestEFvvEEEvPT_T0_RKS4_
#43 0x000002385ffe testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#44 0x00000237b103 testing::Test::Run()
#45 0x00000237b84b testing::TestInfo::Run()
#46 0x00000237be3a testing::TestCase::Run()
#47 0x000002381333 testing::internal::UnitTestImpl::RunAllTests()
#48 0x00000238e5c3 testing::internal::HandleSehExceptionsInMethodIfSupported\u003C>()
#49 0x00000238774e testing::internal::HandleExceptionsInMethodIfSupported\u003C>()
#50 0x000002380fd1 testing::UnitTest::Run()
#51 0x00000223cfe1 RUN_ALL_TESTS()
#52 0x00000223bfb7 base::TestSuite::Run()
#53 0x000001376532 ChromeBrowserTestSuiteRunner::RunTestSuite()
#54 0x000002197128 (anonymous namespace)::ChromeTestLauncherDelegate::RunTestSuite()
#55 0x00000485373e content::LaunchTests()
#56 0x000002197059 LaunchChromeTests()
#57 0x00000137648e main
#58 0x7fdece3a776d __libc_start_main
#59 0x000000668105 \u003Cunknown>
Original issue's description:
> Reland: Make WindowState::CanMinimize() take into account WidgetDelegate::CanMinimize()
>
> This has the side effect of disallowing minimizing bubbles (e.g. the bookmark
> bubble) via a gesture
>
> BUG=328241
> TEST=Manual, see bug
> R=oshima
> TBR=sky
>
> Committed: https://crrev.com/54e8fe5b00b8d218a0ebe22e5d09386cc28a6151
> Cr-Commit-Position: refs/heads/master@{#298108}
TBR=oshima@chromium.org,pkotwicz@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=328241
Review URL: https://codereview.chromium.org/627813003
Cr-Commit-Position: refs/heads/master@{#298132}
Diffstat (limited to 'ash')
-rw-r--r-- | ash/frame/caption_buttons/frame_caption_button_container_view.cc | 5 | ||||
-rw-r--r-- | ash/frame/caption_buttons/frame_caption_button_container_view.h | 12 | ||||
-rw-r--r-- | ash/frame/caption_buttons/frame_caption_button_container_view_unittest.cc | 42 | ||||
-rw-r--r-- | ash/frame/caption_buttons/frame_size_button_unittest.cc | 4 | ||||
-rw-r--r-- | ash/frame/custom_frame_view_ash.cc | 7 | ||||
-rw-r--r-- | ash/frame/default_header_painter_unittest.cc | 3 | ||||
-rw-r--r-- | ash/test/ash_test_base.cc | 1 | ||||
-rw-r--r-- | ash/wm/panels/panel_frame_view.cc | 3 | ||||
-rw-r--r-- | ash/wm/system_gesture_event_filter_unittest.cc | 7 | ||||
-rw-r--r-- | ash/wm/toplevel_window_event_handler_unittest.cc | 17 | ||||
-rw-r--r-- | ash/wm/window_state.cc | 10 |
11 files changed, 71 insertions, 40 deletions
diff --git a/ash/frame/caption_buttons/frame_caption_button_container_view.cc b/ash/frame/caption_buttons/frame_caption_button_container_view.cc index e1672d3..dd9e3eb 100644 --- a/ash/frame/caption_buttons/frame_caption_button_container_view.cc +++ b/ash/frame/caption_buttons/frame_caption_button_container_view.cc @@ -109,7 +109,8 @@ const char FrameCaptionButtonContainerView::kViewClassName[] = "FrameCaptionButtonContainerView"; FrameCaptionButtonContainerView::FrameCaptionButtonContainerView( - views::Widget* frame) + views::Widget* frame, + MinimizeAllowed minimize_allowed) : frame_(frame), minimize_button_(NULL), size_button_(NULL), @@ -126,7 +127,7 @@ FrameCaptionButtonContainerView::FrameCaptionButtonContainerView( minimize_button_ = new FrameCaptionButton(this, CAPTION_BUTTON_ICON_MINIMIZE); minimize_button_->SetAccessibleName( l10n_util::GetStringUTF16(IDS_APP_ACCNAME_MINIMIZE)); - minimize_button_->SetVisible(frame_->widget_delegate()->CanMinimize()); + minimize_button_->SetVisible(minimize_allowed == MINIMIZE_ALLOWED); AddChildView(minimize_button_); size_button_ = new FrameSizeButton(this, frame, this); diff --git a/ash/frame/caption_buttons/frame_caption_button_container_view.h b/ash/frame/caption_buttons/frame_caption_button_container_view.h index 818b8e3..3b70fcb 100644 --- a/ash/frame/caption_buttons/frame_caption_button_container_view.h +++ b/ash/frame/caption_buttons/frame_caption_button_container_view.h @@ -33,8 +33,18 @@ class ASH_EXPORT FrameCaptionButtonContainerView public: static const char kViewClassName[]; + // Whether the frame can be minimized (either via the maximize/restore button + // or via a dedicated button). + enum MinimizeAllowed { + MINIMIZE_ALLOWED, + MINIMIZE_DISALLOWED + }; + // |frame| is the views::Widget that the caption buttons act on. - explicit FrameCaptionButtonContainerView(views::Widget* frame); + // |minimize_allowed| indicates whether the frame can be minimized (either via + // the maximize/restore button or via a dedicated button). + FrameCaptionButtonContainerView(views::Widget* frame, + MinimizeAllowed minimize_allowed); virtual ~FrameCaptionButtonContainerView(); // For testing. diff --git a/ash/frame/caption_buttons/frame_caption_button_container_view_unittest.cc b/ash/frame/caption_buttons/frame_caption_button_container_view_unittest.cc index 1c1f721..04a1d09 100644 --- a/ash/frame/caption_buttons/frame_caption_button_container_view_unittest.cc +++ b/ash/frame/caption_buttons/frame_caption_button_container_view_unittest.cc @@ -19,8 +19,8 @@ namespace { class TestWidgetDelegate : public views::WidgetDelegateView { public: - TestWidgetDelegate(bool can_maximize, bool can_minimize) - : can_maximize_(can_maximize), can_minimize_(can_minimize) {} + explicit TestWidgetDelegate(bool can_maximize) : can_maximize_(can_maximize) { + } virtual ~TestWidgetDelegate() { } @@ -28,13 +28,12 @@ class TestWidgetDelegate : public views::WidgetDelegateView { return can_maximize_; } - virtual bool CanMinimize() const OVERRIDE { - return can_minimize_; + virtual bool CanMinimize() const override { + return can_maximize_; } private: bool can_maximize_; - bool can_minimize_; DISALLOW_COPY_AND_ASSIGN(TestWidgetDelegate); }; @@ -48,11 +47,6 @@ class FrameCaptionButtonContainerViewTest : public ash::test::AshTestBase { MAXIMIZE_DISALLOWED }; - enum MinimizeAllowed { - MINIMIZE_ALLOWED, - MINIMIZE_DISALLOWED - }; - FrameCaptionButtonContainerViewTest() { } @@ -62,13 +56,11 @@ class FrameCaptionButtonContainerViewTest : public ash::test::AshTestBase { // Creates a widget which allows maximizing based on |maximize_allowed|. // The caller takes ownership of the returned widget. views::Widget* CreateTestWidget( - MaximizeAllowed maximize_allowed, - MinimizeAllowed minimize_allowed) WARN_UNUSED_RESULT { + MaximizeAllowed maximize_allowed) WARN_UNUSED_RESULT { views::Widget* widget = new views::Widget; views::Widget::InitParams params; params.delegate = new TestWidgetDelegate( - maximize_allowed == MAXIMIZE_ALLOWED, - minimize_allowed == MINIMIZE_ALLOWED); + maximize_allowed == MAXIMIZE_ALLOWED); params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; params.context = CurrentContext(); widget->Init(params); @@ -118,8 +110,10 @@ class FrameCaptionButtonContainerViewTest : public ash::test::AshTestBase { TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) { // All the buttons should be visible when minimizing and maximizing are // allowed. - FrameCaptionButtonContainerView container1( - CreateTestWidget(MAXIMIZE_ALLOWED, MINIMIZE_ALLOWED)); + scoped_ptr<views::Widget> widget_can_maximize( + CreateTestWidget(MAXIMIZE_ALLOWED)); + FrameCaptionButtonContainerView container1(widget_can_maximize.get(), + FrameCaptionButtonContainerView::MINIMIZE_ALLOWED); SetMockImages(&container1); container1.Layout(); FrameCaptionButtonContainerView::TestApi t1(&container1); @@ -131,8 +125,10 @@ TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) { // The minimize button should be visible when minimizing is allowed but // maximizing is disallowed. - FrameCaptionButtonContainerView container2( - CreateTestWidget(MAXIMIZE_DISALLOWED, MINIMIZE_ALLOWED)); + scoped_ptr<views::Widget> widget_cannot_maximize( + CreateTestWidget(MAXIMIZE_DISALLOWED)); + FrameCaptionButtonContainerView container2(widget_cannot_maximize.get(), + FrameCaptionButtonContainerView::MINIMIZE_ALLOWED); SetMockImages(&container2); container2.Layout(); FrameCaptionButtonContainerView::TestApi t2(&container2); @@ -144,8 +140,8 @@ TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) { // Neither the minimize button nor the size button should be visible when // neither minimizing nor maximizing are allowed. - FrameCaptionButtonContainerView container3( - CreateTestWidget(MAXIMIZE_DISALLOWED, MINIMIZE_DISALLOWED)); + FrameCaptionButtonContainerView container3(widget_cannot_maximize.get(), + FrameCaptionButtonContainerView::MINIMIZE_DISALLOWED); SetMockImages(&container3); container3.Layout(); FrameCaptionButtonContainerView::TestApi t3(&container3); @@ -160,8 +156,10 @@ TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) { // correct placement of the buttons. TEST_F(FrameCaptionButtonContainerViewTest, TestUpdateSizeButtonVisibilityAnimation) { - FrameCaptionButtonContainerView container( - CreateTestWidget(MAXIMIZE_ALLOWED, MINIMIZE_ALLOWED)); + scoped_ptr<views::Widget> widget_can_maximize( + CreateTestWidget(MAXIMIZE_ALLOWED)); + FrameCaptionButtonContainerView container(widget_can_maximize.get(), + FrameCaptionButtonContainerView::MINIMIZE_ALLOWED); SetMockImages(&container); container.SetBoundsRect(gfx::Rect(container.GetPreferredSize())); container.Layout(); diff --git a/ash/frame/caption_buttons/frame_size_button_unittest.cc b/ash/frame/caption_buttons/frame_size_button_unittest.cc index e08c1fd..0be0b38 100644 --- a/ash/frame/caption_buttons/frame_size_button_unittest.cc +++ b/ash/frame/caption_buttons/frame_size_button_unittest.cc @@ -62,8 +62,8 @@ class TestWidgetDelegate : public views::WidgetDelegateView { virtual void ViewHierarchyChanged( const ViewHierarchyChangedDetails& details) override { if (details.is_add && details.child == this) { - caption_button_container_ = - new FrameCaptionButtonContainerView(GetWidget()); + caption_button_container_ = new FrameCaptionButtonContainerView( + GetWidget(), FrameCaptionButtonContainerView::MINIMIZE_ALLOWED); // Set arbitrary images for the container's buttons so that the buttons // have non-empty sizes. diff --git a/ash/frame/custom_frame_view_ash.cc b/ash/frame/custom_frame_view_ash.cc index e4211e6..8cdb026 100644 --- a/ash/frame/custom_frame_view_ash.cc +++ b/ash/frame/custom_frame_view_ash.cc @@ -202,7 +202,12 @@ CustomFrameViewAsh::HeaderView::HeaderView(views::Widget* frame) avatar_icon_(NULL), caption_button_container_(NULL), fullscreen_visible_fraction_(0) { - caption_button_container_ = new FrameCaptionButtonContainerView(frame_); + FrameCaptionButtonContainerView::MinimizeAllowed minimize_allowed = + frame_->widget_delegate()->CanMinimize() ? + FrameCaptionButtonContainerView::MINIMIZE_ALLOWED : + FrameCaptionButtonContainerView::MINIMIZE_DISALLOWED; + caption_button_container_ = new FrameCaptionButtonContainerView(frame_, + minimize_allowed); caption_button_container_->UpdateSizeButtonVisibility(); AddChildView(caption_button_container_); diff --git a/ash/frame/default_header_painter_unittest.cc b/ash/frame/default_header_painter_unittest.cc index c4e2106..41ec4ff 100644 --- a/ash/frame/default_header_painter_unittest.cc +++ b/ash/frame/default_header_painter_unittest.cc @@ -36,7 +36,8 @@ class DefaultHeaderPainterTest : public ash::test::AshTestBase { // Ensure the title text is vertically aligned with the window icon. TEST_F(DefaultHeaderPainterTest, TitleIconAlignment) { scoped_ptr<Widget> w(CreateTestWidget()); - ash::FrameCaptionButtonContainerView container(w.get()); + ash::FrameCaptionButtonContainerView container(w.get(), + ash::FrameCaptionButtonContainerView::MINIMIZE_ALLOWED); views::StaticSizedView window_icon(gfx::Size(16, 16)); window_icon.SetBounds(0, 0, 16, 16); w->SetBounds(gfx::Rect(0, 0, 500, 500)); diff --git a/ash/test/ash_test_base.cc b/ash/test/ash_test_base.cc index d31c5cf..50d18b7 100644 --- a/ash/test/ash_test_base.cc +++ b/ash/test/ash_test_base.cc @@ -261,7 +261,6 @@ aura::Window* AshTestBase::CreateTestWindowInShellWithDelegateAndType( aura::client::ParentWindowWithContext(window, root, bounds); } window->SetProperty(aura::client::kCanMaximizeKey, true); - window->SetProperty(aura::client::kCanMinimizeKey, true); return window; } diff --git a/ash/wm/panels/panel_frame_view.cc b/ash/wm/panels/panel_frame_view.cc index 733af9a..4f27091 100644 --- a/ash/wm/panels/panel_frame_view.cc +++ b/ash/wm/panels/panel_frame_view.cc @@ -39,7 +39,8 @@ const char* PanelFrameView::GetClassName() const { void PanelFrameView::InitHeaderPainter() { header_painter_.reset(new DefaultHeaderPainter); - caption_button_container_ = new FrameCaptionButtonContainerView(frame_); + caption_button_container_ = new FrameCaptionButtonContainerView(frame_, + FrameCaptionButtonContainerView::MINIMIZE_ALLOWED); AddChildView(caption_button_container_); header_painter_->Init(frame_, this, caption_button_container_); diff --git a/ash/wm/system_gesture_event_filter_unittest.cc b/ash/wm/system_gesture_event_filter_unittest.cc index 89b56b2..e1bcbf0 100644 --- a/ash/wm/system_gesture_event_filter_unittest.cc +++ b/ash/wm/system_gesture_event_filter_unittest.cc @@ -98,10 +98,9 @@ class MaxSizeWidgetDelegate : public views::WidgetDelegateView { virtual ~MaxSizeWidgetDelegate() {} private: - virtual bool CanResize() const OVERRIDE { return true; } - virtual bool CanMaximize() const OVERRIDE { return false; } - virtual bool CanMinimize() const OVERRIDE { return true; } - virtual void DeleteDelegate() OVERRIDE { delete this; } + virtual bool CanResize() const override { return true; } + virtual bool CanMaximize() const override { return false; } + virtual void DeleteDelegate() override { delete this; } virtual views::NonClientFrameView* CreateNonClientFrameView( views::Widget* widget) override { return new MaxSizeNCFV; diff --git a/ash/wm/toplevel_window_event_handler_unittest.cc b/ash/wm/toplevel_window_event_handler_unittest.cc index db35b9a..ba1d912c 100644 --- a/ash/wm/toplevel_window_event_handler_unittest.cc +++ b/ash/wm/toplevel_window_event_handler_unittest.cc @@ -8,6 +8,7 @@ #include "ash/shell.h" #include "ash/shell_window_ids.h" #include "ash/test/ash_test_base.h" +#include "ash/wm/lock_state_controller.h" #include "ash/wm/resize_shadow.h" #include "ash/wm/resize_shadow_controller.h" #include "ash/wm/window_state.h" @@ -467,16 +468,24 @@ TEST_F(ToplevelWindowEventHandlerTest, GestureDrag) { window_state->GetRestoreBoundsInScreen().ToString()); } -// Tests that a gesture cannot minimize an unminimizeable window. -TEST_F(ToplevelWindowEventHandlerTest, - GestureAttemptMinimizeUnminimizeableWindow) { +// Tests that a gesture cannot minimize a window in login/lock screen. +TEST_F(ToplevelWindowEventHandlerTest, GestureDragMinimizeLoginScreen) { + LockStateController* state_controller = + Shell::GetInstance()->lock_state_controller(); + state_controller->OnLoginStateChanged(user::LOGGED_IN_NONE); + state_controller->OnLockStateChanged(false); + SetUserLoggedIn(false); + scoped_ptr<aura::Window> target(CreateWindow(HTCAPTION)); + aura::Window* lock = + RootWindowController::ForWindow(target.get()) + ->GetContainer(kShellWindowId_LockSystemModalContainer); + lock->AddChild(target.get()); ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), target.get()); gfx::Rect old_bounds = target->bounds(); gfx::Point location(5, 5); target->SetProperty(aura::client::kCanMaximizeKey, true); - target->SetProperty(aura::client::kCanMinimizeKey, false); gfx::Point end = location; end.Offset(0, 100); diff --git a/ash/wm/window_state.cc b/ash/wm/window_state.cc index 1b962d1..8cb25c4 100644 --- a/ash/wm/window_state.cc +++ b/ash/wm/window_state.cc @@ -154,7 +154,15 @@ bool WindowState::CanMaximize() const { } bool WindowState::CanMinimize() const { - return window()->GetProperty(aura::client::kCanMinimizeKey); + RootWindowController* controller = RootWindowController::ForWindow(window_); + if (!controller) + return false; + aura::Window* lockscreen = + controller->GetContainer(kShellWindowId_LockScreenContainersContainer); + if (lockscreen->Contains(window_)) + return false; + + return true; } bool WindowState::CanResize() const { |