commit | a011ba15be38e2212401850b3a5262adae67b7b2 | [log] [tgz] |
---|---|---|
author | andrewxu <andrewxu@chromium.org> | Tue Jan 14 17:50:31 2025 |
committer | Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Jan 14 17:50:31 2025 |
tree | 54716a173c882c50ed8a8f43ec73b53271401534 | |
parent | 056ae2d53c72a1b28c1c77a2f8e38d79bfd23025 [diff] |
Fix the excessive menu close triggered by PreTargetHandler chromeos::editor_menu::PreTargetHandler by default closes the active context menu if any, when PreTargetHandler is destroyed. This behavior causes the trouble if the PreTargetHandler closes the wrong menu. It can happen, for example, when the PreTargetHandlerView is destroyed due to the code path from OnMenuClosed(). OnMenuClosed() can be triggered asyncly after executing a menu command that starts a new menu. As a result, PreTargetHandler is destroyed after the new menu shows and PreTargetHandler's destructor closes the new menu. This CL serves as a quick fix by avoiding closing the active context menu if the PreTargetHandlerView is reset due to menu close. In other words, if the anchor menu is already closed, we avoid closing it twice. Bug: 384726630 Change-Id: I7d426fa7eeabffa7b26e207c39211cfccd4875e6 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6142816 Reviewed-by: Andre Le <leandre@chromium.org> Reviewed-by: Bao-Duy Tran <tranbaoduy@chromium.org> Commit-Queue: Andrew Xu <andrewxu@google.com> Reviewed-by: Chuong Ho <hdchuong@chromium.org> Cr-Commit-Position: refs/heads/main@{#1406177}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.