New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 139 users

Issue metadata

Status: WontFix
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: 2017-08-15
OS: All
Pri: 3
Type: Feature


Sign in to add a comment
link

Issue 87553: Implement HTML5 context menu

Reported by achsh...@gmail.com, Jun 26 2011

Issue description

Comment 1 by paul.ne...@gmail.com, Nov 24 2011

In the HTML5 spec, section 4.11.4.3, "Context menus", specifies a mechanism for allowing author-developers to define a custom context menu for a particular element. The mechanism enables author-developers to define the context menu declaratively, through markup, by using a "contextmenu" attribute whose value is the ID of a particular menu element in the same document.

See also:
http://dev.w3.org/html5/spec-author-view/the-menu-element.html
http://dev.w3.org/html5/spec/interactive-elements.html#context-menus
http://www.whatwg.org/specs/web-apps/current-work/multipage/interactive-elements.html#context-menus

The <menu> tag is currently implemented in Firefox since version 8.
http://caniuse.com/#search=menu
https://bugzilla.mozilla.org/show_bug.cgi?id=617528

Comment 2 by krazyja...@gmail.com, Jul 18 2012

Yes please :)

Comment 3 by mihaip@chromium.org, Jul 25 2012

Labels: -Type-Bug -Area-Undefined -OS-Windows Type-Feature Area-WebKit OS-All WebKit-Core WebKit-ID-58454

Comment 4 by bugdroid1@chromium.org, Jul 25 2012

Project Member
Labels: -WebKit-ID-58454 WebKit-ID-58454-UNCONFIRMED
https://bugs.webkit.org/show_bug.cgi?id=58454

Comment 5 by bugdroid1@chromium.org, Aug 10 2012

Project Member
Labels: -Pri-2 Pri-3 Action-NeedsReview
Status: IceBox
Due to the age of the issue, changing the priority to P3, however because it has at least 10 stars, marking it for review.

Comment 6 by laforge@google.com, Aug 10 2012

Status: Unconfirmed

Comment 7 by m...@brad.is, Oct 10 2012

We could really use this at Vimeo!

Comment 8 by tkent@chromium.org, Feb 5 2013

 Issue 173937  has been merged into this issue.

Comment 9 by tkent@chromium.org, Feb 5 2013

Status: Untriaged

Comment 10 by bugdroid1@chromium.org, Mar 10 2013

Project Member
Labels: -Area-WebKit -WebKit-Core Cr-Content Cr-Content-Core

Comment 11 by bloody.a...@gmail.com, Apr 5 2013

I think especially on mobile platforms context menus are handy. E.g. things that you can do via D'n'D on platforms with a mouse often cannot be done that well on a touch based device. Using a context menu (hold touch) one can present appropriate context actions in a convenient manner.

E.g. compare this page on the desktop with mobile Firefox >= 20:
http://greattuneplayer.jit.su/#/genre/Classical

On the desktop you can drag albums into the playlist, but on a touch device dragging would conflict with scrolling. So I added a context menu "Enqueue Album".

Comment 12 by bugdroid1@chromium.org, Apr 6 2013

Project Member
Labels: -Cr-Content Cr-Blink

Comment 13 by tkent@chromium.org, Jul 24 2014

Labels: -Cr-Content-Core -Cr-Blink Cr-Blink-HTML-Menu

Comment 14 by bugdroid1@chromium.org, Aug 5 2014

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f9634a8fac3958ac3fbccb5e5b7761d181a25e7c

commit f9634a8fac3958ac3fbccb5e5b7761d181a25e7c
Author: sanjoy.pal@samsung.com <sanjoy.pal@samsung.com@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Tue Aug 05 13:10:19 2014

Updating MakeMenuItemStringsFor() to include custom items if provided by blink.

BUG= 87553 

Review URL: https://codereview.chromium.org/438193003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287527 0039d316-1c4b-4281-b951-d872f2087c98

Comment 15 by bugdroid1@chromium.org, Aug 5 2014

Project Member
------------------------------------------------------------------
r287527 | sanjoy.pal@samsung.com | 2014-08-05T13:10:19.030084Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/shell/renderer/test_runner/event_sender.cc?r1=287527&r2=287526&pathrev=287527

