Only offer to disconnect or reassociate when connected
This commit is contained in:
parent
c39eeb7f68
commit
b6e691b4db
|
@ -816,6 +816,7 @@ static void _clicked_position_menu(GtkMenu * menu, gint * x, gint * y,
|
||||||
gboolean * push_in, gpointer data);
|
gboolean * push_in, gpointer data);
|
||||||
static void _clicked_unavailable(GtkWidget * menu);
|
static void _clicked_unavailable(GtkWidget * menu);
|
||||||
/* callbacks */
|
/* callbacks */
|
||||||
|
static void _clicked_on_disconnect(gpointer data);
|
||||||
static void _clicked_on_network_activated(GtkWidget * widget, gpointer data);
|
static void _clicked_on_network_activated(GtkWidget * widget, gpointer data);
|
||||||
static void _clicked_on_network_toggled(GtkWidget * widget, gpointer data);
|
static void _clicked_on_network_toggled(GtkWidget * widget, gpointer data);
|
||||||
static void _clicked_on_reassociate(gpointer data);
|
static void _clicked_on_reassociate(gpointer data);
|
||||||
|
@ -844,15 +845,26 @@ static void _clicked_available(WPA * wpa, GtkWidget * menu)
|
||||||
|
|
||||||
/* FIXME summarize the status instead */
|
/* FIXME summarize the status instead */
|
||||||
_clicked_network_list(wpa, menu);
|
_clicked_network_list(wpa, menu);
|
||||||
/* reassociate */
|
if(wpa->networks_cur >= 0)
|
||||||
menuitem = gtk_image_menu_item_new_with_label(_("Reassociate"));
|
{
|
||||||
|
/* reassociate */
|
||||||
|
menuitem = gtk_image_menu_item_new_with_label(_("Reassociate"));
|
||||||
#if GTK_CHECK_VERSION(2, 12, 0)
|
#if GTK_CHECK_VERSION(2, 12, 0)
|
||||||
image = gtk_image_new_from_stock(GTK_STOCK_DISCARD, GTK_ICON_SIZE_MENU);
|
image = gtk_image_new_from_stock(GTK_STOCK_DISCARD,
|
||||||
gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem), image);
|
GTK_ICON_SIZE_MENU);
|
||||||
|
gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem),
|
||||||
|
image);
|
||||||
#endif
|
#endif
|
||||||
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
|
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
|
||||||
_clicked_on_reassociate), wpa);
|
_clicked_on_reassociate), wpa);
|
||||||
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
|
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
|
||||||
|
/* disconnect */
|
||||||
|
menuitem = gtk_image_menu_item_new_from_stock(
|
||||||
|
GTK_STOCK_DISCONNECT, NULL);
|
||||||
|
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
|
||||||
|
_clicked_on_disconnect), wpa);
|
||||||
|
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
|
||||||
|
}
|
||||||
/* rescan */
|
/* rescan */
|
||||||
menuitem = gtk_image_menu_item_new_with_label(_("Rescan"));
|
menuitem = gtk_image_menu_item_new_with_label(_("Rescan"));
|
||||||
image = gtk_image_new_from_stock(GTK_STOCK_REFRESH, GTK_ICON_SIZE_MENU);
|
image = gtk_image_new_from_stock(GTK_STOCK_REFRESH, GTK_ICON_SIZE_MENU);
|
||||||
|
@ -976,6 +988,14 @@ static void _clicked_unavailable(GtkWidget * menu)
|
||||||
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
|
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* callbacks */
|
||||||
|
static void _clicked_on_disconnect(gpointer data)
|
||||||
|
{
|
||||||
|
WPA * wpa = data;
|
||||||
|
|
||||||
|
_wpa_disconnect(wpa);
|
||||||
|
}
|
||||||
|
|
||||||
static void _clicked_on_network_activated(GtkWidget * widget, gpointer data)
|
static void _clicked_on_network_activated(GtkWidget * widget, gpointer data)
|
||||||
{
|
{
|
||||||
WPA * wpa = data;
|
WPA * wpa = data;
|
||||||
|
|
|
@ -241,9 +241,6 @@ static void _wifibrowser_on_response(GtkWidget * widget, gint arg1,
|
||||||
|
|
||||||
|
|
||||||
/* wifibrowser_on_view_button_press */
|
/* wifibrowser_on_view_button_press */
|
||||||
/* callbacks */
|
|
||||||
static void _clicked_on_network_disconnect(gpointer data);
|
|
||||||
|
|
||||||
static gboolean _wifibrowser_on_view_button_press(GtkWidget * widget,
|
static gboolean _wifibrowser_on_view_button_press(GtkWidget * widget,
|
||||||
GdkEventButton * event, gpointer data)
|
GdkEventButton * event, gpointer data)
|
||||||
{
|
{
|
||||||
|
@ -270,7 +267,7 @@ static gboolean _wifibrowser_on_view_button_press(GtkWidget * widget,
|
||||||
gtk_menu_shell_append(GTK_MENU_SHELL(menu), widget);
|
gtk_menu_shell_append(GTK_MENU_SHELL(menu), widget);
|
||||||
widget = gtk_image_menu_item_new_from_stock(GTK_STOCK_DISCONNECT, NULL);
|
widget = gtk_image_menu_item_new_from_stock(GTK_STOCK_DISCONNECT, NULL);
|
||||||
g_signal_connect_swapped(widget, "activate", G_CALLBACK(
|
g_signal_connect_swapped(widget, "activate", G_CALLBACK(
|
||||||
_clicked_on_network_disconnect), wpa);
|
_clicked_on_disconnect), wpa);
|
||||||
gtk_menu_shell_append(GTK_MENU_SHELL(menu), widget);
|
gtk_menu_shell_append(GTK_MENU_SHELL(menu), widget);
|
||||||
gtk_widget_show_all(menu);
|
gtk_widget_show_all(menu);
|
||||||
gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, event->button,
|
gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, event->button,
|
||||||
|
@ -281,13 +278,6 @@ static gboolean _wifibrowser_on_view_button_press(GtkWidget * widget,
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void _clicked_on_network_disconnect(gpointer data)
|
|
||||||
{
|
|
||||||
WPA * wpa = data;
|
|
||||||
|
|
||||||
_wpa_disconnect(wpa);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* wifibrowser_on_view_popup_menu */
|
/* wifibrowser_on_view_popup_menu */
|
||||||
static gboolean _wifibrowser_on_view_popup_menu(GtkWidget * widget,
|
static gboolean _wifibrowser_on_view_popup_menu(GtkWidget * widget,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user