GNU bug report logs - #31203
26.1; Fringe and toolbar bitmaps unscaled on Windows 10 HiDPI display

Previous Next

Package: emacs;

Reported by: Keith Russell <keithrussell42 <at> fastmail.com>

Date: Wed, 18 Apr 2018 01:33:02 UTC

Severity: normal

Found in version 26.1

To reply to this bug, email your comments to 31203 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Wed, 18 Apr 2018 01:33:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Keith Russell <keithrussell42 <at> fastmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 18 Apr 2018 01:33:02 GMT) Full text and rfc822 format available.

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

From: Keith Russell <keithrussell42 <at> fastmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 26.1; Fringe and toolbar bitmaps unscaled on Windows 10 HiDPI display
Date: Tue, 17 Apr 2018 21:07:34 -0400
Running on Windows 10 with a high resolution display (3840 x 2160)
the fringe bitmaps and toolbar buttons are so tiny as to be almost
indistinguishable from dots. Scrollbars and menus are fine and the
fonts look stunning. If I set the compatibility option to "override
application" and let the system scale then it's the right size but
fuzzy. I couldn't find anything in the bug reports. The only
thing I found in the Changelog was the change to make Emacs
DPI aware on Windows but that was back in 2015.


In GNU Emacs 26.1 (build 1, x86_64-w64-mingw32)
 of 2018-04-10 built on CIRROCUMULUS
Repository revision: c267421647510319d2a70554e42f0d1c394dba0a
Windowing system distributor 'Microsoft Corp.', version 10.0.16299
Recent messages:
; is undefined
Finding changes in ....
Commands: d, s, x, u; f, o, 1, 2, m, v; ~, %; q to quit; ? for help.
(Wraparound for next marked file)
dired-next-marked-file: No next marked file
M-ESC C-M-p is undefined
Mark saved where search started
Grep finished with 265 matches found
Parsing gtkutil.c (LL)...done
Parsing image.c (LL)...done

Configured using:
 'configure --without-dbus --host=x86_64-w64-mingw32
 --without-compress-install 'CFLAGS=-O2 -static -g3''

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY ACL GNUTLS LIBXML2 ZLIB
TOOLKIT_SCROLL_BARS THREADS LCMS2

Important settings:
  value of $LANG: ENC
  locale-coding-system: cp1252

