From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: YAMAMOTO Mitsuharu Newsgroups: gmane.emacs.devel Subject: Re: Scrollbar thumbs Date: Thu, 05 Nov 2009 10:18:07 +0900 Organization: Faculty of Science, Chiba University Message-ID: References: <03A2EC54153A4BB1AAE5AF2D2E2B7264@editkapc> <87aaz3jgkp.fsf@catnip.gol.com> <4AF1D60C.6080005@swipnet.se> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Trace: ger.gmane.org 1257383921 7072 80.91.229.12 (5 Nov 2009 01:18:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 5 Nov 2009 01:18:41 +0000 (UTC) Cc: Miles Bader , grischka , Jan =?ISO-8859-1?Q?Dj=E4rv?= , joakim@verona.se, emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Nov 05 02:18:33 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1N5qzf-0002gk-7W for ged-emacs-devel@m.gmane.org; Thu, 05 Nov 2009 02:18:31 +0100 Original-Received: from localhost ([127.0.0.1]:60794 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N5qze-00070w-Km for ged-emacs-devel@m.gmane.org; Wed, 04 Nov 2009 20:18:30 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1N5qzX-0006zt-52 for emacs-devel@gnu.org; Wed, 04 Nov 2009 20:18:23 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1N5qzS-0006zE-7y for emacs-devel@gnu.org; Wed, 04 Nov 2009 20:18:22 -0500 Original-Received: from [199.232.76.173] (port=51873 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N5qzR-0006zB-W5 for emacs-devel@gnu.org; Wed, 04 Nov 2009 20:18:18 -0500 Original-Received: from ntp.math.s.chiba-u.ac.jp ([133.82.132.2]:65109 helo=mathmail.math.s.chiba-u.ac.jp) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1N5qzO-0008Iu-VE; Wed, 04 Nov 2009 20:18:15 -0500 Original-Received: from church.math.s.chiba-u.ac.jp (church [133.82.132.36]) by mathmail.math.s.chiba-u.ac.jp (Postfix) with ESMTP id 17BD1C0557; Thu, 5 Nov 2009 10:18:08 +0900 (JST) In-Reply-To: User-Agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (=?ISO-8859-4?Q?Shij=F2?=) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) X-detected-operating-system: by monty-python.gnu.org: NetBSD 3.0 (DF) 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:116651 Archived-At: >>>>> On Wed, 04 Nov 2009 15:57:06 -0500, Stefan Monnier said: > In any case, given how widespread the problem is, it's clear that we > can't expect the toolkit to adapt to Emacs. And since nobody has > found a way yet to make Emacs DTRT, all we can do is provide various > workarounds, which is what we've done until now. The Carbon port and its descendants don't let the toolkit scrollbar process the mouse events: we can't do that (without nontrivial changes for multithreading of the GUI part) in the first place because the toolkit scrollbar on Mac processes them in its own modal loop (i.e., we can't go back to the Lisp event loop during the mouse tracking, and that is not compatible with the current scrollbar handling in Emacs.). What the Carbon port (and its descendants) does is to process the whole mouse events at the Emacs side. It includes timer processing for repeated scrolling (e.g, pressing an arrow button for a while.) The toolkit is used only for displaying the scrollbar with highlighting, detecting which part of the bar is pressed, and getting the rectangle for a specified part of the bar. The result is like a sort of mixture of native and toolkit scrollbars on X11: it generates Lisp events and looks like the toolkit one, but the size of the thumb usually changes during dragging and also overscrolling at the bottom works as in the native one. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp