summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElijah Newren <newren gmail com>2006-04-16 02:22:11 +0000
committerElijah Newren <newren@src.gnome.org>2006-04-16 02:22:11 +0000
commit4ab851cea4650895585c9624885c102c189034a3 (patch)
tree393c7fb84a12c009b65cdea5676039cfdb746591
parenta0dae60517c8742757c3d67476f0e2d62c099588 (diff)
downloadmetacity-4ab851cea4650895585c9624885c102c189034a3.tar.gz
Patch from Dan Sanders to fix #335076.
2006-04-15 Elijah Newren <newren gmail com> Patch from Dan Sanders to fix #335076. * src/core.c (meta_core_maximize, meta_core_toggle_maximize, meta_core_unmaximize): * src/window.c (meta_window_client_message): Raise windows on maximize/unmaximize.
-rw-r--r--ChangeLog9
-rw-r--r--src/core.c9
-rw-r--r--src/window.c24
3 files changed, 38 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index c6936370..eaa33c04 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2006-04-15 Elijah Newren <newren gmail com>
+
+ Patch from Dan Sanders to fix #335076.
+
+ * src/core.c (meta_core_maximize, meta_core_toggle_maximize,
+ meta_core_unmaximize):
+ * src/window.c (meta_window_client_message):
+ Raise windows on maximize/unmaximize.
+
2006-04-14 Elijah Newren <newren gmail com>
* configure.in: post-release version bump to 2.14.5
diff --git a/src/core.c b/src/core.c
index eec01157..7474e838 100644
--- a/src/core.c
+++ b/src/core.c
@@ -389,6 +389,9 @@ meta_core_maximize (Display *xdisplay,
if (window == NULL || window->frame == NULL)
meta_bug ("No such frame window 0x%lx!\n", frame_xwindow);
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
meta_window_maximize (window,
META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
}
@@ -406,6 +409,9 @@ meta_core_toggle_maximize (Display *xdisplay,
if (window == NULL || window->frame == NULL)
meta_bug ("No such frame window 0x%lx!\n", frame_xwindow);
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
if (META_WINDOW_MAXIMIZED (window))
meta_window_unmaximize (window,
META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
@@ -427,6 +433,9 @@ meta_core_unmaximize (Display *xdisplay,
if (window == NULL || window->frame == NULL)
meta_bug ("No such frame window 0x%lx!\n", frame_xwindow);
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
meta_window_unmaximize (window,
META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
}
diff --git a/src/window.c b/src/window.c
index 88787060..123996c2 100644
--- a/src/window.c
+++ b/src/window.c
@@ -4459,9 +4459,17 @@ meta_window_client_message (MetaWindow *window,
(action == _NET_WM_STATE_TOGGLE &&
!window->maximized_horizontally));
if (max && window->has_maximize_func)
- meta_window_maximize (window, META_MAXIMIZE_HORIZONTAL);
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_maximize (window, META_MAXIMIZE_HORIZONTAL);
+ }
else
- meta_window_unmaximize (window, META_MAXIMIZE_HORIZONTAL);
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_unmaximize (window, META_MAXIMIZE_HORIZONTAL);
+ }
}
if (first == display->atom_net_wm_state_maximized_vert ||
@@ -4473,9 +4481,17 @@ meta_window_client_message (MetaWindow *window,
(action == _NET_WM_STATE_TOGGLE &&
!window->maximized_vertically));
if (max && window->has_maximize_func)
- meta_window_maximize (window, META_MAXIMIZE_VERTICAL);
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_maximize (window, META_MAXIMIZE_VERTICAL);
+ }
else
- meta_window_unmaximize (window, META_MAXIMIZE_VERTICAL);
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_unmaximize (window, META_MAXIMIZE_VERTICAL);
+ }
}
if (first == display->atom_net_wm_state_modal ||