GNU bug report logs -
#2352
23.0.90; Vertical window border on OS X
Previous Next
Reported by: Aaron Ecay <aaronecay <at> gmail.com>
Date: Tue, 17 Feb 2009 04:00:03 UTC
Severity: normal
Tags: patch
Merged with 2338
Done: Adrian Robert <adrian.b.robert <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Fri, 6 Mar 2009 17:32:33 +0200
with message-id <DB5DCBC8-44A6-449E-B8BA-9DC9B4CF5A27 <at> gmail.com>
and subject line Re: 23.0.90; Vertical window border on OS X
has caused the Emacs bug report #2352,
regarding 23.0.90; Vertical window border on OS X
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact help-debbugs <at> gnu.org
immediately.)
--
2352: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=2352
Emacs Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
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 <at> 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
[Message part 3 (message/rfc822, inline)]
Thanks, I've applied this patch and am closing the report.
This bug report was last modified 16 years and 73 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.