<?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>3535</bug_id>
          
          <creation_ts>2005-06-14 14:47:56 -0700</creation_ts>
          <short_desc>Spelling suggestions in the context menu don&apos;t call the should* delegate methods</short_desc>
          <delta_ts>2005-07-03 15:47:30 -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>HTML Editing</component>
          <version>412</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>VERIFIED</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="Duncan Wilcox">duncan</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>11918</commentid>
    <comment_count>0</comment_count>
    <who name="Duncan Wilcox">duncan</who>
    <bug_when>2005-06-14 14:47:56 -0700</bug_when>
    <thetext>Type some miss-spelled text, control click, select a correct spelling from the context menu, the delegate:

- (BOOL)webView:(WebView *)webView shouldInsertText:(NSString *)text replacingDOMRange:(DOMRange 
*)range givenAction:(WebViewInsertAction)action

isn&apos;t called, instead the:

- (void)webViewDidChange:(NSNotification *)notification

is called right away.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11921</commentid>
    <comment_count>1</comment_count>
      <attachid>2339</attachid>
    <who name="Duncan Wilcox">duncan</who>
    <bug_when>2005-06-14 15:03:13 -0700</bug_when>
    <thetext>Created attachment 2339
Fixes the problem</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12069</commentid>
    <comment_count>2</comment_count>
    <who name="Joost de Valk (AlthA)">joost</who>
    <bug_when>2005-06-14 23:31:25 -0700</bug_when>
    <thetext>I&apos;d like to know if this is a real problem? Could you attach a testcase?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12097</commentid>
    <comment_count>3</comment_count>
      <attachid>2355</attachid>
    <who name="Duncan Wilcox">duncan</who>
    <bug_when>2005-06-15 03:18:09 -0700</bug_when>
    <thetext>Created attachment 2355
testcase

I suppose that it doesn&apos;t make any difference at all if you are using the
default editing delegate, however it certainly is a violation of the editing
delegate protocol.

The editing delegate is allowed to return a NO/FALSE to
webView:shouldInsertText:replacingDOMRange:givenAction:, for example try
building the attached testcase (create an empty project in xcode and replace
main.m with this code) and typing &quot;three&quot;.

The editing delegate replaces all &quot;e&quot;s with &quot;i&quot;s, so you will see &quot;thrii&quot;. The
contextual menu will propose &quot;three&quot;, and when you select it you will
incorrectly get &quot;three&quot;, because the webkit isn&apos;t going through the delegate
correctly. With the patch applied you will get &quot;thrii&quot; instead, which is weird
but is correct :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12996</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-06-23 14:26:38 -0700</bug_when>
    <thetext>Yes, this is a real editing bug. We have lots of cases where we&apos;re not calling the editing delegates, and we 
should be doing that consistently in all cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12999</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-06-23 14:29:58 -0700</bug_when>
    <thetext>It&apos;s hard to make test cases for these things -- we&apos;d need to enhance DumpRenderTree to dump when the 
editing delegate is called at the very least.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>13046</commentid>
    <comment_count>6</comment_count>
      <attachid>2626</attachid>
    <who name="Duncan Wilcox">duncan</who>
    <bug_when>2005-06-24 04:02:25 -0700</bug_when>
    <thetext>Created attachment 2626
Patch and ChangeLog entry</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>13089</commentid>
    <comment_count>7</comment_count>
      <attachid>2626</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-06-24 08:36:06 -0700</bug_when>
    <thetext>Comment on attachment 2626
Patch and ChangeLog entry

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>13801</commentid>
    <comment_count>8</comment_count>
    <who name="Joost de Valk (AlthA)">joost</who>
    <bug_when>2005-07-03 08:07:55 -0700</bug_when>
    <thetext>Reporter, please mark this bug as verified if it has been fixed for you.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>2339</attachid>
            <date>2005-06-14 15:03:13 -0700</date>
            <delta_ts>2005-06-24 04:02:25 -0700</delta_ts>
            <desc>Fixes the problem</desc>
            <filename>spelling.txt</filename>
            <type>text/plain</type>
            <size>905</size>
            <attacher name="Duncan Wilcox">duncan</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9XZWJWaWV3LnN1YnByb2ovV2ViSFRNTFZpZXcubQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJD
UyBmaWxlOiAvY3ZzL3Jvb3QvV2ViS2l0L1dlYlZpZXcuc3VicHJvai9XZWJIVE1MVmlldy5tLHYK
cmV0cmlldmluZyByZXZpc2lvbiAxLjQ1MQpkaWZmIC1wIC11IC1yMS40NTEgV2ViS2l0L1dlYlZp
ZXcuc3VicHJvai9XZWJIVE1MVmlldy5tCi0tLSBXZWJLaXQvV2ViVmlldy5zdWJwcm9qL1dlYkhU
TUxWaWV3Lm0JMjAwNS8wNi8xNCAxNzozNjozMgkxLjQ1MQorKysgV2ViS2l0L1dlYlZpZXcuc3Vi
cHJvai9XZWJIVE1MVmlldy5tCTIwMDUvMDYvMTQgMjI6MDM6MTgKQEAgLTE1MjQsNyArMTUyNCw5
IEBAIHN0YXRpYyBXZWJIVE1MVmlldyAqbGFzdEhpdFZpZXcgPSBuaWw7CiAtICh2b2lkKV9jaGFu
Z2VTcGVsbGluZ0Zyb21NZW51OihpZClzZW5kZXIKIHsKICAgICBBU1NFUlQoW1tzZWxmIHNlbGVj
dGVkU3RyaW5nXSBsZW5ndGhdICE9IDApOwotICAgIFtbc2VsZiBfYnJpZGdlXSByZXBsYWNlU2Vs
ZWN0aW9uV2l0aFRleHQ6W3NlbmRlciB0aXRsZV0gc2VsZWN0UmVwbGFjZW1lbnQ6WUVTIHNtYXJ0
UmVwbGFjZTpOT107CisgICAgaWYgKFtzZWxmIF9zaG91bGRSZXBsYWNlU2VsZWN0aW9uV2l0aFRl
eHQ6W3NlbmRlciB0aXRsZV0gZ2l2ZW5BY3Rpb246V2ViVmlld0luc2VydEFjdGlvblBhc3RlZF0p
IHsKKyAgICAgICAgW1tzZWxmIF9icmlkZ2VdIHJlcGxhY2VTZWxlY3Rpb25XaXRoVGV4dDpbc2Vu
ZGVyIHRpdGxlXSBzZWxlY3RSZXBsYWNlbWVudDpZRVMgc21hcnRSZXBsYWNlOk5PXTsKKyAgICB9
CiB9CiAKIC0gKHZvaWQpX2lnbm9yZVNwZWxsaW5nRnJvbU1lbnU6KGlkKXNlbmRlcgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>2355</attachid>
            <date>2005-06-15 03:18:09 -0700</date>
            <delta_ts>2005-06-15 03:18:09 -0700</delta_ts>
            <desc>testcase</desc>
            <filename>main.m</filename>
            <type>application/octet-stream</type>
            <size>1468</size>
            <attacher name="Duncan Wilcox">duncan</attacher>
            
              <data encoding="base64">I2ltcG9ydCA8Q29jb2EvQ29jb2EuaD4KI2ltcG9ydCA8V2ViS2l0L1dlYktpdC5oPgoKQGludGVy
