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: master 7a5f2b79e9: ; * lisp/dired.el (dired-mouse-drag): Create local copy if file is remote. Date: Wed, 30 Mar 2022 15:49:38 +0800 Message-ID: <871qyjyj59.fsf@yahoo.com> References: <164862126656.8211.8114609736677843326@vcs2.savannah.gnu.org> <20220330062106.D045CC01684@vcs2.savannah.gnu.org> <87mth799fz.fsf@gmx.de> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19302"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) Cc: emacs-devel@gnu.org To: Michael Albinus Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Mar 30 09:52:05 2022 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 1nZT7d-0004qZ-Cz for ged-emacs-devel@m.gmane-mx.org; Wed, 30 Mar 2022 09:52:05 +0200 Original-Received: from localhost ([::1]:58222 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nZT7X-0002Li-WF for ged-emacs-devel@m.gmane-mx.org; Wed, 30 Mar 2022 03:52:03 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:35612) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nZT5R-0000aj-Po for emacs-devel@gnu.org; Wed, 30 Mar 2022 03:49:49 -0400 Original-Received: from sonic312-25.consmr.mail.ne1.yahoo.com ([66.163.191.206]:43546) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nZT5Q-0007gB-0x for emacs-devel@gnu.org; Wed, 30 Mar 2022 03:49:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1648626586; bh=O+kELXYN2FngAWGDX+J2hMIXxQe51+QKgPkTUC2+7d8=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=NOiSue3vRt0EGF52W7PdIh0PEZ/sFx5NPuMNkN0718b2wHYQ/LA/Ibl1wmRzI/qwkLj0yJLUsefxopMZWm2bvmIAgLhh6hMilfZGsndWf0DQLf6d1geHDxJVPf/ziU1v25iuZnd7199vQpbSIUHfUvDBnRn/GlEk46I0SxPTX/fFjeRWMMXOXnSDHwyjbzlMy+S7Nb/PxsqaEcmdzhZJ30Mru7+rG0c1BEvGjHjWjHwcr2ygOdOXcdO5N0SfM8yUE21K5TQnOoCuHnT3ru7ojWOkzy0QK/olII0i4Dglu3+N/7e6c07+QVsi8zMJv6Mh2+LzRwp+gdy4aAtKWHDMdQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1648626586; bh=g314FAYGgzEB4xk9bnFZVGyYN00FDMTDpGAQuBcB5Vy=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=FG7qZDur8aikN94jK1CGpyFz7umkdiWQWn+Ghy0/+M5OEjq4OrJ6IsWr2l/Hea+6xLfPiiZDUafdbWuhsYGTG8fkEVBCYSJNqib6uJ9uTuCN381ajdJewWWeSDrCjXL0Oke5j5vVC1TqDKV/OlTTRnTbFRcFdUwXJKi98lCIulB5orBODn4GIBOTG/48lZKj15JoHv1cv0Jshg+0zTi80aokPhBLPZnLqp1SxFCWAtjYZZzldg0o5l/LQEcWjWHmvm1hq5xgFMHij18zndhI+OGZcPGR9Iynvjjkd9QrZRxYCvB4+UbMimHzcE3VmjxVS6dr1MihnPgtS/r66xE8tg== X-YMail-OSG: j.elb.IVM1nW43EExPEwfNhUMp81nSL5j7pxktD0FQR5iTrrgxgYmMMGxLFR6dI y_vkqLFd40m8V_XnY8yrQVCau7oKVjdCG78_OMhip_EyY7xXP_.kJnNgLKc2fl4SB6G7fydN34xF G5RhB1OpFbSDbcAL1wq5XsSuFT3bJHlOJ.f8KV6PXtOQvylrZb_mZW6Fu7MtStKC17X13RBaMuNg 2pOszZvFx6LodquO0XrLALJrAGDqL.ZMnp04D.UQE.ctQfggUSJVGBPBya.5U6SusCztaqso4zdB DI07riXWg6vLW6bbxaM6KE0a_71N5FCAZun.lu1.9cSK4WAHUBl5Er8wlcPz7QvTQJcVmK4YmOiN BddPXcXaiqz0SsdHDd6d6Zr8MVau3gmw1_enxdjXw8P47QUTqYzMKGkGUXsFqCID8EhHpaMtG4gS IW5ucE13z4hkjKk9IjoSLxPbBBivVwyWoQZOw42UOIr8nGqy7YYKQzOVRDbF1.uzNcouc2FwLRGV lPA5GX4hSeSmhQ_dBMjm3oeXmdJri868ZproTbQcRbqUQUkjHT3IkNDwcV0CSnvru5OsDTFeGLli PnDCqAFZCTBkcS6zKRbyGy42HCXrakCdGwOn0LoZJpHce9EY5.Yf7v22tka8fWqz2pebsAb6j.CX kQB_l8YmolWX2sVuuoBcmCMCWkh1arIHp.PWfOjQkUR2zk8OdqV7BtQs2F4_QpuPZdFBR2lNtm7V gEi1cSZHCzv2k.h_m_dB3KLLgx6agABkrXG1h11kiE9itUO5WJ3lLQZZKxU42bUi8FmN93JUDnBf Q3ZN8yK4gdUhhNIN4IvRPttiOY6hb3PBooJRvdjGEn X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.ne1.yahoo.com with HTTP; Wed, 30 Mar 2022 07:49:46 +0000 Original-Received: by hermes--canary-production-bf1-665cdb9985-x6p65 (VZM Hermes SMTP Server) with ESMTPA ID 2fb7a06498929f3fd9e5f7ac49120224; Wed, 30 Mar 2022 07:49:41 +0000 (UTC) In-Reply-To: <87mth799fz.fsf@gmx.de> (Michael Albinus's message of "Wed, 30 Mar 2022 09:38:24 +0200") X-Mailer: WebService/1.1.20001 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.191.206; envelope-from=luangruo@yahoo.com; helo=sonic312-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" Xref: news.gmane.io gmane.emacs.devel:287594 Archived-At: Michael Albinus writes: > Hi, > >> ; * lisp/dired.el (dired-mouse-drag): Create local copy if file is remote. >> >> + (let ((filename (with-selected-window (posn-window >> + (event-end event)) >> + (dired-file-name-at-point)))) >> + (when filename >> + ;; In theory x-dnd-username combined with a proper >> + ;; file URI containing the hostname of the remote >> + ;; server could be used here instead of creating a >> + ;; local copy of the remote file, but no program >> + ;; actually implements file DND according to the >> + ;; spec. >> + (when (file-remote-p filename) >> + (setq filename (file-local-copy filename))) >> + (gui-backend-set-selection 'XdndSelection filename) >> + (x-begin-drag '("text/uri-list" >> + "text/x-dnd-username") >> + (if (eq 'dired-mouse-drag-files 'link) >> + 'XdndActionLink >> + 'XdndActionCopy) >> + nil nil t))) > > Reading the code, it looks to me like you need to remove the local copy > later. Otherwise, it will trash your temp directory. Ah, thanks. I always thought the old file would be removed automatically after a while (i.e. when a new file is created). The problem is that there's no way to know when the drop target has finished opening the file, so the best solution is probably to remove the old file when a new file is created. WDYT?