* bug#4513: NS: File menu missing
[not found] <6C67AAF0-3E49-48EF-8553-0CB7F9AC97F7@gmail.com>
@ 2009-09-23 6:29 ` Glenn Morris
[not found] ` <B5C57EDE-94E3-4557-BF82-994371E9FA7F@gmail.com>
2009-09-25 17:50 ` bug#4513: marked as done (NS: File menu missing) Emacs bug Tracking System
2 siblings, 0 replies; 5+ messages in thread
From: Glenn Morris @ 2009-09-23 6:29 UTC (permalink / raw)
To: David Reitter; +Cc: 4513
David Reitter wrote:
> package: ns
Just in case you were unaware, if you don't put bugs in the "emacs"
package as well, none of the correspondence gets sent out to the
bug-gnu-emacs list (maybe this was intentional?). Ie, use:
Package: emacs,ns
(I hope these messages doesn't sound like a list of lectures/complaints.)
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#4513: NS: File menu missing
[not found] ` <B5C57EDE-94E3-4557-BF82-994371E9FA7F@gmail.com>
@ 2009-09-23 21:55 ` David Reitter
[not found] ` <48E7EA88-76E2-411D-8826-94A191CB7A83@gmail.com>
0 siblings, 1 reply; 5+ messages in thread
From: David Reitter @ 2009-09-23 21:55 UTC (permalink / raw)
To: Adrian Robert; +Cc: 4513
[-- Attachment #1: Type: text/plain, Size: 2522 bytes --]
On Sep 21, 2009, at 9:00 PM, Adrian Robert wrote:
>> The file menu is missing; its contents are in the application menu
>> (titled "Emacs"), and the usual contents of the application menu
>> are completely gone.
>>
>> So I've got "Emacs Edit Options"
>
> Very odd. I have not made any changes that I *think* could affect
> this. Have not seen the bug (10.4) -- even tried setting my lang to
> German, but it might be I need to do another bootstrap build or
> something. There look like there were a lot of menu-related changes
> in the lisp subdirectory on 2009-09-17.
OK, so it seems to me that the culprit may be:
[menu clear];
in ns_update_menubar.
Removing the [menu clear] brings the File menu back.
I can't find the implementation of EmacsMenu's -clear, and it is not
documented as a NSMenu (or NSObject) function.
This makes me think it's something undocumented implemented by the
AppKit framework. Didn't manage to class-dump that framework.
If the behavior of -clear has changed in the 10.6 SDK in this respect,
I would not be surprised if, when compiled on 10.6, it may link
against the new behavior (clearing everything), and when compiled on
10.5, it's the old one.
If OS X forces the first menu to be the application name (and I think
it does, see Info.plist setting), then we get the behavior I'm
observing.
The patch below seems to do the job. Hope this works in Nextstep as
well.
I'll check that in unless you see a problem.
diff --git a/src/nsterm.h b/src/nsterm.h
index 96f65d2..c4935f2 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -118,7 +118,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/
>. */
- (NSMenuItem *)addItemWithWidgetValue: (void *)wvptr;
- (void)fillWithWidgetValue: (void *)wvptr;
- (EmacsMenu *)addSubmenuWithTitle: (char *)title forFrame: (struct
frame *)f;
-- (void) clear;
- (Lisp_Object)runMenuAt: (NSPoint)p forFrame: (struct frame *)f
keymaps: (int)keymaps;
@end
diff --git a/src/nsmenu.m b/src/nsmenu.m
index 98a086b..f63852c 100644
--- a/src/nsmenu.m
+++ b/src/nsmenu.m
@@ -440,7 +440,10 @@ ns_update_menubar (struct frame *f, int deep_p,
EmacsMenu *submenu)
}
}
- [menu clear];
+ /* clear menu, leaving the first item (application menu) */
+ for (i = [menu numberOfItems]-1; i>0 ; i--)
+ [menu removeItemAtIndex:1];
+
for (i = 0; i < XVECTOR (items)->size; i += 4)
{
string = XVECTOR (items)->contents[i + 1];
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 2193 bytes --]
^ permalink raw reply related [flat|nested] 5+ messages in thread
* bug#4513: NS: File menu missing
[not found] ` <492490B8-AB3A-4DBF-97A1-6293C1FB659D@gmail.com>
@ 2009-09-24 1:34 ` David Reitter
[not found] ` <6E46C10A-8D96-4E97-9AEA-71816956920E@gmail.com>
0 siblings, 1 reply; 5+ messages in thread
From: David Reitter @ 2009-09-24 1:34 UTC (permalink / raw)
To: Adrian Robert; +Cc: 4513
[-- Attachment #1: Type: text/plain, Size: 1278 bytes --]
Further to this issue to confirm our diagnosis:
http://developer.apple.com/mac/library/releasenotes/Cocoa/AppKit.html
Backward Compatibility
One backward compatibility mechanism that is occasionally used in the
frameworks is to check for the version of the system an application
was built against, and if an older system, modify the behavior to be
more compatible. This is done in cases where bad incompatibility
problems are predicted or discovered; and most of these are listed
below in these notes.
Typically we detect where an application was built by looking at the
version of the System, Cocoa, AppKit, or Foundation frameworks the
application was linked against. Thus, as a result of relinking your
application on Leopard, you might notice different behaviors, some of
which might cause incompatibilities.
...
NSApplication application menu item title (New since WWDC 2008)
In Leopard, the first item in the main menu (the application menu)
would have its title modified to the empty string. In SnowLeopard,
this is only done for apps linked on Leopard or earlier: new apps will
not see this title modified. The title of the this menu item is
ignored for display purposes - the application menu always reflects
the application name.
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 2193 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#4513: NS: File menu missing
[not found] ` <6E46C10A-8D96-4E97-9AEA-71816956920E@gmail.com>
@ 2009-09-25 17:45 ` David Reitter
0 siblings, 0 replies; 5+ messages in thread
From: David Reitter @ 2009-09-25 17:45 UTC (permalink / raw)
To: Adrian Robert; +Cc: 4513, 4513-done
[-- Attachment #1: Type: text/plain, Size: 577 bytes --]
On Sep 23, 2009, at 10:24 PM, Adrian Robert wrote:
> OK, after seeing this I'm more inclined to go with "ignore first
> item at top level on OS X".
>
> (We have: 10.0-10.5.8 = @Apple, 10.5.8 = @"", 10.6+ = @<appname>.
> Jeez...)
For now I went with the smallest change possible (checking for
@"Emacs" in addition to the others) as I don't know about NS and
future changes in NS.
This solution relies on only what is documented.
Suppose you could indeed adopt my earlier patch if this proves
problematic. No need for -clear anyways, unless it is used elsewhere.
D
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 2193 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#4513: marked as done (NS: File menu missing)
[not found] <6C67AAF0-3E49-48EF-8553-0CB7F9AC97F7@gmail.com>
2009-09-23 6:29 ` bug#4513: NS: File menu missing Glenn Morris
[not found] ` <B5C57EDE-94E3-4557-BF82-994371E9FA7F@gmail.com>
@ 2009-09-25 17:50 ` Emacs bug Tracking System
2 siblings, 0 replies; 5+ messages in thread
From: Emacs bug Tracking System @ 2009-09-25 17:50 UTC (permalink / raw)
To: David Reitter
[-- Attachment #1: Type: text/plain, Size: 856 bytes --]
Your message dated Fri, 25 Sep 2009 13:45:14 -0400
with message-id <95462120-61BD-4BB0-AF5D-A69FE1F4A480@gmail.com>
and subject line Re: bug#4513: NS: File menu missing
has caused the Emacs bug report #4513,
regarding NS: File menu missing
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 owner@emacsbugs.donarmstrong.com
immediately.)
--
4513: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=4513
Emacs Bug Tracking System
Contact owner@emacsbugs.donarmstrong.com with problems
[-- Attachment #2: Type: message/rfc822, Size: 4958 bytes --]
From: David Reitter <david.reitter@gmail.com>
To: emacs-pretest-bug@gnu.org
Subject: NS: File menu missing
Date: Mon, 21 Sep 2009 18:55:31 -0400
Message-ID: <6C67AAF0-3E49-48EF-8553-0CB7F9AC97F7@gmail.com>
package: ns
X-Debbugs-Cc: Adrian Robert <adrian.b.robert@gmail.com>
The file menu is missing; its contents are in the application menu
(titled "Emacs"), and the usual contents of the application menu are
completely gone.
So I've got "Emacs Edit Options"
Is this intentional (if so which change - had a long hard look at
change logs)?
Have been trying to debug without success so far.
This was introduced at some point in between the Emacs 23.1 pretest
branch cut and the current master branch.
Thanks
- David
In GNU Emacs 23.1.50.7 (i386-apple-darwin10.0.0, NS apple-
appkit-1038.11)
of 2009-09-21 on scarlett.psy.cmu.edu
Windowing system distributor `Apple', version 10.3.1038
configured using `configure '--with-ns' '--without-x' 'CC=gcc -arch
i386''
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: en_US.us-ascii
value of $LC_CTYPE: en_US.us-ascii
value of $LC_MESSAGES: en_US.us-ascii
value of $LC_MONETARY: en_US.us-ascii
value of $LC_NUMERIC: en_US.us-ascii
value of $LC_TIME: en_US.us-ascii
value of $LANG: de_DE.ISO8859-15
value of $XMODIFIERS: nil
locale-coding-system: us-ascii-unix
default enable-multibyte-characters: t
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-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
line-number-mode: t
transient-mark-mode: t
Recent input:
<menu-bar> <help-menu> <send-emacs-bug-report>
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Load-path shadows:
None found.
[-- Attachment #3: Type: message/rfc822, Size: 6876 bytes --]
[-- Attachment #3.1.1: Type: text/plain, Size: 577 bytes --]
On Sep 23, 2009, at 10:24 PM, Adrian Robert wrote:
> OK, after seeing this I'm more inclined to go with "ignore first
> item at top level on OS X".
>
> (We have: 10.0-10.5.8 = @Apple, 10.5.8 = @"", 10.6+ = @<appname>.
> Jeez...)
For now I went with the smallest change possible (checking for
@"Emacs" in addition to the others) as I don't know about NS and
future changes in NS.
This solution relies on only what is documented.
Suppose you could indeed adopt my earlier patch if this proves
problematic. No need for -clear anyways, unless it is used elsewhere.
D
[-- Attachment #3.1.2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 2193 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-09-25 17:50 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <6C67AAF0-3E49-48EF-8553-0CB7F9AC97F7@gmail.com>
2009-09-23 6:29 ` bug#4513: NS: File menu missing Glenn Morris
[not found] ` <B5C57EDE-94E3-4557-BF82-994371E9FA7F@gmail.com>
2009-09-23 21:55 ` David Reitter
[not found] ` <48E7EA88-76E2-411D-8826-94A191CB7A83@gmail.com>
[not found] ` <C15BAD5E-9641-4043-80A2-2EF7A0FE2615@gmail.com>
[not found] ` <492490B8-AB3A-4DBF-97A1-6293C1FB659D@gmail.com>
2009-09-24 1:34 ` David Reitter
[not found] ` <6E46C10A-8D96-4E97-9AEA-71816956920E@gmail.com>
2009-09-25 17:45 ` David Reitter
2009-09-25 17:50 ` bug#4513: marked as done (NS: File menu missing) Emacs bug Tracking System
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.