Summary: | Port ContextMenuWin.cpp to WinCE | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Patrick R. Gansterer <paroga> | ||||||
Component: | Platform | Assignee: | Patrick R. Gansterer <paroga> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | aroben, commit-queue | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Other | ||||||||
OS: | Other | ||||||||
Attachments: |
|
Description
Patrick R. Gansterer
2010-10-27 03:01:30 PDT
Created attachment 74411 [details]
Patch
Comment on attachment 74411 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=74411&action=review All the changes of HMENU -> PlatformMenuDescription don't really seem helpful. At the very least they seem unrelated to the rest of the patch. > WebCore/platform/win/ContextMenuWin.cpp:118 > + UINT flags = MF_BYPOSITION; > + UINT newItem = 0; > + LPCWSTR title = 0; > + > + if (item.type() == SeparatorType) > + flags |= MF_SEPARATOR; > + else { > + flags |= MF_STRING; > + flags |= item.checked() ? MF_CHECKED : MF_UNCHECKED; > + flags |= item.enabled() ? MF_ENABLED : MF_GRAYED; > + > + PlatformMenuItemDescription description = item.releasePlatformDescription(); > + title = description->dwTypeData; > + description->dwTypeData = 0; > + > + if (description->hSubMenu) { > + flags |= MF_POPUP; > + newItem = reinterpret_cast<UINT>(description->hSubMenu); > + description->hSubMenu = 0; > + } else > + newItem = description->wID; > + > + free(description); > + } > + > + if (::InsertMenuW(m_platformDescription, position, flags, newItem, title)) > + ++m_itemCount; I think it would be clearer if this code were pulled out into a separate function. > WebCore/platform/win/ContextMenuWin.cpp:152 > +#if OS(WINCE) > + UINT type = info->fType & MFT_STRING; > +#else > UINT type = info->fType & ~(MFT_MENUBARBREAK | MFT_MENUBREAK | MFT_OWNERDRAW | MFT_RADIOCHECK | MFT_RIGHTORDER | MFT_RIGHTJUSTIFY); > +#endif I think non-CE Windows can use the CE codepath, too. Created attachment 74580 [details]
Patch
Comment on attachment 74580 [details] Patch Clearing flags on attachment: 74580 Committed r72585: <http://trac.webkit.org/changeset/72585> All reviewed patches have been landed. Closing bug. |