<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:bfulgham@webkit.org" title="Brent Fulgham <bfulgham@webkit.org>"> <span class="fn">Brent Fulgham</span></a>
</span> changed
<a class="bz_bug_link
bz_status_NEW "
title="NEW - [Win] Popup menu is not accessible."
href="https://bugs.webkit.org/show_bug.cgi?id=141704">bug 141704</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Attachment #251459 Flags</td>
<td>review?
</td>
<td>review-
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [Win] Popup menu is not accessible."
href="https://bugs.webkit.org/show_bug.cgi?id=141704#c7">Comment # 7</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [Win] Popup menu is not accessible."
href="https://bugs.webkit.org/show_bug.cgi?id=141704">bug 141704</a>
from <span class="vcard"><a class="email" href="mailto:bfulgham@webkit.org" title="Brent Fulgham <bfulgham@webkit.org>"> <span class="fn">Brent Fulgham</span></a>
</span></b>
<pre>Comment on <span class=""><a href="attachment.cgi?id=251459&action=diff" name="attach_251459" title="Patch">attachment 251459</a> <a href="attachment.cgi?id=251459&action=edit" title="Patch">[details]</a></span>
Patch
View in context: <a href="https://bugs.webkit.org/attachment.cgi?id=251459&action=review">https://bugs.webkit.org/attachment.cgi?id=251459&action=review</a>
Fantastic! I'm so excited you have this working (as I'm sure James Craig will be, too). I don't think it's quite ready to land, but it's almost there.
Are there any tests we can unskip with this fix in place?
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:756
> + if (lParam != OBJID_CLIENT)</span >
This should be written as "if (static_cast<LONG>(lParam) != OBJID_CLIENT)"
See <<a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - AX: [Win] OBJID_CLIENT comparisons broken in 64-bit Builds"
href="show_bug.cgi?id=141391">https://bugs.webkit.org/show_bug.cgi?id=141391</a>>
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1155
> +{</span >
I like to check for null, and return E_POINTER if it's not valid.
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1161
> +{</span >
Ditto E_POINTER.
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1176
> +{</span >
E_POINTER if value is NULL.
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1186
> + *value = SysAllocString(itemText.characters16());</span >
You might see if the BString class provides this functionality in a single function call.
BString itemText(m_popupMenu.client()->itemText(index));
*value = itemText.release();
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1197
> +{</span >
E_POINTER
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1214
> +{</span >
E_POINTER
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1255
> +{</span >
E_POINTER for null 'left', 'top', etc.
<span class="quote">> Source/WebCore/platform/win/PopupMenuWin.cpp:1324
> + return E_POINTER;</span >
Yay! :-)
<span class="quote">> Source/WebCore/platform/win/ScrollbarThemeWin.h:38
> + virtual int scrollbarThickness(ScrollbarControlSize = RegularScrollbar) override;</span >
We have been removing the 'virtual' when we use 'override'.
<span class="quote">> Source/WebCore/platform/win/ScrollbarThemeWin.h:40
> + virtual void themeChanged() override;</span >
Ditto.
<span class="quote">> Source/WebCore/platform/win/ScrollbarThemeWin.h:46
> + virtual IntRect trackRect(ScrollbarThemeClient*, bool painting = false) override;</span >
Ditto.
<span class="quote">> Source/WebCore/platform/win/ScrollbarThemeWin.h:53
> + virtual bool shouldSnapBackToDragOrigin(ScrollbarThemeClient*, const PlatformMouseEvent&) override;</span >
Ditto.
<span class="quote">> Source/WebCore/platform/win/ScrollbarThemeWin.h:58
> + virtual void paintThumb(GraphicsContext*, ScrollbarThemeClient*, const IntRect&) override;</span >
Ditto.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>