Friday, 2 February 2007

New code

Since changing to GObject based code for the task-manager (what keeps track of open windows) & task (a representation of on window on the bar), I can say that Awn feels much more resilient! Especially when opening and closing lots of windows. I am experimenting with the idea of the bar knowing when you have opened lots of windows, and therefore skipping the effects, to make it feel slightly faster.

Each 'Task' is actually a GtkDrawingArea, which is then made transparent, and the Task's icon is drawn onto it, using with necessary padding for the effects. Speaking of effects, moving to Cairo for the rendering is allowing much more freedom regarding what effects you can do. I will be demoing some ideas later on, but for now:

This is the current open and close effects, the idea being that the icon 'pops' in at the bottom of the screen, and then 'evaporates' away when you close the window.

P.S. Excuse the jerkiness and the redrawing you can see of Gtk, lets just say I am not developing on the fastest of machines, just be sure that it is not as jerky in real life!


Anonymous said...

I just tried it. Pretty nice! Keep the work going.

I got it today from the svn repo. The "active icon" does not work properly. The icon of the active program disappears. Starting awn with the "-x" parameter does the trick, but then the icons themself are not ok:
**AWN-X** : Getting icon from X failed for avant-window-navigator

(Maybe this is not the best way to post a bug, but I am short of time)

Neil J. Patel said...

Hi there,

I am glad you like it!

The **AWN-X** is just some debug code, its there so I know when I can't get an icon from X.

However, everything else should work properly, let me know if it doesn't!

(btw I know reporting bugs is a bit of a pain if you don't have a account, I will try and sort something out, until then, reporting on the blog is fine :)

Anonymous said...

GREAT WORK!!!!!!!!!!!!!!!
I'm testing awn on ubuntu feisty herd3 beryl and AIGLX.
I've compiled last version following the istructions on ubuntuforums.
It works even if some problems with selected icons.

Neil J. Patel said...

Hi Claudio,

I am glad you like it!!

The best thing to do to solve you problems with the icons, is to download and install the svn version. It has new code to get icons from the window manager, so you will have larger icons, and a better experiance!

Anonymous said...

great work ;-)

i really like avant, nice job :-)


Anonymous said...

The whole bottom part of my screen blacks out when I start avant window manager (from SVN). Is this a known bug?


Errors printed on terminal:
(process:23328): Gtk-CRITICAL **: gtk_icon_theme_get_for_screen: assertion `GDK_IS_SCREEN (screen)' failed
Ohhh yeaaah!!!

(avant-window-navigator:23328): Gdk-CRITICAL **: gdk_cairo_create: assertion `GDK_IS_DRAWABLE (drawable)' failed
**AWN-X** : Getting icon from X failed for avant-window-navigator
**AWN-X** : Getting icon from X failed for avant-window-navigator
**AWN-X** : Getting icon from X failed for avant-window-navigator
**AWN-X** : Getting icon from X failed for /opt/avant/bin/avant-window-navigator -x

Neil J. Patel said...

Hi Prashanth,

You need a composited environment, such as Compiz or Beryl for Awn to work (and do its magic).

This normally can be started by the "Desktop Effects" program in the "Preferences" menu.

Anonymous said...

With the -x option. The icons are glitchy.
Sometimes they are just a jumble of random colours. Most of the time the icons are all replaced with the icon of the window in focus when I mouse over them.

Neil J. Patel said...

Hi Rob,

I am getting reports of this from a few people, I am looking into it ATM. Its either a bug in the new icon-retrieval code, or setting the active icon code.

Can I just ask, does this happen without the -x option, and also which revision of svn were you using?

Anonymous said...

Revision 63. It did not happen without the -x option.

Here's what I am running:

Ubuntu Edgy
x1900xtx fglrx 8.29.6
-With the patch described here:

I noticed in 64 you have the new code on by default. Is it still possible to use the old code?

Neil J. Patel said...

Hi Rob,

Sorry about that, I committed without changing main.c. If you grab the latest code, you can started the old task manager by the '-o' switch.

I am still trying to find out why there is a problem, its more of a pain because I can't reproduce it on my system!

What I am going to do is make a small test program for the X code, and see what it doing on your system. I will post it on my blog as soon as I get round to it.

Rob2687 said...

Okay cool...
I just tested and it happens in the regular xserver too.

icon manager said...

its a good blog.