Mercurial > audlegacy
comparison audacious/mainwin.c @ 1043:d122e3abf61c trunk
[svn] - make mainwin moveable again
author | nenolod |
---|---|
date | Sun, 14 May 2006 11:10:01 -0700 |
parents | 286156196e16 |
children | 18ef6f3089d4 |
comparison
equal
deleted
inserted
replaced
1042:286156196e16 | 1043:d122e3abf61c |
---|---|
996 * | 996 * |
997 */ | 997 */ |
998 | 998 |
999 gdk_flush(); | 999 gdk_flush(); |
1000 | 1000 |
1001 if (mainwin_menurow->mr_doublesize_selected) { | 1001 gtk_object_remove_data(GTK_OBJECT(mainwin), "is_moving"); |
1002 event->x /= 2; | 1002 gtk_object_remove_data(GTK_OBJECT(mainwin), "offset_x"); |
1003 event->y /= 2; | 1003 gtk_object_remove_data(GTK_OBJECT(mainwin), "offset_y"); |
1004 } | |
1005 | 1004 |
1006 handle_release_cb(mainwin_wlist, widget, event); | 1005 handle_release_cb(mainwin_wlist, widget, event); |
1007 | 1006 |
1008 draw_main_window(FALSE); | 1007 draw_main_window(FALSE); |
1009 | 1008 |
1035 x = event->x; | 1034 x = event->x; |
1036 y = event->y; | 1035 y = event->y; |
1037 state = event->state; | 1036 state = event->state; |
1038 } | 1037 } |
1039 | 1038 |
1040 handle_motion_cb(mainwin_wlist, widget, event); | 1039 if (gtk_object_get_data(GTK_OBJECT(mainwin), "is_moving")) |
1041 draw_main_window(FALSE); | 1040 { |
1041 gint offset_x, offset_y, mx, my; | |
1042 | |
1043 offset_x = GPOINTER_TO_INT(gtk_object_get_data(GTK_OBJECT(mainwin), "offset_x")); | |
1044 offset_y = GPOINTER_TO_INT(gtk_object_get_data(GTK_OBJECT(mainwin), "offset_y")); | |
1045 | |
1046 gdk_window_get_pointer(NULL, &x, &y, NULL); | |
1047 | |
1048 mx = x - offset_x; | |
1049 my = y - offset_y; | |
1050 | |
1051 gtk_window_move(GTK_WINDOW(mainwin), mx, my); | |
1052 } | |
1053 else | |
1054 { | |
1055 handle_motion_cb(mainwin_wlist, widget, event); | |
1056 draw_main_window(FALSE); | |
1057 } | |
1042 | 1058 |
1043 gdk_flush(); | 1059 gdk_flush(); |
1044 | 1060 |
1045 return FALSE; | 1061 return FALSE; |
1046 } | 1062 } |
1116 if (0 && hint_move_resize_available()) { | 1132 if (0 && hint_move_resize_available()) { |
1117 hint_move_resize(mainwin, event->x_root, event->y_root, TRUE); | 1133 hint_move_resize(mainwin, event->x_root, event->y_root, TRUE); |
1118 grab = FALSE; | 1134 grab = FALSE; |
1119 } | 1135 } |
1120 else | 1136 else |
1137 { | |
1138 gint mx, my; | |
1139 | |
1140 gdk_window_get_pointer(GDK_WINDOW(mainwin->window), &mx, &my, NULL); | |
1141 gtk_object_set_data(GTK_OBJECT(mainwin), "offset_x", GINT_TO_POINTER(mx)); | |
1142 gtk_object_set_data(GTK_OBJECT(mainwin), "offset_y", GINT_TO_POINTER(my)); | |
1143 | |
1144 gtk_object_set_data(GTK_OBJECT(mainwin), "is_moving", GINT_TO_POINTER(1)); | |
1121 gtk_window_present(GTK_WINDOW(mainwin)); | 1145 gtk_window_present(GTK_WINDOW(mainwin)); |
1146 } | |
1122 } | 1147 } |
1123 else if (event->button == 1 && event->type == GDK_2BUTTON_PRESS && | 1148 else if (event->button == 1 && event->type == GDK_2BUTTON_PRESS && |
1124 event->y < 14 && !inside_sensitive_widgets(event->x, event->y)) { | 1149 event->y < 14 && !inside_sensitive_widgets(event->x, event->y)) { |
1125 mainwin_set_shade(!cfg.player_shaded); | 1150 mainwin_set_shade(!cfg.player_shaded); |
1126 } | 1151 } |