Socket applet (for awn)

AWN Themes

Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

0
Become a Fan
5.0

Description:
An applet to allow other programs to run inside Avant Window Navigator. This is designed with Screenlets in mind but will work with other programs as well.

Installation

1. Download the package from this page
2. Install in AWN using the Install button in the Applets page of the AWN preferences dialog.

Using the Socket

The first time it is started the Socket applet will show a default icon. Right click and choose 'preferences' to open the Socket preferences dialog and set these preferences:

1. Command: the command for the 'Plug' program to run in the Socket.
2. Arguments: any arguments to be passed to the Plug
3. Offset: Use this to move the top of the Plug's window above the level of the other icons in AWN (e.g. the flower in the screenshot)
4. Try to update width: If this is checked the Socket will try to adjust its width to match that of the Plug.

Click close. The Plug program will start on the desktop and then be moved into AWN.

Settings are stored 'per instance'. This means that you can run several Sockets. However, if you deactivate a Socket its settings will be lost.

Requirements

python-xlib

Limitations

The update width setting only works with programs that set the min_width window manager hint to a value > 0.

The Socket looks for the Plug by the Plug's program-id number. If the pid of the plug is not unique (you can check using "wmctrl -lp" to list process and windows), the Socket will usually fail to find the Plug.

Using the Socket with Screenlets

For Screenlets, the Command option is 'python' and the Arguments option is the Screenlet's python file, e.g. /usr/share/Clock/ClockScreenlet.py

Update width option does not work with Screenlets by default (except DiskMount 0.2+ and SystemTray 0.2+ Screenlets). You can make it work by adding this line to the Screenlet's on_draw method:
self.window.window.set_geometry_hints(min_width=int(self.width*self.scale))
This is only required for Screenlets that change size as part of their normal behaviour.

All Screenlets of the same type (e.g. multiple RingSensors) share the same pid. Running multiple instances of the same Screenlet will usually cause the Socket to fail unless AWN starts before the other Screenlets, and even then there are likely to be problems.

Screenlets need to be manually resized to fit in AWN. Either:
1. Launch the Screenlet using the Screenlet manager, set it up the way you want it to look, quit the screenlet, then setup the Socket, or,
2. Run the Socket, then setup the Screenlet while it is inside AWN. For some reason Screenlets don't always remember their settings, so quit the Screenlet to save its settings, then restart AWN.

Ratings & Comments

0 Comments

Be the first to comment
Pling
0 Affiliates
Details
license
version 0.1
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 0

Other AWN Themes:

Red and Black awn theme
fedora9786
last update date: 17 years ago

Score 5.0

AWN Theme - LightScratch
MrJNewt
last update date: 17 years ago

Score 5.0

AWN - Blue peak
buddho
last update date: 17 years ago

Score 5.0

Flat Out Lunacy AWN Theme
Anywhere
last update date: 17 years ago

Score 5.0

Black Glassy AWN Style
mw88
last update date: 16 years ago

Score 5.0

awn lucid bottom panel theme
gitiret
last update date: 15 years ago

Score 4.7