Commit 9ae6e189 authored by Chong Yidong's avatar Chong Yidong

Clean up unneeded ns_set_icon_type calls.

Patch from Adrian Robert, see
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01391.html

* xdisp.c (x_consider_frame_title, update_window_cursor): Remove
HAVE_NS conditionals.
(prepare_menu_bars)[HAVE_NS]: Call ns_set_doc_edited.

* nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
filename for the title.
(ns_set_doc_edited): Do nothing if the selected window is a
minibuffer window.

* nsterm.h: Add prototypes for ns_set_name_as_filename and
ns_set_doc_edited.

* nsterm.m: Remove unneeded prototype.
parent 3cbcd186
2010-03-29 Adrian Robert <adrian.b.robert@gmail.com>
* xdisp.c (x_consider_frame_title, update_window_cursor): Remove
HAVE_NS conditionals.
(prepare_menu_bars)[HAVE_NS]: Call ns_set_doc_edited.
* nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
filename for the title.
(ns_set_doc_edited): Do nothing if the selected window is a
minibuffer window.
* nsterm.h: Add prototypes for ns_set_name_as_filename and
ns_set_doc_edited.
* nsterm.m: Remove unneeded prototype.
2010-03-28 Glenn Morris <rgm@gnu.org>
* Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
......
......@@ -81,6 +81,7 @@ Updated by Christian Limpach (chris@nice.ch)
extern Lisp_Object Qheight, Qminibuffer, Qname, Qonly, Qwidth;
extern Lisp_Object Qunsplittable, Qmenu_bar_lines, Qbuffer_predicate, Qtitle;
extern Lisp_Object Qnone;
extern Lisp_Object Vframe_title_format;
Lisp_Object Qbuffered;
Lisp_Object Qfontsize;
......@@ -583,6 +584,8 @@ Turn the input menu (an NSMenu) into a lisp list for tracking on lisp side
NSTRACE (x_implicitly_set_name);
if (FRAME_ICONIFIED_P (f))
ns_set_name_iconic (f, arg, 0);
else if (FRAME_NS_P (f) && EQ (Vframe_title_format, Qt))
ns_set_name_as_filename (f);
else
ns_set_name (f, arg, 0);
}
......@@ -627,14 +630,14 @@ Turn the input menu (an NSMenu) into a lisp list for tracking on lisp side
BLOCK_INPUT;
pool = [[NSAutoreleasePool alloc] init];
name =XBUFFER (buf)->filename;
name = XBUFFER (buf)->filename;
if (NILP (name) || FRAME_ICONIFIED_P (f)) name =XBUFFER (buf)->name;
if (FRAME_ICONIFIED_P (f) && !NILP (f->icon_name))
name = f->icon_name;
if (NILP (name))
name = build_string([ns_app_name UTF8String]);
name = build_string ([ns_app_name UTF8String]);
else
CHECK_STRING (name);
......@@ -687,11 +690,14 @@ Turn the input menu (an NSMenu) into a lisp list for tracking on lisp side
{
NSView *view = FRAME_NS_VIEW (f);
NSAutoreleasePool *pool;
BLOCK_INPUT;
pool = [[NSAutoreleasePool alloc] init];
[[view window] setDocumentEdited: !NILP (arg)];
[pool release];
UNBLOCK_INPUT;
if (!MINI_WINDOW_P (XWINDOW (f->selected_window)))
{
BLOCK_INPUT;
pool = [[NSAutoreleasePool alloc] init];
[[view window] setDocumentEdited: !NILP (arg)];
[pool release];
UNBLOCK_INPUT;
}
}
......
......@@ -708,6 +708,8 @@ extern void nxatoms_of_nsselect ();
extern int ns_lisp_to_cursor_type ();
extern Lisp_Object ns_cursor_type_to_lisp (int arg);
extern Lisp_Object Qnone;
extern void ns_set_name_as_filename (struct frame *f);
extern void ns_set_doc_edited (struct frame *f, Lisp_Object arg);
extern int
ns_defined_color (struct frame *f, char *name, XColor *color_def, int alloc,
......
......@@ -4173,8 +4173,6 @@ - (void)timeout_handler: (NSTimer *)timedEntry
ns_send_appdefined (-2);
}
extern void update_window_cursor (struct window *w, int on);
- (void)fd_handler: (NSTimer *) fdEntry
/* --------------------------------------------------------------------------
Check data waiting on file descriptors and terminate if so
......
......@@ -9472,32 +9472,7 @@ x_consider_frame_title (frame)
if (! STRINGP (f->name)
|| SBYTES (f->name) != len
|| bcmp (title, SDATA (f->name), len) != 0)
{
#ifdef HAVE_NS
if (FRAME_NS_P (f))
{
if (!MINI_WINDOW_P(XWINDOW(f->selected_window)))
{
if (EQ (fmt, Qt))
ns_set_name_as_filename (f);
else
x_implicitly_set_name (f, make_string(title, len),
Qnil);
}
}
else
#endif
x_implicitly_set_name (f, make_string (title, len), Qnil);
}
#ifdef HAVE_NS
if (FRAME_NS_P (f))
{
/* do this also for frames with explicit names */
ns_implicitly_set_icon_type(f);
ns_set_doc_edited(f, Fbuffer_modified_p
(XWINDOW (f->selected_window)->buffer), Qnil);
}
#endif
x_implicitly_set_name (f, make_string (title, len), Qnil);
}
}
......@@ -9593,6 +9568,11 @@ prepare_menu_bars ()
menu_bar_hooks_run = update_menu_bar (f, 0, menu_bar_hooks_run);
#ifdef HAVE_WINDOW_SYSTEM
update_tool_bar (f, 0);
#endif
#ifdef HAVE_NS
if (windows_or_buffers_changed)
ns_set_doc_edited (f, Fbuffer_modified_p
(XWINDOW (f->selected_window)->buffer));
#endif
UNGCPRO;
}
......@@ -22653,9 +22633,6 @@ display_and_set_cursor (w, on, hpos, vpos, x, y)
/* Switch the display of W's cursor on or off, according to the value
of ON. */
#ifndef HAVE_NS
static
#endif
void
update_window_cursor (w, on)
struct window *w;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment