]> Dogcows Code - chaz/openbox/blobdiff - openbox/moveresize.c
add the moveto action
[chaz/openbox] / openbox / moveresize.c
index 8ef18a87f56a556e02ab41b03021d4d176618617..01cbb795aeff70e134aa696d64f1360e356899e2 100644 (file)
@@ -68,6 +68,7 @@ static void client_dest(ObClient *client, gpointer data)
 void moveresize_startup(gboolean reconfig)
 {
     popup = popup_new(FALSE);
+    popup_set_text_align(popup, RR_JUSTIFY_CENTER);
 
     if (!reconfig)
         client_add_destroy_notify(client_dest, NULL);
@@ -104,7 +105,7 @@ static void get_resize_position(gint *x, gint *y, gboolean cancel)
     /* see how much it is actually going to resize */
     {
         gint cx = *x, cy = *y;
-        frame_frame_gravity(moveresize_client->frame, &cx, &cy, w, h);
+        frame_frame_gravity(moveresize_client->frame, &cx, &cy);
         client_try_configure(moveresize_client, &cx, &cy, &w, &h,
                              &lw, &lh, TRUE);
     }
@@ -126,7 +127,7 @@ static void get_resize_position(gint *x, gint *y, gboolean cancel)
         break;
     }
 
-    frame_frame_gravity(moveresize_client->frame, x, y, w, h);
+    frame_frame_gravity(moveresize_client->frame, x, y);
 }
 
 static void popup_coords(ObClient *c, const gchar *format, gint a, gint b)
@@ -152,12 +153,11 @@ static void popup_coords(ObClient *c, const gchar *format, gint a, gint b)
 void moveresize_start(ObClient *c, gint x, gint y, guint b, guint32 cnr)
 {
     ObCursor cur;
-
-    moving = (cnr == prop_atoms.net_wm_moveresize_move ||
-              cnr == prop_atoms.net_wm_moveresize_move_keyboard);
+    gboolean mv = (cnr == prop_atoms.net_wm_moveresize_move ||
+                   cnr == prop_atoms.net_wm_moveresize_move_keyboard);
 
     if (moveresize_in_progress || !c->frame->visible ||
-        !(moving ?
+        !(mv ?
           (c->functions & OB_CLIENT_FUNC_MOVE) :
           (c->functions & OB_CLIENT_FUNC_RESIZE)))
         return;
@@ -197,6 +197,7 @@ void moveresize_start(ObClient *c, gint x, gint y, guint b, guint32 cnr)
 
     frame_end_iconify_animation(c->frame);
 
+    moving = mv;
     moveresize_client = c;
     start_cx = c->area.x;
     start_cy = c->area.y;
@@ -298,7 +299,7 @@ void moveresize_end(gboolean cancel)
         client_configure(moveresize_client, x, y,
                          (cancel ? start_cw : cur_x),
                          (cancel ? start_ch : cur_y),
-                         moveresize_client->border_width, TRUE, TRUE);
+                         TRUE, TRUE, FALSE);
     }
 
     moveresize_in_progress = FALSE;
@@ -318,7 +319,7 @@ static void do_move(gboolean keyboard)
     client_configure(moveresize_client, cur_x, cur_y,
                      moveresize_client->area.width,
                      moveresize_client->area.height,
-                     moveresize_client->border_width, TRUE, FALSE);
+                     TRUE, FALSE, FALSE);
     if (config_resize_popup_show == 2) /* == "Always" */
         popup_coords(moveresize_client, "%d x %d",
                      moveresize_client->frame->area.x,
@@ -376,8 +377,7 @@ static void do_resize()
 #endif
 
     get_resize_position(&x, &y, FALSE);
-    client_configure(moveresize_client, x, y, cur_x, cur_y,
-                     moveresize_client->border_width, TRUE, FALSE);
+    client_configure(moveresize_client, x, y, cur_x, cur_y, TRUE, FALSE, FALSE);
 
     /* this would be better with a fixed width font ... XXX can do it better
        if there are 2 text boxes */
@@ -416,7 +416,7 @@ gboolean moveresize_event(XEvent *e)
 {
     gboolean used = FALSE;
 
-    g_assert(moveresize_in_progress);
+    if (!moveresize_in_progress) return FALSE;
 
     if (e->type == ButtonPress) {
         if (!button) {
This page took 0.022199 seconds and 4 git commands to generate.