bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#1405: detached GTK+ tool bar


From: Jan D.
Subject: bug#1405: detached GTK+ tool bar
Date: Mon, 2 Mar 2009 08:01:24 +0100

How does this work when the button is a menu, i.e. help?

I will be travelling for 2 weeks. I can't test it until then.

     Jan D.

1 mar 2009 kl. 18.43 skrev Stephen Berman <stephen.berman@gmx.net>:

On Sat, 17 Jan 2009 21:24:50 +0100 Stephen Berman <stephen.berman@gmx.net > wrote:

On Thu, 18 Dec 2008 21:46:27 +0100 Stephen Berman <stephen.berman@gmx.net > wrote:

On Thu, 18 Dec 2008 19:50:22 +0100 Jan Djärv <jan.h.d@swipnet.se > wrote:

Stephen Berman skrev:
On Sun, 23 Nov 2008 12:01:09 +0100 Jan Djärv <jan.h.d@swipne t.se> wrote:

I'd rather see if the focus can be kept to the frame. We can perhaps put some hints to the window manager. I'll look in to it. Can the OP please tell us what window manager he is using and what kind of focus model he has (click to
focus, focus follows mouse)?

I'm using KDE/kwin and click to focus. But I also see the same behavior (i.e. focus not returning to the window/frame the tool bar was detached
from) with a focus follows mouse policy.


I've made a change, can you test it?

Thanks,

   Jan D.

I just did, and confirm that focus now switches back to the frame after
clicking a button on the detached tool bar.  Thanks!

I just learned about the variable x-gtk-whole-detached-tool-bar; when
this is non-nil and the tool bar is detached, focus fails to switch back to the frame after clicking a button on the detached tool bar. So your
fix does not work with x-gtk-whole-detached-tool-bar non-nil.

In GNU Emacs 23.0.60.29 (i686-pc-linux-gnu, GTK+ Version 2.14.4) of
2009-01-11 on escher

Steve Berman

The patch below (against the current CVS trunk) makes focus return to
the frame regardless of the value of x-gtk-whole-detached-tool-bar
(i.e., it works both with the proxy (arrow) and the whole detached tool bar). Jan D. or somebody else who's familiar with GTK+ should check to
make sure it does not cause any problems elsewhere.

Steve Berman


2009-03-01  Stephen Berman  <stephen.berman@gmx.net>

   * gtkutil.c (xg_tool_bar_callback): Return focus to the frame
   after we have clicked on a detached tool bar button (bug#1405).
   This replaces the reverted change below.
   (xg_tool_bar_proxy_callback): Revert previous change (bug#1405).


*** emacs/src/gtkutil.c.~1.146.~ 2009-03-01 17:06:07.000000000 +0100
--- emacs/src/gtkutil.c    2009-03-01 17:41:39.000000000 +0100
***************
*** 3461,3466 ****
--- 3461,3470 ----
      this is written.  */
event.modifiers = x_x_to_emacs_modifiers (FRAME_X_DISPLAY_INFO (f), mod);
   kbd_buffer_store_event (&event);
+
+   /* Return focus to the frame after we have clicked on a detached
+      tool bar button. */
+   Fx_focus_frame (frame);
 }

/* Callback function invoked when a tool bar item is pressed in a detached
***************
*** 3480,3490 ****
   xg_tool_bar_callback (wbutton, client_data);
   FRAME_PTR f = (FRAME_PTR) g_object_get_data (G_OBJECT (wbutton),
                                                XG_FRAME_DATA);
-   /* Put focus back to the frame after we have clicked on a detached
-      tool bar button. */
-   Lisp_Object frame;
-   XSETFRAME (frame, f);
-   Fx_focus_frame (frame);
 }

/* This callback is called when a tool item should create a proxy item,
--- 3484,3489 ----







reply via email to

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