"I have met the problems some application with a transparent window can run on 
maemo successfully, but they will present on maemo with a gray window."

 

Sorry for my mistake, I was going to say that," I have met the problems some 
application with a transparent window can run on PC(out of scratchbox) 
successfully, but they will present on maemo with a gray window." 

 

 

-----Original Message-----
From: Jun Xu 
Sent: 2008年10月27日 18:05
To: 'Martin Grimme'
Cc: [email protected]
Subject: RE: how to set gtk widget translucent

 

Hi;

Thanks for your suggestion. I have notice that you wrote twice the words 
"cannot do this on maemo", that's too bad, but I hope strongly my application 
can run on maemo. I have met the problems some application with a transparent 
window can run on maemo successfully, but they will present on maemo with a 
gray window. That is so bad state I want not to happen. So do you have any 
ideas?

 

Thanks!

 

-----Original Message-----

From: Martin Grimme [mailto:[EMAIL PROTECTED] 

Sent: 2008年10月27日 16:07

To: Jun Xu

Cc: [email protected]

Subject: Re: how to set gtk widget translucent

 

Hi,

 

there are different sorts of GTK widgets. Some widgets simply draw on

their parent window, and some widgets (those that can receive user

events) draw on their own low-level window.

The widgets with their own windows (e.g. GtkButton, GtkEntry) are

opaque and completely hide what's behind. However, you can punch holes

into their shape (gtk_widget_shape_combine_mask) to reveal what's

behind. Alpha blending is not possible though. So, this wouldn't work

with your findbar idea.

Windowless widgets (e,g, GtkImage, GtkLabel) can be composed on top of

each other and support alpha blending just fine. Your findbar needs

text input, so it's not a windowless window.

On modern Linux desktops (but not on the current maemo) you can also

use an RGBA colorspace to draw onto the window. The composition

manager then blends the window according to the alpha pixel values.

This would be the perfect solution for your findbar, as the bar could

be implemented as another toplevel window layered above your

application window. However, you can't do this on maemo.

 

I suggest looking into GtkStyle to change the background image of the

GtkEntry widget. You can grab the screen contents, dim it, and paste

into the entry widget. This would create the illusion of translucency.

 

 

Regards,

Martin

 

 

2008/10/27, Jun Xu <[EMAIL PROTECTED]>:

> Hi, All,

> I want to add a gtk widget on top of another gtk widget, and then set

> Alpha value to the widget above, make it translucent. for example, I

> want to add a translucent findbar on a window. I have tried kinds of way

> to do that, however, there is no any available means that can perform

> the special effect. So, if you have any good idea, share me PLS. if any

> sample, that will be delicious:-)

> 

> 

> 

> Looking forwards to anyone's help.

> 

> 

> 

> 

> 

> 

_______________________________________________
maemo-developers mailing list
[email protected]
https://lists.maemo.org/mailman/listinfo/maemo-developers

Reply via email to