mirror of
https://github.com/brl/mutter.git
synced 2024-11-21 23:50:41 -05:00
Maintain the button grab for sloppy and mouse focus all the time. This
2003-01-04 Rob Adams <readams@readams.net> Maintain the button grab for sloppy and mouse focus all the time. This fixes a number of problem introduced by trying to drop the grab; we now do this only for click to focus mode. This has the unfortunate effect that #102209 reappears for sloppy and mouse focus, but this seems unavoidable, because of limitations in the X protocol. See #115072. * src/display.c (meta_display_grab_focus_window_button): #if 0 the section on not grabbing unless in click-to-focus mode. * src/window.c (meta_window_notify_focus): drop focus button grab on FocusIn and acquire it on FocusOut only when in click-to-focus mode.
This commit is contained in:
parent
07c0a53316
commit
2fdb75ad45
16
ChangeLog
16
ChangeLog
@ -1,3 +1,19 @@
|
|||||||
|
2003-01-04 Rob Adams <readams@readams.net>
|
||||||
|
|
||||||
|
Maintain the button grab for sloppy and mouse focus all the time.
|
||||||
|
This fixes a number of problem introduced by trying to drop the
|
||||||
|
grab; we now do this only for click to focus mode. This has the
|
||||||
|
unfortunate effect that #102209 reappears for sloppy and mouse
|
||||||
|
focus, but this seems unavoidable, because of limitations in the X
|
||||||
|
protocol. See #115072.
|
||||||
|
|
||||||
|
* src/display.c (meta_display_grab_focus_window_button): #if 0 the
|
||||||
|
section on not grabbing unless in click-to-focus mode.
|
||||||
|
|
||||||
|
* src/window.c (meta_window_notify_focus): drop focus button grab
|
||||||
|
on FocusIn and acquire it on FocusOut only when in click-to-focus
|
||||||
|
mode.
|
||||||
|
|
||||||
2004-01-03 Robert Sedak <robert.sedak@sk.htnet.hr>
|
2004-01-03 Robert Sedak <robert.sedak@sk.htnet.hr>
|
||||||
|
|
||||||
* configure.in: Added "hr" in ALL_LINGUAS.
|
* configure.in: Added "hr" in ALL_LINGUAS.
|
||||||
|
@ -1371,7 +1371,7 @@ event_callback (XEvent *event,
|
|||||||
|
|
||||||
/* Raise on clicking the client area always or only
|
/* Raise on clicking the client area always or only
|
||||||
* in click to focus mode? The debate rages.
|
* in click to focus mode? The debate rages.
|
||||||
* Feel free to change TRUE to FALSE
|
* Feel free to change TRUE to FALSE or vice versa
|
||||||
*/
|
*/
|
||||||
if (TRUE /* meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK */)
|
if (TRUE /* meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK */)
|
||||||
{
|
{
|
||||||
@ -3303,6 +3303,8 @@ meta_display_grab_focus_window_button (MetaDisplay *display,
|
|||||||
/* Grab button 1 for activating unfocused windows */
|
/* Grab button 1 for activating unfocused windows */
|
||||||
meta_verbose ("Grabbing unfocused window buttons for %s\n", window->desc);
|
meta_verbose ("Grabbing unfocused window buttons for %s\n", window->desc);
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
/* FIXME:115072 */
|
||||||
/* Don't grab at all unless in click to focus mode. In click to
|
/* Don't grab at all unless in click to focus mode. In click to
|
||||||
* focus, we may sometimes be clever about intercepting and eating
|
* focus, we may sometimes be clever about intercepting and eating
|
||||||
* the focus click. But in mouse focus, we never do that since the
|
* the focus click. But in mouse focus, we never do that since the
|
||||||
@ -3314,6 +3316,7 @@ meta_display_grab_focus_window_button (MetaDisplay *display,
|
|||||||
meta_verbose (" (well, not grabbing since not in click to focus mode)\n");
|
meta_verbose (" (well, not grabbing since not in click to focus mode)\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (window->have_focus_click_grab)
|
if (window->have_focus_click_grab)
|
||||||
{
|
{
|
||||||
|
@ -4118,7 +4118,8 @@ meta_window_notify_focus (MetaWindow *window,
|
|||||||
* with some things you might do inside the focused window, by
|
* with some things you might do inside the focused window, by
|
||||||
* causing the client to get funky enter/leave events.
|
* causing the client to get funky enter/leave events.
|
||||||
*/
|
*/
|
||||||
meta_display_ungrab_focus_window_button (window->display, window);
|
if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK)
|
||||||
|
meta_display_ungrab_focus_window_button (window->display, window);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (event->type == FocusOut ||
|
else if (event->type == FocusOut ||
|
||||||
@ -4157,8 +4158,9 @@ meta_window_notify_focus (MetaWindow *window,
|
|||||||
meta_window_update_layer (window);
|
meta_window_update_layer (window);
|
||||||
|
|
||||||
/* Re-grab for click to focus, if necessary */
|
/* Re-grab for click to focus, if necessary */
|
||||||
meta_display_grab_focus_window_button (window->display, window);
|
if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK)
|
||||||
}
|
meta_display_grab_focus_window_button (window->display, window);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Now set _NET_ACTIVE_WINDOW hint */
|
/* Now set _NET_ACTIVE_WINDOW hint */
|
||||||
|
Loading…
Reference in New Issue
Block a user