<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>138066</bug_id>
          
          <creation_ts>2014-10-24 17:16:19 -0700</creation_ts>
          <short_desc>Provide a way for WebKit1 clients to override default action menu items</short_desc>
          <delta_ts>2014-10-27 13:08:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Beth Dakin">bdakin</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mitz</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1044111</commentid>
    <comment_count>0</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2014-10-24 17:16:19 -0700</bug_when>
    <thetext>Provide a way for WebKit1 clients to override default action menu items

rdar://problem/18451638</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044112</commentid>
    <comment_count>1</comment_count>
      <attachid>240447</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2014-10-24 17:19:30 -0700</bug_when>
    <thetext>Created attachment 240447
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044115</commentid>
    <comment_count>2</comment_count>
    <who name="">mitz</who>
    <bug_when>2014-10-24 18:43:42 -0700</bug_when>
    <thetext>I know that the patch is similar to how we do things in WebKit2’s C SPI, but in WebKit1, could we do something more similar to how context menus are handled, with a delegate? Would that be significantly harder to implement or for clients to adopt?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044131</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2014-10-25 09:36:00 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; I know that the patch is similar to how we do things in WebKit2’s C SPI, but
&gt; in WebKit1, could we do something more similar to how context menus are
&gt; handled, with a delegate? Would that be significantly harder to implement or
&gt; for clients to adopt?

For context menus, there is -webView:contextMenuItemsForElement:defaultMenuItems: in WebUIDelegate. It seems like something similar could work here (in WebUIDelegatePrivate), and will not require clients to subclass WebView if they want to implement this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044134</commentid>
    <comment_count>4</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2014-10-25 12:13:53 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; I know that the patch is similar to how we do things in WebKit2’s C SPI, but
&gt; &gt; in WebKit1, could we do something more similar to how context menus are
&gt; &gt; handled, with a delegate? Would that be significantly harder to implement or
&gt; &gt; for clients to adopt?
&gt; 
&gt; For context menus, there is
&gt; -webView:contextMenuItemsForElement:defaultMenuItems: in WebUIDelegate. It
&gt; seems like something similar could work here (in WebUIDelegatePrivate), and
&gt; will not require clients to subclass WebView if they want to implement this.

I think that sounds very reasonable! Honestly, I was torn between the two spots since I took a look at the context menu stuff as well. Will move!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044303</commentid>
    <comment_count>5</comment_count>
      <attachid>240495</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2014-10-27 12:51:07 -0700</bug_when>
    <thetext>Created attachment 240495
Patch that uses WebUIDelegate</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044304</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-27 12:53:51 -0700</bug_when>
    <thetext>Attachment 240495 did not pass style-queue:


ERROR: Source/WebKit/mac/WebView/WebActionMenuController.mm:89:  The parameter name &quot;]&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044305</commentid>
    <comment_count>7</comment_count>
      <attachid>240495</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-10-27 12:55:48 -0700</bug_when>
    <thetext>Comment on attachment 240495
Patch that uses WebUIDelegate

View in context: https://bugs.webkit.org/attachment.cgi?id=240495&amp;action=review

&gt; Source/WebKit/mac/WebView/WebUIDelegatePrivate.h:208
&gt; +- (NSArray *)webView:(WebView *)sender _actionMenuItemsForHitTestResult:(NSDictionary *)hitTestResult withType:(WebActionMenuType)type defaultActionMenuItems:(NSArray *)defaultMenuItems;

Underscore should be at the start of the method name, _webView:</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044306</commentid>
    <comment_count>8</comment_count>
      <attachid>240495</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-10-27 12:56:38 -0700</bug_when>
    <thetext>Comment on attachment 240495
Patch that uses WebUIDelegate

View in context: https://bugs.webkit.org/attachment.cgi?id=240495&amp;action=review

&gt; Source/WebKit/mac/WebView/WebActionMenuController.mm:90
&gt; +        menuItems = [[_webView _UIDelegateForwarder] webView:_webView _actionMenuItemsForHitTestResult:hitTestResult withType:_type defaultActionMenuItems:menuItems];

I don&apos;t think you need the UIDelegateForwarder here - you can just call the method directly since you check respondsToSelector already.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044308</commentid>
    <comment_count>9</comment_count>
      <attachid>240496</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2014-10-27 13:06:11 -0700</bug_when>
    <thetext>Created attachment 240496
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044309</commentid>
    <comment_count>10</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2014-10-27 13:08:47 -0700</bug_when>
    <thetext>Thank you! http://trac.webkit.org/changeset/175229</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240447</attachid>
            <date>2014-10-24 17:19:30 -0700</date>
            <delta_ts>2014-10-27 12:51:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>for-review.txt</filename>
            <type>text/plain</type>
            <size>5682</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NTE5NCkKKysrIFNvdXJjZS9XZWJLaXQv
bWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDE0LTEwLTI0
ICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBQcm92aWRlIGEgd2F5
IGZvciBXZWJLaXQxIGNsaWVudHMgdG8gb3ZlcnJpZGUgZGVmYXVsdCBhY3Rpb24gbWVudSBpdGVt
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4MDY2
CisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMTg0
NTE2MzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBX
ZWJBY3Rpb25NZW51Q29udHJvbGxlciBub3cgaGFzIGFuIGl2YXIgZm9yIHRoZSBXZWJBY3Rpb25N
ZW51VHlwZSBzbyB0aGF0IGl0IGNhbiAKKyAgICAgICAgc2VuZCB0aGF0IGFsb25nIHRvIGNsaWVu
dHMgY3VzdG9taXppbmcgdGhlIG1lbnUuCisgICAgICAgICogV2ViVmlldy9XZWJBY3Rpb25NZW51
Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIu
bW06CisgICAgICAgICgtW1dlYkFjdGlvbk1lbnVDb250cm9sbGVyIHByZXBhcmVGb3JNZW51Ondp
dGhFdmVudDpdKToKKyAgICAgICAgKC1bV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIgX2RlZmF1bHRN
ZW51SXRlbXNGb3JIaXRUZXN0UmVzdWx0Ol0pOgorCisgICAgICAgIE1vdmUgdGhpcyBlbnVtIHRv
IFdlYlZpZXdQcml2YXRlLCB3aGljaCBpcyB3aGVyZSBXZWJBY3Rpb25NZW51VHlwZSB3aWxsIGxp
dmUuCisgICAgICAgICogV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oOgorCisgICAgICAg
IE5ldyBTUEkgdG8gY3VzdG9taXplIG1lbnVzLgorICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5t
bToKKyAgICAgICAgKC1bV2ViVmlldyBfYWN0aW9uTWVudUl0ZW1zRm9ySGl0VGVzdFJlc3VsdDp3
aXRoVHlwZTpkZWZhdWx0QWN0aW9uTWVudUl0ZW1zOl0pOgorICAgICAgICAqIFdlYlZpZXcvV2Vi
Vmlld1ByaXZhdGUuaDoKKwogMjAxNC0xMC0yNCAgQmV0aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5j
b20+CiAKICAgICAgICAgQnVpbGQgZml4LgpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJBY3Rpb25NZW51Q29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIuaAkocmV2aXNpb24gMTc1MTkxKQor
KysgU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBY3Rpb25NZW51Q29udHJvbGxlci5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMywxMSArMjMsMTQgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCisjaW1wb3J0ICJXZWJWaWV3UHJpdmF0ZS5oIgorCiBAY2xhc3Mg
V2ViVmlldzsKIAogQGludGVyZmFjZSBXZWJBY3Rpb25NZW51Q29udHJvbGxlciA6IE5TT2JqZWN0
IHsKIEBwcml2YXRlCiAgICAgV2ViVmlldyAqX3dlYlZpZXc7CisgICAgV2ViQWN0aW9uTWVudVR5
cGUgX3R5cGU7CiB9CiAKIC0gKGlkKWluaXRXaXRoV2ViVmlldzooV2ViVmlldyAqKXdlYlZpZXc7
CkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVy
Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQWN0aW9uTWVu
dUNvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE3NTE5MSkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTU4LDcg
KzU4LDkgQEAgLSAoaWQpaW5pdFdpdGhXZWJWaWV3OihXZWJWaWV3ICopd2ViVmlldwogewogICAg
IGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQogICAgICAgICByZXR1cm4gbmlsOworCiAgICAg
X3dlYlZpZXcgPSB3ZWJWaWV3OworICAgIF90eXBlID0gV2ViQWN0aW9uTWVudU5vbmU7CiAKICAg
ICByZXR1cm4gc2VsZjsKIH0KQEAgLTgxLDkgKzgzLDExIEBAIC0gKHZvaWQpcHJlcGFyZUZvck1l
bnU6KE5TTWVudSAqKW1lbnUgd2kKIAogICAgIE5TRGljdGlvbmFyeSAqaGl0VGVzdFJlc3VsdCA9
IFtfd2ViVmlldyBlbGVtZW50QXRQb2ludDpbX3dlYlZpZXcgY29udmVydFBvaW50OmV2ZW50Lmxv
Y2F0aW9uSW5XaW5kb3cgZnJvbVZpZXc6bmlsXV07CiAKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxk
IHN1cHBvcnQgQVBJIGZvciBjbGllbnRzIHRvIGN1c3RvbWl6ZSB0aGUgbWVudSBpdGVtcy4KICAg
ICBOU0FycmF5ICptZW51SXRlbXMgPSBbc2VsZiBfZGVmYXVsdE1lbnVJdGVtc0ZvckhpdFRlc3RS
ZXN1bHQ6aGl0VGVzdFJlc3VsdF07CiAKKyAgICAvLyBBbGxvdyBjbGllbnRzIHRvIGN1c3RvbWl6
ZSB0aGUgbWVudSBpdGVtcy4KKyAgICBtZW51SXRlbXMgPSBbX3dlYlZpZXcgX2FjdGlvbk1lbnVJ
dGVtc0ZvckhpdFRlc3RSZXN1bHQ6aGl0VGVzdFJlc3VsdCB3aXRoVHlwZTpfdHlwZSBkZWZhdWx0
QWN0aW9uTWVudUl0ZW1zOm1lbnVJdGVtc107CisKICAgICBmb3IgKE5TTWVudUl0ZW0gKml0ZW0g
aW4gbWVudUl0ZW1zKQogICAgICAgICBbYWN0aW9uTWVudSBhZGRJdGVtOml0ZW1dOwogfQpAQCAt
MjM2LDkgKzI0MCwxMyBAQCAtIChOU0FycmF5ICopX2RlZmF1bHRNZW51SXRlbXNGb3JMaW5rOihO
CiAtIChOU0FycmF5ICopX2RlZmF1bHRNZW51SXRlbXNGb3JIaXRUZXN0UmVzdWx0OihOU0RpY3Rp
b25hcnkgKiloaXRUZXN0UmVzdWx0CiB7CiAgICAgTlNVUkwgKnVybCA9IFtoaXRUZXN0UmVzdWx0
IG9iamVjdEZvcktleTpXZWJFbGVtZW50TGlua1VSTEtleV07Ci0gICAgaWYgKHVybCkKKworICAg
IGlmICh1cmwpIHsKKyAgICAgICAgX3R5cGUgPSBXZWJBY3Rpb25NZW51TGluazsKICAgICAgICAg
cmV0dXJuIFtzZWxmIF9kZWZhdWx0TWVudUl0ZW1zRm9yTGluazpoaXRUZXN0UmVzdWx0XTsKKyAg
ICB9CiAKKyAgICBfdHlwZSA9IFdlYkFjdGlvbk1lbnVOb25lOwogICAgIHJldHVybiBAWyBdOwog
fQogCkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRl
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRl
UHJpdmF0ZS5oCShyZXZpc2lvbiAxNzUxOTEpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYlVJRGVsZWdhdGVQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2OSwxMSArMjY5LDQg
QEAgQGludGVyZmFjZSBOU09iamVjdCAoV2ViVUlEZWxlZ2F0ZVByaXZhdAogCiAtIChOU0RhdGEg
Kil3ZWJDcnlwdG9NYXN0ZXJLZXlGb3JXZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyOwogCi1lbnVt
IHsKLSAgICBXZWJBY3Rpb25NZW51SXRlbVRhZ05vQWN0aW9uID0gMCwKLSAgICBXZWJBY3Rpb25N
ZW51SXRlbVRhZ09wZW5MaW5rSW5EZWZhdWx0QnJvd3NlciwKLSAgICBXZWJBY3Rpb25NZW51SXRl
bVRhZ1ByZXZpZXdMaW5rLAotICAgIFdlYkFjdGlvbk1lbnVJdGVtVGFnQWRkTGlua1RvU2FmYXJp
UmVhZGluZ0xpc3QKLX07Ci0KIEBlbmQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZp
ZXcubW0JKHJldmlzaW9uIDE3NTE5MSkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
Vmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtODY1OSw2ICs4NjU5LDEzIEBAIC0gKHVpbnQ2NF90
KV9ub3RpZmljYXRpb25JREZvclRlc3Rpbmc6KEoKIH0KIEBlbmQKIAorQGltcGxlbWVudGF0aW9u
IFdlYlZpZXcgKEFjdGlvbk1lbnUpCistIChOU0FycmF5ICopX2FjdGlvbk1lbnVJdGVtc0Zvckhp
dFRlc3RSZXN1bHQ6KE5TRGljdGlvbmFyeSAqKWhpdFRlc3RSZXN1bHQgd2l0aFR5cGU6KFdlYkFj
dGlvbk1lbnVUeXBlKXR5cGUgZGVmYXVsdEFjdGlvbk1lbnVJdGVtczooTlNBcnJheSAqKWRlZmF1
bHRNZW51SXRlbXMKK3sKKyAgICByZXR1cm4gZGVmYXVsdE1lbnVJdGVtczsKK30KK0BlbmQKKwog
I2lmIFBMQVRGT1JNKElPUykKIEBpbXBsZW1lbnRhdGlvbiBXZWJWaWV3IChXZWJWaWV3SU9TUERG
KQogCkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXdQcml2YXRlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3UHJpdmF0ZS5oCShy
ZXZpc2lvbiAxNzUxOTEpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXdQcml2
YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTE3Miw2ICsxNzIsMTggQEAgdHlwZWRlZiBlbnVtIHsK
ICAgICBXZWJOb3RpZmljYXRpb25QZXJtaXNzaW9uRGVuaWVkCiB9IFdlYk5vdGlmaWNhdGlvblBl
cm1pc3Npb247CiAKK2VudW0geworICAgIFdlYkFjdGlvbk1lbnVJdGVtVGFnTm9BY3Rpb24gPSAw
LAorICAgIFdlYkFjdGlvbk1lbnVJdGVtVGFnT3BlbkxpbmtJbkRlZmF1bHRCcm93c2VyLAorICAg
IFdlYkFjdGlvbk1lbnVJdGVtVGFnUHJldmlld0xpbmssCisgICAgV2ViQWN0aW9uTWVudUl0ZW1U
YWdBZGRMaW5rVG9TYWZhcmlSZWFkaW5nTGlzdAorfTsKKwordHlwZWRlZiBlbnVtIHsKKyAgICBX
ZWJBY3Rpb25NZW51Tm9uZSA9IDAsCisgICAgV2ViQWN0aW9uTWVudUxpbmsKK30gV2ViQWN0aW9u
TWVudVR5cGU7CisKICNpZiAhVEFSR0VUX09TX0lQSE9ORQogQGludGVyZmFjZSBXZWJDb250cm9s
bGVyIDogTlNUcmVlQ29udHJvbGxlciB7CiAgICAgSUJPdXRsZXQgV2ViVmlldyAqd2ViVmlldzsK
QEAgLTEwMjksNiArMTA0MSwxMCBAQCBAaW50ZXJmYWNlIFdlYlZpZXcgKFdlYlZpZXdOb3RpZmlj
YXRpb24pCiAtICh1aW50NjRfdClfbm90aWZpY2F0aW9uSURGb3JUZXN0aW5nOihKU1ZhbHVlUmVm
KWpzTm90aWZpY2F0aW9uOwogQGVuZAogCitAaW50ZXJmYWNlIFdlYlZpZXcgKEFjdGlvbk1lbnUp
CistIChOU0FycmF5ICopX2FjdGlvbk1lbnVJdGVtc0ZvckhpdFRlc3RSZXN1bHQ6KE5TRGljdGlv
bmFyeSAqKWhpdFRlc3RSZXN1bHQgd2l0aFR5cGU6KFdlYkFjdGlvbk1lbnVUeXBlKXR5cGUgZGVm
YXVsdEFjdGlvbk1lbnVJdGVtczooTlNBcnJheSAqKWRlZmF1bHRNZW51SXRlbXM7CitAZW5kCisK
ICNpZiBUQVJHRVRfT1NfSVBIT05FCiBAaW50ZXJmYWNlIFdlYlZpZXcgKFdlYlZpZXdJT1NQREYp
CiArIChDbGFzcylfZ2V0UERGUmVwcmVzZW50YXRpb25DbGFzczsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240495</attachid>
            <date>2014-10-27 12:51:07 -0700</date>
            <delta_ts>2014-10-27 13:06:11 -0700</delta_ts>
            <desc>Patch that uses WebUIDelegate</desc>
            <filename>for-review-2.txt</filename>
            <type>text/plain</type>
            <size>4994</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NTIyNykKKysrIFNvdXJjZS9XZWJLaXQv
bWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDE0LTEwLTI3
ICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBQcm92aWRlIGEgd2F5
IGZvciBXZWJLaXQxIGNsaWVudHMgdG8gb3ZlcnJpZGUgZGVmYXVsdCBhY3Rpb24gbWVudSBpdGVt
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4MDY2
CisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMTg0
NTE2MzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBX
ZWJBY3Rpb25NZW51Q29udHJvbGxlciBub3cgaGFzIGFuIGl2YXIgZm9yIHRoZSBXZWJBY3Rpb25N
ZW51VHlwZSBzbyB0aGF0IGl0IGNhbiAKKyAgICAgICAgc2VuZCB0aGF0IGFsb25nIHRvIGNsaWVu
dHMgY3VzdG9taXppbmcgdGhlIG1lbnUuCisgICAgICAgICogV2ViVmlldy9XZWJBY3Rpb25NZW51
Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIu
bW06CisgICAgICAgICgtW1dlYkFjdGlvbk1lbnVDb250cm9sbGVyIHByZXBhcmVGb3JNZW51Ondp
dGhFdmVudDpdKToKKyAgICAgICAgKC1bV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIgX2RlZmF1bHRN
ZW51SXRlbXNGb3JIaXRUZXN0UmVzdWx0Ol0pOgorCisgICAgICAgIE5ldyBlbnVtIGFuZCBuZXcg
U1BJIHRvIGN1c3RvbWl6ZSBtZW51cy4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlVJRGVsZWdhdGVQ
cml2YXRlLmg6CisKIDIwMTQtMTAtMjQgIEJlbmphbWluIFBvdWxhaW4gIDxicG91bGFpbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgRml4IHRoZSBpT1MgYnVpbGQKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVyLmgJKHJldmlzaW9u
IDE3NTIxOCkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRy
b2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsMTEgKzIzLDE0IEBACiAgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2ltcG9ydCAiV2ViVUlEZWxlZ2F0ZVByaXZh
dGUuaCIKKwogQGNsYXNzIFdlYlZpZXc7CiAKIEBpbnRlcmZhY2UgV2ViQWN0aW9uTWVudUNvbnRy
b2xsZXIgOiBOU09iamVjdCB7CiBAcHJpdmF0ZQogICAgIFdlYlZpZXcgKl93ZWJWaWV3OworICAg
IFdlYkFjdGlvbk1lbnVUeXBlIF90eXBlOwogfQogCiAtIChpZClpbml0V2l0aFdlYlZpZXc6KFdl
YlZpZXcgKil3ZWJWaWV3OwpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBY3Rp
b25NZW51Q29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVyLm1tCShyZXZpc2lvbiAxNzUyMTgpCisrKyBTb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVyLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC01OCw3ICs1OCw5IEBAIC0gKGlkKWluaXRXaXRoV2ViVmlldzooV2ViVmlldyAq
KXdlYlZpZXcKIHsKICAgICBpZiAoIShzZWxmID0gW3N1cGVyIGluaXRdKSkKICAgICAgICAgcmV0
dXJuIG5pbDsKKwogICAgIF93ZWJWaWV3ID0gd2ViVmlldzsKKyAgICBfdHlwZSA9IFdlYkFjdGlv
bk1lbnVOb25lOwogCiAgICAgcmV0dXJuIHNlbGY7CiB9CkBAIC04MSw5ICs4MywxMiBAQCAtICh2
b2lkKXByZXBhcmVGb3JNZW51OihOU01lbnUgKiltZW51IHdpCiAKICAgICBOU0RpY3Rpb25hcnkg
KmhpdFRlc3RSZXN1bHQgPSBbX3dlYlZpZXcgZWxlbWVudEF0UG9pbnQ6W193ZWJWaWV3IGNvbnZl
cnRQb2ludDpldmVudC5sb2NhdGlvbkluV2luZG93IGZyb21WaWV3Om5pbF1dOwogCi0gICAgLy8g
RklYTUU6IFdlIHNob3VsZCBzdXBwb3J0IEFQSSBmb3IgY2xpZW50cyB0byBjdXN0b21pemUgdGhl
IG1lbnUgaXRlbXMuCiAgICAgTlNBcnJheSAqbWVudUl0ZW1zID0gW3NlbGYgX2RlZmF1bHRNZW51
SXRlbXNGb3JIaXRUZXN0UmVzdWx0OmhpdFRlc3RSZXN1bHRdOwogCisgICAgLy8gQWxsb3cgY2xp
ZW50cyB0byBjdXN0b21pemUgdGhlIG1lbnUgaXRlbXMuCisgICAgaWYgKFtbX3dlYlZpZXcgVUlE
ZWxlZ2F0ZV0gcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJWaWV3Ol9hY3Rpb25NZW51
SXRlbXNGb3JIaXRUZXN0UmVzdWx0OndpdGhUeXBlOmRlZmF1bHRBY3Rpb25NZW51SXRlbXM6KV0p
CisgICAgICAgIG1lbnVJdGVtcyA9IFtbX3dlYlZpZXcgX1VJRGVsZWdhdGVGb3J3YXJkZXJdIHdl
YlZpZXc6X3dlYlZpZXcgX2FjdGlvbk1lbnVJdGVtc0ZvckhpdFRlc3RSZXN1bHQ6aGl0VGVzdFJl
c3VsdCB3aXRoVHlwZTpfdHlwZSBkZWZhdWx0QWN0aW9uTWVudUl0ZW1zOm1lbnVJdGVtc107CisK
ICAgICBmb3IgKE5TTWVudUl0ZW0gKml0ZW0gaW4gbWVudUl0ZW1zKQogICAgICAgICBbYWN0aW9u
TWVudSBhZGRJdGVtOml0ZW1dOwogfQpAQCAtMjM2LDkgKzI0MSwxMyBAQCAtIChOU0FycmF5ICop
X2RlZmF1bHRNZW51SXRlbXNGb3JMaW5rOihOCiAtIChOU0FycmF5ICopX2RlZmF1bHRNZW51SXRl
bXNGb3JIaXRUZXN0UmVzdWx0OihOU0RpY3Rpb25hcnkgKiloaXRUZXN0UmVzdWx0CiB7CiAgICAg
TlNVUkwgKnVybCA9IFtoaXRUZXN0UmVzdWx0IG9iamVjdEZvcktleTpXZWJFbGVtZW50TGlua1VS
TEtleV07Ci0gICAgaWYgKHVybCkKKworICAgIGlmICh1cmwpIHsKKyAgICAgICAgX3R5cGUgPSBX
ZWJBY3Rpb25NZW51TGluazsKICAgICAgICAgcmV0dXJuIFtzZWxmIF9kZWZhdWx0TWVudUl0ZW1z
Rm9yTGluazpoaXRUZXN0UmVzdWx0XTsKKyAgICB9CiAKKyAgICBfdHlwZSA9IFdlYkFjdGlvbk1l
bnVOb25lOwogICAgIHJldHVybiBAWyBdOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCShyZXZpc2lvbiAxNzUyMTgpCisr
KyBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTExMiw2ICsxMTIsMTggQEAgZW51bSB7IAogICAgIFdlYk1lbnVJdGVtVGFn
QmFzZUFwcGxpY2F0aW9uID0gMTAwMDAKIH07CiAKK2VudW0geworICAgIFdlYkFjdGlvbk1lbnVJ
dGVtVGFnTm9BY3Rpb24gPSAwLAorICAgIFdlYkFjdGlvbk1lbnVJdGVtVGFnT3BlbkxpbmtJbkRl
ZmF1bHRCcm93c2VyLAorICAgIFdlYkFjdGlvbk1lbnVJdGVtVGFnUHJldmlld0xpbmssCisgICAg
V2ViQWN0aW9uTWVudUl0ZW1UYWdBZGRMaW5rVG9TYWZhcmlSZWFkaW5nTGlzdAorfTsKKwordHlw
ZWRlZiBlbnVtIHsKKyAgICBXZWJBY3Rpb25NZW51Tm9uZSA9IDAsCisgICAgV2ViQWN0aW9uTWVu
dUxpbmsKK30gV2ViQWN0aW9uTWVudVR5cGU7CisKIC8vIE1lc3NhZ2UgU291cmNlcy4KIGV4dGVy
biBOU1N0cmluZyAqV2ViQ29uc29sZU1lc3NhZ2VYTUxNZXNzYWdlU291cmNlOwogZXh0ZXJuIE5T
U3RyaW5nICpXZWJDb25zb2xlTWVzc2FnZUpTTWVzc2FnZVNvdXJjZTsKQEAgLTE5Myw2ICsyMDUs
NyBAQCBAaW50ZXJmYWNlIE5TT2JqZWN0IChXZWJVSURlbGVnYXRlUHJpdmF0CiAtICh2b2lkKXdl
YlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgd2lsbFBvcHVwTWVudTooTlNNZW51ICopbWVudTsKIC0g
KHZvaWQpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciBjb250ZXh0TWVudUl0ZW1TZWxlY3RlZDoo
TlNNZW51SXRlbSAqKWl0ZW0gZm9yRWxlbWVudDooTlNEaWN0aW9uYXJ5ICopZWxlbWVudDsKIC0g
KHZvaWQpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciBzYXZlRnJhbWVWaWV3OihXZWJGcmFtZVZp
ZXcgKilmcmFtZVZpZXcgc2hvd2luZ1BhbmVsOihCT09MKXNob3dpbmdQYW5lbDsKKy0gKE5TQXJy
YXkgKil3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIF9hY3Rpb25NZW51SXRlbXNGb3JIaXRUZXN0
UmVzdWx0OihOU0RpY3Rpb25hcnkgKiloaXRUZXN0UmVzdWx0IHdpdGhUeXBlOihXZWJBY3Rpb25N
ZW51VHlwZSl0eXBlIGRlZmF1bHRBY3Rpb25NZW51SXRlbXM6KE5TQXJyYXkgKilkZWZhdWx0TWVu
dUl0ZW1zOwogI2VuZGlmCiAtIChCT09MKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgZGlkUHJl
c3NNaXNzaW5nUGx1Z2luQnV0dG9uOihET01FbGVtZW50ICopZWxlbWVudDsKIC8qIQpAQCAtMjY5
LDExICsyODIsNCBAQCBAaW50ZXJmYWNlIE5TT2JqZWN0IChXZWJVSURlbGVnYXRlUHJpdmF0CiAK
IC0gKE5TRGF0YSAqKXdlYkNyeXB0b01hc3RlcktleUZvcldlYlZpZXc6KFdlYlZpZXcgKilzZW5k
ZXI7CiAKLWVudW0gewotICAgIFdlYkFjdGlvbk1lbnVJdGVtVGFnTm9BY3Rpb24gPSAwLAotICAg
IFdlYkFjdGlvbk1lbnVJdGVtVGFnT3BlbkxpbmtJbkRlZmF1bHRCcm93c2VyLAotICAgIFdlYkFj
dGlvbk1lbnVJdGVtVGFnUHJldmlld0xpbmssCi0gICAgV2ViQWN0aW9uTWVudUl0ZW1UYWdBZGRM
aW5rVG9TYWZhcmlSZWFkaW5nTGlzdAotfTsKLQogQGVuZAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240496</attachid>
            <date>2014-10-27 13:06:11 -0700</date>
            <delta_ts>2014-10-27 13:07:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>for-review-3.txt</filename>
            <type>text/plain</type>
            <size>4984</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NTIyNykKKysrIFNvdXJjZS9XZWJLaXQv
bWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDE0LTEwLTI3
ICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBQcm92aWRlIGEgd2F5
IGZvciBXZWJLaXQxIGNsaWVudHMgdG8gb3ZlcnJpZGUgZGVmYXVsdCBhY3Rpb24gbWVudSBpdGVt
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4MDY2
CisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMTg0
NTE2MzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBX
ZWJBY3Rpb25NZW51Q29udHJvbGxlciBub3cgaGFzIGFuIGl2YXIgZm9yIHRoZSBXZWJBY3Rpb25N
ZW51VHlwZSBzbyB0aGF0IGl0IGNhbiAKKyAgICAgICAgc2VuZCB0aGF0IGFsb25nIHRvIGNsaWVu
dHMgY3VzdG9taXppbmcgdGhlIG1lbnUuCisgICAgICAgICogV2ViVmlldy9XZWJBY3Rpb25NZW51
Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIu
bW06CisgICAgICAgICgtW1dlYkFjdGlvbk1lbnVDb250cm9sbGVyIHByZXBhcmVGb3JNZW51Ondp
dGhFdmVudDpdKToKKyAgICAgICAgKC1bV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIgX2RlZmF1bHRN
ZW51SXRlbXNGb3JIaXRUZXN0UmVzdWx0Ol0pOgorCisgICAgICAgIE5ldyBlbnVtIGFuZCBuZXcg
U1BJIHRvIGN1c3RvbWl6ZSBtZW51cy4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlVJRGVsZWdhdGVQ
cml2YXRlLmg6CisKIDIwMTQtMTAtMjQgIEJlbmphbWluIFBvdWxhaW4gIDxicG91bGFpbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgRml4IHRoZSBpT1MgYnVpbGQKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVyLmgJKHJldmlzaW9u
IDE3NTIxOCkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViQWN0aW9uTWVudUNvbnRy
b2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsMTEgKzIzLDE0IEBACiAgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2ltcG9ydCAiV2ViVUlEZWxlZ2F0ZVByaXZh
dGUuaCIKKwogQGNsYXNzIFdlYlZpZXc7CiAKIEBpbnRlcmZhY2UgV2ViQWN0aW9uTWVudUNvbnRy
b2xsZXIgOiBOU09iamVjdCB7CiBAcHJpdmF0ZQogICAgIFdlYlZpZXcgKl93ZWJWaWV3OworICAg
IFdlYkFjdGlvbk1lbnVUeXBlIF90eXBlOwogfQogCiAtIChpZClpbml0V2l0aFdlYlZpZXc6KFdl
YlZpZXcgKil3ZWJWaWV3OwpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJBY3Rp
b25NZW51Q29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVyLm1tCShyZXZpc2lvbiAxNzUyMTgpCisrKyBTb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkFjdGlvbk1lbnVDb250cm9sbGVyLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC01OCw3ICs1OCw5IEBAIC0gKGlkKWluaXRXaXRoV2ViVmlldzooV2ViVmlldyAq
KXdlYlZpZXcKIHsKICAgICBpZiAoIShzZWxmID0gW3N1cGVyIGluaXRdKSkKICAgICAgICAgcmV0
dXJuIG5pbDsKKwogICAgIF93ZWJWaWV3ID0gd2ViVmlldzsKKyAgICBfdHlwZSA9IFdlYkFjdGlv
bk1lbnVOb25lOwogCiAgICAgcmV0dXJuIHNlbGY7CiB9CkBAIC04MSw5ICs4MywxMiBAQCAtICh2
b2lkKXByZXBhcmVGb3JNZW51OihOU01lbnUgKiltZW51IHdpCiAKICAgICBOU0RpY3Rpb25hcnkg
KmhpdFRlc3RSZXN1bHQgPSBbX3dlYlZpZXcgZWxlbWVudEF0UG9pbnQ6W193ZWJWaWV3IGNvbnZl
cnRQb2ludDpldmVudC5sb2NhdGlvbkluV2luZG93IGZyb21WaWV3Om5pbF1dOwogCi0gICAgLy8g
RklYTUU6IFdlIHNob3VsZCBzdXBwb3J0IEFQSSBmb3IgY2xpZW50cyB0byBjdXN0b21pemUgdGhl
IG1lbnUgaXRlbXMuCiAgICAgTlNBcnJheSAqbWVudUl0ZW1zID0gW3NlbGYgX2RlZmF1bHRNZW51
SXRlbXNGb3JIaXRUZXN0UmVzdWx0OmhpdFRlc3RSZXN1bHRdOwogCisgICAgLy8gQWxsb3cgY2xp
ZW50cyB0byBjdXN0b21pemUgdGhlIG1lbnUgaXRlbXMuCisgICAgaWYgKFtbX3dlYlZpZXcgVUlE
ZWxlZ2F0ZV0gcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihfd2ViVmlldzphY3Rpb25NZW51
SXRlbXNGb3JIaXRUZXN0UmVzdWx0OndpdGhUeXBlOmRlZmF1bHRBY3Rpb25NZW51SXRlbXM6KV0p
CisgICAgICAgIG1lbnVJdGVtcyA9IFtbX3dlYlZpZXcgVUlEZWxlZ2F0ZV0gX3dlYlZpZXc6X3dl
YlZpZXcgYWN0aW9uTWVudUl0ZW1zRm9ySGl0VGVzdFJlc3VsdDpoaXRUZXN0UmVzdWx0IHdpdGhU
eXBlOl90eXBlIGRlZmF1bHRBY3Rpb25NZW51SXRlbXM6bWVudUl0ZW1zXTsKKwogICAgIGZvciAo
TlNNZW51SXRlbSAqaXRlbSBpbiBtZW51SXRlbXMpCiAgICAgICAgIFthY3Rpb25NZW51IGFkZEl0
ZW06aXRlbV07CiB9CkBAIC0yMzYsOSArMjQxLDEzIEBAIC0gKE5TQXJyYXkgKilfZGVmYXVsdE1l
bnVJdGVtc0Zvckxpbms6KE4KIC0gKE5TQXJyYXkgKilfZGVmYXVsdE1lbnVJdGVtc0ZvckhpdFRl
c3RSZXN1bHQ6KE5TRGljdGlvbmFyeSAqKWhpdFRlc3RSZXN1bHQKIHsKICAgICBOU1VSTCAqdXJs
ID0gW2hpdFRlc3RSZXN1bHQgb2JqZWN0Rm9yS2V5OldlYkVsZW1lbnRMaW5rVVJMS2V5XTsKLSAg
ICBpZiAodXJsKQorCisgICAgaWYgKHVybCkgeworICAgICAgICBfdHlwZSA9IFdlYkFjdGlvbk1l
bnVMaW5rOwogICAgICAgICByZXR1cm4gW3NlbGYgX2RlZmF1bHRNZW51SXRlbXNGb3JMaW5rOmhp
dFRlc3RSZXN1bHRdOworICAgIH0KIAorICAgIF90eXBlID0gV2ViQWN0aW9uTWVudU5vbmU7CiAg
ICAgcmV0dXJuIEBbIF07CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
VUlEZWxlZ2F0ZVByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlVJRGVsZWdhdGVQcml2YXRlLmgJKHJldmlzaW9uIDE3NTIxOCkKKysrIFNvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaAkod29ya2luZyBjb3B5KQpA
QCAtMTEyLDYgKzExMiwxOCBAQCBlbnVtIHsgCiAgICAgV2ViTWVudUl0ZW1UYWdCYXNlQXBwbGlj
YXRpb24gPSAxMDAwMAogfTsKIAorZW51bSB7CisgICAgV2ViQWN0aW9uTWVudUl0ZW1UYWdOb0Fj
dGlvbiA9IDAsCisgICAgV2ViQWN0aW9uTWVudUl0ZW1UYWdPcGVuTGlua0luRGVmYXVsdEJyb3dz
ZXIsCisgICAgV2ViQWN0aW9uTWVudUl0ZW1UYWdQcmV2aWV3TGluaywKKyAgICBXZWJBY3Rpb25N
ZW51SXRlbVRhZ0FkZExpbmtUb1NhZmFyaVJlYWRpbmdMaXN0Cit9OworCit0eXBlZGVmIGVudW0g
eworICAgIFdlYkFjdGlvbk1lbnVOb25lID0gMCwKKyAgICBXZWJBY3Rpb25NZW51TGluaworfSBX
ZWJBY3Rpb25NZW51VHlwZTsKKwogLy8gTWVzc2FnZSBTb3VyY2VzLgogZXh0ZXJuIE5TU3RyaW5n
ICpXZWJDb25zb2xlTWVzc2FnZVhNTE1lc3NhZ2VTb3VyY2U7CiBleHRlcm4gTlNTdHJpbmcgKldl
YkNvbnNvbGVNZXNzYWdlSlNNZXNzYWdlU291cmNlOwpAQCAtMTkzLDYgKzIwNSw3IEBAIEBpbnRl
cmZhY2UgTlNPYmplY3QgKFdlYlVJRGVsZWdhdGVQcml2YXQKIC0gKHZvaWQpd2ViVmlldzooV2Vi
VmlldyAqKXNlbmRlciB3aWxsUG9wdXBNZW51OihOU01lbnUgKiltZW51OwogLSAodm9pZCl3ZWJW
aWV3OihXZWJWaWV3ICopc2VuZGVyIGNvbnRleHRNZW51SXRlbVNlbGVjdGVkOihOU01lbnVJdGVt
ICopaXRlbSBmb3JFbGVtZW50OihOU0RpY3Rpb25hcnkgKillbGVtZW50OwogLSAodm9pZCl3ZWJW
aWV3OihXZWJWaWV3ICopc2VuZGVyIHNhdmVGcmFtZVZpZXc6KFdlYkZyYW1lVmlldyAqKWZyYW1l
VmlldyBzaG93aW5nUGFuZWw6KEJPT0wpc2hvd2luZ1BhbmVsOworLSAoTlNBcnJheSAqKV93ZWJW
aWV3OihXZWJWaWV3ICopc2VuZGVyIGFjdGlvbk1lbnVJdGVtc0ZvckhpdFRlc3RSZXN1bHQ6KE5T
RGljdGlvbmFyeSAqKWhpdFRlc3RSZXN1bHQgd2l0aFR5cGU6KFdlYkFjdGlvbk1lbnVUeXBlKXR5
cGUgZGVmYXVsdEFjdGlvbk1lbnVJdGVtczooTlNBcnJheSAqKWRlZmF1bHRNZW51SXRlbXM7CiAj
ZW5kaWYKIC0gKEJPT0wpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciBkaWRQcmVzc01pc3NpbmdQ
bHVnaW5CdXR0b246KERPTUVsZW1lbnQgKillbGVtZW50OwogLyohCkBAIC0yNjksMTEgKzI4Miw0
IEBAIEBpbnRlcmZhY2UgTlNPYmplY3QgKFdlYlVJRGVsZWdhdGVQcml2YXQKIAogLSAoTlNEYXRh
ICopd2ViQ3J5cHRvTWFzdGVyS2V5Rm9yV2ViVmlldzooV2ViVmlldyAqKXNlbmRlcjsKIAotZW51
bSB7Ci0gICAgV2ViQWN0aW9uTWVudUl0ZW1UYWdOb0FjdGlvbiA9IDAsCi0gICAgV2ViQWN0aW9u
TWVudUl0ZW1UYWdPcGVuTGlua0luRGVmYXVsdEJyb3dzZXIsCi0gICAgV2ViQWN0aW9uTWVudUl0
ZW1UYWdQcmV2aWV3TGluaywKLSAgICBXZWJBY3Rpb25NZW51SXRlbVRhZ0FkZExpbmtUb1NhZmFy
aVJlYWRpbmdMaXN0Ci19OwotCiBAZW5kCg==
</data>
<flag name="review"
          id="265273"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>