ZmFjZSBUZXN0IDogTlNPYmplY3QKQGVuZAoKQGltcGxlbWVudGF0aW9uIFRlc3QKLSAoQk9PTCl3
ZWJWaWV3OihXZWJWaWV3ICopd2ViVmlldwogc2hvdWxkSW5zZXJ0VGV4dDooTlNTdHJpbmcgKil0
ZXh0CiByZXBsYWNpbmdET01SYW5nZTooRE9NUmFuZ2UgKilyYW5nZQoJZ2l2ZW5BY3Rpb246KFdl
YlZpZXdJbnNlcnRBY3Rpb24pYWN0aW9uCnsKCU5TTXV0YWJsZVN0cmluZyAqY2hhbmdlZCA9IFtO
U011dGFibGVTdHJpbmcgc3RyaW5nV2l0aFN0cmluZzp0ZXh0XTsKCVtjaGFuZ2VkIHJlcGxhY2VP
Y2N1cnJlbmNlc09mU3RyaW5nOkAiZSIgd2l0aFN0cmluZzpAImkiIG9wdGlvbnM6MCByYW5nZTpO
U01ha2VSYW5nZSgwLCBbY2hhbmdlZCBsZW5ndGhdKV07Cglbd2ViVmlldyByZXBsYWNlU2VsZWN0
aW9uV2l0aFRleHQ6Y2hhbmdlZF07CiAgICBET01SYW5nZSAqciA9IFt3ZWJWaWV3IHNlbGVjdGVk
RE9NUmFuZ2VdOwogICAgW3IgY29sbGFwc2U6Tk9dOwogICAgW3dlYlZpZXcgc2V0U2VsZWN0ZWRE
T01SYW5nZTpyIGFmZmluaXR5Ok5TU2VsZWN0aW9uQWZmaW5pdHlVcHN0cmVhbV07CglyZXR1cm4g
Tk87Cn0KCQotICh2b2lkKXdlYlZpZXdEaWRDaGFuZ2U6KE5TTm90aWZpY2F0aW9uICopbm90aWZp
Y2F0aW9uCnsKCU5TTG9nKEAid2ViVmlld0RpZENoYW5nZSIpOwp9CkBlbmQKCmludCBtYWluKGlu
dCBhcmdjLCBjaGFyICphcmd2W10pCnsKCU5TQXV0b3JlbGVhc2VQb29sICpwb29sID0gW1tOU0F1
dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5pdF07CglUZXN0ICp0ID0gW1tUZXN0IGFsbG9jXSBpbml0
XTsKCVtOU0FwcGxpY2F0aW9uIHNoYXJlZEFwcGxpY2F0aW9uXTsKCU5TUmVjdCBjb250ZW50UmVj
dCA9IE5TTWFrZVJlY3QoMjAwLCAxODAsIDMwMCwgMzAwKTsKCU5TUmVjdCB3dlJlY3QgPSBOU01h
a2VSZWN0KDAsIDAsIDMwMCwgMzAwKTsKCU5TV2luZG93ICp3ID0gW1tOU1dpbmRvdyBhbGxvY10g
aW5pdFdpdGhDb250ZW50UmVjdDpjb250ZW50UmVjdAoJCXN0eWxlTWFzazpOU01pbmlhdHVyaXph
YmxlV2luZG93TWFzayB8IE5TQ2xvc2FibGVXaW5kb3dNYXNrIHwgTlNUaXRsZWRXaW5kb3dNYXNr
CgkJYmFja2luZzpOU0JhY2tpbmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOk5PXTsKCVdlYlZpZXcgKnd2
ID0gW1tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOnd2UmVjdF07CglbW3cgY29udGVudFZp
ZXddIGFkZFN1YnZpZXc6d3ZdOwoJW3d2IHNldEVkaXRhYmxlOllFU107Cglbd3Ygc2V0RWRpdGlu
Z0RlbGVnYXRlOnRdOwoJW1t3diBtYWluRnJhbWVdIGxvYWRIVE1MU3RyaW5nOkAiPGh0bWw+PGJv
ZHk+PHA+b25lIHR3byB0aHJlZTwvcD48L2JvZHk+PC9odG1sPiIgYmFzZVVSTDpuaWxdOwoJW3cg
bWFrZUtleUFuZE9yZGVyRnJvbnQ6bmlsXTsKCVtOU0FwcCBydW5dOwp9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>2626</attachid>
            <date>2005-06-24 04:02:25 -0700</date>
            <delta_ts>2005-06-24 08:36:06 -0700</delta_ts>
            <desc>Patch and ChangeLog entry</desc>
            <filename>spelling.txt</filename>
            <type>text/plain</type>
            <size>1810</size>
            <attacher name="Duncan Wilcox">duncan</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L1dl
YktpdC9DaGFuZ2VMb2csdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMzIwNApkaWZmIC1wIC11IC1y
MS4zMjA0IFdlYktpdC9DaGFuZ2VMb2cKLS0tIFdlYktpdC9DaGFuZ2VMb2cgICAgMjAwNS8wNi8y
MiAyMTozMjowNSAgICAgMS4zMjA0CisrKyBXZWJLaXQvQ2hhbmdlTG9nICAgIDIwMDUvMDYvMjQg
MTA6NTY6NTYKQEAgLTEsMyArMSwxNSBAQAorMjAwNS0wNi0yNCAgRHVuY2FuIFdpbGNveCAgPGR1
bmNhbkBtY2xpbmsuaXQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgLSBmaXhlZCA8aHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVn
LmNnaT9pZD0zNTM1PgorICAgICAgICAgIFNwZWxsaW5nIHN1Z2dlc3Rpb25zIGluIHRoZSBjb250
ZXh0IG1lbnUgZG9uJ3QgY2FsbCB0aGUgc2hvdWxkKiBkZWxlZ2F0ZSBtZXRob2RzCisKKyAgICAg
ICAgKiBXZWJWaWV3LnN1YnByb2ovV2ViSFRNTFZpZXcubToKKyAgICAgICAgKC1bV2ViSFRNTFZp
ZXcgX2NoYW5nZVNwZWxsaW5nRnJvbU1lbnU6XSk6CisgICAgICAgIGdpdmUgZGVsZWdhdGUncyB3
ZWJWaWV3OnNob3VsZEluc2VydFRleHQ6cmVwbGFjaW5nRE9NUmFuZ2U6Z2l2ZW5BY3Rpb246IGEg
Y2hhbmNlCisgICAgICAgIHRvIHByZXZlbnQgcmVwbGFjaW5nIG9mIHNlbGVjdGVkIHRleHQKKwog
MjAwNS0wNi0yMiAgSm9obiBTdWxsaXZhbiAgPHN1bGxpdmFuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBDaHJpcyBCbHVtZW5iZXJnLgpJbmRleDogV2ViS2l0L1dlYlZpZXcuc3Vi
cHJvai9XZWJIVE1MVmlldy5tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9XZWJLaXQv
V2ViVmlldy5zdWJwcm9qL1dlYkhUTUxWaWV3Lm0sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDUy
CmRpZmYgLXAgLXUgLXIxLjQ1MiBXZWJLaXQvV2ViVmlldy5zdWJwcm9qL1dlYkhUTUxWaWV3Lm0K
LS0tIFdlYktpdC9XZWJWaWV3LnN1YnByb2ovV2ViSFRNTFZpZXcubSAgICAgICAgMjAwNS8wNi8y
MiAyMTozMjowOSAgICAgMS40NTIKKysrIFdlYktpdC9XZWJWaWV3LnN1YnByb2ovV2ViSFRNTFZp
ZXcubSAgICAgICAgMjAwNS8wNi8yNCAxMTowMDozNQpAQCAtMTUyNCw3ICsxNTI0LDkgQEAgc3Rh
dGljIFdlYkhUTUxWaWV3ICpsYXN0SGl0VmlldyA9IG5pbDsKIC0gKHZvaWQpX2NoYW5nZVNwZWxs
aW5nRnJvbU1lbnU6KGlkKXNlbmRlcgogewogICAgIEFTU0VSVChbW3NlbGYgc2VsZWN0ZWRTdHJp
bmddIGxlbmd0aF0gIT0gMCk7Ci0gICAgW1tzZWxmIF9icmlkZ2VdIHJlcGxhY2VTZWxlY3Rpb25X
aXRoVGV4dDpbc2VuZGVyIHRpdGxlXSBzZWxlY3RSZXBsYWNlbWVudDpZRVMgc21hcnRSZXBsYWNl
Ok5PXTsKKyAgICBpZiAoW3NlbGYgX3Nob3VsZFJlcGxhY2VTZWxlY3Rpb25XaXRoVGV4dDpbc2Vu
ZGVyIHRpdGxlXSBnaXZlbkFjdGlvbjpXZWJWaWV3SW5zZXJ0QWN0aW9uUGFzdGVkXSkgeworICAg
ICAgICBbW3NlbGYgX2JyaWRnZV0gcmVwbGFjZVNlbGVjdGlvbldpdGhUZXh0OltzZW5kZXIgdGl0
bGVdIHNlbGVjdFJlcGxhY2VtZW50OllFUyBzbWFydFJlcGxhY2U6Tk9dOworICAgIH0KIH0KIAog
LSAodm9pZClfaWdub3JlU3BlbGxpbmdGcm9tTWVudTooaWQpc2VuZGVyCg==
</data>
<flag name="review"
          id="102"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>