Gtk+ updates on the OSX/Win32 front

GDI+ Pixbuf loader integrated into Gtk+ trunk

tml has done an outstanding job integrating the GDI+ pixbuf loader into trunk there. This means that we can get rid of at least libjpeg and libtiff dependencies on Win32. zlib and libpng are needed by cairo anyway.

I'm really happy about this, since I'm kind of paranoid on removing dependencies and reusing as much as possible on the platform to make the Gtk+ runtime smaller and easier to build, on the other hand this is probably the first time a project that I bootstrap myself gets into mainstream somwhere.

Of course, none of this could have happened without the heavy lifting of Dom and his tips at the very beginning of the project. Kudos for him too!

 

OS X's Quartz engine/theme landed on GNOME's svn

I've been working on improving rhult's Mac OS X quartz engine as well, tabs, menubar backgrounds and arrows has got some love, again during a flight, while I was coming to Spain.

After those fixes rhult and myself thought that moving the code from his git repository to an official SVN module would be a good idea to encourage testing a more people to help. So there it is, check it out while it's hot!

$ svn co http://svn.gnome.org/svn/gtk-quartz-engine/trunk gtk-quartz-engine

Win32 Combobox fixes backported to 2.12

The fixes I did on the hackfest are now backported to 2.12, this means that comboboxes won't look broken anymore on any future stable releases of Gtk+ with the Win32 engine/theme. Yay!

Meet the beasts!

I made two hackgergotchis out of some photos taken during the hackfest:


Rob Taylor

Juerg Billeter

Dear planet maintainers, can you update them? I already agreed with them.

Curved borders are cool, let's put them everywhere!

Someone on the firefox team decided that putting a curved separator inside a curved container was a good idea (second navbar is what I think it should be):

Besides that it looks extremmely ugly to me, it actually separates two elements that are  non curved and vertical, the text and the favicon side, it also waste space for the sace of curveness. On the other hand, it actually breaks consistency on how mac tabs does the separation between tabs in a notebook (which is basically the same pattern, separate elements inside a common rounded border container):

Could anyone tell me what's the best way to address this issue within the mozilla community?

Anyway, I'm heading to Gran Canaria right now, leaving Dublin for almost 4 months. Everything is packed and my taxi would be downstairs in 15 minutes. There I go warm weather!

APOC projects at the Google Summer of Code 2008

Students! What are you waiting for? APOC has two open ideas on both GNOME and KDE's pools for this year:

Sabayon integration with APOC

Wanna make GNOME rock even more on big deployments?

Sabayon is a configuration profile management tool written in python, it allows to create configuration profiles using an X session and directly configuring applications using a special user. This profiles are then stored in a zipfile that can be deployed on the users' home unzipping it.

This approach has the shortcoming that profiles can't be deployed on a group base without unzipping the profile on each home directory and there's no real policy when you want to apply several profiles to different groups. Storing profiles with the APOC format would allow to apply them seamlessly to tens of thousands of users using LDAP either by role, host, group or user base.

Some time ago we wrote a patch at Sun to enable Sabayon to store profiles in the same format that APOC does. The goal of this project is to adapt this patch to get it into the mainstream Sabayon code base and extend its capabilities to store the OpenOffice configuration keys.

The whole project would be written in Python, although some Java reading might be needed.

I will mentor this project myself and federico (the Sabayon maintainer) offered himself to support the effort as much as he can.

KConfig adapter for APOC

Wanna make KDE rock even more on big deployments?

APOC already has adapters for GConf, Firefox/Mozilla and OpenOffice in place (although not all of them has been released yet). However, the other big open source desktop player on the opensource arena is still missing, we would love to see a KConfig adapter for APOC and that's why we have propossed an idea on the KDE's pool.

This would be a huge gain to complement the awesome kiosk capabilities that KDE already has, making KDE even more suitable for enterprise and education environments. On the other hand it would help to make the APOC community scope even bigger, which is something that I'm really willing to see.

This project would mostly involve C++/QT coding.

My workmate and APOC rockstar Joerg is going to mentor this project.

If you're interested in apply to any of those projects, drop us a line to alberto (dot) ruiz (at) sun (dot) com or joerg (dot) barfurth (at) sun (dot) com.

 

Mac got tabs, native and shiny tabs!

I think that we should hire a plane with a few printed editions of the Devhelp manuals and references plus an offline backup of bugzilla for the next Gtk+ hackfest.

This is what I got working during my flight back to Dublin:

I'm having lots of fun working on the native engines for Mac and Windows. It's not that hard, and the results makes tons of people a lot happier.

There is a patch already in place to allow to center the tabs. Next step would be to figure out what's the last tab so we can do the round corner on the other side. I've submitted a bug with an idea on how to solve it, gotta write the patch still.

Pretty productive flight though :-)

Beware GLib/Gtk+ hackers!

