Looking in the code, I think i see the problem. The graphics operations for GTK2 use GDK drawables which do not support alpha blending. The bitmaps can be stored in 32bit pixbufs, but those are not drawables and when a graphics operation is needed (drawing to a canvas or blitting from one image to another), the graphics context contains a generated pixmap (which only holds RGB data) and a mask (which is 1bit). So all drawing operations are limited to 1bit transparency.
However GDK does offer functionality for drawing pixbufs to drawables but it is incompatible with the rest of the GDK graphics operations (f.e. you can't draw an arc to a pixbuf so pixbufs cannot be used for everything). For now i'm looking into trying to use the pixbuf when an image operation is requested and see if that helps for solving the most glaring issues with toolbars having no transparency and converting between tbitmap to tlazintfimage and back losing the alpha channel. It wont solve the issue of other operations (f.e. drawing a line, arc, rectangle, etc over an image with alpha channel), but that would require a complete rewrite of the GTK2 graphics context code to use Cairo (which will be necessary for GTK3 anyway). On Sat, Jan 4, 2014 at 2:24 PM, Juha Manninen <juha.mannine...@gmail.com> wrote: > On Sat, Jan 4, 2014 at 3:00 PM, Kostas Michalopoulos > <badsectorac...@gmail.com> wrote: >> What is the problem with (full) transparency in GTK2? > > I have no idea. > >> Is anyone working on this? > > Unfortunately not. There are only few people who know the GTK2 > bindings code. We would need more contributors for it. > > Right now I am going through Mantis issues with target 1.2. There are >> 270 of them. Uhhh! > Most of them must be postponed but maybe we can make it down to 250 before > that. > Anybody who is interested, please look at the issues. > Find the ones already fixed and provide patches for the ones that are > not. Thanks. :) > > Juha > > -- > _______________________________________________ > Lazarus mailing list > Lazarus@lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus