From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu Newsgroups: gmane.emacs.devel Subject: Re: Copy and paste from Emacs 29 to Thunderbird =?utf-8?Q?doesn?= =?utf-8?Q?=E2=80=99t?= work Date: Wed, 03 May 2023 13:57:18 +0800 Message-ID: <87ttwuarep.fsf@yahoo.com> References: <496CE33D-C23F-4AB9-B545-608DB9B33C97@gmail.com> <87v8hbcfx1.fsf@yahoo.com> <69c64ad0-3ceb-1ead-1b4f-50725fa0e621@web.de> <87y1m6at3w.fsf@yahoo.com> <42f09837-3d25-e5ca-6203-246fe0e28914@web.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3979"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: emacs-devel@gnu.org, Pedro Andres Aranda Gutierrez , Gregor Zattler To: Tobias Bading Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed May 03 07:58:19 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pu5VL-0000uU-1Z for ged-emacs-devel@m.gmane-mx.org; Wed, 03 May 2023 07:58:19 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pu5Ud-0001N6-14; Wed, 03 May 2023 01:57:35 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pu5Ub-0001Mw-0g for emacs-devel@gnu.org; Wed, 03 May 2023 01:57:33 -0400 Original-Received: from sonic311-25.consmr.mail.ne1.yahoo.com ([66.163.188.206]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pu5UZ-0001p6-9d for emacs-devel@gnu.org; Wed, 03 May 2023 01:57:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1683093447; bh=bxzC/CkXHBwM+dAoigTIhsz06GYvJrvg/FwexoWoH0c=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=bBmiSZDquZOWVb9NwFOS9DwE2HoITIOJDKZio8iuwa+kIy6CzCly6S8fyr10j0QtvS3z8AgSvf9RrDdnNwAY1qTy8OzP9KkArfJknRPHyTSjv93Wrp5RIEyMJh/EtjVx8Qg7UbJFfjktW88X+EXbfdYdKPU1M63H5N6tqdzKMfK4G9JLmmh0LxkSk1OzBqrvmY14FoBaTktbbt6rqCRDw4FxpVuBtQA2RYNFgN3enrP70u9VLSCDiDYPpDIGuC38a2RFtzNIC09MINvbX5IABMm7wO30qzIV+rSf/do52rTZ+u5F88zzSAXvdE9f4IxTIAw48d1j/PdfWyxGHgiAIA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1683093447; bh=iUmI80Qc4C17pIdUkQKLCmgRTXVLfD23TUrxwOFPZ1o=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=UeZqli9vY4Pjmb419dCg+/CCNgxNlP/ti2dQ3DI8obVjv//M2fVe8tEWAxK59CrSRIqV1E8OTvDKlAauIyKrgp0rU30cu0nlaLZazTS1RpLzxrmQzSJYHMCd+yhf5VM4GpQxaxyx2h8NF4b0DUNPBvcrf8raN2agdAVGjYayzwTP3Z/ih33ZbvQQUGpVZX1lTV7iuxQrbw/6jEa08HG8Oo+puNOX0CLH9R6QU1HkOhniRuWATPfFiSN7wy4VVtS6SH/8IrAR/doKEnrOm6DvwY8WPQlclpRtulnAcYCSISjlW5mBQYeuIBYIG1cDcKwRdSkanVG+rZ1UwPOtBn1WfA== X-YMail-OSG: BAZXjzwVM1lajYBbUsFnmda17EZYL2bm9ivOGhy6F9GaTRQHeRlXXzm23arbqd1 LVnYjcrQhCb7TrdObDHYPnW2V5JyxoVIbSob2taidkUxD8rauUfWwEFdeRQmrPFWkUmO1YmCdBcT C10MTBYeW1bUu8oYahtzGAq2nFhwSG9d91EB2Am1o9RxtOIrlAJHGLARlsFetSCvRsS4fB1peJv4 0IS9avtlUQ5O6EZwMgplrbcrI7PEo2QmML5C.foV780x6Khb3WOdlA_VWGApGbWvLs68ywtjjwi6 Ft42g8Vicd7IrDHoNpN9bRCHi8ONuizgy_5_iCzJqD7xQr9ij0KSsUcvFM.YH.fViGmgu.3fWZ8O 457RjKJUpTXfVepFU0nIXeFax2QT19UE7n3lc1EFZ_F.Calc_QeJNEH3eNGThGJLCOC1C07xjcm1 Zbhr1zJMw12w_3IBqoBfJnzca.7MW2Cvby_ApPP89v.cqRX_PH4IXVYGc7BKrwhZRR.APIO8Hr1l GVGlX9vpuEw7zl.SkzLfsLjFEJNuVSj2B0e0j3efkqJcZ5xA4IyFpMSl7PEo4FDdX5AnalW9P9.K jpnilkCZBaL5i5_Lc66GC7AHdyQnN_mBYVBdi_zABsRpb.qg5K9QpySNetKVXAywytH6_pajDT1U mjNs_GV4izTbEuWD8.NAG4f9ltQz22KZcsV4JjfpsSJwHG8n.ODznPyQ8.5dEwYKZ3kt3gaa6h2p .WPZvAlKJ0mJQC9z2jXWLNbLFWIwBAAJ.9x7oc0xJCRmBwnw0VoGMw9ACvFhiRKK8pvo3Wm_Rm_Q q4af9ceA1pIyfFr0jmQRROZ8heUO96Df3Rxe1OL_EV X-Sonic-MF: X-Sonic-ID: 4c09d621-76b1-4fc2-a482-84d3a2cddc1e Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic311.consmr.mail.ne1.yahoo.com with HTTP; Wed, 3 May 2023 05:57:27 +0000 Original-Received: by hermes--production-sg3-6d6fb994f6-7thcs (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 44a8f11aebe6808863e5966ccf6a5003; Wed, 03 May 2023 05:57:23 +0000 (UTC) In-Reply-To: <42f09837-3d25-e5ca-6203-246fe0e28914@web.de> (Tobias Bading's message of "Wed, 3 May 2023 07:41:27 +0200") X-Mailer: WebService/1.1.21417 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.188.206; envelope-from=luangruo@yahoo.com; helo=sonic311-25.consmr.mail.ne1.yahoo.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:305762 Archived-At: Tobias Bading writes: > On 03.05.23 07:20, Po Lu wrote: >> OK, would you please run: >> >>=C2=A0=C2=A0 M-x trace-function RET x-dnd-convert-to-text-uri-list RET >> >> copy something to Firefox, and show what trace output is printed? > > Sorry, there=E2=80=99s no x-dnd-convert-to-text-uri-list, only Zuul. ;-) > > (trace-function 'xselect-convert-to-text-uri-list), selecting > =E2=80=9Cnopers=E2=80=9D in Emacs 29 and then a paste in Thunderbird=E2= =80=99s mail composition area > produces > > 1 -> (xselect-convert-to-text-uri-list CLIPBOARD text/uri-list "nopers") > 1 <- xselect-convert-to-text-uri-list: (text/uri-list . "nopers\n") Thanks. Would you please try this change? diff --git a/lisp/select.el b/lisp/select.el index 7f089c62dd5..09c678867d0 100644 --- a/lisp/select.el +++ b/lisp/select.el @@ -807,19 +807,24 @@ xselect-convert-to-save-targets (defun xselect-convert-to-username (_selection _type _value) (user-real-login-name)) =20 -(defun xselect-convert-to-text-uri-list (_selection _type value) - (let ((string - (if (stringp value) - (xselect--encode-string 'TEXT - (concat (url-encode-url value) "\n")) - (when (vectorp value) - (with-temp-buffer - (cl-loop for tem across value - do (progn - (insert (url-encode-url tem)) - (insert "\n"))) - (xselect--encode-string 'TEXT (buffer-string))))))) - (cons 'text/uri-list (cdr string)))) +(defun xselect-convert-to-text-uri-list (selection _type value) + ;; While `xselect-uri-list-available-p' ensures that this target + ;; will not be reported in the TARGETS of non-drag-and-drop + ;; selections, Firefox stupidly converts to it anyway. Check that + ;; the conversion request is being made for the correct selection. + (and (eq selection 'XdndSelection) + (let ((string + (if (stringp value) + (xselect--encode-string 'TEXT + (concat (url-encode-url value) "= \n")) + (when (vectorp value) + (with-temp-buffer + (cl-loop for tem across value + do (progn + (insert (url-encode-url tem)) + (insert "\n"))) + (xselect--encode-string 'TEXT (buffer-string))))))) + (cons 'text/uri-list (cdr string))))) =20 (defun xselect-convert-to-xm-file (selection _type value) (when (and (stringp value)