1
0
mirror of https://github.com/gryf/wicd.git synced 2025-12-19 20:38:00 +01:00
Commit Graph

83 Commits

Author SHA1 Message Date
imdano
6e0fe132b9 Testing/Experimental:
- Move process renaming code to the misc module, and fix process ranming for 64 bit systems.  (Thanks to Helber Maciel)
- Move the error gtk method to the gui module. (Thanks to Helber Maciel)
- Removed a debugging print statement from monitor.py
- Fixed up a few docstrings/comments.

Testing:
- Fix bug where Connect button would become inactive after disconnecting from a network.
2008-05-07 21:59:44 +00:00
imdano
0d1ba53bb1 Testing/Experimental:
- Emit a dbus signal when an autoscan is called, so that the GUI can update if needed.

Experimental:
- Merged a few changes from the testing branch.
2008-05-04 18:10:47 +00:00
imdano
e6ffa892ff Testing/Experimental:
- Fixed bug where monitor would crash on resume because dbus wasn't ready yet.
- Monitor now calls a rescan every 2 minutes.

Experimental:
- Added a network list submenu to the right-click menu of the tray icon.
2008-05-03 09:30:09 +00:00
imdano
e1d7429e6c Fixed some setup.py problems
Added a bunch of docstrings
Fixed a crash bug when the daemon is called with the -s option caused by wicd.py calling SetForceDisconnect(False) when it launches.
2008-04-02 10:52:41 +00:00
imdano
c17b437134 Lengthened the sleep time between putting a wired interface up and checking to see if the link is active.
A few small optimizations/code cleanup.
2008-03-31 15:23:59 +00:00
imdano
ed2d53839e Added support for monitoring connection status without the need for iwconfig, ifconfig, and ethtool/miitool.
Added a "Disconnect" button to each network entry, which will be visible instead of the "Connect" button for the active network.
Fixed a bug where cancelling a connection while validating authentication would leave the GUI in the connecting state forever.
2008-03-31 14:21:43 +00:00
imdano
f64b207005 Added support for resizing the preferences window to any size. Also added support for remembing the size of the preferences window. 2008-03-24 20:37:46 +00:00
imdano
ef9b5cc7f3 Added distro-specific init scripts based on those used by NM (these are very experimental and likely broken in many cases).
Updated setup.py to pick which initscript to install based on the distro detected.
Updated MANIFEST.in to make sure launchdaemon.sh is included in the sdist build.
Fixed a bunch of crash bugs in tool detection system when tools are detected.
Made tool detection work correctly when "which" returns output if no match is found (as opposed to no output).  Eventually we might want to hardcode possible paths instead of using which at all...
Fixed some message formatting in the daemon.
Added some docstrings.
Added a pidfile system for increased initscript compatibility (sort of, it's somewhat incomplete).
2008-03-24 00:03:35 +00:00
imdano
c055ea0d36 Added support in the preferences window for specifying which dhcp client, link detection tool, and route flushing tool to use. It can also be left up to wicd to decide automatically.
Made a few logic optimizations.
2008-03-21 17:07:47 +00:00
compwiz18
b5609dc209 Couple of fixes, started integrating a feature that will allow Wicd to smartly detect wired networks, by using detected wireless networks and connected USB devices 2008-03-21 03:38:57 +00:00
imdano
eb5e9f49cc Added checks to auto-reconnection code to keep it from constantly trying to reconnect when it isn't working.
Added a ShouldAutoReconnect method to the daemon, to simply the call needed in monitor.py's auto_reconnect method.
2008-03-18 09:12:05 +00:00
imdano
cff1336d32 Improved automatic reconnection behavior.
Improved debug mode behavior.
Improved the way networking.py interfaces passes attributes on to wnettools.py interfaces.
Fixed crash in __printReturn when a parameter to return wasn't of type 'str'.
2008-03-17 07:50:51 +00:00
imdano
04b67e9b2e Made calls to Autoconnect outside the daemon asynchronous.
Removed some unnecessary print statements.
Added checks to the daemon and configscript.py to make sure the user opening it is root.
Fixed formatting problems in class definitions in wicd.py
2008-03-13 14:10:49 +00:00
imdano
a7c22b9724 Improved GUI opening performance so there is less delay between clicking the icon and the gui actually appearing.
Made network entry list inactive while refreshing networks.
Made debugging output less spammy and more helpful (still incomplete).
2008-03-13 10:16:03 +00:00
imdano
982333e566 Fixed a malformed ''.join() call in daemon.py
Replaced a couple of concatenations with ''.join() calls.
2008-03-11 15:15:55 +00:00
imdano
04af10a891 Added support for using one set of global settings for all networks with a given essid.
Fixed a few wired autoconnect issues.
2008-03-10 20:55:46 +00:00
imdano
0653f3f40b Refactored networking.py to be more modular.
Added docstrings to wnettools.py
Fixed wired autoconnect bug due to missing parenthesis on a method call.
Moved connection monitoring code out of daemon.py and into monitor.py, which is run as a separate, child process of daemon.py, to reduce delays in dbus reponse time while connection status and autoreconnect code is running.
Added full support for running the gui without the tray icon using the --no-tray option.
Some minor changes to code to be more readable/efficient/pythonic.
2008-03-09 22:09:22 +00:00
imdano
cb88439499 Made a bunch of small logic improvements.
Fixed some remaining bugs from the gui.py refactoring.
2008-03-04 20:39:53 +00:00
imdano
a2dedaaa03 Added support for putting interfaces up/down through the gui. 2008-03-04 14:06:04 +00:00
imdano
8289e44d86 Refactored the NetworkEntry/PrettyNetworkEntry classes in order to fix a memory leak. PrettyNetwork entry classes are now merged with NetworkEntry classes. There is now a separate AdvancedSettingsDialog to handle the advanced settings for each network entry.
Fixed last-used wired autoconnect support, which had gotten removed.
Removed a debugging string from networking.py
2008-03-03 22:42:29 +00:00
compwiz18
85eaabcfff Fixed a bug that wouldn't let wireless interfaces scan 2008-03-03 06:08:45 +00:00
imdano
0386fc4ff4 Autoconnect method will now fallback to wireless if a wired attempt fails for any reason. 2008-03-01 19:45:45 +00:00
imdano
08b9f9f993 Altered autoconnection code to fall back to wireless if wired fails because there is no default profile set. 2008-02-29 22:14:32 +00:00
imdano
3986ddd4fb Fixed crash bug in script configuration dialog when a network doesn't have script options written in the config file yet.
Refactored networking.py to not have to create a new wnettools interface every time a method gets called.  Now it reuses the same one and makes changes to the iface name/driver as needed.
Refactored a few methods in wnettools.py to be organized more logically and reduce external program calls.
In experimental branch, added a few methods to networking/wnettools that can be used for enabling/disabling interfaces, as well as unloading/loading the driver associated with an interface.
Added a check for mii-tool/ethtool that gets run when wicd starts, so it can decide which to use to check for a wired connection.
Added a check for ip, to decide how to flush the routing tables.
Rewrote some of the DHCP client checking code.
Added a method (that's currently unused) to release a dhcp lease for each of the supported clients.
2008-02-29 14:16:21 +00:00
imdano
d7141a8b78 Added support for two more DHCP clients: pump and dhcpcd.
Added check when DHCP is run to determine what DHCP clients are available.
Fixed bug where sometimes wicd wouldn't reconnect automatically when a wired connection was lost.
Cleaned up a couple of comments.
2008-02-13 13:08:15 +00:00
imdano
44fa2ac718 Fixed a bug that prevented unsetting the "automatically connect to this network" option.
Some formatting/docstring cleanups.
2008-02-11 14:55:29 +00:00
imdano
98069ad994 Fixed bug where network entry settings weren't being saved correctly because of overloading the variable "type", which is a built in python function.
Cleaned up some formatting in gui.py and daemon.py
Fixed some bad daemon calls in the setting saving process.
2008-02-05 13:46:42 +00:00
imdano
d46da02511 Fixed bad except statement in misc.py.
Cleaned up formatting in gui.py.
Made glade template for preferences dialog and rewrote gui.py to use it instead of creating it explictly in the code.
Fixed a bunch indentation/whitespace problems.
Cleaned up a ton of formatting in daemon.py
Fixed a wired autoconnect bug.
Rewrote part of the connection monitoring code, further minimizing the number of external program calls, as well as number of dbus calls.
Added StatusInformation methods to daemon.py, to allow external apps to poll for the current connection status without making several dbus calls.
Fixed bad function call to GetDBMSignalStrength in daemon.py.
2008-01-29 21:03:19 +00:00
imdano
9bd9605411 Refactored a few daemon methods from bring registered under the 'wireless' service to 'daemon'.
Fixed the wired autoconnect profile chooser, which was badly broken.
Added a check to GetPluggedIn() that makes sure that the wired interface is up before checking.  If it's not, it tries to put it up.  This is necessary because ethtool doesn't make this check for us, as mii-tool did.
2008-01-22 16:05:30 +00:00
imdano
0528e2436c - Simplified main configuration loading code. This *might* break some old conf files, but should be easy to manually fix.
- Reworked GUI: Moved script button next to connect button, reduced size of both buttons, moved advanced settings from an expander to a dialog and put an advanced settings button next to scripts/connect buttons.
- When a wireless network has encryption enabled, "Secured" will no longer show up in the info for the network unless the encryption type can't be determined.
- Added support for detecting kill switch status (thanks to webograph for the inital patch).
- Reduced the number of calls to iwconfig during connection status updates (it is only called once per update now), which should lower cpu usage.
- Moved Autoreconnect methods from the wireless dbus service to the daemon dbus service.
- Added "Validating Authentication" status message during wireless connection process.
- Added support for disabling monitoring of connection status when computer is suspended, which gets rid of some error messages, eliminates occasional suspension failure, and reduces the odds that wicd will auto connect to a wireless network when a wired network is available. (Right now this feature is disabled, as it requires a script in /etc/acpi/suspend.d/, which can't be included with the current SVN layout.)
2008-01-20 23:09:29 +00:00
compwiz18
03b7ead08f Updated comments in misc.py
Updated some GUI elements
2008-01-15 02:11:36 +00:00
imdano
2cc990b97a A default wired profile is now created when wired-settings.conf is initially generated. 2008-01-06 21:20:15 +00:00
imdano
d64850dfd3 Changed misc.Run to use subprocess.Popen instead of os.popen. Also altered Run to optionally return a pipe to the command run, instead of just the output.
The output of dhclient is now parsed by wicd and used to determine why the connection failed.
All the wpa_supplicant conf files will now generate a ctrl_interface, so that they can be accessed by wpa_cli.  wpa_cli now is used by wicd to attempt to determine is wpa_supplicant authentication was successful.  This is still experimental, and might have to be tweaked to work properly.
If wicd.py is started and the daemon isn't present, it will autolaunch it by calling launchdaemon.sh, instead of asking the user to start the daemon manually.
Cleaned up some comments, formatting, etc.
Probably a couple of other little bug fixes I'm forgetting.
2008-01-06 13:55:23 +00:00
imdano
53fc40349d Scripts now can only be setup with root access and always run as root, instead of trying to run as the current user.
Possibly fixed problems with scripts not running when they should and/or leaving zombies.
Slightly reworked the GUI to make the new script system look nicer.
Removed the ability to set script information through built in daemon functions, it now has to be done by directly editing configuration files (which require root access to read/write).
2007-12-29 11:56:47 +00:00
imdano
7d7b943ee7 Make sure daemon alerts tray to change status during connection process.
Specify which network is being connected to in both the tray tooltip and gui statusbar
Clean up code in wicd.py.
Refactor Edgy/DapperTrayIcon class names to something less Ubuntu-specific.
Fix typo in EggTrayIcon that would keep gui from opening.
2007-12-22 22:09:00 +00:00
imdano
8a0a471764 Fixed cancelling a connection not working.
Stopped the gui status bar from updating while the gui is closed, which reduces CPU usage and should hopefully fix problems with hibernation not working while wicd was running.
2007-12-19 22:35:07 +00:00
imdano
da4d84b793 Fixed a bug that would sometimes cause the tray icon to not display the right connection state on startup. 2007-12-17 15:44:41 +00:00
compwiz18
dee28b818c * Fixed indentation errors and syntax errors
* Fixed wicd.py so it starts properly
* Hid the status bar in gui.py when it is displayed via the tray icon
2007-12-17 15:20:02 +00:00
imdano
bf32a16e49 Fixed a bug (typo?) in daemon.py that would keep it from working correctly. 2007-12-17 11:49:03 +00:00
imdano
4dadeefdd6 Lowered minimum GUI height to 400.
Added support for the GUI to remember when its resized.
2007-12-17 11:42:16 +00:00
compwiz18
216175b138 Applied pach in https://bugs.launchpad.net/wicd/+bug/175104 to fix signal strength issues, thanks Philip 2007-12-16 19:08:00 +00:00
imdano
c5863cf56f Moved autoreconnect code and connection status updates into the daemon. Daemon now sends D-Bus signals when status changes, which the tray listens for and updates icon/tooltip when received. 2007-12-10 16:48:37 +00:00
imdano
d2c300502e Fix some indentation problems and turned off stdout/stderr redirection in wicd.py since it would break things. 2007-12-04 12:02:14 +00:00
imdano
74fb9c330c Fixed encoding problems that would cause wicd to crash if a network returned an essid with exotic characters.
Reduced log spam, and altered how logging gets done a little bit.
Cleaned up some comments, docstrings, etc.
2007-11-20 22:20:10 +00:00
imdano
b61018cc17 - Fixed a crash bug caused by dBm signal strength not being found correctly.
- Fixed a crash caused by an incorrectly named variable in wicd.py.
2007-11-18 14:19:50 +00:00
imdano
8e46a359c1 * Completely reworked the gui/tray system. gui.py and edgy/dapper/tray.py are now all run from the same wicd.py file.
* Added a connection_lost_counter to prevent the wicd frontend from trying to automatically reconnect too quickly if signal strength is briefly lost.
* Added some code to hopefully fix some of the dbus-related encoding problems caused by essids with weird characters.  (Might still need work).
* The tray/gui will now show up in the process manager under the name wicd (along with the wicd icon), instead of just python.
* Added a GetCurrentInterface() method to the daemon that will eventually be used in the VPN plugin.
* Fixed a possible crash caused by signal strength not being returned correctly.
* Split the Wired Profile Chooser from the appGui class, so they are now called separately within wicd.py.  When the profile chooser is called from the daemon, it sets a flag as well as sending a dbus signal, so the chooser will still launch if the wicd frontend isn't running yet.
* Added some docstrings, comments, etc.  Probably a few other small changes I'm forgetting.
2007-11-18 01:35:35 +00:00
compwiz18
5dabdcd540 applied patch from bug https://bugs.launchpad.net/wicd/+bug/149318
applied patch from bug https://bugs.launchpad.net/wicd/+bug/149322
thanks Daniel
2007-10-05 02:29:42 +00:00
compwiz18
8f2dfb5361 Added mhenze's patch to add last used wired profile 2007-10-04 03:31:07 +00:00
imdano
2aa36c7329 Fixed more signal display issues
Added a "Connecting..." dialog to tray icon in experimental branch
Possibly fixed issue where GUI statusbar would still show up as connected when ethernet cable was unplugged.
2007-09-20 13:11:43 +00:00
compwiz18
64e5c27ba2 fixed indentation problems 2007-09-04 02:43:25 +00:00