<?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>60840</bug_id>
          
          <creation_ts>2011-05-14 11:30:59 -0700</creation_ts>
          <short_desc>WebKit2: Smart cut&amp;paste is broken</short_desc>
          <delta_ts>2011-05-14 14:23:41 -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>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>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>andersca</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>404082</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-05-14 11:30:59 -0700</bug_when>
    <thetext>Steps to reproduce:

1. Open e.g. http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_textarea
2. Double click a word
3. Cmd+X

Expected results: the word is cut, only one space of the two that were surrounding it remains.
Actual results: both spaces remain.

All we likely need to do is to set a preference. I&apos;m not sure, but we may not be using &quot;Mac editing behavior&quot; at all in WK2, losing a lot of other important features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404084</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-05-14 11:31:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/9439927&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404087</commentid>
    <comment_count>2</comment_count>
      <attachid>93559</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-05-14 12:00:58 -0700</bug_when>
    <thetext>Created attachment 93559
proposed fix

No, this doesn&apos;t affect editing behavior, only this one feature.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404088</commentid>
    <comment_count>3</comment_count>
      <attachid>93559</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-05-14 12:07:17 -0700</bug_when>
    <thetext>Comment on attachment 93559
proposed fix

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

&gt; Source/WebKit2/UIProcess/mac/TextCheckerMac.mm:183
&gt; +        smartInsertDeleteEnabled = ![[NSUserDefaults standardUserDefaults] objectForKey:WebSmartInsertDeleteEnabled] || [[NSUserDefaults standardUserDefaults] boolForKey:WebSmartInsertDeleteEnabled];

I don&apos;t understand the first part here. smartInsertDelete is enabled when [[NSUserDefaults standardUserDefaults] objectForKey:WebSmartInsertDeleteEnabled] returns nil?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404089</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-05-14 12:28:51 -0700</bug_when>
    <thetext>&gt; I don&apos;t understand the first part here. smartInsertDelete is enabled when [[NSUserDefaults standardUserDefaults] objectForKey:WebSmartInsertDeleteEnabled] returns nil?

Yes. It should be enabled for users who never touched this preference in context menu. Here is what WebKit1 does in -[WebViewPrivate init]:

    smartInsertDeleteEnabled = ![[NSUserDefaults standardUserDefaults] objectForKey:WebSmartInsertDeleteEnabled]
        || [[NSUserDefaults standardUserDefaults] boolForKey:WebSmartInsertDeleteEnabled];</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404119</commentid>
    <comment_count>5</comment_count>
      <attachid>93559</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-14 14:23:36 -0700</bug_when>
    <thetext>Comment on attachment 93559
proposed fix

Clearing flags on attachment: 93559

Committed r86497: &lt;http://trac.webkit.org/changeset/86497&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404120</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-14 14:23:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>93559</attachid>
            <date>2011-05-14 12:00:58 -0700</date>
            <delta_ts>2011-05-14 14:23:36 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>SmartCutPaste.txt</filename>
            <type>text/plain</type>
            <size>1482</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDg2NDkzKQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDUtMTQgIEFsZXhleSBQ
cm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgV2ViS2l0MjogU21hcnQgY3V0JnBhc3RlIGlzIGJyb2tlbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjA4NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzk0Mzk5Mjc+CisKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFj
L1RleHRDaGVja2VyTWFjLm1tOiAoV2ViS2l0OjpUZXh0Q2hlY2tlcjo6aXNTbWFydEluc2VydERl
bGV0ZUVuYWJsZWQpOgorICAgICAgICBNYXRjaCBXSzEgLSB0aGlzIGRlZmF1bHQgZGVmYXVsdHMg
dG8gWUVTIGlmIG5vdCBwcmVzZW50LgorCiAyMDExLTA1LTE0ICBBbmRlcnMgQ2FybHNzb24gIDxh
bmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KSW5k
ZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvVGV4dENoZWNrZXJNYWMubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9UZXh0Q2hlY2tlck1hYy5tbQko
cmV2aXNpb24gODY0MTApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1RleHRDaGVj
a2VyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xODAsNyArMTgwLDcgQEAgYm9vbCBUZXh0Q2hl
Y2tlcjo6aXNTbWFydEluc2VydERlbGV0ZUVuYQogICAgIHN0YXRpYyBib29sIHJlYWRTbWFydElu
c2VydERlbGV0ZUVuYWJsZWREZWZhdWx0OwogCiAgICAgaWYgKCFyZWFkU21hcnRJbnNlcnREZWxl
dGVFbmFibGVkRGVmYXVsdCkgewotICAgICAgICBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQgPSBb
W05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBib29sRm9yS2V5OldlYlNtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZF07CisgICAgICAgIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9
ICFbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBvYmplY3RGb3JLZXk6V2Vi
U21hcnRJbnNlcnREZWxldGVFbmFibGVkXSB8fCBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNl
ckRlZmF1bHRzXSBib29sRm9yS2V5OldlYlNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZF07CiAKICAg
ICAgICAgcmVhZFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZERlZmF1bHQgPSB0cnVlOwogICAgIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>