From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Sean O'Rourke" Newsgroups: gmane.emacs.devel Subject: Re: [patch] enhanced mac drag-n-drop Date: Thu, 07 Apr 2005 06:33:30 -0700 Message-ID: References: <4ffa2515937474fb5129bf6781413018@swipnet.se> <639109ba1cd24c3d44f3795e1ca42d33@swipnet.se> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1112881026 15886 80.91.229.2 (7 Apr 2005 13:37:06 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 7 Apr 2005 13:37:06 +0000 (UTC) Cc: "Jan D." , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Apr 07 15:37:03 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DJXB1-0001cb-GG for ged-emacs-devel@m.gmane.org; Thu, 07 Apr 2005 15:36:07 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DJWkK-0008AQ-HE for ged-emacs-devel@m.gmane.org; Thu, 07 Apr 2005 09:08:32 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DJWjb-0007zx-6U for emacs-devel@gnu.org; Thu, 07 Apr 2005 09:07:49 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DJWjZ-0007xD-A2 for emacs-devel@gnu.org; Thu, 07 Apr 2005 09:07:45 -0400 Original-Received: from [132.239.1.56] (helo=mailbox4.ucsd.edu) by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.34) id 1DJX9H-0005Fu-OV; Thu, 07 Apr 2005 09:34:20 -0400 Original-Received: from smtp.ucsd.edu (smtp-a.ucsd.edu [132.239.1.49]) by mailbox4.ucsd.edu (8.13.1/8.13.1) with ESMTP id j37DXUjd099159 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 7 Apr 2005 06:33:31 -0700 (PDT) Original-Received: from Sean-ORourkes-Computer.local ([128.54.220.172]) by smtp.ucsd.edu (8.12.10/8.9.3) with ESMTP id j37DXTTg001689; Thu, 7 Apr 2005 06:33:30 -0700 (PDT) Original-To: Jason Rumney In-Reply-To: (Jason Rumney's message of "Thu, 07 Apr 2005 07:59:39 +0100") User-Agent: Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (darwin) X-Greylisting: NO DELAY (Trusted relay host); processed by UCSD_GL-v1.2 on mailbox4.ucsd.edu; Thu, 07 April 2005 06:33:31 -0700 (PDT) X-MailScanner: PASSED (v1.2.8 92309 j37DXUjd099159 mailbox4.ucsd.edu) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:35697 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:35697 Jason Rumney writes: >> We should break out what you can use in a general dnd.el file. First, the XDND part (there are two other dnd protocols in there, but I didn't look at them much) seems to contain code for enter, tracking, leave, and drop handlers, which should probably be made into separate hooks. Carbon generates events for all of these, but currently we only pass the drop up to the Lisp level, while the X version passes all such events. If this were cleaned up, it shouldn't be too hard to extend the Mac version to pass the other events. Second, the XDND version has message decoding mixed throughout the Lisp code. This is implementation-dependent, so IMHO it should be done before Lisp gets ahold of the data, or at least before the platform-independent part. Examples include splitting URL-list strings into separate URLs and matching on the XDND command names. Third, there are the drop types, which have both different encodings (platform-dependent) and different default actions (platform- independent). For the latter, it would be nice to agree on a set of names (e.g. text, URL, file). Finally, the "suggested action" in XDND will be very useful on Mac, so I hope it stays around. /s