Here a patch to enable Vertical/Horizontal maximization in
gtk-window-decorator.
Cedric
diff --git a/gtk/window-decorator/gtk-window-decorator.c b/gtk/window-decorator/gtk-window-decorator.c
index fe2efde..ff67073 100644
--- a/gtk/window-decorator/gtk-window-decorator.c
+++ b/gtk/window-decorator/gtk-window-decorator.c
@@ -4102,7 +4102,7 @@ max_button_event (WnckWindow *win,
switch (xevent->type) {
case ButtonPress:
- if (xevent->xbutton.button == 1)
+ if (xevent->xbutton.button <= 3)
d->button_states[BUTTON_MAX] |= PRESSED_EVENT_WINDOW;
break;
case ButtonRelease:
@@ -4118,6 +4118,30 @@ max_button_event (WnckWindow *win,
d->button_states[BUTTON_MAX] &= ~PRESSED_EVENT_WINDOW;
}
+ else if (xevent->xbutton.button == 2)
+ {
+ if (d->button_states[BUTTON_MAX] == BUTTON_EVENT_ACTION_STATE)
+ {
+ if (wnck_window_is_maximized_vertically (win))
+ wnck_window_unmaximize_vertically (win);
+ else
+ wnck_window_maximize_vertically (win);
+ }
+
+ d->button_states[BUTTON_MAX] &= ~PRESSED_EVENT_WINDOW;
+ }
+ else if (xevent->xbutton.button == 3)
+ {
+ if (d->button_states[BUTTON_MAX] == BUTTON_EVENT_ACTION_STATE)
+ {
+ if (wnck_window_is_maximized_horizontally (win))
+ wnck_window_unmaximize_horizontally (win);
+ else
+ wnck_window_maximize_horizontally (win);
+ }
+
+ d->button_states[BUTTON_MAX] &= ~PRESSED_EVENT_WINDOW;
+ }
break;
case EnterNotify:
d->button_states[BUTTON_MAX] |= IN_EVENT_WINDOW;
_______________________________________________
compiz mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/compiz