From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: scroll-bar-toolkit-scroll Date: Tue, 30 Jul 2002 23:54:47 -0600 (MDT) Sender: emacs-devel-admin@gnu.org Message-ID: <200207310554.g6V5slG16493@aztec.santafe.edu> References: <200207290112.g6T1Cvb12938@aztec.santafe.edu> <863cu2kdsh.fsf@gerd.free-bsd.org> <200207300059.g6U0xsw14569@aztec.santafe.edu> <864reh8tqr.fsf@gerd.free-bsd.org> Reply-To: rms@gnu.org NNTP-Posting-Host: localhost.gmane.org X-Trace: main.gmane.org 1028094897 17181 127.0.0.1 (31 Jul 2002 05:54:57 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 31 Jul 2002 05:54:57 +0000 (UTC) Cc: emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17ZmRk-0004T0-00 for ; Wed, 31 Jul 2002 07:54:56 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17Zmjo-0004Jb-00 for ; Wed, 31 Jul 2002 08:13:36 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17ZmS7-00043J-00; Wed, 31 Jul 2002 01:55:19 -0400 Original-Received: from pele.santafe.edu ([192.12.12.119]) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17ZmRc-0003wb-00; Wed, 31 Jul 2002 01:54:48 -0400 Original-Received: from aztec.santafe.edu (aztec [192.12.12.49]) by pele.santafe.edu (8.11.6+Sun/8.11.6) with ESMTP id g6V5sxB10357; Tue, 30 Jul 2002 23:54:59 -0600 (MDT) Original-Received: (from rms@localhost) by aztec.santafe.edu (8.10.2+Sun/8.9.3) id g6V5slG16493; Tue, 30 Jul 2002 23:54:47 -0600 (MDT) X-Authentication-Warning: aztec.santafe.edu: rms set sender to rms@aztec using -f Original-To: gerd.moellmann@t-online.de In-Reply-To: <864reh8tqr.fsf@gerd.free-bsd.org> (gerd.moellmann@t-online.de) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:6191 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:6191 IIRC, the scroll bar callback is invoked with action information only, Could you explain what "action information" means? (I'm assuming you are the expert on this--wasn't it you who wrote that code? If I should ask someone else instead, please tell me who.) See, for instance, the LessTif/Motif callback xm_scroll_callback in xterm.c. AFAIK, the callback cannot tell which user actions caused the action, i.e. up/down events etc. I see one "action" is XmCR_DRAG. Can you find out, and tell me, exactly when that is given? Is it for the down event on the slider, or for an up event after sliding the slider, or what? What does a callback with that code signify? I noticed that xm_scroll_callback calls x_send_scroll_bar_event: /* Send a client message with message type Xatom_Scrollbar for a scroll action to the frame of WINDOW. PART is a value identifying the part of the scroll bar that was clicked on. PORTION is the amount to scroll of a whole of WHOLE. */ static void x_send_scroll_bar_event (window, part, portion, whole) I don't understand the role of this function in the overall implementation of toolkit scroll bars. Could you explain it? It seems to be sending some sort of X event to Emacs's X window. Why is that? What happens when that client message "arrives" again? Which part of the code in Emacs handles it then? And why not call it directly instead of sending a message to the X server?