From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Owen Taylor Newsgroups: gmane.emacs.devel Subject: Re: Gtk scrollbar: thumb too short Date: 07 Apr 2003 11:35:22 -0400 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <1049729721.4045.47.camel@localhost.localdomain> References: <20030325193739.ZGIN3924.fep01-svc.swip.net@gaffa.gaia.swipnet.se> <3E8345E8.4090509@swipnet.se> <1048872463.17161.132.camel@localhost.localdomain> <1049134327.3326.74.camel@localhost.localdomain> <84of3p2m44.fsf@lucy.is.informatik.uni-duisburg.de> <200304021352.h32DqLO11793@eel.dms.auburn.edu> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Trace: main.gmane.org 1049730528 14745 80.91.224.249 (7 Apr 2003 15:48:48 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 7 Apr 2003 15:48:48 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Mon Apr 07 17:48:46 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 192YrW-0003pf-00 for ; Mon, 07 Apr 2003 17:48:46 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 192Yv5-0001kG-00 for ; Mon, 07 Apr 2003 17:52:27 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 192Yr8-0002di-03 for emacs-devel@quimby.gnus.org; Mon, 07 Apr 2003 11:48:22 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 192YpM-0001nZ-00 for emacs-devel@gnu.org; Mon, 07 Apr 2003 11:46:32 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 192YjC-0007sX-00 for emacs-devel@gnu.org; Mon, 07 Apr 2003 11:40:11 -0400 Original-Received: from nat-pool-rdu.redhat.com ([66.187.233.200] helo=lacrosse.corp.redhat.com) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 192YgJ-0006kZ-00; Mon, 07 Apr 2003 11:37:11 -0400 Original-Received: from landau.devel.redhat.com (landau.devel.redhat.com [172.16.56.103])h37Fb4u10190; Mon, 7 Apr 2003 11:37:04 -0400 Original-To: rms@gnu.org In-Reply-To: X-Mailer: Ximian Evolution 1.2.2 (1.2.2-0) Original-cc: Luc Teirlinck Original-cc: kai.grossjohann@gmx.net X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Emacs development discussions. List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:12960 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:12960 On Thu, 2003-04-03 at 05:38, Richard Stallman wrote: > > 3. Make the GTK scrollbar more customizable so that it can optionally > > handle a character based approach and hence behave, within Emacs, > > more like the native scrollbar than the pixel based variant of the > > GTK scrollbar. > > I think this is the only reasonable solution. > > I agree with Miles--this is the only right way. > > Owen, would you please implement this facility in the GTK scroll bar? I don't think there has been a satisfactory explanation of how you are going to deal with minimum size issues; which for some themes occur on quite moderately sized buffers. (As I said earlier, for Red Hat's default theme, the minimum scrollbar thumb size is ~30 pixels) I also am not convinced that the behavior is right from the point of view of a user; the ends of the scrollbar should be the ends of the scrollbar. However, I was reminded this morning that a facility that allows you to implement your desired behavior was actually added prior to GTK+-2.2. If you connect to the "adjust_bounds" signal on GtkRange (the base class for GtkScrollbar), this gives you the chance, when the user clicks the arrows or drags the thumb, to adjust the bounds and/or page size *before* GTK+ clamps the position. So, it should be pretty trivial to make the thumb shrink as the user drags past the end position of the scrollbar. Regards, Owen