<?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>14412</bug_id>
          
          <creation_ts>2007-06-26 07:41:14 -0700</creation_ts>
          <short_desc>[GDK] Clipboard support</short_desc>
          <delta_ts>2007-10-23 21:53:57 -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>New Bugs</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alp Toker">alp</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>6219</commentid>
    <comment_count>0</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-06-26 07:41:14 -0700</bug_when>
    <thetext>The Gdk port should be made to support copy/paste to/from the clipboard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58906</commentid>
    <comment_count>1</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-20 07:25:17 -0700</bug_when>
    <thetext>I found the distinction between Pasteboard and Clipboard confusing when I first implemented support for this, so I never went forward with the patch. Can someone with Mac background explain the distinction, and describe which one maps to the conventional clipboard concept?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59303</commentid>
    <comment_count>2</comment_count>
      <attachid>16827</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-23 21:34:37 -0700</bug_when>
    <thetext>Created attachment 16827
Initial clipboard implementation for the GTK+ port

The gtk_clipboard_get_for_display() calls are slightly repetetive but until we figure out what the difference between Clipboard and Pasteboard is, and whether their implementations can be shared (do they relate to X selections?) there&apos;s not much point in doing anything more formal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59307</commentid>
    <comment_count>3</comment_count>
      <attachid>16827</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2007-10-23 21:48:07 -0700</bug_when>
    <thetext>Comment on attachment 16827
Initial clipboard implementation for the GTK+ port

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59308</commentid>
    <comment_count>4</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-10-23 21:53:57 -0700</bug_when>
    <thetext>Landed in r26949.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16827</attachid>
            <date>2007-10-23 21:34:37 -0700</date>
            <delta_ts>2007-10-23 21:48:07 -0700</delta_ts>
            <desc>Initial clipboard implementation for the GTK+ port</desc>
            <filename>clipboard.patch</filename>
            <type>text/plain</type>
            <size>5970</size>
            <attacher name="Alp Toker">alp</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjk0NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMDctMTAtMjMgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHA6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDEyCisgICAgICAgIFtHREtdIENsaXBi
b2FyZCBzdXBwb3J0CisKKyAgICAgICAgSW5pdGlhbCBjbGlwYm9hcmQgaW1wbGVtZW50YXRpb24g
Zm9yIHRoZSBHVEsrIHBvcnQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvQ2xpcGJvYXJkR3Rr
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6bmV3R2VuZXJhbENsaXBib2FyZCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3RrL1Bhc3RlYm9hcmRHdGsuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UGFzdGVib2FyZDo6Z2VuZXJhbFBhc3RlYm9hcmQpOgorICAgICAgICAoV2ViQ29yZTo6UGFz
dGVib2FyZDo6UGFzdGVib2FyZCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjp+UGFz
dGVib2FyZCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjp3cml0ZVNlbGVjdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjp3cml0ZUltYWdlKToKKyAgICAgICAgKFdl
YkNvcmU6OlBhc3RlYm9hcmQ6OmNsZWFyKToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6
OnBsYWluVGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1RlbXBvcmFyeUxpbmtTdHVicy5j
cHA6CisKIDIwMDctMTAtMjMgIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxlLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPbGl2ZXIgSHVudC4KSW5kZXg6IFdlYkNvcmUvcGxh
dGZvcm0vZ3RrL0NsaXBib2FyZEd0ay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvQ2xpcGJvYXJkR3RrLmNwcAkocmV2aXNpb24gMjY5NDcpCisrKyBXZWJDb3JlL3BsYXRm
b3JtL2d0ay9DbGlwYm9hcmRHdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsNyBAQAog
LyoKICAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJl
c2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA3LCBIb2xnZXIgSGFucyBQZXRlciBGcmV5dGhl
cgorICogQ29weXJpZ2h0IChDKSAyMDA3IEFscCBUb2tlciA8YWxwQGF0b2tlci5jb20+CiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMwLDcgKzMxLDE0IEBACiAjaW5jbHVkZSAi
Tm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTdHJpbmdIYXNoLmgiCiAKKyNpbmNsdWRlICJF
ZGl0b3IuaCIKKwogbmFtZXNwYWNlIFdlYkNvcmUgeworUGFzc1JlZlB0cjxDbGlwYm9hcmQ+IEVk
aXRvcjo6bmV3R2VuZXJhbENsaXBib2FyZChDbGlwYm9hcmRBY2Nlc3NQb2xpY3kgcG9saWN5KQor
eworICAgIHJldHVybiBuZXcgQ2xpcGJvYXJkR3RrKHBvbGljeSwgZmFsc2UpOworfQorCiBDbGlw
Ym9hcmRHdGs6OkNsaXBib2FyZEd0ayhDbGlwYm9hcmRBY2Nlc3NQb2xpY3kgcG9saWN5LCBib29s
IGZvckRyYWdnaW5nKQogICAgIDogQ2xpcGJvYXJkKHBvbGljeSwgZm9yRHJhZ2dpbmcpCiB7Cklu
ZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2d0ay9QYXN0ZWJvYXJkR3RrLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BsYXRmb3JtL2d0ay9QYXN0ZWJvYXJkR3RrLmNwcAkocmV2aXNpb24gMjY5NDcp
CisrKyBXZWJDb3JlL3BsYXRmb3JtL2d0ay9QYXN0ZWJvYXJkR3RrLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMSw2ICsxLDcgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcgQXBwbGUg
SW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNyBIb2xnZXIg
SGFucyBQZXRlciBGcmV5dGhlcgorICogQ29weXJpZ2h0IChDKSAyMDA3IEFscCBUb2tlciA8YWxw
QGF0b2tlci5jb20+CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMwLDM2ICsz
MSw3MyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBhc3RlYm9hcmQuaCIKIAor
I2luY2x1ZGUgIkNTdHJpbmcuaCIKICNpbmNsdWRlICJEb2N1bWVudEZyYWdtZW50LmgiCisjaW5j
bHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlBs
YXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSAiSW1hZ2UuaCIKKyNpbmNsdWRlICJSZW5kZXJJbWFn
ZS5oIgorI2luY2x1ZGUgIktVUkwuaCIKKworI2luY2x1ZGUgPGd0ay9ndGsuaD4KIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBQYXN0ZWJvYXJkKiBQYXN0ZWJvYXJkOjpnZW5lcmFsUGFzdGVib2Fy
ZCgpCiB7CisgICAgc3RhdGljIFBhc3RlYm9hcmQqIHBhc3RlYm9hcmQgPSBuZXcgUGFzdGVib2Fy
ZCgpOworICAgIHJldHVybiBwYXN0ZWJvYXJkOworfQorCitQYXN0ZWJvYXJkOjpQYXN0ZWJvYXJk
KCkKK3sKICAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiAwOwogfQogCi12b2lkIFBh
c3RlYm9hcmQ6OndyaXRlU2VsZWN0aW9uKFJhbmdlKiwgYm9vbCwgRnJhbWUqKQorUGFzdGVib2Fy
ZDo6flBhc3RlYm9hcmQoKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKK3ZvaWQgUGFz
dGVib2FyZDo6d3JpdGVTZWxlY3Rpb24oUmFuZ2UqIHNlbGVjdGVkUmFuZ2UsIGJvb2wgY2FuU21h
cnRDb3B5T3JEZWxldGUsIEZyYW1lKiBmcmFtZSkKK3sKKyAgICBHdGtDbGlwYm9hcmQqIGNsaXBi
b2FyZCA9IGd0a19jbGlwYm9hcmRfZ2V0X2Zvcl9kaXNwbGF5KGdka19kaXNwbGF5X2dldF9kZWZh
dWx0KCksIEdES19TRUxFQ1RJT05fQ0xJUEJPQVJEKTsKKworICAgIFN0cmluZyB0ZXh0ID0gZnJh
bWUtPnNlbGVjdGVkVGV4dCgpOworICAgIGd0a19jbGlwYm9hcmRfc2V0X3RleHQoY2xpcGJvYXJk
LCB0ZXh0LnV0ZjgoKS5kYXRhKCksIHRleHQudXRmOCgpLmxlbmd0aCgpKTsKK30KKwogdm9pZCBQ
YXN0ZWJvYXJkOjp3cml0ZVVSTChjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5nJiwgRnJhbWUqKQog
ewogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgUGFzdGVib2FyZDo6d3JpdGVJbWFn
ZShOb2RlKiwgY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYpCit2b2lkIFBhc3RlYm9hcmQ6Ondy
aXRlSW1hZ2UoTm9kZSogbm9kZSwgY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYpCiB7CisgICAg
Ly8gVE9ETzogRW5hYmxlIHRoaXMgd2hlbiBJbWFnZSBnZXRzIEdka1BpeGJ1ZiBzdXBwb3J0CisK
KyAgICAvKgorICAgIEd0a0NsaXBib2FyZCogY2xpcGJvYXJkID0gZ3RrX2NsaXBib2FyZF9nZXRf
Zm9yX2Rpc3BsYXkoZ2RrX2Rpc3BsYXlfZ2V0X2RlZmF1bHQoKSwgR0RLX1NFTEVDVElPTl9DTElQ
Qk9BUkQpOworCisgICAgQVNTRVJUKG5vZGUgJiYgbm9kZS0+cmVuZGVyZXIoKSAmJiBub2RlLT5y
ZW5kZXJlcigpLT5pc0ltYWdlKCkpOworICAgIFJlbmRlckltYWdlKiByZW5kZXJlciA9IHN0YXRp
Y19jYXN0PFJlbmRlckltYWdlKj4obm9kZS0+cmVuZGVyZXIoKSk7CisgICAgQ2FjaGVkSW1hZ2Uq
IGNhY2hlZEltYWdlID0gc3RhdGljX2Nhc3Q8Q2FjaGVkSW1hZ2UqPihyZW5kZXJlci0+Y2FjaGVk
SW1hZ2UoKSk7CisgICAgQVNTRVJUKGNhY2hlZEltYWdlKTsKKyAgICBJbWFnZSogaW1hZ2UgPSBj
YWNoZWRJbWFnZS0+aW1hZ2UoKTsKKyAgICBBU1NFUlQoaW1hZ2UpOworCisgICAgZ3RrX2NsaXBi
b2FyZF9zZXRfaW1hZ2UoY2xpcGJvYXJkLCBpbWFnZS0+cGl4YnVmKCkpOworICAgICovCisKICAg
ICBub3RJbXBsZW1lbnRlZCgpOwogfQogCiB2b2lkIFBhc3RlYm9hcmQ6OmNsZWFyKCkKIHsKLSAg
ICBub3RJbXBsZW1lbnRlZCgpOworICAgIEd0a0NsaXBib2FyZCogY2xpcGJvYXJkID0gZ3RrX2Ns
aXBib2FyZF9nZXRfZm9yX2Rpc3BsYXkoZ2RrX2Rpc3BsYXlfZ2V0X2RlZmF1bHQoKSwgR0RLX1NF
TEVDVElPTl9DTElQQk9BUkQpOworCisgICAgZ3RrX2NsaXBib2FyZF9jbGVhcihjbGlwYm9hcmQp
OwogfQogCiBib29sIFBhc3RlYm9hcmQ6OmNhblNtYXJ0UmVwbGFjZSgpCkBAIC03NiwxNyArMTE0
LDEzIEBAIFBhc3NSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gUGFzdGVib2FyZDoKIAogU3RyaW5n
IFBhc3RlYm9hcmQ6OnBsYWluVGV4dChGcmFtZSopCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsK
LSAgICByZXR1cm4gU3RyaW5nKCk7Ci19CisgICAgR3RrQ2xpcGJvYXJkKiBjbGlwYm9hcmQgPSBn
dGtfY2xpcGJvYXJkX2dldF9mb3JfZGlzcGxheShnZGtfZGlzcGxheV9nZXRfZGVmYXVsdCgpLCBH
REtfU0VMRUNUSU9OX0NMSVBCT0FSRCk7CiAKLVBhc3RlYm9hcmQ6OlBhc3RlYm9hcmQoKQotewot
ICAgIG5vdEltcGxlbWVudGVkKCk7Ci19CisgICAgZ2NoYXIqIHV0ZjggPSBndGtfY2xpcGJvYXJk
X3dhaXRfZm9yX3RleHQoY2xpcGJvYXJkKTsKKyAgICBTdHJpbmcgdGV4dCA9IFN0cmluZzo6ZnJv
bVVURjgodXRmOCk7CisgICAgaWYgKHV0ZjgpCisgICAgICAgIGdfZnJlZSh1dGY4KTsKIAotUGFz
dGVib2FyZDo6flBhc3RlYm9hcmQoKQotewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgcmV0
dXJuIHRleHQ7CiB9CiB9CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2d0ay9UZW1wb3JhcnlMaW5r
U3R1YnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3RrL1RlbXBvcmFyeUxp
bmtTdHVicy5jcHAJKHJldmlzaW9uIDI2OTQ3KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ndGsvVGVt
cG9yYXJ5TGlua1N0dWJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNiBAQAogCiAj
aW5jbHVkZSAiQVhPYmplY3RDYWNoZS5oIgogI2luY2x1ZGUgIkNhY2hlZFBhZ2UuaCIKLSNpbmNs
dWRlICJDbGlwYm9hcmQuaCIKICNpbmNsdWRlICJFZGl0b3IuaCIKICNpbmNsdWRlICJGcmFtZVZp
ZXcuaCIKICNpbmNsdWRlICJGVFBEaXJlY3RvcnlEb2N1bWVudC5oIgpAQCAtNzMsOCArNzIsNiBA
QCB2b2lkIFdlYkNvcmU6OnNldEZvY3VzUmluZ0NvbG9yQ2hhbmdlRnVuCiAKIHZvaWQgQ2FjaGVk
UGFnZTo6Y2xvc2UoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIAotUGFzc1JlZlB0cjxDbGlwYm9h
cmQ+IEVkaXRvcjo6bmV3R2VuZXJhbENsaXBib2FyZChDbGlwYm9hcmRBY2Nlc3NQb2xpY3kpIHsg
bm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIDA7IH0KLQogbmFtZXNwYWNlIFdlYkNvcmUgewogVmVj
dG9yPFN0cmluZz4gc3VwcG9ydGVkS2V5U2l6ZXMoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVy
biBWZWN0b3I8U3RyaW5nPigpOyB9CiBTdHJpbmcgc2lnbmVkUHVibGljS2V5QW5kQ2hhbGxlbmdl
U3RyaW5nKHVuc2lnbmVkIGtleVNpemVJbmRleCwgY29uc3QgU3RyaW5nICZjaGFsbGVuZ2VTdHJp
bmcsIGNvbnN0IEtVUkwgJnVybCkgeyByZXR1cm4gU3RyaW5nKCk7IH0K
</data>
<flag name="review"
          id="7120"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>