Main index > About existing desklets > yab

By syfou (Core Developer & Desklet Author), on Sat Feb 26 13:29:50 2005: yab.

yab (Yet Another Bar) issues are discusssed here.

By slag (User), on Mon Feb 28 20:24:51 2005, last edited on Mon Feb 28 20:32:55 2005: Configuring YAB.

Hi,

Well I have to say that YAB is quite impressive looking!

I am having difficulty configuring it, however - that is, I can't change it at all. I have modified config.txt in the directory where yab is installed, changed all sorts of things, and still yab loads the default settings every time. I don't know what I'm doing wrong!

Any ideas? I wonder where yab is loading the settings from, if not from the config.txt file? I can see that it is changed simply by opening the file and noting the differences.

[SOLUTION]
I had to delete ~/.adesklets in order for the new config files to load. It seems that yab.py was appending the settings from the last execution to the end of config.txt and using these instead of the settings I had already written to the file.

Weird.

By slag (User), on Mon Feb 28 20:29:46 2005.

For modifying the placement or the configuration, it seems that all my problems were solved by simply right-clicking and using the "Configure" or "Move" options. I wish I would have seen those sooner!

By syfou (Core Developer & Desklet Author), on Tue Mar 1 00:24:52 2005: Re: Configuring YAB.

slag wrote:

Hi,
I had to delete ~/.adesklets in order for the new config files to load. It seems that yab.py was appending the settings from the last execution to the end of config.txt and using these instead of the settings I had already written to the file.

When yab (or any other desklet, for that matter) does this, it means there is already another instance running somewhere. From your previous post, I suspect you have problems with the way you start desklets. Please make sure you read carefully the Using adesklets chapter of the doc, as well as the FAQ.

Anyway, simply running:

Code:

adesklets

from a pseudo terminal at any time would have had the same effet than manually altering $HOME/.adesklets.

Quote:

ll my problems were solved by simply right-clicking and using the "Configure" or "Move" options.

Regards,

By nucular (User), on Tue Mar 1 10:31:38 2005.

Feature request:

Always on top -option for yab would be great.

---

I like this alot!! 8)

By syfou (Core Developer & Desklet Author), on Tue Mar 1 12:33:12 2005.

This will not happen soon, I am affraid, as it is not possible for now: setting such an option would breaks adesklet clean separation between what a desklet can do, and what the user can always interactively choose, using the context menu.

This doesn't mean an 'always on top' option is out of the question, but it would never be implemented as a configuration option for yab, but as a generic user option. And technically, it involves two additional challenges:

This said, I am interested having an optionnal support for real XComposite/XRender/XDamage window transparency in adesklets (It's not very fast now, but it's probaly the way of the future - and it's a lot cleaner from a programmatic point of view) so I will presumably work on it in the upcoming months. Development always take time... :)

By stonecrest (User), on Tue Mar 1 19:49:10 2005.

I love yab a lot.. nice lightweight eye candy 8) I do have a few suggestions or constructive criticism though, take it for what you will.

1. It's a little jumpy (i.e. not so smooth). I think this stems from two reasons. First, it only registers mouse movement in the horizontal direction.. so if you move your mouse vertically over an icon, it jumps from normal size to large. It'd be nice to base it on 2 directions. Secondly, your current mouse position only affects the current icon you're hovering off. If you compare this with the gdesklet starterbar or the mac dock, as you move away from an icon and it starts shrinking, the neighboring icon starts getting larger such that the rest of the icons stay in place.

2. I know I mentioned this to you by email but I lost your response.. and I figure others are bound to ask. Any chance of getting support for other images (like svg) in addition to xpm?

I'm not really a programmer so maybe these aren't trivial but they are just my observations on the desklet. You asked ;) I'll definitely be using yab regardless though, mmm.

By stonecrest (User), on Tue Mar 1 19:50:24 2005.

Oops, forgot one other thing.. clicking on "configure" doesn't do anything for me. The rest of the options, like "move" do work fine..

By syfou (Core Developer & Desklet Author), on Tue Mar 1 20:42:12 2005, last edited on Wed Mar 2 05:03:56 2005.

stonecrest wrote:


It's a little jumpy (i.e. not so smooth). I think this stems from two reasons. First, it only registers mouse movement in the horizontal direction.. so if you move your mouse vertically over an icon, it jumps from normal size to large. It'd be nice to base it on 2 directions.


Well, that's true... In fact, it mainly shows with people using especially small icons on especially fast machines as you easily get in/out of the bar space then without getting 'delayed' events. What you are suggesting is not difficult at all to implement on current code. Someone only has to exend the _get_active_and_scaling method to renormalize scaling using the y coordinate, that's all. I dutily note this, and I will eventually incorporate it myself in the future... I just do not know when.

Quote:

Secondly, your current mouse position only affects the current icon you're hovering off. If you compare this with the gdesklet starterbar or the mac dock, as you move away from an icon and it starts shrinking, the neighboring icon starts getting larger such that the rest of the icons stay in place.


Are you saying this launch bar is not entirely original? :-D No, seriously, what you see is the exact behavior I wanted. And you cannot call this non smooth, since the icon resizes vary linearly without any discontinuities from walking from one end of the bar to the other (Ok,mathematically it is only smooth from a closure on the integer domain, since we use pixels-sized displacements - but that's exactly what the differencial definition of D(1) curves is in Z) The main advantage over the OS-X bar style effect is that it can be better optimized at rasterisation time, since all 'inactive icons' can be put in place in a single copy - this way the effect is usable even on a 5 years old machine.

This said, there is no reason we couldn't have two different icons drawing algorithms. I'll be waiting for your code people. :-)

Quote:

I know I mentioned this to you by email but I lost your response.. and I figure others are bound to ask. Any chance of getting support for other images (like svg) in addition to xpm?


I am affraid svg support will not be included any time soon - adesklets is strongly coupled to Imlib2 (this is why I could keep things relatively small and fast), and Imlib2 is really raster oriented: supporting svg would need a significant recoding effort. This said, there is no reason for you not using them, since it is quite easy to convert icon sets in svg to high quality png ones, using programs such as sodipodi or inkscape. From a directory full of svg, you can use a command such as:

Code:

ls *.svg | sed 's/\(.*\).svg/-z --file=& --export-png=\1.png --export-width=128 --export-height=128/' | xargs --max-lines=1 sodipodi

to convert them all to 128x128 semi-transparent png. Besides, you are only limited to what raster format your Imlib2 support through its loader : jpeg, png, xpm... This is not that bad...

Quote:


Oops, forgot one other thing.. clicking on "configure" doesn't do anything for me. The rest of the options, like "move" do work fine..

Look at the FAQ.

By stonecrest (User), on Wed Mar 2 00:49:58 2005.

syfou wrote:

Well, that's true... In fact, it mainly shows with people using especially small icons on especially fast machines as you easily get in/out of the bar space then without getting 'delayed' events. What you are suggesting is not difficult at all to implement on current code. Someone only has to exend the _get_active_and_scaling method to renormalize scaling using the y coordinate, that's all. I dutily note this, and I will eventually incorporate it myself in the future... I just do not know when.


It doesn't sound too difficult, maybe I'll have to see what I can do. I've never done a single thing with python but it's a lot easier to hack existing code than write your own.. ;)

syfou wrote:

I am affraid svg support will not be included any time soon - adesklets is strongly coupled to Imlib2 (this is why I could keep things relatively small and fast), and Imlib2 is really raster oriented: supporting svg would need a significant recoding effort. This said, there is no reason for you not using them, since it is quite easy to convert icon sets in svg to high quality png ones, using programs such as sodipodi or inkscape. From a directory full of svg, you can use a command such as:

Code:

ls *.svg | sed 's/\(.*\).svg/-z --file=& --export-png=\1.png --export-width=128 --export-height=128/' | xargs --max-lines=1 sodipodi

