unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: mituharu@math.s.chiba-u.ac.jp
To: "Ken Raeburn" <raeburn@gnu.org>
Cc: Adrian Robert <adrian.b.robert@gmail.com>, emacs-devel@gnu.org
Subject: Re: a little feedback on Cocoa Emacs.app
Date: Mon, 4 Aug 2008 21:42:39 +0900 (JST)	[thread overview]
Message-ID: <50642.203.180.89.51.1217853759.squirrel@weber.math.s.chiba-u.ac.jp> (raw)
In-Reply-To: <9F4D1718-BBB2-489C-8124-35189C98775E@gnu.org>

> I haven't yet waded through enough of the menu handling code to figure
> out if it's easy to make it dynamic and updated from lisp, but I threw
> together code to add a fixed one-element menu, not conditionalized on
> which flavor of NS support is used.  It says "new frame", not "new
> window" like some other apps use, for consistency with the other Emacs
> menus and terminology.  My first, very small foray into Objective C....
>
> I've attached the current patch for feedback.

>  +- (void)newFrame: (id)sender
>  +{
>  +  Feval (Fcons (intern ("make-frame"), Qnil));
>  +}
>  +

Strictly speaking, Feval calls inside read_socket_hook are not
allowed by design, although the Cocoa/GNUstep port is using it
extensively...

BTW, it's not difficult to add a *static* dock menu to Carbon
Emacs 22 CVS, either.  For example, add

  err = CreateNewMenu (MAC_MENU_END, 0, &menu);
  if (err == noErr)
    err = AppendMenuItemTextWithCFString (menu, CFSTR ("New Frame"),
					  0, kHICommandNew, NULL);
  if (err == noErr)
    SetApplicationDockTileMenu (menu);

at the end of the `#ifdef MAC_OSX' part of init_menu_bar in
src/mactoolbox.c, and

  (put 'new 'mac-apple-event-id "new ") ; kHICommandNew
  (define-key mac-apple-event-map [hi-command new] 'make-frame)

to lisp/term/mac-win.el.

				     YAMAMOTO Mitsuharu
				mituharu@math.s.chiba-u.ac.jp







  reply	other threads:[~2008-08-04 12:42 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-26  2:11 a little feedback on Cocoa Emacs.app Ken Raeburn
2008-07-27  2:29 ` Adrian Robert
2008-07-27  2:56   ` Stefan Monnier
2008-07-27 16:45   ` Ken Raeburn
2008-07-28  2:34     ` Adrian Robert
2008-08-04 10:15       ` Ken Raeburn
2008-08-04 12:42         ` mituharu [this message]
2008-08-04 13:08           ` Adrian Robert
2008-08-04 12:50         ` Adrian Robert
2008-08-04 16:56           ` Ken Raeburn
2008-08-04 17:04             ` Dan Nicolaescu
2008-08-04 17:23               ` Justin Bogner
2008-08-04 17:27                 ` Dan Nicolaescu
2008-08-04 19:28               ` Ken Raeburn
2008-08-04 21:53                 ` Dan Nicolaescu
2008-08-04 23:43             ` Adrian Robert
2008-08-05  3:05               ` Adrian Robert
2008-08-05  4:01                 ` Ken Raeburn
2008-08-05 16:17                   ` Adrian Robert

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=50642.203.180.89.51.1217853759.squirrel@weber.math.s.chiba-u.ac.jp \
    --to=mituharu@math.s.chiba-u.ac.jp \
    --cc=adrian.b.robert@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=raeburn@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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).