unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* emacsclient/server finished, documentation, raising frames
@ 2006-11-07 12:00 Juanma Barranquero
  2006-11-07 12:23 ` Jason Rumney
  0 siblings, 1 reply; 26+ messages in thread
From: Juanma Barranquero @ 2006-11-07 12:00 UTC (permalink / raw)


Except for the little question discussed below, all work on
emacsclient/server is now complete. No changes will be commited by me
unless something breaks. In the next few days I expect to commit
patches to documentation (FAQ and the Emacs manual), though I hope
somebody will check it afterwards: my writing skills in English are
horrible.

[All the following is Windows-specific; please skip it if you're not
interested.]

I've just checked in a patch to emacsclient that allows it to bring
Emacs to front just before passing it a file. "Allows" is the
operative word: Emacs won't be the foreground app unless it does
something to be, that is, call `raise-frame'.

As I see it, there are four ways to do it:

 1) Modify `server-switch-buffer' to raise the frame. Hairy.
`server-switch-buffer' already does quite a lot of things to try to
determine the right buffer/window/frame (and in some cases it already
calls `raise-frame'), so I don't think it is wise to mess with it.

  2) Modify `server-process-filter' to call `raise-frame' just after
calling `server-switch-buffer' and before running the
`server-switch-hook'. Easy. On the other hand, I'm not sure we want to
always raise the frame, after all (or even, what is the *right* frame
to raise, on multi-frame setups).

 3) Add `raise-frame' to `server-switch-hook' (which could be done
conditionally, just on Windows). Easier still; same problems that
previous way.

  4) Do nothing, and document the issue, so users can just do 3) on
their .emacs. Easiest of all; OTOH, I'm a bit reluctant because
server/emacsclient should work "right" just out of the box.

I'm partial to 3), i.e., adding `raise-frame' to `server-switch-hook'
on Windows, which works well with the default value of
`server-window'.

Now, the real question: could people with non-nil `server-window', or
multi-frame setups, try adding `raise-frame' to `server-switch-hook'
and see whether it works as expected? My setup is strictly one-frame,
so I don't know really what to expect from emacsclient/server on
multi-frame configurations.

Thanks,
                    /L/e/k/t/u

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2006-11-12  5:23 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-07 12:00 emacsclient/server finished, documentation, raising frames Juanma Barranquero
2006-11-07 12:23 ` Jason Rumney
2006-11-07 14:11   ` Stefan Monnier
2006-11-07 14:27     ` Kim F. Storm
2006-11-07 14:48     ` Juanma Barranquero
2006-11-07 15:00       ` Kim F. Storm
2006-11-07 17:07       ` Stefan Monnier
2006-11-07 17:23         ` Juanma Barranquero
2006-11-07 18:22           ` Stefan Monnier
2006-11-07 21:59             ` Juanma Barranquero
2006-11-09  1:47               ` Juanma Barranquero
2006-11-09 23:30                 ` Juanma Barranquero
2006-11-09 23:45                   ` Lennart Borgman
2006-11-09 23:50                     ` Juanma Barranquero
2006-11-11  2:09                     ` Richard Stallman
2006-11-11 11:44                       ` Lennart Borgman
2006-11-11 14:16                       ` Juanma Barranquero
2006-11-12  5:14                         ` Richard Stallman
2006-11-12  5:23                           ` Juanma Barranquero
2006-11-10  9:57                 ` Juanma Barranquero
2006-11-07 14:49     ` Andreas Schwab
2006-11-07 17:09       ` Stefan Monnier
2006-11-07 17:16         ` Andreas Schwab
2006-11-07 17:36         ` Juanma Barranquero
2006-11-07 14:55     ` Jason Rumney
2006-11-07 15:27   ` Juanma Barranquero

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).