to convert them all to 128x128 semi-transparent png. Besides, you are only limited to what raster format your Imlib2 support through its loader : jpeg, png, xpm... This is not that bad...


Thanks, that script worked perfectly! mmm etiquette icons.. If i had known it's that easy to convert svg icons, I wouldn't have requested it.

syfou wrote:

Look at the FAQ.

I swear that question wasn't in the FAQ back when I read it a while ago.. :oops:

And actually, one other thing that just came to mind.. again, these are all feature requests that will only make me like yab even more hehe, it's still great without them. But it'd be nice if there was a config option for "vertical displacement" or something. Right now the icons get larger centered around their midpoint. But I'd personally prefer to have them grow only in the positive y direction, so that I can dock them closer to the bottom of the screen. Hopefully that made sense..

By syfou (Core Developer & Desklet Author), on Wed Mar 2 04:51:00 2005.

stonecrest wrote:


It doesn't sound too difficult, maybe I'll have to see what I can do. I've never done a single thing with python but it's a lot easier to hack existing code than write your own..


Well, I am teared apart here... Should I spend a few minutes implementing this, or should I let you do it by yourself? :-k. Here is the compromise - I made a patch. This way, you can just look at it an easily track the few modifications made, and probably still learn a bit about using adesklets from Python.

stonecrest wrote:


If i had known it's that easy to convert svg icons, I wouldn't have requested it.


Well, I should probably say a word of two about it somewhere in the documentation...Probably the FAQ, as it can be a concern with many different desklets.

stonecrest wrote:

But it'd be nice if there was a config option for "vertical displacement" or something. Right now the icons get larger centered around their midpoint. But I'd personally prefer to have them grow only in the positive y direction, so that I can dock them closer to the bottom of the screen. Hopefully that made sense..


Yes, I understand what you want. Basically it is even simplier to fullfill than your first request... This is why I hope you will do it yourself. :-D Since I feel especially nice tonight (LOL), I'll give you a big hint. From your patched yab 0.0.2:

Code:


506          x=(self.config['icon_spacing']+
507               (self.config['icon_max_width']-self.config['icon_min_width'])/2 +
508               (self.config['icon_spacing']+self.config['icon_min_width'])*rank)
509          y=(self.config['icon_max_height']-self.config['icon_min_height'])/2      # <<< !!!



Can I make it more obious? :-) Of course, you'll still need a few other changes to make it right, but the core change lies right there. I am waiting for your patch. If you decide to do it, please make the change parametrable and orthogonal to all other parameters... Whenever I'll receive it, it will be my pleasure to give your name as a contributor and incorporate it in the 'official' next release of yab. Have fun!

By slag (User), on Thu Mar 3 18:24:24 2005: Minor bug report for yab-0.0.2.

Just a minor bug: the last item on the yab does not display the title consistently with the preceeding items. That is, the last object on the bar displays the title always close to the right-center, while the other items display the title directly above the object itself.

Nothing serious, but a minor irritation that is presumably an easy fix.

By syfou (Core Developer & Desklet Author), on Thu Mar 3 18:29:06 2005.

That's not a bug, I wrote it this way (boundary control in the code). I did not want the bar to be artificially long just because of caption lenght, so the desklet always check if a caption is not entirely enclosd within the bar space. If it not, it does it best to rectify things.

By geoSlack (User), on Mon Mar 28 14:47:24 2005.

Hi all,
Lemme start by saying that adesklets is a wonderful project - allows a little bit of functional glitz in fluxbox without slowing things down... Unfortunately I'm not a programmer so I can't contribute any desklets of my own :(

I'm not sure if this is a bug or a feature, but yab starts by default with the caption under the icon second from the left visible until the bar is rolled over with the mouse pointer. I've looked through the config.txt file and can't find anything to switch off to get rid of this behavior. A really minor issue perhaps, but I like to start with a clean look....

geoSlack

By TimSchutte (Fearless Moderator), on Mon Mar 28 15:42:25 2005.

geoSlack wrote:

Hi all,

t sure if this is a bug or a feature, but yab starts by default with the caption under the icon second from the left visible until the bar is rolled over with the mouse pointer. I've looked through the config.txt file and can't find anything to switch off to get rid of this behavior. A really minor issue perhaps, but I like to start with a clean look....

geoSlack


Hi geoSlack,

I had some problems with the caption bar in yab as well. Make sure you have the --very latest-- version of imlib2 available. My Mandrake 10.1 install had an older version that made the caption bar very ugly.

Good Luck!
Tim

By geoSlack (User), on Mon Mar 28 16:15:16 2005.

Tim,
Thanks for the suggestion. I took your advice and upgraded imlib2 to the latest release 1.2 from the 1.1 on my system and the problem persists. It looks great, very clean graphics, it's just that on loading the caption appears below one particular icon. Perhaps it has to do with the interaction of the modubar with fluxbox?

-geoSlack

By TimSchutte (Fearless Moderator), on Mon Mar 28 19:01:52 2005.

geoSlack wrote:

Tim,

Perhaps it has to do with the interaction of the modubar with fluxbox?

-geoSlack


Possibly. . .Maybe the programmer who wrote modubar could answer?

Tim

By syfou (Core Developer & Desklet Author), on Tue Apr 5 14:23:16 2005.

geoSlack wrote:


I'm not sure if this is a bug or a feature, but yab starts by default with the caption under the icon second from the left visible until the bar is rolled over with the mouse pointer. I've looked through the config.txt file and can't find anything to switch off to get rid of this behavior. A really minor issue perhaps, but I like to start with a clean look....


Sorry for the delay answering you: I have been away for a couple of days, and I missed your message when I got back... :oops:

What you describe would definitively qualify as a bug, but I do not think this is yab misbehaving, since the only event that can trigger a caption draw is when the pointer is detected over the appropriate icon. Hence, for your second icon to be captionned on startup, the pointer needs to have been detected over it at some point since the desklet was launched. You have two way around this:

Code:


xte 'mousemove 100 100'



I am myself a fluxbox user, and I never experienced this... Let me know if this didn't help, and will will try to work something out. Regards,

By geoSlack (User), on Tue Apr 5 21:11:28 2005.

Thanks for the reply. No worries about the delay :)

I kind of figured that the behavior I described was the result of a detected mouse pointer, so I did try moving the yab bar round and restarting adesklets (and X). But I am not sure that that's it. First there is no part of the screen where it doesn't happen. And then even if I am in an x session and move the bar and then reload adesklets (I have a convenient button on the yab bar itself...) by running "adesklets" and move the mouse to another part of the screen before it loads again it's always the same thing - the second icon has its caption appear below. (BTW the button I click to reload is all the way on the other side). Very odd. I can try playing around with xte, and let you know what happens....


-geoSlack

By syfou (Core Developer & Desklet Author), on Tue Apr 5 21:25:05 2005.

What you describe is strange indeed, and I just do not understand how it can occurs...yet. From what you said, I doubt xautomation will help. Does this happen also with the default configuration (I guess it does, but just stop every desklets, and move away your config.txt)? The problem is I have no idea how to reproduce it, and it's hard to fix something you cannot diagnose.. Does anyone else than geoSlack experienced this?

By darkliquid (Desklet Author), on Wed Apr 6 07:22:12 2005.

I don't experience the same problem, but occasionally the yab desklet just freezes and stops respondin to mouse movement or mouse clicks, though the right-click menu still works fine. It seems to happen entirely at random.

By geoSlack (User), on Wed Apr 6 11:54:05 2005.

syfou,
In response to your question above: it does happen when I revert to the default configuration.

-geoSlack

By syfou (Core Developer & Desklet Author), on Wed Apr 6 16:10:55 2005.

darkliquid wrote:

Occasionally the yab desklet just freezes and stops respondin to mouse movement or mouse clicks, though the right-click menu still works fine. It seems to happen entirely at random.


That's weird. I never experienced this, honest. From what you describe, it probably means the driving python process terminated for some unspecified reason... When this happen,
you can check this by looking at the content of the appriorpiate lock file:

Code:


cat /tmp/adesklets_uid${UID}_yab.py_*.lock | cut -d' ' -f2



This will give you all the pids of the python interpreter that should be running for all the yab bars your are using.

If it is the case, what would be useful to me is to fire a yab bar in the foreground from a console, wait for a freeze to occur, and send me the exception trace you get...

By geoSlack (User), on Wed Apr 6 16:11:15 2005.

syfou,

:oops:
I just realized that I've been having issues not with yab, but with modubar and that they are different. What a fool I feel like :oops:

yab itself does not have the issue of the title appearing. Is modubar, then based on the code of yab?? - they look so similar.

sorry for the confusion


-geoSlack

By syfou (Core Developer & Desklet Author), on Wed Apr 6 16:20:52 2005.

Hi,

yes, modubar is based on yab... I just downloaded the official release, and I saw the problem instantly... I guess I was running a slightly different version. Go to the modubar topic for a fix, I will post it right away.

By darkliquid (Desklet Author), on Thu Apr 7 12:53:53 2005.

In this case, yab didn't freeze, I just looked up one moment and it was gone:

Code:

sh: /usr/sbin/lpc: No such file or directory
sh: lpc: command not found
sh: lpstat: command not found
Traceback (most recent call last):
  File "./yab.py", line 598, in ?
    Events(dirname(__file__)).pause()
  File "./yab.py", line 399, in pause
    self._display_caption()
  File "./yab.py", line 499, in _display_caption
    adesklets.play(*self._fadein)
  File "/usr/lib/python2.4/site-packages/adesklets/commands.py", line 184, in play
    return comm.out()
  File "/usr/lib/python2.4/site-packages/adesklets/commands_handler.py", line 93, in out
    output=self.__comm.out(.01)
  File "/usr/lib/python2.4/site-packages/adesklets/communicator.py", line 87, in out
    rd, wr, ex = select.select([self.__stdout],[],[],delay)
select.error: (4, 'Interrupted system call')



I have no idea where that lpc or lpstat are coming from because I have never used those commands and I'm pretty sure they aren't installed. I'm also pretty sure that none of the apps that yab loads use those programs either

By syfou (Core Developer & Desklet Author), on Thu Apr 7 15:09:03 2005.

Well, I do not see why yab would ever want to use the printer in the first place... I never saw this either... Would you have a strace of that? Send it to me by email...

By darkliquid (Desklet Author), on Thu Apr 7 19:01:13 2005.

you'll have to describe to be exactly what that is and how to do it I'm afraid :oops:

By syfou (Core Developer & Desklet Author), on Fri Apr 8 09:35:48 2005.

Sorry... strace is an invaluable tool when it comes to low-level non-invasive debug on linux... It is very useful too when you need to find out what any program do (files opened, ressources accessed, etc.), especially when you do not have access to the source, or that a bug you cannot reproduce yourself happen on a third-party system (like in this case).

Here, what I would like is the log file generated by:

Code:


strace -olog python yab.py


when the crash occurs.

By <?)))>< (User), on Tue Apr 26 13:09:18 2005.

Is there any possibility to configure yab that it will be in vertical and not horizontal direction? Thank you.

By syfou (Core Developer & Desklet Author), on Tue Apr 26 13:14:10 2005.

<?)))>< wrote:

Is there any possibility to configure yab that it will be in vertical and not horizontal direction?

I am affraid not. I would be fairly doable though, but I crueally lack time. :(

By syfou (Core Developer & Desklet Author), on Wed Apr 27 14:15:16 2005.

Copied verbatim from an original post by Rizzi:

hi...

i new in adesklets and i try to use yab iconbar..
5 bars works fine...
but 1 don't start...

if i try 2 same icons.. like :

Code:


'icons': [('network.png', 'Gateway', 'ssh 123.123.123.123'),
           ('network.png', 'CoLinux', 'ssh 123.123.123.124')]}


the yab bar don't start
if i change one of the icons to another.. then the bar starts...

has someone an solution for this ?

mfg Rizzi

By syfou (Core Developer & Desklet Author), on Wed Apr 27 14:24:16 2005.

I clumsily did not think about that: it is due to me using the image name as a key in a dictionary in the process... A quick fix would be to just create a symbolic link, in bash:

Code:


ln -s network{,2}.png


Then use something like, in your configuration file:

Code:


'icons': [('network.png', 'Gateway', 'xterm -e ssh 123.123.123.123'),
          ('network2.png', 'CoLinux', 'xterm -e ssh 123.123.123.124')]} 


Regards,

By Rizzi (User), on Wed Apr 27 14:45:45 2005.

hmm...
simple :)

greets Rizzi

By cRoMo (User), on Thu Jun 16 09:22:07 2005.

Bug report:
If the description (caption text) of the last icon displayed (i.e. the first from the right) consists of more than one word, caption when mouse overing this icon is displayed not above the icon, but above the middle of the yab bar. Problem appears in modubar as well.

By syfou (Core Developer & Desklet Author), on Thu Jun 16 12:38:38 2005.

Just read the thread, cRoMo. This has already been mentionned before, and this is not a bug.

By cRoMo (User), on Fri Jun 17 09:33:42 2005.

Yes, indeed, sorry for that :oops:

Regarding to problems with yab hanging I wrote about in other subject, here's a strace from console from where I run yab.py script. Some xplanation before: I was multiply clicking one icon at short intervals. After 10 to 15 of such clicks yab hangs in two ways: it either freeze and still remain in processes list or it dies with and error. Here's the strace of the latter situation:

Code:


cromo@kromka:~/.desklets/yab-0.0.2$ ./yab.py 
Traceback (most recent call last):
  File "./yab.py", line 598, in ?
    Events(dirname(__file__)).pause()
  File "./yab.py", line 413, in pause
    (time()-time_initial)),.01))
  File "/usr/lib/python2.4/site-packages/adesklets/events_handler.py", line 214, in _fire_event
    [x for x in
  File "./yab.py", line 384, in leave_notify
    self._display_icons()
  File "./yab.py", line 449, in _display_icons
    adesklets.context_set_image(0)
  File "/usr/lib/python2.4/site-packages/adesklets/commands.py", line 374, in context_set_image
    return comm.out()
  File "/usr/lib/python2.4/site-packages/adesklets/commands_handler.py", line 93, in out
    output=self.__comm.out(.01)
  File "/usr/lib/python2.4/site-packages/adesklets/communicator.py", line 87, in out
    rd, wr, ex = select.select([self.__stdout],[],[],delay)
select.error: (4, 'Interrupted system call')
cromo@kromka:~/.desklets/yab-0.0.2$ 



I'll keep on trying to call out the "freezing" way of yab hanging.

EDIT: I noticed that after the situation described above happens, running yab.py script again makes it to use standard (default) configuration instad of my own and of course it appends this config in config.txt file. Quiting desklet and running it again doesn't help, nor deleting added entries from config.txt. Only invoking adesklets command makes it to use my config again.

EDIT2: I tried to find the best way to reproduce this bug. My thoughts:
although Opera is running very fast here, multiple clicking in its windows doesn't reproduce this bug. This bug hardly occurs when clicking on all icons except "urxvtc" at all. It works almost everytime I click on the last mentioned for 6 times ver fast.

By syfou (Core Developer & Desklet Author), on Fri Jun 17 11:28:14 2005.

Thanks for the report, cRomo. I'll see what I can do on Monday: this is indeed an first ugly bug, and I am not sure how it can happen (I was pretty confident I made sure it didn't. I will go and review my code). As for your second problem, now that I have an how-to on how to use it, I will try out too reproduce it too.

There is a second way besides strace to produce debugging log, that involves a recompiling from source, but that makes things completely transparent (described in section 5.2.1 of the adesklets 0.4.10 documentation).

By Noobuntu (User), on Thu Jul 14 06:03:05 2005: What about adding a menu to Yap?.

I've seen in other forums that people would really like to have a menu-like option in a starterbar desklet. I think that Yap is the best starterbar desklet available, so I was wondering if it's hard to add a menu-feature (like Gnome/Kde menus) into the Yap. Syfou?

By mike998 (User), on Thu Jul 14 13:47:42 2005.

I've read somewhere that it may be doable with PyPanel, but I think that's a bit beyond me right now - I'll look into it and let you know what I find

By syfou (Core Developer & Desklet Author), on Thu Jul 14 14:42:36 2005.

noobuntu, I see what you want, and unless a plain, ugly grey menu do, this is beyond what adesklets is capable of by itself (there is no widget in adesklets, and what you ask for typically need a widget toolkit). The original answer by darkliquid is both complete, accurate, and give you what I think is the right way to achieve this. Yours,

By mike998 (User), on Thu Jul 14 19:04:34 2005.

syfou: Thanks for the good work on this - I'm liking this better than gdesklets.

I personally don't really care if I get an ugly grey menu - is it possible to do that?

By syfou (Core Developer & Desklet Author), on Thu Jul 14 23:24:46 2005.

mike998 wrote:

syfou: Thanks for the good work on this

Thanks, you are welcome.

mike998 wrote:


I personally don't really care if I get an ugly grey menu - is it possible to do that?

Yes it is; adesklets comes with everything to customize, create and fire at will any number of grey menus from scratch. Look at the various menu_* commands from the interpreter... This would be a relatively simple task (although I personally prefer launching my WM's menu from an icon), but I cruelly lack time to take care of it right now; what about you, mike998?

By mike998 (User), on Fri Jul 15 08:47:04 2005.

syfou wrote:

mike998 wrote:

syfou: Thanks for the good work on this

Thanks, you are welcome.

mike998 wrote:


I personally don't really care if I get an ugly grey menu - is it possible to do that?

Yes it is; adesklets comes with everything to customize, create and fire at will any number of grey menus from scratch. Look at the various menu_* commands from the interpreter... This would be a relatively simple task (although I personally prefer launching my WM's menu from an icon), but I cruelly lack time to take care of it right now; what about you, mike998?


Unfortunately, I lack the programming knowledge to do this. It would make a nice thing to look into.
I think that the problem is more with Gnome (my WM of choice) and it's way of having the main menu work.

By jedi stannis (User), on Fri Jul 29 16:58:41 2005.

hey,

I like yab alot, but would also like it to act more like the mac osx bar. I looked at the code, but don't have much experience with python (mostly a java programmer). can you give me any hints/starting points to implementing this?

Thanks!

By syfou (Core Developer & Desklet Author), on Fri Jul 29 18:03:45 2005.

I have seen the OS X bar some years back, but I do not have a clear memory of its behavior, apart that it exhibits a parabolic scaling display of icons... I am afraid you will need to be more explicit on what feature you would like to implement if you want useful pointers. Yours,

By jedi stannis (User), on Sat Jul 30 14:22:49 2005.

The parabolic zooming is exactly what I want to implement. So if im centered on an icon it is zoomed 100% the ones next to it might be zoomed 50% and the ones next to those are like 10% all others are not zoomed at all.

By syfou (Core Developer & Desklet Author), on Sat Jul 30 17:15:47 2005.

Ok. In this case, the changes should be pretty straightforward to make. The method responsible for drawing the icons is _display_icons(). Look at this:

Code:


# Then reload the icons onto it one by one
#
for rank in range(len(self.icons)):
   adesklets.blend_image_onto_image(self.icons[rank][2],1,
                                    0,0,
                                    self.icons[rank][3],
                                    self.icons[rank][4],
                                    *self._position(rank,x,y))


As you see, the icon position and scaling is computed by _position(). You only need to rewrite _position(), that receives the icon rank and current pointer coordinates and returns where to put the final icon, and with what size as a 4-tuple (x, y, w, h). To minimize your work you probably want to reuse and modify the _get_active_and_scaling() method too, that is called a couple of time in the code.

By gnoomy (User), on Wed Aug 10 08:33:10 2005.

I would like to remind you a suggestion posted in the beginning of this thread, about "vertical displacement". I wanted it too so I used syfou's hint, which isn't so big :wink:
if you want it without working in the code, here is a little howto make your icons move vertically:

firstly, apply the patch given above in this forum so yab will take into account your mouse's y coordinate.

If your bar is at the bottom of the screen, you expect your icons to go up: open yab.py in your favourite editor, use the find function to reach the code I give.
in the _position function, you'll find: (around line 557)

Code:

if rank==active:
    y-=(active_height-self.config['icon_min_width'])/2

just remove the "/2", and the icon will go up. Too up, so change the initial position: a dozen line above the last code, there is

Code:

y=(self.config['icon_max_height']-self.config['icon_min_height'])/2

Again, remove the "/2". Then, the bar in the background is a bit misplaced (too high!), so at the beginning of the background_grab function (after line 300), replace

Code:

coords=[0,(self.config['icon_max_height']-
    self.config['bar_height'])/2,

by

Code:

coords=[0,(self.config['icon_max_height']-
   (self.config['icon_min_height']+
    self.config['bar_height'])/2)

that's done!

if your bar is at the top of your screen, the icons will have to move down.
It's easier... We modify the same code, but differently: remove the

Code:

if rank==active:
    y-=(active_height-self.config['icon_min_width'])/2

and replace

Code:

y=(self.config['icon_max_height']-self.config['icon_min_height'])/2

by "y=0". in background_grab, replace in the piece of code I've quoted "icon_max_height" by "icon_min_height".

It works fine wether caption_above is set to true or false.
I think even non-programmers will be able to do this without a problem, but maybe the icon's movement should become an option?

Now I miss "parabolic zooming", has someone achieved it?

By syfou (Core Developer & Desklet Author), on Wed Aug 10 15:37:21 2005.

gnoomy,

If you are willing to do a little work, just let me know by email... I realized I was using the patched for vertical displacement version of yab for a long time myself, and I completely forgot it was not part of the official release.

What we could do, in fact, is integrating that patch, then write the mechanism allowing alternate _position() and _get_active_and_scaling() methods to be dynamically selected, and let the user choose the icons behavior he prefers via the configuration file. Yours "vertical icon move mode" could then be offered as an alternative right out of the box.

This would allow many "icons placement policies" to coexist, and I know by re-reading my code that about any horizontal bar can be implemented this way, including parabolic zooming. I never implemented parabolic zooming myself because I am not too fond of it, but I am still willing to integrate any reasonably clean patch from others that would offer it. Performing the little job above would be a perfect first step in this way.

By gnoomy (User), on Thu Aug 11 04:10:12 2005.

Quote:

If you are willing to do a little work, just let me know by email...

Well I've aldready done it, and you know I have some translation to do! Moreover, I don't know Python... I just wanted to give a ready-to-use suggestion and a tip for people wanting it.

By paulwhalley (User), on Thu Sep 1 02:24:16 2005.

Has there been any further progress on the parabolic scaling? Is an updated version of yab available?

By gnoomy (User), on Fri Sep 2 08:24:13 2005: patch it!.

i've done a small patch: http://gnome99.free.fr/yab-0.0.2.patch

it includes syfou's patch (for mouse's y coordinate support), so apply it to a freshly unpacked yab.py

This patch adds "vertical displacement" as an option. And there's a bonus! :) I didn't like to see all inactive icons moving as the active icon grows, so I've change the way they move horizontally, as an option again. All these options adds some 'if' statements in _position, but I think it's still light enough. Note that the options are not enabled by default.
It also solves a bug (is it really a bug?) with the 'icon_maximize_threshold' option, if set to 0.5 for instance the icon didn't grow continuously at all!
tell me what you think about it!

parabolic scaling would be harder to implement for me. But I hope my 'limit_horiz_move' will help (because parabolic scaling would, with the normal algorithm, really make inactive icons move!)

By syfou (Core Developer & Desklet Author), on Wed Sep 7 14:56:00 2005.

I'll have a look into your patch in a few days, gnoomy.

By gnoomy (User), on Thu Nov 3 12:59:52 2005.

i've just installed yab on a new system (I copied yab.py from my laptop, which is using a patched script) and there's something strange: when I click on an icon it takes instantly its normal size. It has never happened on the laptop! Changing "click_effect" has no effect. Any idea?

By syfou (Core Developer & Desklet Author), on Thu Nov 3 15:26:53 2005.

I never experienced this. Is it the same with an unpatched version of yab (the one distributed on the site)?

By gnoomy (User), on Fri Nov 4 13:57:51 2005.

after discovering that debian only provides adesklets 0.4.7 as a binary package I compiled the 0.4.12. The desklets are still running fine (but the version 0.4.7 was better to me, I didn't have to say I'm using xfce :wink: ).
I've downloaded the official yab 0.0.2: the same thing happens.

By syfou (Core Developer & Desklet Author), on Fri Nov 4 17:57:00 2005.

Debian provides 0.4.12 in the 'unstable' branch. I tested yab 0.0.2 on a Sarge installation with xfce4, and I still cannot reproduce this.

By eNTi (User), on Thu Nov 10 05:53:20 2005.

syfou wrote:


  • adesklets' transparency is only simple pseudo-transparency. Basically, it only grabs its screen's root window content below it whenever it changes. It is both simple and fast. When you want to have a window on top, you need to rely on other mecanism to set up transparency and use it, as they are potentially many changing window below it. XComposite and XDamage extensions from freedesktop.org are the presumably correct way to do this. Those X Extentions are nice, but not broadly used, and not very well supported in hardware (Basically, I do not thing GLX hardware acceleration works reliably with it on anything but NVidia drivers), and quite CPU intensive for now, thus presumably not usable by a large audience.

This said, I am interested having an optionnal support for real XComposite/XRender/XDamage window transparency in adesklets (It's not very fast now, but it's probaly the way of the future - and it's a lot cleaner from a programmatic point of view) so I will presumably work on it in the upcoming months. Development always take time... :)

are you still working on this? is there a way to test it? i'm currently playing around with xcomposite and the fake transparency isn't working very well. there's another issue, when using fluxspace+painter = different backgrounds on each window. all desklets need to be refreshed, which flickers ugly on my screen.

By syfou (Core Developer & Desklet Author), on Thu Nov 10 14:28:02 2005.

ENTi wrote:


are you still working on this? is there a way to test it?

I must admit I am not. Over the last few months, I progressively became annoyed, then plainly taken aback by the XComposer/XRender mix. Performance has yet to improve (it is poorer than a few months back -- in my experience, it doesn't even run smoothly on an amd64 system if you do not have some support from the graphic hardware), and I have too few applications taking real advantage of it, while the novelty of having homogeneously translucent, semi-transparent windows just wore off after a few days every time I tried...

ENTi wrote:

I'm currently playing around with xcomposite and the fake transparency isn't working very well.

Could you elaborate on that (a screenshot could be useful if you have a chance)? I do use fluxbox as my day-to-day Windows Manager, and I didn't experience bad interaction with adesklets under xcompmgr... To illustrate, here is a shot by another user.

ENTi wrote:

there's another issue, when using fluxspace+painter = different backgrounds on each window. all desklets need to be refreshed, which flickers ugly on my screen.

Yes, that's a consequence of portability... desklets do flicker every time the background has to be grabbed, since there is no other entirely portable way to do this -- and believe me, I searched. gDesklets even borrowed my code, that I myself adapted from an technique from aterm code base. The code responsible for this is entirely contained in the xwindow_grab_background() function from src/xwindow.c. If ever you have better insights, let me know. Yours,

By eNTi (User), on Thu Nov 10 17:44:05 2005.

yeah... wow. it's really slow. i've tried both kompmgr and xcompmgr and the k variant is even slower, even though it looks nicer.

never the less... my "special problems" are fluxspace+painter related too. i've made two screenshots. one without painter and one with. without painter it would probably work, if it weren't for those dreaded drop shadows. but if i turn fluxbox on, the fake transparency goes wild.

By syfou (Core Developer & Desklet Author), on Thu Nov 10 18:35:01 2005.

I just looked into fluxspace 0.4.0-alpha: in src/Esetroot.cc, go read Esetroot::SetRoot(). This will not work in all case with argb visuals:

Code:


imlib_context_set_visual(DefaultVisual(display, DefaultScreen(display)));


I suggest you first try upgrading your Imlib2 to the latest version available (from cvs). If it doesn't help, you should modify this line to make sure you select a non-argb visual. Yours,

By eNTi (User), on Thu Nov 10 18:56:08 2005.

Code:

imlib2-1.2.1.009
, is my current version.

By syfou (Core Developer & Desklet Author), on Thu Nov 10 19:52:15 2005.

Imlib2 X11-related functions do not always perform "as expected" on Xrender-capable screen when ARGB visuals are involved; here, the esetroot-compatible program (fluxspace) does not take any special precaution to deal with this case, as it should; unfortunately, there is little I can do from adesklets perspective.

By cRoMo (User), on Thu Jan 5 10:56:12 2006.

I have a problem with pathnames containing spaces. Trying to put

Code:

 ('/home/cromo/.icons/Lila/inne/msn.png',                                   
            'Konnekt',                                                                
            'wine .wine/drive_c/Program\ Files/Konnekt/konnekt.exe')]};M   
line fails, because after running yab it changes pathname into ".wine/drive_c/Program\\ Files/Konnekt/konnekt.exe" and it doesn't run this app after clicking the icon. Also adding quotes to this path doesn't help. Is this an internal bug?

By gravedigga (User), on Mon Jan 16 20:15:07 2006.

after patching with this http://gnome99.free.fr/yab-0.0.2.patch patch yab exits when my mouse cursor goes over any icons

Quote:


./yab.py
Traceback (most recent call last):
File "./yab.py", line 674, in ?
Events(dirname(__file__)).pause()
File "./yab.py", line 442, in pause
(time()-time_initial)),.01))
File "/usr/lib/python2.4/site-packages/adesklets/events_handler.py", line 214, in _fire_event
[x for x in File "./yab.py", line 406, in motion_notify self._display_icons(x, y) File "./yab.py", line 469, in _display_icons self.icons[rank][4],
File "./yab.py", line 604, in _position
if self.config['limit_horiz_move']:
KeyError: 'limit_horiz_move'

By syfou (Core Developer & Desklet Author), on Wed Jan 18 12:57:30 2006.

cRoMo wrote:

I have a problem with pathnames containing spaces. Trying to put

Code:

 ('/home/cromo/.icons/Lila/inne/msn.png',                                   
            'Konnekt',                                                                
            'wine .wine/drive_c/Program\ Files/Konnekt/konnekt.exe')]};M   
line fails, because after running yab it changes pathname into ".wine/drive_c/Program\\ Files/Konnekt/konnekt.exe" and it doesn't run this app after clicking the icon. Also adding quotes to this path doesn't help. Is this an internal bug?

Well, it is an internal shortage, but not really a bug in my opinion: you used a shell convention for escaping space that doesn't exist outside your shell, since no shell process is forked when executing programs. Here is a patch that forces the execution of all commands in the default shell. In your case, you should be able to use, when applied:

Quote:


('/home/cromo/.icons/Lila/inne/msn.png',
'Konnekt',
'wine ".wine/drive_c/Program Files/Konnekt/konnekt.exe"')]}
Yours,

By syfou (Core Developer & Desklet Author), on Wed Jan 18 13:00:54 2006.

gravedigga wrote:

after patching with this http://gnome99.free.fr/yab-0.0.2.patch patch yab exits when my mouse cursor goes over any icons.

I suggest you try contacting Martin directly about it, since he wrote this patch.

By labatts (User), on Fri Jan 27 19:22:41 2006.

Hi!

i am experiencing a very wierd problem trying to launch Mplayer with yab..when ever i try ,it locks up my computer..and i mean locks it up good,control,alt,delete won't even help..i have to hit the reset button.It's the only app that does this ,wondering if this is a known issue.

just for reference i'm using:
slackware 10.2
kernel-2.6.15.1
adesklets-0.5.0
yab-0.0.2
imlib2-1.2.1
python-2.4.1

By syfou (Core Developer & Desklet Author), on Fri Jan 27 20:42:57 2006.

labatts, I just tried with yab 0.0.2 and mplayer (v1.0pre7try2) -- no problem whatsoever here.

gentoo 2005.1
kernel 2.6.15.1 (vanilla)
adesklets 0.5.0
yab 0.0.2
imlib2 1.2.1.010 (from CVS)
python 2.4.2

Have you tried to use a wrapper script, just to see if there is any surprising error output? Something like:

Code:


#! /bin/bash
# Wrapper script: invoke with the name of program as first argument.

# This will kill the called program violently after 10 seconds
#
$* > /tmp/mylog.$$ 2>&1 & { sleep 10; eval 'kill -9 $!' > /dev/null 2>&1 }


Yours,

By labatts (User), on Fri Jan 27 21:40:35 2006.

nope never tried a wrapper script,and to be honest wouldn't know how to do that,havent been using linux to long..but i did try and exit all desklets and restart them and found that if i select (t) test for yab it launchs mplayer just fine,but if i register it then it locks up my system again.

By syfou (Core Developer & Desklet Author), on Fri Jan 27 21:59:19 2006.

This is weird... Put the script above in your path, make it executable, and configure yab to invoke it with a command similar to:

Code:


wrapper_script the_problematic_application



Then, you will have a log output in /tmp/mylog.####.

Since you are new to linux, allow me a stupid question: does this freezes the entire machine, or just X (including the keyboard)? On a real console, just start as root something like:

Code:


sleep 60 && killall -9 startx


Then hurry up freezing things to see if the machine start responding again after one minute.

What you describe make me think that maybe your mplayer build might just dislike not having an interactive pseudo-terminal... What about invoking xterm -e mplayer from yab?

By labatts (User), on Fri Jan 27 22:09:53 2006.

i think it just locks up x including the keyboard.

i tried that xterm -e mplayer command and i think your right about whats happening because it started up just fine.i'll try the wrapper script thing and see if i can nail down exactly why.

By labatts (User), on Fri Jan 27 22:46:41 2006.

tried the script,and it locks up still,and doesn't kill itself like it's supposed to(have to hit the reset button)..and because of that it doesn't create the tmp log..i'll just run mplayer on a desktop icon for now,because my build of it and yab just don't get along..as i mentioned earlier it is the only app that does this.

Thanks for the help :)

By slackboy (User), on Sat Jan 28 00:05:21 2006.

bash-3.00$ ./yab.py
Traceback (most recent call last):
File "./yab.py", line 48, in ?
import adesklets
File "usr/lib/python2.4/site-packages/adesklets/__init__.py", line 30, in ?
File "usr/lib/python2.4/site-packages/adesklets/initializer.py", line 13, in ?
File "usr/lib/python2.4/site-packages/adesklets/children_handler.py", line 5, in ?
File "usr/lib/python2.4/site-packages/adesklets/signal_handler.py", line 12, in ?
File "usr/lib/python2.4/site-packages/adesklets/signal_handler.py", line 19, in Signal_handler
ImportError: No module named posix_signal

hello i got this problem.. ddnt know why.. not only got this error in yabs but in all adesklets
i have
imlib2-1.2.1
python 2.4.1
running in slackware 10.2
thank you

By syfou (Core Developer & Desklet Author), on Sat Jan 28 00:45:15 2006, last edited on Sat Jan 28 00:57:34 2006.

labatts wrote:

tried the script,and it locks up still,and doesn't kill itself like it's supposed to(have to hit the reset button)..and because of that it doesn't create the tmp log..i'll just run mplayer on a desktop icon for now,because my build of it and yab just don't get along..as i mentioned earlier it is the only app that does this.

The log is created as soon as the application starts; if you don't get log, it means it didn't.

By syfou (Core Developer & Desklet Author), on Sat Jan 28 00:57:17 2006.

Hi slackboy,

slackboy wrote:

bash-3.00$ ./yab.py
Traceback (most recent call last):
ImportError: No module named posix_signal

First thing first: did you compile adesklets yourself (which version)? If not, where can I get the prepackaged version you used (a third party mis-packaging is always possible, and I could check)? The posix_signal module is a required part of adesklets python module, and as such is build and installed during the normal build process.

If you compiled adesklets from source, after make, do:

Code:


make DESTDIR=$HOME/fakeroot install



You should normally find somewhere under $HOME/fakeroot a file named posix_signal.so:

Code:


find $HOME/fakeroot -name 'posix_signal.so'

Yours,

By slackboy (User), on Sat Jan 28 06:09:22 2006.

yes!.. thanks syfou! it works now... thanks alot!

By syfou (Core Developer & Desklet Author), on Sat Jan 28 11:29:05 2006.

slackboy wrote:

yes!.. thanks syfou! it works now... thanks alot!

Could you explain what you did? If there is something wrong with a third party package, it is good to know, since I can notify the packager to correct it. Yours,

By slackboy (User), on Sat Jan 28 11:56:20 2006.

i just download the source tarball and try.. it works.. i dont know what happened before..why i arrive at those error.. i think wrong destination dir.. thanks again syfou

By syfou (Core Developer & Desklet Author), on Sat Jan 28 12:02:49 2006.

slackboy wrote:

i just download the source tarball and try.. it works.. i dont know what happened before..why i arrive at those error.. i think wrong destination dir.. thanks again syfou

You are welcomed. I hope adesklets will prove useful to you. :-)

By pmo6022 (User), on Sat Jan 28 18:55:09 2006: black box around yab.

I've running adesklets on arch linux and enlightenment version 0.16.8 pre 3. I have to invode adesklets with the --user option to avoid the "flickering" problem, as discussed in the faq. I don't recall having to do this under earlier versions of e.

My problem is that I have a black box around the yab bar. I'm using the default config.txt, and I've tried changing bar_background_1 , 2, and foreground to none and bar_opacity_1 and 2 to 0 and 255 without any luck. Any ideas?

By syfou (Core Developer & Desklet Author), on Sat Jan 28 19:57:34 2006: Re: black box around yab.

pmo6022 wrote:

I've running adesklets on arch linux and enlightenment version 0.16.8 pre 3. I have to invode adesklets with the --user option to avoid the "flickering" problem, as discussed in the faq. I don't recall having to do this under earlier versions of e.

Thanks for notifying me; I just tested e16 version 0.16.8 pre3 and you are right -- they switched to using a fake root window on the first virtual desktop too -- patch is here. If you do not feel like upgrading adesklets code base manually, just invoke for now:

Code:


adesklets --nautilus


pmo6022 wrote:


My problem is that I have a black box around the yab bar. I'm using the default config.txt, and I've tried changing bar_background_1 , 2, and foreground to none and bar_opacity_1 and 2 to 0 and 255 without any luck. Any ideas?

Look at the FAQ under the "Now I see the desklets, but the transparency is screwed!" item. Yours,

By pmo6022 (User), on Sun Jan 29 10:38:35 2006: Re: black box around yab.

syfou wrote:


Thanks for notifying me; I just tested e16 version 0.16.8 pre3 and you are right -- they switched to using a fake root window on the first virtual desktop too -- patch is here. If you do not feel like upgrading adesklets code base manually, just invoke for now:

Code:


adesklets --nautilus


Thanks for the patch, works great. A major change in e16.8 is a composite manager, maybe that explains the use of a fake root window. Anyway, my understanding is that barring any showstopper bugs, pre3 is going to become e16.8 final.

I also got the background working using Esetroot.
Thanks!

By no_geek (User), on Mon Jan 30 12:42:14 2006: yab with different configuration files?.

Hello everybody, I use yab (and weatherforecast) with fluxbox on my archlinux installation and I am very happy with it. But sometimes when I switch themes (there are so many of them, why stick with the same all the time :) ) I would like to switch also the icon sets in yab. Could this be done by command line options in some way or do I have to copy config files back and forth? I have not learned shell programming yet :( , otherwise I might write a shell script for that...

By syfou (Core Developer & Desklet Author), on Mon Jan 30 14:41:56 2006.

Hi no_geek,

that's a neat idea, but yes, as you said it yourself, this is typically something that calls for scripting.

But do not worry, this is anything but hard to do; typically, the right way to avoid timing issues and such would be to have multiple $HOME/.adesklets configuration files, and static config.txt (one per desklet) with the different desklets configurations under multiple IDs. Then, you just have to "hook" a script similar to this one to the rootCommand of your fluxbox themes:

Code:


#! /bin/sh
# 
# Theme changer for adesklets
#

die() { 
    echo "Error: $*"
    exit 1 
}

test "x$1" = x && die 'no theme given'
test -e $HOME/.adesklets.$1 || die "theme '$1' could not be found"
ln -sf $HOME/.adesklets.$1 $HOME/.adesklets || die 'unable to symlink the new theme'
adesklets


For instance, imagine you have two themes, one named "charybdis", the other "scylla". Then, you would put two files in your $HOME: one under $HOME/.adesklets.charybdis, that could look like:

Code:


[/path/to/first/desklet.py]
id=0 screen=0 x=100 y=100

[/path/to/second/desklet.py]
id=0 screen=0 x=200 y=200


And naturally another, called $HOME/.adeslets.scylla, that could contain:

Code:



[/path/to/first/desklet.py]
id=1 screen=0 x=100 y=100

[/path/to/second/desklet.py]
id=1 screen=0 x=200 y=200



Then, you'd only need to call the script above with "charybdis" or "scylla" as the first parameter to automatically changes your entire adesklets' desktop configuration... Of course, nothing prevent you from having completely different layouts (or even completely different sets of desklets) from one them to the next. ;-) Yours,

_________________
Sylvain

P.-S. If you have a few hours to spend, I suggest you read the Advanced Bash Scripting Guide by Mendel Cooper -- do not let the name fools you, this is in my opinion a very well written introductory text to shell scripting too.

By no_geek (User), on Mon Jan 30 18:49:08 2006.

Hello syfou,
thanks for your answer, I'll definitely give it a shot in the next couple of days - and the Advanced Bash Scripting Guide has been on my "things-I-want-to-study-list" for some time now... :? Maybe I'll use this opportunity... Anyways, I'll let you know.

By nine (User), on Fri Jun 23 12:21:44 2006: How put verticall.

How i can put the yab verticall ?

Thanks for the time

By gnoomy (User), on Mon Jul 17 07:39:17 2006.

gravedigga wrote:

after patching with this http://gnome99.free.fr/yab-0.0.2.patch patch yab exits when my mouse cursor goes over any icons

Quote:


./yab.py
Traceback (most recent call last):
File "./yab.py", line 674, in ?
Events(dirname(__file__)).pause()
File "./yab.py", line 442, in pause
(time()-time_initial)),.01))
File "/usr/lib/python2.4/site-packages/adesklets/events_handler.py", line 214, in _fire_event
[x for x in File "./yab.py", line 406, in motion_notify self._display_icons(x, y) File "./yab.py", line 469, in _display_icons self.icons[rank][4],
File "./yab.py", line 604, in _position
if self.config['limit_horiz_move']:
KeyError: 'limit_horiz_move'

(sorry, I'm 6 months late... ) I'll have a look at the line 604!

Quote:

How i can put the yab verticall ?

Right now it's not possible. Since many people asked for it, maybe i'll try to do something... in August! I aldready have much work this month :? If it works fine, i'll try parabolic zooming by the way.
if it works :D

By wovlerine (User), on Mon Jul 17 08:18:02 2006: RE 'limit_horiz_move'.

gnoomy wrote:

gravedigga wrote:

after patching with this http://gnome99.free.fr/yab-0.0.2.patch patch yab exits when my mouse cursor goes over any icons

Quote:


./yab.py
Traceback (most recent call last):
File "./yab.py", line 674, in ?
Events(dirname(__file__)).pause()
File "./yab.py", line 442, in pause
(time()-time_initial)),.01))
File "/usr/lib/python2.4/site-packages/adesklets/events_handler.py", line 214, in _fire_event
[x for x in File "./yab.py", line 406, in motion_notify self._display_icons(x, y) File "./yab.py", line 469, in _display_icons self.icons[rank][4],
File "./yab.py", line 604, in _position
if self.config['limit_horiz_move']:
KeyError: 'limit_horiz_move'

(sorry, I'm 6 months late... ) I'll have a look at the line 604!

Quote:

How i can put the yab verticall ?

Right now it's not possible. Since many people asked for it, maybe i'll try to do something... in August! I aldready have much work this month :? If it works fine, i'll try parabolic zooming by the way.
if it works :D


Hi there,

As we can see, we've got an error for the 'limit_horiz_move' option in the patch because there is (I think) an typing error in the patch and then in the yab.py file :


yab-0.0.2.patch:
@@ -155,6 +170,9 @@
'icon_max_height': 128,
'icon_spacing': 5,
'icon_maximize_threshold': 0.9,
+ 'icon_maximize_use_y_axis': False,
+ 'icon_vertical_displacement': 'None',
+ 'limit_horiz_mov': False,
'bar_height': 32,
'bar_foreground' : '000000',
'bar_background_1': 'AAAAAA',

How to correct this little error :) ?

If you already have patched the yab.py file, just edit with your fav editor the yab.py file, go to the line 175, and you could see that the 'limit_horiz_mov' option need an 'e' at the end. :) Otherwise edit the patch file before applying it.


I've done that too, it works perfectly now...

Enjoy... :)

By pillzdb (User), on Thu Jul 27 23:29:09 2006: yab (or modubar) + thunar.

Hi all,

Loving adesklets except for one problem:

The problem occurs with thunar shortcut for both yab and modubar. Yab/modubar will intermittently crash when the Thunar icon is clicked with the following error:

Quote:

Traceback (most recent call last):
File "./modubar.py", line 749, in ?
Events(dirname(__file__)).pause()
File "./modubar.py", line 470, in pause
(time.time()-time_initial)),.01))
File "/usr/lib/python2.4/site-packages/adesklets/events_handler.py", line 214, in _fire_event
[x for x in File "./modubar.py", line 424, in button_press self._display_icons(x) File "./modubar.py", line 488, in _display_icons adesklets.set('w',self._window_width-(84*len(self.modules))) File "/usr/lib/python2.4/site-packages/adesklets/commands.py", line 114, in set return comm.out() File "/usr/lib/python2.4/site-packages/adesklets/commands_handler.py", line 93, in out output=self.__comm.out(.01) File "/usr/lib/python2.4/site-packages/adesklets/communicator.py", line 87, in out rd, wr, ex = select.select([self.__stdout],[],[],delay)
select.error: (4, 'Interrupted system call')


This problem seems similar to one previously posted (http://adesklets.sourceforge.net/forum/viewtopic.php?t=237), but the difference is that it is failing on adesklets 0.5.0 (the default deb package for Dapper Ubuntu) -- i.e. >= 0.4.11 (when the patches for the mentioned problem were added).

Your help is appreciated, and keep up the great work!

By pillzdb (User), on Thu Jul 27 23:34:15 2006.

The previous error message was from modubar and so to avoid confusion I've posted here the equivalent error message in yab that causes the crash:

Quote:

Traceback (most recent call last):
File "./yab.py", line 598, in ?
Events(dirname(__file__)).pause()
File "./yab.py", line 413, in pause
(time()-time_initial)),.01))
File "/usr/lib/python2.4/site-packages/adesklets/events_handler.py", line 214, in _fire_event
[x for x in File "./yab.py", line 370, in button_press self._display_icons(x) File "./yab.py", line 440, in _display_icons self.icons[rank][4],
File "/usr/lib/python2.4/site-packages/adesklets/commands.py", line 468, in blend_image_onto_image
return comm.out()
File "/usr/lib/python2.4/site-packages/adesklets/commands_handler.py", line 93, in out
output=self.__comm.out(.01)
File "/usr/lib/python2.4/site-packages/adesklets/communicator.py", line 87, in out
rd, wr, ex = select.select([self.__stdout],[],[],delay)
select.error: (4, 'Interrupted system call')


Thanks

By syfou (Core Developer & Desklet Author), on Fri Jul 28 03:22:59 2006.

adesklets 0.5.0 is somewhat old... Would you first try to see if you can reproduce this bug with the latest packaged version of adesklets (0.6.1 at the time of writing)? Are you absolutely unable to reproduce it with anything but on thunar launch (this time, I doubt this is related -- error trace is unrelated, but who knows)?

I would also appreciate if you would share your desklet configuration, just in case. The problem with such an exception trace is that this is highly generic (yet, it should never happen), hence hard to reproduce on a different system... which doesn't mean I shouldn't try. ;-)