Gtk+ Hack Fest 2008: Goodbye Berlin

I'm writing this alone, from Charlie 2, one of the most active apartments on the hackfest. It feels quite weird to see it empty. It feels so strange that the week is over, I had so much fun, I learned so much and got to realize that the Gtk+ community has a big bunch of awesome guys.

Today we went to the Deustches Technikmuseum Berlin, and the lots of fun there, specially in the printing room, where you could see our rockstars font rendering and cairo hackers playing with an 100 years old linotype to create our brand new, hand crafted business cards!



Gtk+ Hackfest 2008, Berlin Gtk+ Hackfest 2008, Berlin Gtk+ Hackfest 2008, Berlin

I won't go into the details or the roadmaps, since all in all, this new cool plans and ideas has become a background issue for me, what really makes me feel like it was worth coming here, was the fact that I started feeling like those community guys were not a bunch of hackers for me anymore, but they're becoming something more close of a group of really good and awesome friends.

As for Berlin, I think it's a lovely city, actually quite bigger than Dublin and with more stuff to do in terms of fun, I wouldn't regret the opportunity to move there since most people speak english, and German doesn't seem that hard to learn once you know english.

All in all, great fun. A big thank *YOU*, to all the guys there, for being such a bunch of smart and awesome people, and thank you to the GNOME Foundation and all the sponsors for being able to make this happen. I'm slowly going bed, since I have a flight tomorrow morning and I don't want to miss it. Back to Dublin, and in three weeks I'll be back at Spain for three months (yummy food!).

PS: I would like to send a special thank you to Mathias Hasslemann for the huge effort on bringing us such a convinient venue and infrastructure for the Hackfest, and another big thank you to  MacSlow, who spend most of his time there seting up the interviews which I think is a very important task to keep the community in touch even though kept him from doing some hacking.

Gtk+ Hackfest 2008: Day three

Yesterday was a quite productive day.

Very early at the morning, I managed to kill the most annoying bug on the Windows engine so far:


Everytime you organize a hackfest, the hackers kills some bugs. Do it for the bugs!

At the morning there was the WebKit discussion, pretty cool stuff, it seems that WebKit is going to bring loads of new kind of applications. Alp Toker has done an outstanding job there, go alp, go!

Then we had the Foreign OSes BoF, which I was pretty excited to do. It was basically a gathering of the people doing stuff on non Linux environments.


We identified the main problems surrounding the Win32 and OSX development experience with Gtk+, the imendians have been doing an outstanding work getting XCode integration for OSX developers. They actually demoe a Hello World!, and it was by far, the easiest C based Hello World! I've ever seen. No `pkg-config` stuff, no command line black art, just write code a compile.

As for Visual Studio very little is done, we lack knowledge and there's none around the effort with extensive experience on it. So bratsche and myself am going to research on it and try to come up with something.

Now I need to get ready for ryan's dconf talk, wee!

Gtk+ Hackfest 2008: Day one and a half

I've arrived to Berlin on Sunday morning for the Gtk+ Hackfest 2008. So far it's been pretty nice, I think Berlin is a lovely city, people seems nice, and it seems that there are a lot of things to do in the city.

Yesterday morning we had the "Gtk+ Visions" presentation from the imendio guys. The big topic there being the future of Gtk+ (Gtk+ 3.0). There were a lot of discussions, but the general feeling I got is that everybody pretty much agreed on the main topics, Gtk+ is getting into a dead-end, and that we want to make sure that the migration path to (Gtk+)++ is as soft and painless as possible. Gonna try to start drawing the plans

One of the issues discussed was to provide a predictable release that might break ABI and remove deprecated API. The intervals for this are not clear yet, but it sounds like a good idea to me. Being predictable will let ISVs anticipate this sort of issues, which is better than getting to the situation where Gtk+ cannot get any better. There wasn't any decisions taken whatsoever, but the general feeling of agreement is pretty promising.

I've been working mostly on the Windows engine. I'm stucked with a nasty bug (#461805) on the combo box, which is fixed for the Windows XP/Vista theming engine, but not for the classic theme (Win2000 look and feel). Here's the improvement so far:

Gtk+ foo

Heading to Berlin

I'm heading to Berlin for the Gtk+ Hackfest next week, I'm pretty excited about it not only because most people from the Win32 gang are going to be there there (we're gonna miss dom though), but also because I get the feeling that I'm gonna learn a lot from the real Gtk+ rockstars. I'm feel quite lucky and thankful that behdad found a place for me there.

Win32 front

dom has been rocking on the GDI+ front, he got animations working, check out the video:


YouTube/OGG

The loader has got to a pretty stable and feature complete state. We should do a release soon perhaps and ask people to test it.

I actually have changed the images of the Gtk+ demo, now that we have a new logo and Tango icons, it would be a good time to give the demos a face lift. Don't you think?