Fri, 14 Jul 2006
During the past week I completed the communication path from a Firefox extension to the Compiz plugin and visualizing the results. It was about time as the summer is half-way through, and there's still a lot of extending and polishing left to do. I want to publish a demo version of the extension soon along a version of the plugin code that works with it.
After my last report, it turned out getting the native window was not as easy
as it seemed. Even though
nsIBaseWindow has it as a property,
there's some code for accessing it, and trying to access the property makes
the code give you a ... segfault. Luckily the code could be worked around
GetNativeData(NS_NATIVE_WIDGET). The native code now does all
information about parent window, that is, which page was this page opened
from. Another thing is supporting a set of documents, as tabs lead to
several documents per window.
A bit unexpectedly, the Compiz upstream changed to use Git instead of CVS.
I welcome the use of distributed version control, but it means my
CVS to Darcs gateway of the Compiz repository makes no sense anymore. I've
been learning Git, setting services up, and moving my Compiz patches to
Git. This far, you can
browse the new repo
I've hit some problems on the Compiz side, not understanding some details of
the system. To help this, I've continued studying the code and adding
comments and documentation. Some of this is currently available in the
documentation_work head of my Git repository, specifically
the patch. I'm planning on going through all of the paint sequence next,
as that's one of the most delicate ones to understand.
To try more OpenGL features I wanted a Python environment that is similar to Compiz. It's not too near yet, but it has pixel coordinates set up, and I was able to debug my arrow drawing mathematics with it.
These weblog entries are licensed under a Creative Commons Attribution-ShareAlike 2.5 License