all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Aaron Ecay <aaronecay@gmail.com>
To: emacs-pretest-bug@gnu.org
Subject: bug#2352: 23.0.90; Vertical window border on OS X
Date: Mon, 16 Feb 2009 22:51:56 -0500	[thread overview]
Message-ID: <20090217035156.GI48993@awe.local> (raw)

Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the emacs-pretest-bug@gnu.org mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

On the OS X (and presumably GNUstep) port, the drawing of a vertical
border between two frames does not work.  This currently uses the
NSDrawGroove function from the Cocoa/GNUstep API.  According to
http://preview.tinyurl.com/c2flh9 (apologies for the shortening, the
link goes to some Apple API documentation and the URL is gargantuan),
the function NSDrawGroove "Draws a gray-filled rectangle with a groove
border".  This would not be desirable behavior in any case, as making
the divider gray disregards the setting of the vertical-border face.
And in any event, it appears to be a no-op on OS X.5 (Leopard) -- after
doing a C-x 3, there is no vertical frame border apparent against either
a dark or a white background.  The function to use, IMHO, is NSRectFill;
substituting this fn makes the border drawing happen.  NSRectFill was
used in Emacs 22 (`emacs22' branch in the git repo, src/nsterm.m line
2466).  The patch below fixes this behavior.  It also restores another
bit of v.22 status quo, namely making the vertical window divider one
pixel in width, instead of the current two.

####### BEGIN PATCH #######
diff --git a/src/nsterm.m b/src/nsterm.m
index b674eda..c2ebf9f 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -2454,7 +2454,7 @@ ns_draw_vertical_window_border (struct window *w, int x, int y0, int y1)
 {
   struct frame *f = XFRAME (WINDOW_FRAME (w));
   struct face *face;
-  NSRect r = NSMakeRect (x, y0, 2, y1-y0);
+  NSRect r = NSMakeRect (x, y0, 1, y1-y0);
 
   NSTRACE (ns_draw_vertical_window_border);
 
@@ -2463,7 +2463,7 @@ ns_draw_vertical_window_border (struct window *w, int x, int y0, int y1)
       [ns_lookup_indexed_color(face->foreground, f) set];
 
   ns_focus (f, &r, 1);
-  NSDrawGroove (r, r);
+  NSRectFill(r);
   ns_unfocus (f);
 }

####### END PATCH #######
 



If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/opt/src/emacs/nextstep/Emacs.app/Contents/Resources/etc/DEBUG for instructions.


In GNU Emacs 23.0.90.7 (i386-apple-darwin9.6.0, NS apple-appkit-949.43)
 of 2009-02-15 on dhcp0403.vpm.resnet.group.upenn.edu
Windowing system distributor `Apple', version 10.3.949
configured using `configure  '--with-ns''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  diff-auto-refine-mode: t
  paredit-mode: t
  auto-insert-mode: t
  desktop-save-mode: t
  mac-print-mode: t
  shell-dirtrack-mode: t
  show-paren-mode: t
  global-auto-complete-mode: t
  auto-complete-mode: t
  display-battery-mode: t
  icomplete-mode: t
  savehist-mode: t
  recentf-mode: t
  partial-completion-mode: t
  display-time-mode: t
  ns-extended-platform-support-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<wheel-down> <wheel-up> <double-wheel-up> <wheel-up> 
<double-wheel-up> <wheel-down> <double-wheel-down> 
<wheel-down> <double-wheel-down> <wheel-down> <wheel-down> 
<wheel-down> <wheel-down> <wheel-down> <double-wheel-down> 
<wheel-up> <wheel-down> <wheel-down> <help-echo> <wheel-down> 
<help-echo> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <help-echo> 
<switch-frame> <help-echo> <help-echo> <ns-open-file-line> 
<switch-frame> <switch-frame> <wheel-down> <double-wheel-down> 
<wheel-up> <double-wheel-up> <wheel-down> <double-wheel-down> 
<wheel-up> <wheel-up> <wheel-down> <double-wheel-down> 
<wheel-down> <wheel-down> <double-wheel-down> <triple-wheel-down> 
<wheel-down> <wheel-down> <wheel-down> <wheel-down> 
<wheel-up> <wheel-down> <wheel-down> <wheel-down> <wheel-down> 
<wheel-down> <wheel-down> <wheel-down> <double-wheel-down> 
<wheel-down> <double-wheel-down> <triple-wheel-down> 
<triple-wheel-down> <wheel-down> <double-wheel-down> 
<triple-wheel-down> <triple-wheel-down> <triple-wheel-down> 
<triple-wheel-down> <triple-wheel-down> <wheel-up> 
<double-wheel-up> <triple-wheel-up> <triple-wheel-up> 
<triple-wheel-up> <triple-wheel-up> <triple-wheel-up> 
<triple-wheel-up> <triple-wheel-up> <triple-wheel-up> 
<triple-wheel-up> <triple-wheel-up> <switch-frame> 
<up> <up> <up> C-r C-h C-g C-e <return> <return> # 
SPC T O D O : SPC f u n c t i o n SPC t o SPC e d i 
t SPC i n SPC t e r m i n a l SPC ( e ) <return> <return> 
<backspace> C-x C-s C-h f r e p o r t - e m <tab> <return> 
<help-echo> <switch-frame> <switch-frame> <down-mouse-1> 
<mouse-movement> <mouse-1> C-h v u s e r - m a <return> 
<switch-frame> s h i <down> <down> <down> <up> <right> 
<down> <down> <down> <up> s h u u q h n n n n n n n 
s C-e C-e <return> <return> M-; T O O D : SPC <backspace> 
<backspace> <backspace> <backspace> D O : SPC m o v 
C-M-x C-x 3 C-x 0 C-x < M-x r e p o r t <return>

Recent messages:
Mark saved where search started
byte-code: End of buffer [3 times]
byte-code: Beginning of buffer [3 times]
Saving file /Users/aecay/home/.zshrc...
Wrote /Users/aecay/home/.zshrc
Type "q" to quit. [2 times]
Entering debugger...
Back to top level.
Mark set






         reply	other threads:[~2009-02-17  3:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <DB5DCBC8-44A6-449E-B8BA-9DC9B4CF5A27@gmail.com>
2009-02-15 22:05 ` bug#2338: 23.0.60; Color Between Window Fringes (Mac OS X) Peter Jones
2009-03-06 15:40   ` bug#2338: marked as done (23.0.60; Color Between Window Fringes (Mac OS X)) Emacs bug Tracking System
2009-02-17  3:51 ` Aaron Ecay [this message]
2009-03-06 15:40   ` bug#2352: marked as done (23.0.90; Vertical window border on OS X) Emacs bug Tracking System

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090217035156.GI48993@awe.local \
    --to=aaronecay@gmail.com \
    --cc=2352@emacsbugs.donarmstrong.com \
    --cc=emacs-pretest-bug@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.