_________________
Sylvain

P.-S I am leaving my computer for fifteen days starting tomorrow... I will probably have to get back to you only in two weeks.

By gnoomy (User), on Mon Jul 31 14:08:15 2006.

here is an experimental vertical version of yab:
http://gnome99.free.fr/experimentalVyab.py

I've just exchanged 'x' and 'y' (or 'width' and 'height') in many parts of the code, and it works :lol: (it's an adaptation of my patched version of yab)
However it doesn't support captions because I don't know where to place them (any idea?) so set 'caption_font' to False.

it also raises a question: will we release the vertical bar as an option, or as a separate desklet? I don't think an option would be fine because many parts of the code are changed AND it's based on my patched version of yab, which aldready contains many 'if' :oops:

while I'm waiting for your ideas about the caption, i'll try parabolic zooming (but it's harder)

By gnoomy (User), on Mon Aug 21 11:22:32 2006.

i've done a minor update to the patch which adds the 'icon_maximize_use_y_axis', 'icon_vertical_displacement' and 'limit_horiz_move' options.

and i've done the funky thing: a parabolic yab. It's still experimental... maybe i'll release it as another desklet since the positionning functions have been completely rewritten.

By Didier (User), on Thu May 10 01:11:47 2007: OPenSuse and Buffer Oveflow.

Hi all,
My config
OpenSuse 10.2 (2.6.18.2.34)
Python 2.5.19
Adesklets 0.61
Yab 0.02

Each time i tried to use Yab, I have a Buffer Overflow

Quote:


*** buffer overflow detected ***: adesklets terminated
======= Backtrace: =========
/lib/libc.so.6(__chk_fail+0x41)[0xb7c4c581]
/lib/libc.so.6[0xb7c4bf93]
adesklets[0x805aebb]
adesklets[0x804eb39]
adesklets[0x804cb6a]
/lib/libc.so.6(__libc_start_main+0xdc)[0xb7b90f9c]
adesklets[0x804ca81]
======= Memory map: ========
here is the lib in use
===========================
b7ad8000-b7ada000 rw-p 00010000 03:02 70Traceback (most recent call last):
File "./yab.py", line 598, in <module>
Events(dirname(__file__)).pause()
File "./yab.py", line 399, in pause
self._display_caption()
File "./yab.py", line 499, in _display_caption
adesklets.play(*self._fadein)
File "/usr/lib/python2.5/site-packages/adesklets/commands.py", line 184, in play
return comm.out()
File "/usr/lib/python2.5/site-packages/adesklets/commands_handler.py", line 93, in out
output=self.__comm.out(.01)
File "/usr/lib/python2.5/site-packages/adesklets/communicator.py", line 91, in out
raise ADESKLETSError(1)
adesklets.error_handler.ADESKLETSError: adesklets process exited -


it happens only when an action is done on the yab bar - Mouse focus ON or OUT, clicking an icon or move the bar.
Weatherforecast work fine.

I tested it why another material to check my physical memory but the result is the same.

Is it a known problem with OPenSuse or something compatibily problem between those version ?

Thanks for helping

By syfou (Core Developer & Desklet Author), on Thu May 10 13:14:10 2007.

Didier wrote:


Python 2.5.19 <= That doesn't exist.

Anyway, the bug is not at that level... The exact version of the various librairies llinked against the adesklets executable would be useful though:

Code:


ldd `which adesklets` | awk '{print $3}' | xargs --max-lines=1 readlink --canonicalize


Unfortunately, what you describe is unusual and pretty uncommon: I am afraid it will be difficult for me to pin-point what is going wrong without access to the machine; as far as I know, OpenSuse is just another Linux, and adesklets & yab runs pretty smoothly all across the Linux board: in fact, that's the fist time I hear of this problem. regardless of the exact distro.

For you to know, I have to make an emergency trip outside of the country; I will be back at my terminal next Tuesday (May the 15th). I will be glad to assist you further if we can arrange something. Given the chance, I like fixing my bugs. Yours,

By Didier (User), on Thu May 10 15:31:03 2007.

Thanks for you reply and your help.

I have tested this on 3 differentes computers with the same result.
If i do the installation from the sources, the compilation goes the end without errors but i never can run any desklets.(sorry I don't remmenber the exact error message)
So i've performed the install by rpm (using "smart install adesklet") then weatherforecast works fine but Yab return buffer overflow crash.

By syfou (Core Developer & Desklet Author), on Wed May 16 13:41:17 2007.

Didier,

I wrote:


Code:


ldd `which adesklets` | awk '{print $3}' | xargs --max-lines=1 readlink --canonicalize 


please give me the output of the shell line above. ;-)

Didier wrote:


If i do the installation from the sources, the compilation goes the end without errors but i never can run any desklets.(sorry I don't remmenber the exact error message)
There is a fair chance this is a manifestation of the fontconfig bug listed at the bottom on the adesklets home page; on linux, a fix has been available for it for a good while.

Didier wrote:


So i've performed the install by rpm (using "smart install adesklet") then weatherforecast works fine but Yab return buffer overflow crash.
This is probably something different, and I would like to investigate it. Would you have a link to the exact RPM you used? Thanks,

By Didier (User), on Fri May 18 13:31:04 2007.

Here is the output of the line you ask me to test:

Code:

/root/(0xffffe000)
/usr/lib/libX11.so.6.2.0
/usr/lib/libImlib2.so.1.3.0
/lib/libncurses.so.5.5
/lib/libreadline.so.5.1
/lib/libhistory.so.5.1
/usr/lib/libfontconfig.so.1.1.0
/usr/lib/libexpat.so.1.5.0
/lib/libc-2.5.so
/lib/libm-2.5.so
/usr/lib/libXau.so.6.0.0
/usr/lib/libXdmcp.so.6.0.0
/lib/libdl-2.5.so
/usr/lib/libfreetype.so.6.3.10
/lib/libz.so.1.2.3
/usr/lib/libXext.so.6.4.0
/lib/libpthread-2.5.so



I already have the bug from font config but i don't think it was the same.

and the package used is:
adesklets-0.6.1-4.guru.suse102

I tried to get some informations from French Suse forum without success...

Thanks of lot

By syfou (Core Developer & Desklet Author), on Mon May 21 14:25:47 2007.

Didier wrote:


I tried to get some informations from French Suse forum without success...

For your information, here is Didier's alionet thread (in French) where he asked for support (thanks, Didier).


adesklets is proud to be hosted on:

SourceForge.net Logo

Back to adesklets.sf.net.