[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gmane.emacs.help] Re: raise frame no go

From: Jan Djärv
Subject: Re: [gmane.emacs.help] Re: raise frame no go
Date: Thu, 04 Jan 2007 12:42:19 +0100
User-agent: Thunderbird (Macintosh/20061207)

Metacity (the default Gnome window manager) is a complete mess when it comes to raise frame. Some versions works, some don't. Some require the code below, some don't. In some configurations (i.e. focus on click vs. focus on mouse) raise frame works, in some raise frame don't work.

We must give up on creating workarounds for Metacity, and just tell people that metacity is buggy. Ufortunately they have to figure out a workaround for themselves and their specific verion/configuration of metacity.

        Jan D.

Leo skrev:


Re: raise frame no go
Mathias Dahl <address@hidden>
Thu, 04 Jan 2007 02:34:48 +0100


Leo <address@hidden> writes:

I want to use emacsclient to bring Emacs frame to the front. I tried
several functions including raise-frame, x-focus-frame etc, but none
of them worked. All they do is causing the Emacs frame to flash in
the taskbar. Any ideas?

This is tested in Gnome 2.16 in Fedora 6.
Emacs 23: 20061218.

I just wanted to mention that I have the same problem. Running CVS
Emacs as of 2007-01-1 under Mandriva GNU/Linux, using GNOME with its
Metacity window manager. What I do is this:

 $ emacsclient -e "(my-function)"

and my-function is:

(defun my-function ()
 (select-frame-set-input-focus (selected-frame)))

(well, of course it does more than that but...)

Up until today I haven't played with emacsclient under GNU/Linux. I
have just used gnuclient & friends under w32. I am currently coding a
small command/url/hatever launcher in Emacs, and the current behavior
is quite frustrating (when Emacs is not the topmost window).

I see this code in xterm.c:

XTframe_raise_lower (f, raise_flag)
     FRAME_PTR f;
     int raise_flag;
  if (raise_flag)
      /* The following code is needed for `raise-frame' to work on
         some versions of metacity; see Window Manager
         Specification/Extended Window Manager Hints at

         However, on other versions (metacity 2.17.2-1.fc7), it
         reportedly causes hangs when resizing frames.  */

      /* Lisp_Object frame;
         const char *atom = "_NET_ACTIVE_WINDOW"; */

      x_raise_frame (f);

      /* XSETFRAME (frame, f);
         Fx_send_client_event (frame, make_number (0), frame,
                            make_unibyte_string (atom, strlen (atom)),
                            make_number (32),
                            Fcons (make_number (1),
                                   Fcons (make_number (time (NULL) * 1000),
                                   Qnil))); */
    x_lower_frame (f);

Is is that piece of code that fails? My version of metaciy is 2.16.1.




emacs-pretest-bug mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]