Merge lp://staging/~adamblackburn/wicd/1.6-wired-while-scanning into lp://staging/wicd/1.6

Proposed by Adam Blackburn
Status: Merged
Merged at revision: not available
Proposed branch: lp://staging/~adamblackburn/wicd/1.6-wired-while-scanning
Merge into: lp://staging/wicd/1.6
Diff against target: None lines
To merge this branch: bzr merge lp://staging/~adamblackburn/wicd/1.6-wired-while-scanning
Reviewer Review Type Date Requested Status
Dan O'Reilly Approve
Review via email: mp+10131@code.staging.launchpad.net
To post a comment you must log in.
Revision history for this message
Adam Blackburn (adamblackburn) wrote :

This branch allows connecting with the wired interface while scanning for networks.

Revision history for this message
Dan O'Reilly (oreilldf) wrote :

This line is unneeded in refresh_clicked():
printLine = True # In this case we print a separator.

I think it would be clearer to use wireless_network_list instead of just network_list.

I think there might be some (rare) cases where the wireless network entries will get updated without the wired entry getting updated. Like if you kicked off a scan from wicd-curses with wicd-client open. It's not really a big deal though.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'wicd/gui.py'
--- wicd/gui.py 2009-07-19 02:26:18 +0000
+++ wicd/gui.py 2009-08-14 01:59:05 +0000
@@ -30,6 +30,7 @@
30import pango30import pango
31import gtk31import gtk
32import gtk.glade32import gtk.glade
33from itertools import chain
33from dbus import DBusException34from dbus import DBusException
3435
35from wicd import misc36from wicd import misc
@@ -181,7 +182,14 @@
181 probar = self.wTree.get_widget("progressbar")182 probar = self.wTree.get_widget("progressbar")
182 probar.set_text(language['connecting'])183 probar.set_text(language['connecting'])
183 184
184 self.network_list = self.wTree.get_widget("network_list_vbox")185 self.all_network_list = self.wTree.get_widget("network_list_vbox")
186 self.all_network_list.show_all()
187 self.wired_network_box = gtk.VBox(False, 0)
188 self.wired_network_box.show_all()
189 self.network_list = gtk.VBox(False, 0)
190 self.all_network_list.pack_start(self.wired_network_box, False, False)
191 self.all_network_list.pack_start(self.network_list, True, True)
192 self.network_list.show_all()
185 self.status_area = self.wTree.get_widget("connecting_hbox")193 self.status_area = self.wTree.get_widget("connecting_hbox")
186 self.status_bar = self.wTree.get_widget("statusbar")194 self.status_bar = self.wTree.get_widget("statusbar")
187 menu = self.wTree.get_widget("menu1")195 menu = self.wTree.get_widget("menu1")
@@ -260,6 +268,7 @@
260 ip_entry.entry.set_text('169.254.12.10') # Just a random IP268 ip_entry.entry.set_text('169.254.12.10') # Just a random IP
261269
262 vbox_ah = gtk.VBox(False, 0)270 vbox_ah = gtk.VBox(False, 0)
271 self.wired_network_box = gtk.VBox(False, 0)
263 vbox_ah.pack_start(self.chkbox_use_encryption, False, False)272 vbox_ah.pack_start(self.chkbox_use_encryption, False, False)
264 vbox_ah.pack_start(self.key_entry, False, False)273 vbox_ah.pack_start(self.key_entry, False, False)
265 vbox_ah.show()274 vbox_ah.show()
@@ -288,9 +297,9 @@
288 def disconnect_all(self, widget=None):297 def disconnect_all(self, widget=None):
289 """ Disconnects from any active network. """298 """ Disconnects from any active network. """
290 def handler(*args):299 def handler(*args):
291 gobject.idle_add(self.network_list.set_sensitive, True)300 gobject.idle_add(self.all_network_list.set_sensitive, True)
292 301
293 self.network_list.set_sensitive(False)302 self.all_network_list.set_sensitive(False)
294 daemon.Disconnect(reply_handler=handler, error_handler=handler)303 daemon.Disconnect(reply_handler=handler, error_handler=handler)
295304
296 def about_dialog(self, widget, event=None):305 def about_dialog(self, widget, event=None):
@@ -418,7 +427,7 @@
418 self.connecting = False427 self.connecting = False
419 if self.pulse_active:428 if self.pulse_active:
420 self.pulse_active = False429 self.pulse_active = False
421 gobject.idle_add(self.network_list.set_sensitive, True)430 gobject.idle_add(self.all_network_list.set_sensitive, True)
422 gobject.idle_add(self.status_area.hide_all)431 gobject.idle_add(self.status_area.hide_all)
423 if self.statusID:432 if self.statusID:
424 gobject.idle_add(self.status_bar.remove, 1, self.statusID)433 gobject.idle_add(self.status_bar.remove, 1, self.statusID)
@@ -433,7 +442,7 @@
433 if not self.pulse_active:442 if not self.pulse_active:
434 self.pulse_active = True443 self.pulse_active = True
435 misc.timeout_add(100, self.pulse_progress_bar, milli=True)444 misc.timeout_add(100, self.pulse_progress_bar, milli=True)
436 gobject.idle_add(self.network_list.set_sensitive, False)445 gobject.idle_add(self.all_network_list.set_sensitive, False)
437 gobject.idle_add(self.status_area.show_all)446 gobject.idle_add(self.status_area.show_all)
438 if self.statusID:447 if self.statusID:
439 gobject.idle_add(self.status_bar.remove, 1, self.statusID)448 gobject.idle_add(self.status_bar.remove, 1, self.statusID)
@@ -458,7 +467,7 @@
458 467
459 if self.prev_state != state or force_check:468 if self.prev_state != state or force_check:
460 apbssid = wireless.GetApBssid()469 apbssid = wireless.GetApBssid()
461 for entry in self.network_list:470 for entry in chain(self.network_list, self.wired_network_box):
462 if hasattr(entry, "update_connect_button"):471 if hasattr(entry, "update_connect_button"):
463 entry.update_connect_button(state, apbssid)472 entry.update_connect_button(state, apbssid)
464 self.prev_state = state473 self.prev_state = state
@@ -480,11 +489,43 @@
480 """ Called when a wireless scan starts. """489 """ Called when a wireless scan starts. """
481 if not DBUS_AVAIL: return490 if not DBUS_AVAIL: return
482 self.network_list.set_sensitive(False)491 self.network_list.set_sensitive(False)
492
493 def _remove_items_from_vbox(self, vbox):
494 for z in vbox:
495 vbox.remove(z)
496 z.destroy()
497 del z
498
483 499
484 def refresh_clicked(self, widget=None):500 def refresh_clicked(self, widget=None):
485 """ Kick off an asynchronous wireless scan. """501 """ Kick off an asynchronous wireless scan. """
486 if not DBUS_AVAIL or self.connecting: return502 if not DBUS_AVAIL or self.connecting: return
487 self.refreshing = True503 self.refreshing = True
504
505 # Remove stuff already in there.
506 self._remove_items_from_vbox(self.wired_network_box)
507 self._remove_items_from_vbox(self.network_list)
508 label = gtk.Label("%s..." % language['scanning'])
509 self.network_list.pack_start(label)
510 self.network_list.show_all()
511 if wired.CheckPluggedIn() or daemon.GetAlwaysShowWiredInterface():
512 printLine = True # In this case we print a separator.
513 wirednet = WiredNetworkEntry()
514 self.wired_network_box.pack_start(wirednet, False, False)
515 wirednet.connect_button.connect("clicked", self.connect,
516 "wired", 0, wirednet)
517 wirednet.disconnect_button.connect("clicked", self.disconnect,
518 "wired", 0, wirednet)
519 wirednet.advanced_button.connect("clicked",
520 self.edit_advanced, "wired", 0,
521 wirednet)
522 state, x = daemon.GetConnectionStatus()
523 wirednet.update_connect_button(state)
524
525 self._wired_showing = True
526 else:
527 self._wired_showing = False
528
488 wireless.Scan(False)529 wireless.Scan(False)
489530
490 def refresh_networks(self, widget=None, fresh=True, hidden=None):531 def refresh_networks(self, widget=None, fresh=True, hidden=None):
@@ -504,26 +545,11 @@
504 return545 return
505 print "refreshing..."546 print "refreshing..."
506 self.network_list.set_sensitive(False)547 self.network_list.set_sensitive(False)
548 self._remove_items_from_vbox(self.network_list)
507 self.wait_for_events()549 self.wait_for_events()
508 printLine = False # We don't print a separator by default.550 printLine = False # We don't print a separator by default.
509 # Remove stuff already in there.551 if self._wired_showing:
510 for z in self.network_list:552 printLine = True
511 self.network_list.remove(z)
512 z.destroy()
513 del z
514
515 if wired.CheckPluggedIn() or daemon.GetAlwaysShowWiredInterface():
516 printLine = True # In this case we print a separator.
517 wirednet = WiredNetworkEntry()
518 self.network_list.pack_start(wirednet, False, False)
519 wirednet.connect_button.connect("clicked", self.connect,
520 "wired", 0, wirednet)
521 wirednet.disconnect_button.connect("clicked", self.disconnect,
522 "wired", 0, wirednet)
523 wirednet.advanced_button.connect("clicked",
524 self.edit_advanced, "wired", 0,
525 wirednet)
526
527 num_networks = wireless.GetNumberOfNetworks()553 num_networks = wireless.GetNumberOfNetworks()
528 instruct_label = self.wTree.get_widget("label_instructions")554 instruct_label = self.wTree.get_widget("label_instructions")
529 if num_networks > 0:555 if num_networks > 0:
@@ -673,7 +699,7 @@
673 def setup_interface_for_connection():699 def setup_interface_for_connection():
674 cancel_button = self.wTree.get_widget("cancel_button")700 cancel_button = self.wTree.get_widget("cancel_button")
675 cancel_button.set_sensitive(True)701 cancel_button.set_sensitive(True)
676 self.network_list.set_sensitive(False)702 self.all_network_list.set_sensitive(False)
677 if self.statusID:703 if self.statusID:
678 gobject.idle_add(self.status_bar.remove, 1, self.statusID)704 gobject.idle_add(self.status_bar.remove, 1, self.statusID)
679 gobject.idle_add(self.set_status, language["disconnecting_active"])705 gobject.idle_add(self.set_status, language["disconnecting_active"])
@@ -708,12 +734,12 @@
708 734
709 """735 """
710 def handler(*args):736 def handler(*args):
711 gobject.idle_add(self.network_list.set_sensitive, True)737 gobject.idle_add(self.all_network_list.set_sensitive, True)
712 738
713 widget.hide()739 widget.hide()
714 networkentry.connect_button.show()740 networkentry.connect_button.show()
715 daemon.SetForcedDisconnect(True)741 daemon.SetForcedDisconnect(True)
716 self.network_list.set_sensitive(False)742 self.network_list.all_set_sensitive(False)
717 if nettype == "wired":743 if nettype == "wired":
718 wired.DisconnectWired(reply_handler=handler, error_handler=handler)744 wired.DisconnectWired(reply_handler=handler, error_handler=handler)
719 else:745 else:

Subscribers

People subscribed via source and target branches

to status/vote changes: