GNU bug report logs - #72331
29.4; Modifying horizontal-scroll-bar does not fully work (MacOS only)

Previous Next

Package: emacs;

Reported by: Jared Finder <jared <at> finder.org>

Date: Sun, 28 Jul 2024 05:11:02 UTC

Severity: normal

Found in version 29.4

Fixed in version 30.1

Done: Gerd Möllmann <gerd.moellmann <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jared Finder <jared <at> finder.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.4; Modifying horizontal-scroll-bar does not fully work (MacOS 
 only)
Date: Sat, 27 Jul 2024 22:10:06 -0700
Directly modifying the variable horizontal-scroll-bar on MacOS doesn't
show a scroll bar unless the frame also has the horizontal-scroll-bars
frame  parameter set.  This only happens on MacOS, on Linux and Windows
everything behaves as I would expect.

To reproduce, define the following function:

(defun bug-report-toggle-buffer-horizontal-scroll-bar ()
  "Like `toggle-scroll-bar', but for just the current buffer.
And for horizontal scroll bars.  I guess it's acutally very
different."
  (interactive)
  (setq horizontal-scroll-bar (if horizontal-scroll-bar nil 'bottom))
  (set-window-buffer (selected-window) (current-buffer)))

Then run M-x bug-report-toggle-buffer-horizontal-scroll-bar repeatedly
and observe that on MacOS space gets reserved for the horizontal scroll
bar but no scroll bar is rendered.  Finally, run M-x
horizontal-scroll-bar-mode and observe that now the horizontal scroll
bar is properly shown and hidden.

I also tested this on master and observed the same behavior.

In GNU Emacs 29.4 (build 1, aarch64-apple-darwin21.6.0, NS
 appkit-2113.60 Version 12.6.6 (Build 21G646)) of 2024-07-24 built on
 armbob.lan
Windowing system distributor 'Apple', version 10.3.2487
System Description:  macOS 14.5

Configured using:
 'configure --with-ns '--enable-locallisppath=/Library/Application
 Support/Emacs/${version}/site-lisp:/Library/Application
 Support/Emacs/site-lisp' --with-modules 'CFLAGS=-DFD_SETSIZE=10000
 -DDARWIN_UNLIMITED_SELECT' --with-x-toolkit=no'

Configured features:
ACL GLIB GMP GNUTLS JPEG JSON LIBXML2 MODULES NOTIFY KQUEUE NS PDUMPER
PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: ELisp/l

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr vc-git diff-mode easy-mmode vc-dispatcher
cl-extra cl-print byte-opt gv bytecomp byte-compile thingatpt help-fns
radix-tree help-mode dabbrev emacsbug message mailcap yank-media puny
dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg
rfc6068 epg-config gnus-util text-property-search time-date subr-x
mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
mailheader cl-loaddefs cl-lib sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd
fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads kqueue cocoa ns multi-tty
make-network-process emacs)

Memory information:
((conses 16 60165 20431)
 (symbols 48 6527 0)
 (strings 32 20561 2286)
 (string-bytes 1 561629)
 (vectors 16 13714)
 (vector-slots 8 194672 14038)
 (floats 8 33 135)
 (intervals 56 399 17)
 (buffers 984 14))




This bug report was last modified 285 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.