Updating MakeMenuItemStringsFor() to include custom items if provided by blink.

BUG= 87553 

Review URL: https://codereview.chromium.org/438193003
-----------------------------------------------------------------

Comment 16 by tkent@chromium.org, Aug 5 2014

Status: Started
sanjoy.pal is working on contextmenu= and type=popup

Comment 17 by bugdroid1@chromium.org, Aug 6 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=179576

------------------------------------------------------------------
r179576 | sanjoy.pal@samsung.com | 2014-08-06T07:55:07.941046Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/platform/RuntimeEnabledFeatures.in?r1=179576&r2=179575&pathrev=179576

Add a RuntimeEnabledFeatures flag to implement contextmenu attribute.

Link to "Intent to implement":
http://goo.gl/UtWWY8

BUG= 87553 
NOTRY=true

Review URL: https://codereview.chromium.org/443773004
-----------------------------------------------------------------

Comment 18 by bugdroid1@chromium.org, Aug 6 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=179626

------------------------------------------------------------------
r179626 | sanjoy.pal@samsung.com | 2014-08-06T16:12:36.793442Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/core.gypi?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/events/constructors/related-event-constructor-expected.txt?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/events/constructors/related-event-constructor.html?r1=179626&r2=179625&pathrev=179626
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/events/Event.cpp?r1=179626&r2=179625&pathrev=179626
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/webexposed/global-constructors-listing-expected.txt?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/events/RelatedEvent.cpp?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/events/relatedevent-expected.txt?r1=179626&r2=179625&pathrev=179626
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/events/Event.h?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/events/RelatedEvent.h?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/events/RelatedEvent.idl?r1=179626&r2=179625&pathrev=179626
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/events/relatedevent.html?r1=179626&r2=179625&pathrev=179626

Add support for RelatedEvent.

Add support for RelatedEvent which is needed to implement contextmenu.
Specifications:
http://www.whatwg.org/specs/web-apps/current-work/#relatedevent

BUG= 87553 

Review URL: https://codereview.chromium.org/443053002
-----------------------------------------------------------------

Comment 19 by bugdroid1@chromium.org, Aug 12 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=180037

------------------------------------------------------------------
r180037 | sanjoy.pal@samsung.com | 2014-08-12T06:50:03.515546Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.cpp?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/webexposed/global-constructors-listing-expected.txt?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/boolean-attribute-reflection-expected.txt?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/parser/parse-menuitem-expected.txt?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/script-tests/boolean-attribute-reflection.js?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/parser/HTMLTreeBuilder.cpp?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.h?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/events/RelatedEvent.h?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/menu-type-popup-expected.html?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuElement.idl?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/menu-type-popup.html?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-with-end-tag-expected.html?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-with-end-tag.html?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/domstring-attribute-reflection.html?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.idl?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLTagNames.in?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/core.gypi?r1=180037&r2=180036&pathrev=180037
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/parser/parse-menuitem.html?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/parser/HTMLStackItem.h?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderTheme.cpp?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/domstring-attribute-reflection-expected.txt?r1=180037&r2=180036&pathrev=180037
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLElement.cpp?r1=180037&r2=180036&pathrev=180037

Add <menuitem>, new HTMLMenuElement IDL attributes.

Specifications:
http://www.whatwg.org/specs/web-apps/current-work/#the-menu-element
http://www.whatwg.org/specs/web-apps/current-work/#the-menuitem-element

Changes in /parser/HTMLStackItem.h are required as per this part of specification
http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#special
And isSpecial() is used here
http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#parsing-main-inbody
with section "Any other end tag"
During end tag processing, if it is a special element, it should report parseError.

Changes in /parser/HTMLTreeBuilder.cpp are required as per this part of specification
http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#tokenization
"When a start tag token is emitted with its self-closing flag set, if the
flag is not acknowledged when it is processed by the tree construction
stage, that is a parse error."
<menuitem> has no end tag, its a self closing tag, and it should not
contain any inner node, so adding token using insertSelfClosingHTMLElement().

Changes in /rendering/RenderTheme.cpp are as per this part of specification
http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#hidden-elements


BUG= 87553 

Review URL: https://codereview.chromium.org/443373002
-----------------------------------------------------------------

Comment 20 by bugdroid1@chromium.org, Aug 19 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=180551

------------------------------------------------------------------
r180551 | sanjoy.pal@samsung.com | 2014-08-19T13:43:58.872763Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLElement/contextmenu-expected.txt?r1=180551&r2=180550&pathrev=180551
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLElement.h?r1=180551&r2=180550&pathrev=180551
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLElement.idl?r1=180551&r2=180550&pathrev=180551
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLElement/contextmenu.html?r1=180551&r2=180550&pathrev=180551
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLElement.cpp?r1=180551&r2=180550&pathrev=180551
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLAttributeNames.in?r1=180551&r2=180550&pathrev=180551

Add contextmenu attribute for HTMLElement.

contextmenu attribute which enables web pages to specify custom
context menu along with or in place of default platform context
menu for a particular element. The value of the contextmenu
attribute must be the ID of menu element with type popup.

Specifications:
http://www.whatwg.org/specs/web-apps/current-work/#htmlelement
http://www.whatwg.org/specs/web-apps/current-work/#context-menus

BUG= 87553 

Review URL: https://codereview.chromium.org/464903002
-----------------------------------------------------------------

Comment 21 by bugdroid1@chromium.org, Aug 26 2014

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/362c3256e3e4d65a80185e12932cabd304cfc2f9

commit 362c3256e3e4d65a80185e12932cabd304cfc2f9
Author: sanjoy.pal <sanjoy.pal@samsung.com>
Date: Tue Aug 26 08:07:08 2014

Updating MakeMenuItemStringsFor() to include separators in custom items

BUG= 87553 

Review URL: https://codereview.chromium.org/502993002

Cr-Commit-Position: refs/heads/master@{#291867}

[modify] https://chromium.googlesource.com/chromium/src.git/+/362c3256e3e4d65a80185e12932cabd304cfc2f9/content/shell/renderer/test_runner/event_sender.cc

Comment 22 by bugdroid1@chromium.org, Aug 26 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=180896

------------------------------------------------------------------
r180896 | sanjoy.pal@samsung.com | 2014-08-26T10:47:49.837731Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/platform/ContextMenu.h?r1=180896&r2=180895&pathrev=180896
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.cpp?r1=180896&r2=180895&pathrev=180896
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/core.gypi?r1=180896&r2=180895&pathrev=180896
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/ContextMenuController.h?r1=180896&r2=180895&pathrev=180896
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.h?r1=180896&r2=180895&pathrev=180896
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu-expected.txt?r1=180896&r2=180895&pathrev=180896
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu.html?r1=180896&r2=180895&pathrev=180896
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/ContextMenuController.cpp?r1=180896&r2=180895&pathrev=180896

Add support to populate custom context menu items.

contextmenu attribute which enables web pages to specify custom
context menu along with or in place of default platform context
menu for a particular element. The value of the contextmenu
attribute must be the ID of menu element with type popup.
This CL enables ContextMenuController to populate custom context
menu items specified by contextmenu attribute on any element.

Specifications:
http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#context-menus

BUG= 87553 

Review URL: https://codereview.chromium.org/492753002
-----------------------------------------------------------------

Comment 23 by sanjoy....@samsung.com, Aug 27 2014

Cc: tkent@chromium.org
Owner: sanjoy....@samsung.com

Comment 24 by bugdroid1@chromium.org, Aug 27 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=180936

------------------------------------------------------------------
r180936 | sanjoy.pal@samsung.com | 2014-08-27T06:43:46.495791Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu-expected.txt?r1=180936&r2=180935&pathrev=180936
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu.html?r1=180936&r2=180935&pathrev=180936
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.cpp?r1=180936&r2=180935&pathrev=180936

Context menu should skip any menu construct whose submenu label is the empty string.

Specification:
http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#menu-item-generator
"3. Remove from output any menu construct whose submenu label is the empty string."

BUG= 87553 

Review URL: https://codereview.chromium.org/508853002
-----------------------------------------------------------------

Comment 25 by bugdroid1@chromium.org, Nov 27 2014

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a62675ee13f49fb2783daf5ab04ac3aba7d0ce99

commit a62675ee13f49fb2783daf5ab04ac3aba7d0ce99
Author: sanjoy.pal <sanjoy.pal@samsung.com>
Date: Thu Nov 27 00:47:29 2014

Updating MakeMenuItemStringsFor() to mark disabled and checked menuitems.

BUG= 87553 

Review URL: https://codereview.chromium.org/750713004

Cr-Commit-Position: refs/heads/master@{#305928}

[modify] http://crrev.com/a62675ee13f49fb2783daf5ab04ac3aba7d0ce99/content/shell/renderer/test_runner/event_sender.cc

Comment 26 by bugdroid1@chromium.org, Nov 27 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=186098

------------------------------------------------------------------
r186098 | sanjoy.pal@samsung.com | 2014-11-27T09:32:54.573626Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu.html?r1=186098&r2=186097&pathrev=186098
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.cpp?r1=186098&r2=186097&pathrev=186098
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu-expected.txt?r1=186098&r2=186097&pathrev=186098

Implement disabled attribute for menuitem.

The disabled attribute is a boolean attribute that, if present,
indicates that the command is not available in the current state.

Specification
https://html.spec.whatwg.org/multipage/forms.html#attr-menuitem-disabled


BUG= 87553 

Review URL: https://codereview.chromium.org/761743002
-----------------------------------------------------------------

Comment 27 by bugdroid1@chromium.org, Dec 5 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=186584

------------------------------------------------------------------
r186584 | sanjoy.pal@samsung.com | 2014-12-05T11:35:22.617562Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.cpp?r1=186584&r2=186583&pathrev=186584
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu.html?r1=186584&r2=186583&pathrev=186584
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-click-expected.txt?r1=186584&r2=186583&pathrev=186584
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/page/ContextMenuControllerTest.cpp?r1=186584&r2=186583&pathrev=186584
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.h?r1=186584&r2=186583&pathrev=186584
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.cpp?r1=186584&r2=186583&pathrev=186584
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-click.html?r1=186584&r2=186583&pathrev=186584
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/core.gypi?r1=186584&r2=186583&pathrev=186584
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu-expected.txt?r1=186584&r2=186583&pathrev=186584

Implement checked attribute for menuitem.

The checked attribute is a boolean attribute that, if present,
indicates that the command is selected. The attribute must be
omitted unless the type attribute is in either the Checkbox state
or the Radio state.

If the type attribute is in the Checkbox state
If the element has a checked attribute, the UA must remove that
attribute. Otherwise, the UA must add a checked attribute, with the
literal value "checked".

Specification
https://html.spec.whatwg.org/multipage/forms.html#attr-menuitem-checked

BUG= 87553 

Review URL: https://codereview.chromium.org/766863002
-----------------------------------------------------------------

Comment 28 by bugdroid1@chromium.org, Dec 10 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=186848

------------------------------------------------------------------
r186848 | sanjoy.pal@samsung.com | 2014-12-10T14:31:07.784472Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/ContextMenuControllerTest.cpp?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.cpp?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.idl?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/webexposed/element-instance-property-listing-expected.txt?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-click.html?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu-expected.txt?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLAttributeNames.in?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.cpp?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu.html?r1=186848&r2=186847&pathrev=186848
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-click-expected.txt?r1=186848&r2=186847&pathrev=186848

Implement type=radio and radiogroup attribute for menuitem.

The radiogroup attribute gives the name of the group of commands that will be toggled when the command itself is toggled, for commands whose type attribute has the value "radio". The scope of the name is the child list of the parent element. The attribute must be omitted unless the type attribute is in the Radio state. When specified, the attribute's value must be a non-empty string.

If the type attribute is in the Radio state
If the element has a parent, then the UA must walk the list of child nodes of that parent element, and for each node that is a menuitem element, if that element has a radiogroup attribute whose value exactly matches the current element's (treating missing radiogroup attributes as if they were the empty string), and has a checked attribute, must remove that attribute.

Then, the element's checked attribute must be set to the literal value "checked".

Specification
https://html.spec.whatwg.org/multipage/forms.html#attr-menuitem-radiogroup

BUG= 87553 

Review URL: https://codereview.chromium.org/786753003
-----------------------------------------------------------------

Comment 29 by bugdroid1@chromium.org, Jan 7 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=187995

------------------------------------------------------------------
r187995 | sanjoy.pal@samsung.com | 2015-01-07T21:13:02.457363Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/public/web/WebMenuItemInfo.h?r1=187995&r2=187994&pathrev=187995

Prepare blink to support testing of icon attribute for <menuitem>.

BUG= 87553 

Review URL: https://codereview.chromium.org/840453003
-----------------------------------------------------------------

Comment 31 by bugdroid1@chromium.org, Jan 21 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=188718

------------------------------------------------------------------
r188718 | sanjoy.pal@samsung.com | 2015-01-21T07:31:05.117519Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/platform/ContextMenuItem.h?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/Source/bindings/core/v8/custom/V8DevToolsHostCustom.cpp?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/CustomContextMenuProvider.cpp?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLMenuItemElement.idl?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/webexposed/element-instance-property-listing-expected.txt?r1=188718&r2=188717&pathrev=188718
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/misc/custom-context-menu-expected.txt?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/Source/web/ContextMenuClientImpl.cpp?r1=188718&r2=188717&pathrev=188718
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/misc/custom-context-menu.html?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/html/HTMLAttributeNames.in?r1=188718&r2=188717&pathrev=188718
   M http://src.chromium.org/viewvc/blink/trunk/Source/platform/ContextMenuItem.cpp?r1=188718&r2=188717&pathrev=188718

Implement icon attribute for menuitem

Specification:
https://html.spec.whatwg.org/multipage/forms.html#attr-menuitem-icon

Link to "Intent to implement":
http://goo.gl/UtWWY8

BUG= 87553 

Review URL: https://codereview.chromium.org/802233004
-----------------------------------------------------------------

Comment 32 by bugdroid1@chromium.org, Feb 2 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=189323

------------------------------------------------------------------
r189323 | sanjoy.pal@samsung.com | 2015-02-02T09:54:41.446789Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/public/web/WebMenuItemInfo.h?r1=189323&r2=189322&pathrev=189323
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/misc/custom-context-menu-expected.txt?r1=189323&r2=189322&pathrev=189323
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/misc/custom-context-menu.html?r1=189323&r2=189322&pathrev=189323

Added a test for icon attribute values with leading/trailing spaces.

https://html.spec.whatwg.org/multipage/forms.html#attr-menuitem-icon

"icon" attribute's value must contain a valid non-empty URL potentially surrounded by spaces.

BUG= 87553 

Review URL: https://codereview.chromium.org/889343002
-----------------------------------------------------------------

Comment 33 by tkent@chromium.org, Aug 25 2015

Comment 34 by lafo...@chromium.org, Oct 2 2015

Labels: Hotlist-Recharge
This issue likely requires triage.  The current issue owner may be inactive (i.e. hasn't fixed an issue in the last 30 days or commented in this particular issue in the last 90 days).  Thanks for helping out!

-Anthony

Comment 35 by sanjoy....@gmail.com, Oct 5 2015

I have mostly completed implementation of <menu> and <menuitem>. I am not able to ship this feature due to 2 compatibility issues, one of them is partially resolved now
https://bugzilla.mozilla.org/show_bug.cgi?id=1100749 => FF fixed it, adding deprecation warning is to be done.
https://code.google.com/p/chromium/issues/detail?id=412945 => I have logged a bug in https://bugreport.apple.com on 06-May-2015, but no action taken on the same.
Please confirm if we can ship this ignoring above particular website issue.

Comment 36 by bugdroid1@chromium.org, Oct 12 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49

commit 99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49
Author: sanjoy.pal <sanjoy.pal@samsung.com>
Date: Mon Oct 12 23:23:29 2015

Rename <menu type=popup> to <menu type=context>.

Specification is updated to rename <menu type=popup> to <menu type=context>.
https://html.spec.whatwg.org/multipage/forms.html#attr-menu-type

BUG= 87553 

Review URL: https://codereview.chromium.org/1396053002

Cr-Commit-Position: refs/heads/master@{#353624}

[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu-expected.txt
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/LayoutTests/fast/dom/HTMLMenuElement/custom-context-menu.html
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/LayoutTests/fast/dom/HTMLMenuItemElement/menuitem-click.html
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/LayoutTests/fast/parser/parse-menuitem.html
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/LayoutTests/http/tests/misc/custom-context-menu-expected.txt
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/LayoutTests/http/tests/misc/custom-context-menu.html
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/Source/core/page/ContextMenuController.cpp
[modify] http://crrev.com/99054b8e300bfb14e68fbb4d9f3c9d6a323f3f49/third_party/WebKit/Source/core/page/ContextMenuControllerTest.cpp

Comment 37 by stepien....@gmail.com, Oct 12 2015

Should remove the Hotlist-Recharge label.

Comment 38 by jchaffraix@chromium.org, Dec 3 2015

Blockedon: chromium:550519

Comment 39 by jochen.k...@gmail.com, Jan 11 2016

Will there be a way to disable the default menu entries?
When is this available without setting the flag?
Do the Icons work?

Comment 40 by sheriffbot@chromium.org, Jul 10 2016

Project Member
Labels: Hotlist-OpenBugWithCL
A change has landed for this issue, but it's been open for over 6 months. Please review and close it if applicable. If this issue should remain open, remove the "Hotlist-OpenBugWithCL" label. If no action is taken, it will be archived in 30 days.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 41 by cda...@chromium.org, Jul 28 2016

Labels: -Hotlist-OpenBugWithCL
Removing Hotlist-OpenBugWithCL label as this bug has blocked on issue.

Comment 42 by tkent@chromium.org, Sep 30 2016

Blockedon: 651664

Comment 43 by tkent@chromium.org, Sep 30 2016

Blockedon: 651665

Comment 44 by tkent@chromium.org, Jan 16 2017

Labels: -Hotlist-Recharge -Action-NeedsReview
Owner: ----
Status: Available (was: Started)
sanjoy.pal@ doesn't look to work on this feature any longer.

Comment 45 by tkent@chromium.org, Jan 16 2017

Blockedon: 681444

Comment 46 by rbyers@chromium.org, Jan 23 2017

Description: Show this description

Comment 47 by rbyers@chromium.org, Jan 23 2017

Cc: dominicc@chromium.org rbyers@chromium.org
We're going through the top-starred blink bugs to better understand their status/priority.  This is #17.

According to caniuse this feature has only been shipped in Firefox (and has only "partial" support there): http://caniuse.com/#feat=menu

tkent/dominicc: can you give an update on the DOM team's thinking around this feature?  Is there any active work expected to happen in M58 / Q1 for it?  

Does it seem plausible that this is one of the top things web developers are asking us to work on?  I see it also has a fair number of votes on Edge UserVoice: https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6508881-html5-menu-tag-contextmenu-attribute

Comment 48 by tkent@chromium.org, Jan 24 2017

The DOM team has no plan to work on this in Q1 2017.

The remaining tasks are not large.
However, <menuitem> parsing in Firefox implementation doesn't match to the specification for now, and it would be a ship blocker.

Comment 49 by dominicc@chromium.org, Jan 24 2017

Bit more context: We were totally aware that this bug has a large number of stars, and it went through our prioritization mill, and we decided not to work on it. We're doing some other things for predictability and we're open to feedback.

Comment 50 by christop...@gmx.com, Feb 8 2017

"In the second half of 2017, the Chrome Web Store will no longer show Chrome apps on Windows, Mac, and Linux [...]"
So if you're not working on this in Q1, when exactly are Chrome App Developers supposed to port their apps to the web?
That's what you guys suggest in https://blog.chromium.org/2016/08/from-chrome-apps-to-web.html, don't you...?

Comment 51 by danielhe...@gmail.com, Feb 8 2017

Chrome Apps are not intended to be able to be completely portable to the web. You can use NW.js: nwjs.io/blog/chrome-apps-support

But if you only need custom context menus, you can already do that with the event: developer.mozilla.org/en-US/docs/Web/Events/contextmenu

Comment 52 by rbyers@chromium.org, Feb 14 2017

Re 48/49: Thanks for the update!  We'll check in again in Q2 to see if there's any change.

Comment 53 by domenic@chromium.org, Feb 14 2017

Cc: zcorpan@gmail.com
Note that the spec was recently updated to make <menuitem> parse like an unknown element, which should make this easier. https://github.com/whatwg/html/commit/0ca0377a7ca6d87fb40e0b97e0ee074300b39a32

Comment 54 by tkent@chromium.org, Mar 29 2017

Summary: Implement HTML5 context menu (was: Implement HTML5 menu tag)

Comment 55 by tkent@chromium.org, Apr 18 2017

Blockedon: 712497

Comment 56 by tkent@chromium.org, Apr 19 2017

Blockedon: 713429

Comment 57 by tkent@chromium.org, Apr 19 2017

Blockedon: 713431

Comment 58 by tkent@chromium.org, Apr 19 2017

Owner: yuzus@chromium.org
Status: Assigned (was: Available)

Comment 59 by rbyers@chromium.org, May 31 2017

NextAction: 2017-08-15
DOM team has an OKR for this, let's check in again in Q3.

Comment 60 by dominicc@chromium.org, Jun 1 2017

Status: WontFix (was: Assigned)
We got feedback about this. We're not going to do it--in fact we're ripping all vestiges of context-menu out. I'll forward you some context.

Comment 61 by zdnex...@gmail.com, Jun 1 2017

So if I understand correctly it means that HTML5 context menu will not be implemented? I was actually looking forward for this implementation. Can you explain little bit better what is reason for this?

Comment 62 by dvpdin...@gmail.com, Jun 1 2017

I am also incredibly curious why this would be removed. I've been trying to push for this across browsers for years :(

Comment 63 by christop...@gmx.com, Jun 1 2017

So you're basically killing it from the spec...?
https://www.w3.org/TR/html51/interactive-elements.html#declaring-a-context-menu

This is sad news. :(

Comment 64 by dominicc@chromium.org, Jun 1 2017

I understand if you are disappointed in this decision; I was looking forward to using this too. Here's the reasons I am aware of:

- There is doubt whether the API is well designed.
- This may not be a high enough priority right now. Part of the team is responsible for implementing new "capabilities". Reaching outside the content area and contributing items to the browser's context menu is a new capability. yuzus, tkent and I are not on the capabilities part of the team; they are busy bringing web developers other new capabilities. They should be heavily involved in the decision to implement this but they can't right now.
- It is hard to prioritize for other reasons. For example, this feature only exists in Firefox, so we're not making interoperability better by implementing this.

Any of those points could change if the circumstances change. For now I hope that gives you some useful insight into this decision.

Regarding removal from the spec, that's a question for its editors. W3C has a process for this; that is what the "warning" saying the feature is "at risk" is about.

Comment 65 by rudolfen...@gmail.com, Jun 1 2017

I can kind of agree about the API design concerns. Having the menus predefined in markup doesn't really make sense for a versatile user interface. After you right-click an item and select "Add to wishlist", clearly the menu should say "Remove from wishlist" the next time, for example. This is why most systems probably build context menus on-demand, and it's a key design decision.

In general, obviously browser support for context menus would be better for accessibility and would save each site from having to implement their own solution. Some day in some form, it should get done.

Comment 66 by bugdroid1@chromium.org, Jun 1 2017

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e90a0487386316a1e97f69159f20fbe5933cb3b9

commit e90a0487386316a1e97f69159f20fbe5933cb3b9
Author: yuzus <yuzus@chromium.org>
Date: Thu Jun 01 09:02:39 2017

Rollback ContextMenu

This CL aims to drop the context menu feature entirely.
<menuitem> tag can be no longer used and <menu type='context'>, <menu label='...'> are no longer supported.

BUG= 87553 

Review-Url: https://codereview.chromium.org/2905763003
Cr-Commit-Position: refs/heads/master@{#476230}

[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/external/wpt/custom-elements/reactions/HTMLElement-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/external/wpt/html/dom/reflection-misc-expected.txt
[add] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/external/wpt/html/semantics/interactive-elements/the-menu-element/menuitem-label-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/external/wpt/html/semantics/interfaces-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/dom/HTMLElement/contextmenu-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/dom/HTMLElement/contextmenu.html
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/fast/dom/boolean-attribute-reflection-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/fast/dom/boolean-attribute-reflection.html
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/fast/dom/domstring-attribute-reflection-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/fast/dom/domstring-attribute-reflection.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/events/constructors/related-event-constructor-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/events/constructors/related-event-constructor.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/events/relatedevent-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/events/relatedevent.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/parser/parse-menuitem-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/fast/parser/parse-menuitem.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/custom-context-menu-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/custom-context-menu.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menu-type-context-expected.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menu-type-context.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menuitem-click-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menuitem-click.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menuitem-crash-asan-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menuitem-crash-asan.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menuitem-with-end-tag-expected.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/html/menu_menuitem/menuitem-with-end-tag.html
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/http/tests/misc/custom-context-menu-expected.txt
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/LayoutTests/http/tests/misc/custom-context-menu.html
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/virtual/service-worker-navigation-preload-disabled/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/virtual/stable/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/bindings/core/v8/BUILD.gn
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/bindings/core/v8/custom/V8DevToolsHostCustom.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/core_idl_files.gni
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/events/BUILD.gn
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/events/RelatedEvent.cpp
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/events/RelatedEvent.h
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/events/RelatedEvent.idl
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/events/RelatedEventInit.idl
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/BUILD.gn
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLAttributeNames.json5
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLElement.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLElement.h
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLElement.idl
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLMenuElement.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLMenuElement.h
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLMenuElement.idl
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/html/HTMLMenuItemElement.cpp
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/html/HTMLMenuItemElement.h
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/html/HTMLMenuItemElement.idl
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLTagNames.json5
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLUnknownElement.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/HTMLUnknownElement.h
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/layout/LayoutTheme.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/page/BUILD.gn
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/page/ContextMenuController.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/core/page/ContextMenuController.h
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/page/ContextMenuControllerTest.cpp
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/page/CustomContextMenuProvider.cpp
[delete] https://crrev.com/4a0488068b1b5af0a38e5b05a771ab81a53e417a/third_party/WebKit/Source/core/page/CustomContextMenuProvider.h
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/platform/ContextMenuItem.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/platform/ContextMenuItem.h
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/third_party/WebKit/Source/web/ContextMenuClientImpl.cpp
[modify] https://crrev.com/e90a0487386316a1e97f69159f20fbe5933cb3b9/tools/metrics/histograms/enums.xml

Comment 67 by bugdroid1@chromium.org, Jun 14 2017

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/08b987e148376845467f8e1ff3abcb367dc47317

commit 08b987e148376845467f8e1ff3abcb367dc47317
Author: Kent Tamura <tkent@chromium.org>
Date: Wed Jun 14 05:11:36 2017

Remove leftover of the contextmenu feature.

This CL removes:

* onshow global event handler
* blink::WebMenuItemInfo::icon

They should have been removed in crrev.com/476230.

onshow was accidentally shipped in Stable channel. This CL removes it without
intent-to-remove.  The removal should be safe because it worked only with
Experimental Web Platform features flag.

Bug:  87553 
Change-Id: I94c48f2dd9db2c6c52e12f3419ba357211a6c88a
Reviewed-on: https://chromium-review.googlesource.com/532497
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#479292}
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/content/renderer/menu_item_builder.cc
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/content/shell/test_runner/event_sender.cc
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/external/wpt/html/browsers/the-window-object/window-properties-expected.txt
[delete] https://crrev.com/7915e18e1cf7d9f4455afecffa05cc55caa5a92e/third_party/WebKit/LayoutTests/external/wpt/html/semantics/interactive-elements/contextmenu-historical-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/fast/dom/global-event-handlers-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/fast/dom/global-event-handlers.html
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/platform/mac/virtual/stable/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/platform/win/virtual/stable/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/virtual/service-worker-navigation-preload-disabled/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/virtual/stable/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/Source/core/dom/GlobalEventHandlers.h
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/Source/core/dom/GlobalEventHandlers.idl
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/Source/core/html/HTMLElement.cpp
[modify] https://crrev.com/08b987e148376845467f8e1ff3abcb367dc47317/third_party/WebKit/public/web/WebMenuItemInfo.h

Comment 68 by monor...@bugs.chromium.org, Aug 15 2017

The NextAction date has arrived: 2017-08-15

Comment 69 by luc.desc...@gmail.com, Oct 6 2017

I cannot believe this feature has been removed from chromium...

It's so useful to be able to add some context menu options in the native context menu without having to use scripts + css for replacing the native context menu.

Specially for userscripts when you want to add some functionalities to rendered pages, or after mutations.

Grmpf :-( ...

Sign in to add a comment