<?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>25451</bug_id>
          
          <creation_ts>2009-04-28 11:26:58 -0700</creation_ts>
          <short_desc>Selection base/extent aren&apos;t honored on the first horizontal extension</short_desc>
          <delta_ts>2009-04-28 15:28:44 -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>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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="Justin Garcia">justin.garcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>119119</commentid>
    <comment_count>0</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 11:26:58 -0700</bug_when>
    <thetext>In editable content, create a selection from left to right, then extend the selection with shift-left.

The left side of the selection (instead of the extent) is modified.

See http://www.betalogue.com/2009/04/22/selections/ for a report of this.  We apparently match AppKit here but changing this seems sensible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119121</commentid>
    <comment_count>1</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 11:27:52 -0700</bug_when>
    <thetext>if (!m_lastChangeWasHorizontalExtension) {
    m_lastChangeWasHorizontalExtension = true;
    Position start = m_sel.start();
    Position end = m_sel.end();
    switch (direction) {
        // FIXME: right for bidi?
        case RIGHT:
        case FORWARD:
            m_sel.setBase(start);
            m_sel.setExtent(end);
            break;
        case LEFT:
        case BACKWARD:
            m_sel.setBase(end);
            m_sel.setExtent(start);
            break;
    }
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119123</commentid>
    <comment_count>2</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 11:31:01 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/7608</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119125</commentid>
    <comment_count>3</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 11:33:11 -0700</bug_when>
    <thetext>I think we continue to reset the base/extent if you double or triple click and then start extending.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119126</commentid>
    <comment_count>4</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 11:34:00 -0700</bug_when>
    <thetext>I meant &quot;I think we should continue to reset the base/extent if you double or triple click and then start extending&quot;.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119150</commentid>
    <comment_count>5</comment_count>
      <attachid>29860</attachid>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 12:45:26 -0700</bug_when>
    <thetext>Created attachment 29860
patch w/o layout tests or changelog

fixes the bug.  no layout test yet though.  I&apos;m going to come back to this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119187</commentid>
    <comment_count>6</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2009-04-28 15:28:44 -0700</bug_when>
    <thetext>This behavior matches the HIG: http://developer.apple.com/documentation/UserExperience/Conceptual/AppleHIGuidelines/XHIGUserInput/XHIGUserInput.html#//apple_ref/doc/uid/TP30000361-TPXREF17

Closing.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29860</attachid>
            <date>2009-04-28 12:45:26 -0700</date>
            <delta_ts>2009-04-28 12:45:26 -0700</delta_ts>
            <desc>patch w/o layout tests or changelog</desc>
            <filename>25451.txt</filename>
            <type>text/plain</type>
            <size>3705</size>
            <attacher name="Justin Garcia">justin.garcia</attacher>
            
              <data encoding="base64">SW5kZXg6IGVkaXRpbmcvU2VsZWN0aW9uQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGVkaXRp
bmcvU2VsZWN0aW9uQ29udHJvbGxlci5oCShyZXZpc2lvbiA0Mjc2MikKKysrIGVkaXRpbmcvU2Vs
ZWN0aW9uQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC05NCw3ICs5NCw3IEBACiAgICAg
SW50UmVjdCBhYnNvbHV0ZUNhcmV0Qm91bmRzKCk7CiAgICAgdm9pZCBzZXROZWVkc0xheW91dChi
b29sIGZsYWcgPSB0cnVlKTsKIAotICAgIHZvaWQgc2V0TGFzdENoYW5nZVdhc0hvcml6b250YWxF
eHRlbnNpb24oYm9vbCBiKSB7IG1fbGFzdENoYW5nZVdhc0hvcml6b250YWxFeHRlbnNpb24gPSBi
OyB9CisgICAgdm9pZCBzZXRFeHRlbmRpbmdSZXNldHNCYXNlQW5kRXh0ZW50KGJvb2wgYikgeyBt
X2V4dGVuZGluZ1Jlc2V0c0Jhc2VBbmRFeHRlbnQgPSBiOyB9CiAgICAgdm9pZCB3aWxsQmVNb2Rp
ZmllZChFQWx0ZXJhdGlvbiwgRURpcmVjdGlvbik7CiAgICAgCiAgICAgYm9vbCBpc05vbmUoKSBj
b25zdCB7IHJldHVybiBtX3NlbC5pc05vbmUoKTsgfQpAQCAtMTY4LDcgKzE2OCw3IEBACiAgICAg
CiAgICAgYm9vbCBtX25lZWRzTGF5b3V0IDogMTsgICAgICAgLy8gdHJ1ZSBpZiB0aGUgY2FyZXQg
YW5kIGV4cGVjdGVkVmlzaWJsZSByZWN0YW5nbGVzIG5lZWQgdG8gYmUgY2FsY3VsYXRlZAogICAg
IGJvb2wgbV9hYnNDYXJldEJvdW5kc0RpcnR5OiAxOwotICAgIGJvb2wgbV9sYXN0Q2hhbmdlV2Fz
SG9yaXpvbnRhbEV4dGVuc2lvbiA6IDE7CisgICAgYm9vbCBtX2V4dGVuZGluZ1Jlc2V0c0Jhc2VB
bmRFeHRlbnQgOiAxOwogICAgIGJvb2wgbV9pc0RyYWdDYXJldENvbnRyb2xsZXIgOiAxOwogICAg
IGJvb2wgbV9pc0NhcmV0QmxpbmtpbmdTdXNwZW5kZWQgOiAxOwogICAgIGJvb2wgbV9mb2N1c2Vk
IDogMTsKSW5kZXg6IGVkaXRpbmcvU2VsZWN0aW9uQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gZWRpdGluZy9TZWxlY3Rpb25Db250cm9sbGVyLmNwcAkocmV2aXNpb24gNDI3NjIpCisrKyBl
ZGl0aW5nL1NlbGVjdGlvbkNvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2
Nyw3IEBACiAgICAgLCBtX3hQb3NGb3JWZXJ0aWNhbEFycm93TmF2aWdhdGlvbihOb1hQb3NGb3JW
ZXJ0aWNhbEFycm93TmF2aWdhdGlvbikKICAgICAsIG1fbmVlZHNMYXlvdXQodHJ1ZSkKICAgICAs
IG1fYWJzQ2FyZXRCb3VuZHNEaXJ0eSh0cnVlKQotICAgICwgbV9sYXN0Q2hhbmdlV2FzSG9yaXpv
bnRhbEV4dGVuc2lvbihmYWxzZSkKKyAgICAsIG1fZXh0ZW5kaW5nUmVzZXRzQmFzZUFuZEV4dGVu
dCh0cnVlKQogICAgICwgbV9pc0RyYWdDYXJldENvbnRyb2xsZXIoaXNEcmFnQ2FyZXRDb250cm9s
bGVyKQogICAgICwgbV9pc0NhcmV0QmxpbmtpbmdTdXNwZW5kZWQoZmFsc2UpCiAgICAgLCBtX2Zv
Y3VzZWQoZmFsc2UpCkBAIC0yMjcsMTEgKzIyNywxMSBAQAogewogICAgIHN3aXRjaCAoYWx0ZXIp
IHsKICAgICAgICAgY2FzZSBNT1ZFOgotICAgICAgICAgICAgbV9sYXN0Q2hhbmdlV2FzSG9yaXpv
bnRhbEV4dGVuc2lvbiA9IGZhbHNlOworICAgICAgICAgICAgbV9leHRlbmRpbmdSZXNldHNCYXNl
QW5kRXh0ZW50ID0gdHJ1ZTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEVYVEVO
RDoKLSAgICAgICAgICAgIGlmICghbV9sYXN0Q2hhbmdlV2FzSG9yaXpvbnRhbEV4dGVuc2lvbikg
ewotICAgICAgICAgICAgICAgIG1fbGFzdENoYW5nZVdhc0hvcml6b250YWxFeHRlbnNpb24gPSB0
cnVlOworICAgICAgICAgICAgaWYgKG1fZXh0ZW5kaW5nUmVzZXRzQmFzZUFuZEV4dGVudCkgewor
ICAgICAgICAgICAgICAgIG1fZXh0ZW5kaW5nUmVzZXRzQmFzZUFuZEV4dGVudCA9IGZhbHNlOwog
ICAgICAgICAgICAgICAgIFBvc2l0aW9uIHN0YXJ0ID0gbV9zZWwuc3RhcnQoKTsKICAgICAgICAg
ICAgICAgICBQb3NpdGlvbiBlbmQgPSBtX3NlbC5lbmQoKTsKICAgICAgICAgICAgICAgICBzd2l0
Y2ggKGRpcmVjdGlvbikgewpAQCAtNTYxLDcgKzU2MSw3IEBACiB7CiAgICAgaWYgKHVzZXJUcmln
Z2VyZWQpIHsKICAgICAgICAgU2VsZWN0aW9uQ29udHJvbGxlciB0cmlhbFNlbGVjdGlvbkNvbnRy
b2xsZXI7Ci0gICAgICAgIHRyaWFsU2VsZWN0aW9uQ29udHJvbGxlci5zZXRMYXN0Q2hhbmdlV2Fz
SG9yaXpvbnRhbEV4dGVuc2lvbihtX2xhc3RDaGFuZ2VXYXNIb3Jpem9udGFsRXh0ZW5zaW9uKTsK
KyAgICAgICAgdHJpYWxTZWxlY3Rpb25Db250cm9sbGVyLnNldEV4dGVuZGluZ1Jlc2V0c0Jhc2VB
bmRFeHRlbnQobV9leHRlbmRpbmdSZXNldHNCYXNlQW5kRXh0ZW50KTsKICAgICAgICAgdHJpYWxT
ZWxlY3Rpb25Db250cm9sbGVyLnNldFNlbGVjdGlvbihtX3NlbCk7CiAgICAgICAgIHRyaWFsU2Vs
ZWN0aW9uQ29udHJvbGxlci5tb2RpZnkoYWx0ZXIsIGRpciwgZ3JhbnVsYXJpdHksIGZhbHNlKTsK
IApJbmRleDogcGFnZS9FdmVudEhhbmRsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHBhZ2UvRXZlbnRI
YW5kbGVyLmNwcAkocmV2aXNpb24gNDI3NjIpCisrKyBwYWdlL0V2ZW50SGFuZGxlci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI5OCw3ICsyOTgsNyBAQAogICAgIAogICAgIFZpc2libGVTZWxlY3Rp
b24gbmV3U2VsZWN0aW9uID0gbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNlbGVjdGlvbigpOwogICAg
IGlmIChleHRlbmRTZWxlY3Rpb24gJiYgbmV3U2VsZWN0aW9uLmlzQ2FyZXRPclJhbmdlKCkpIHsK
LSAgICAgICAgbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNldExhc3RDaGFuZ2VXYXNIb3Jpem9udGFs
RXh0ZW5zaW9uKGZhbHNlKTsKKyAgICAgICAgbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNldEV4dGVu
ZGluZ1Jlc2V0c0Jhc2VBbmRFeHRlbnQodHJ1ZSk7CiAgICAgICAgIAogICAgICAgICAvLyBTZWUg
PHJkYXI6Ly9wcm9ibGVtLzM2NjgxNTc+IFJFR1JFU1NJT04gKE1haWwpOiBzaGlmdC1jbGljayBk
ZXNlbGVjdHMgd2hlbiBzZWxlY3Rpb24gCiAgICAgICAgIC8vIHdhcyBjcmVhdGVkIHJpZ2h0LXRv
LWxlZnQKQEAgLTUxNiwxMCArNTE2LDggQEAKICAgICBpZiAobV9mcmFtZS0+c2VsZWN0aW9uR3Jh
bnVsYXJpdHkoKSAhPSBDaGFyYWN0ZXJHcmFudWxhcml0eSkKICAgICAgICAgbmV3U2VsZWN0aW9u
LmV4cGFuZFVzaW5nR3JhbnVsYXJpdHkobV9mcmFtZS0+c2VsZWN0aW9uR3JhbnVsYXJpdHkoKSk7
CiAKLSAgICBpZiAobV9mcmFtZS0+c2hvdWxkQ2hhbmdlU2VsZWN0aW9uKG5ld1NlbGVjdGlvbikp
IHsKLSAgICAgICAgbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNldExhc3RDaGFuZ2VXYXNIb3Jpem9u
dGFsRXh0ZW5zaW9uKGZhbHNlKTsKKyAgICBpZiAobV9mcmFtZS0+c2hvdWxkQ2hhbmdlU2VsZWN0
aW9uKG5ld1NlbGVjdGlvbikpCiAgICAgICAgIG1fZnJhbWUtPnNlbGVjdGlvbigpLT5zZXRTZWxl
Y3Rpb24obmV3U2VsZWN0aW9uKTsKLSAgICB9CiB9CiAgICAgCiBib29sIEV2ZW50SGFuZGxlcjo6
aGFuZGxlTW91c2VVcChjb25zdCBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzJiBldmVudCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>