Major mode: C/*l

Minor modes in effect:
  diff-auto-refine-mode: t
  shell-dirtrack-mode: t
  winner-mode: t
  smartparens-global-mode: t
  smartparens-mode: t
  recentf-mode: t
  savehist-mode: t
  counsel-mode: t
  ivy-mode: t
  show-paren-mode: t
  global-semanticdb-minor-mode: t
  global-semantic-idle-scheduler-mode: t
  semantic-idle-scheduler-mode: t
  semantic-mode: t
  which-function-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug sendmail noutline outline bug-reference
base16-tomorrow-theme smerge-mode log-view pcvs-util vc-git diff-mode
easy-mmode vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs vc-dir ewoc vc
vc-dispatcher image-mode semantic/tag-file add-log semantic/imenu
semantic/db-file data-debug cedet-files semantic/bovine/c
semantic/decorate/include semantic/decorate/mode semantic/decorate pulse
hideif semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc
semantic/dep semantic/bovine semantic/analyze/refs semantic/db-find
semantic/db-ref semantic/analyze semantic/sort semantic/scope
semantic/analyze/fcn cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs find-dired grep rect map
rng-xsd xsd-regexp rng-cmpct rng-nxml rng-valid rng-loc rng-uri
rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns
nxml-mode nxml-outln nxml-rap sgml-mode dom nxml-util nxml-enc xmltok
base16-default-dark-theme shell pcomplete dired-aux
base16-default-light-theme bookmark base16-theme pcase autoload
radix-tree lisp-mnt tar-mode pp misearch multi-isearch mm-archive
message format-spec rfc822 mml mml-sec epa derived epg gnus-util rmail
rmail-loaddefs mailabbrev gmm-utils mailheader mm-decode mm-bodies
mm-encode mail-utils network-stream starttls url-http tls gnutls
mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw
nsm rmc puny url-cache url-auth url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util mailcap colir
color cl-extra elec-pair init server edmacro kmacro windmove winner
leuven-theme avoid smartparens advice help-mode dash recentf tree-widget
savehist counsel dired-x dired dired-loaddefs compile comint ansi-color
esh-util etags xref project ring swiper ivy delsel ivy-overlay ffap
thingatpt cus-edit cus-start cus-load wid-edit paren semantic/db-mode
semantic/db eieio-base semantic/idle semantic/format ezimage
semantic/tag-ls semantic/find semantic/ctxt semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
find-func cedet which-func imenu finder-inf info package easymenu
epg-config url-handlers url-parse auth-source cl-seq eieio eieio-core
cl-macs eieio-loaddefs password-cache url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib time-date mule-util tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32
ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode elisp-mode lisp-mode prog-mode register page
menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core term/tty-colors frame cl-generic
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 charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote w32notify w32 lcms2
multi-tty make-network-process emacs)

Memory information:
((conses 16 869465 128119)
 (symbols 56 40727 8)
 (miscs 48 2195 147)
 (strings 32 133216 18250)
 (string-bytes 1 3540680)
 (vectors 16 54735)
 (vector-slots 8 1628041 79130)
 (floats 8 307 957)
 (intervals 56 80265 1349)
 (buffers 992 40))





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Wed, 18 Apr 2018 06:55:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Keith Russell <keithrussell42 <at> fastmail.com>
Cc: 31203 <at> debbugs.gnu.org
Subject: Re: bug#31203: 26.1;
 Fringe and toolbar bitmaps unscaled on Windows 10 HiDPI display
Date: Wed, 18 Apr 2018 09:54:14 +0300
> From: Keith Russell <keithrussell42 <at> fastmail.com>
> Date: Tue, 17 Apr 2018 21:07:34 -0400
> 
> 
> Running on Windows 10 with a high resolution display (3840 x 2160)
> the fringe bitmaps and toolbar buttons are so tiny as to be almost
> indistinguishable from dots. Scrollbars and menus are fine and the
> fonts look stunning. If I set the compatibility option to "override
> application" and let the system scale then it's the right size but
> fuzzy. I couldn't find anything in the bug reports. The only
> thing I found in the Changelog was the change to make Emacs
> DPI aware on Windows but that was back in 2015.

The fringe bitmaps have fixed width specified in pixels.  I understand
you are saying that the number of pixels is correct, but its visual
appearance leaves a lot to be desired, is that right?  If so, you can
customize your fringes using this:

  (setq fringe-mode '(16 . 16))

(replace 16 with a number that is to your liking, I'm just guessing
there).

We could also apply the scaling automatically, patches welcome.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Wed, 18 Apr 2018 23:56:02 GMT) Full text and rfc822 format available.

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

From: Keith Russell <keithrussell42 <at> fastmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 31203 <at> debbugs.gnu.org
Subject: Re: bug#31203: 26.1; Fringe and toolbar bitmaps unscaled on Windows
 10 HiDPI display
Date: Wed, 18 Apr 2018 19:55:33 -0400
[Message part 1 (text/plain, inline)]
Hi Eli,

Unfortunately that only changes the width of the fringe. I had tried it 
before but tried again just to make sure. The bitmap doesn't scale with 
the fringe width. See the attached screen shot. This is with a fringe of 
32 and a font of "10" which translates to 33 pixels on my display. I'm 
not a Windows programmer (more Linux than anything) so I'm not sure if I 
can provide a patch. I will poke around the source and see what I can 
see. Maybe something obvious will pop out.

Thanks,

Keith


On 2018-04-18 2:54, Eli Zaretskii wrote:
>> From: Keith Russell <keithrussell42 <at> fastmail.com>
>> Date: Tue, 17 Apr 2018 21:07:34 -0400
>>
>>
>> Running on Windows 10 with a high resolution display (3840 x 2160)
>> the fringe bitmaps and toolbar buttons are so tiny as to be almost
>> indistinguishable from dots. Scrollbars and menus are fine and the
>> fonts look stunning. If I set the compatibility option to "override
>> application" and let the system scale then it's the right size but
>> fuzzy. I couldn't find anything in the bug reports. The only
>> thing I found in the Changelog was the change to make Emacs
>> DPI aware on Windows but that was back in 2015.
> The fringe bitmaps have fixed width specified in pixels.  I understand
> you are saying that the number of pixels is correct, but its visual
> appearance leaves a lot to be desired, is that right?  If so, you can
> customize your fringes using this:
>
>    (setq fringe-mode '(16 . 16))
>
> (replace 16 with a number that is to your liking, I'm just guessing
> there).
>
> We could also apply the scaling automatically, patches welcome.

[emacs-fringe.PNG (image/png, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Thu, 19 Apr 2018 06:35:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Keith Russell <keithrussell42 <at> fastmail.com>
Cc: 31203 <at> debbugs.gnu.org
Subject: Re: bug#31203: 26.1; Fringe and toolbar bitmaps unscaled on Windows
 10 HiDPI display
Date: Thu, 19 Apr 2018 09:34:09 +0300
> Cc: 31203 <at> debbugs.gnu.org
> From: Keith Russell <keithrussell42 <at> fastmail.com>
> Date: Wed, 18 Apr 2018 19:55:33 -0400
> 
> Unfortunately that only changes the width of the fringe. I had tried it 
> before but tried again just to make sure. The bitmap doesn't scale with 
> the fringe width. See the attached screen shot. This is with a fringe of 
> 32 and a font of "10" which translates to 33 pixels on my display. I'm 
> not a Windows programmer (more Linux than anything) so I'm not sure if I 
> can provide a patch. I will poke around the source and see what I can 
> see. Maybe something obvious will pop out.

Thanks.  I wonder why this problem was not reported on X.  Maybe the
relevant X APIs scale the bitmaps under the hood?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Wed, 11 Sep 2019 15:56:02 GMT) Full text and rfc822 format available.

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

From: Carlos Pita <carlosjosepita <at> gmail.com>
To: 31203 <at> debbugs.gnu.org
Date: Wed, 11 Sep 2019 12:55:28 -0300
Hi Eli, not sure about the fringe pixmaps, but I can confirm that many
things are scaled too tiny in X11 with a hidpi screen, for example
checkboxes and "subtree arrows" in customization buffers. Also tetris
looks absurdly tiny. In general, I would say that widgets and images
are not correctly scaled according to the screen dpi. It also
surprises me that there are so few google/debbugs matches when
searching for hidpi related problems. Everyone is moving to 2K and 3K
screens now, you can't buy new decent lowdpi hardware even if you
wanted to.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Wed, 11 Sep 2019 15:59:02 GMT) Full text and rfc822 format available.

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

From: Carlos Pita <carlosjosepita <at> gmail.com>
To: 31203 <at> debbugs.gnu.org
Cc: Eli Zaretskii <eliz <at> gnu.org>
Subject: Re:
Date: Wed, 11 Sep 2019 12:57:44 -0300
> looks absurdly tiny. In general, I would say that widgets and images
> are not correctly scaled according to the screen dpi. It also

I mean non-GTK widgets, the ones rendered by emacs itself.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31203; Package emacs. (Wed, 11 Sep 2019 16:25:01 GMT) Full text and rfc822 format available.

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

From: Carlos Pita <carlosjosepita <at> gmail.com>
To: 31203 <at> debbugs.gnu.org
Cc: Eli Zaretskii <eliz <at> gnu.org>
Subject: Re:
Date: Wed, 11 Sep 2019 13:24:09 -0300
Now I can confirm the tiny fringe indicators in X11 too:

* Emacs 26.1
* Ubuntu 19.04




This bug report was last modified 5 years and 284 days ago.

Previous Next


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