The small icons that appear in the handle of our docked dialogs are
all rendered in this manner as far as I can tell. At the moment,
upstream gdl only allows dialogs to be created either with no icon in
the handle at all [gdl_dock_item_new()] or with a stock icon in the
handle [gdl_dock_item_new_with_stock()]. We have added a new option
[gdl_dock_item_new_with_pixbuf_icon()] that allows a pixbuf icon to be
used in the handle.
I have pushed a new branch lp:~inkscape.dev/inkscape/external-gdl that
builds against an external copy of gdl and disables our new features.
Please feel free to try it out! Here are a few notes:
* I set version gdl-1.0 >= 2.30.1 for pkg-config. This is the
upstream stable version, and the one that is shipped with Ubuntu
Natty. I haven't checked which version is provided by other distros.
* Docked dialogs no longer display any icon in the handle. In
principle, it should still be possible to create dialogs with an icon,
by registering the desired icon as a new stock icon. I have no
experience with doing this, however... and I don't know the best way
to tackle it in Inkscape!
* Docked dialogs no longer grab keyboard focus... this is a bit
annoying, because you cannot tab-select input fields.
Hope that's of some use!
On 12 June 2011 19:43, Josh Andler <scislac@...> wrote:
> Hey Alex,
> For the most part I'd actually be all for the first option... temporary loss
> of a way of using things that a good number of people probably don't use is
> just a temporary set back. However, can you explain how we use "Ability to
> create a docked dialog using a pixbuf icon."? Unless there's something
> pretty major with that, I vote for solution 1. Also, is gdl on the typical
> 6-month gtk release cycle?
> On Sun, Jun 12, 2011 at 7:10 AM, Alex Valavanis <valavanisalex@...>
>> Hi all,
>> To follow up our recent discussions about building against an external
>> copy of libgdl (https://launchpad.net/bugs/792115)...
>> I have played with the code, and here is a summary of my findings:
>> The Inkscape fork of GDL is branched from gdl-0.7.7, which was
>> released a loooong time ago. There have been very substantial
>> upstream changes/bug-fixes since then. In particular, our version
>> uses lots of deprecated/obsolete GTK calls, meaning that Inkscape will
>> fail to build against GTK 3. We therefore need to fix this issue
>> fairly quickly.
>> Our fork of GDL introduces a couple of new features. Here are the
>> main ones I can see:
>> * Focus switching between docked dialogs, with tab/arrow-key bindings
>> * Ability to create a docked dialog using a pixbuf icon.
>> I have forwarded a patch upstream to GDL
>> (https://bugzilla.gnome.org/show_bug.cgi?id=652248) asking if they
>> would be able to merge any of our changes. The upstream developer was
>> very supportive and helpful, and had a few queries. However, I'm not
>> an expert on GDL/GTK and I'm not in the best position to comment.
>> I see three options for fixing the problem:
>> 1) Build against external GDL right away --- This should be easy to
>> do, but we'd lose our changes for a while. However, I'm not sure any
>> of the changes represent essential Inkscape design features and we'd
>> be able to reimplement them when they appear in the upstream API.
>> 2) Merge our changes into upstream GDL 2.30 and copy this into the
>> Inkscape code --- This will take a bit of fiddling around, and it
>> still relies upon us working with forked code. I have managed to make
>> a branch of inkscape with gdl-2.3.0+changes that compiles and runs,
>> but it is buggy (no colour switching and some graphics glitches).
>> Unfortunately, my GTK knowledge is not good enough for me to do this
>> by myself. If anyone is able & willing to help, I can push the new
>> 3) Don't fix it yet! --- Wait until upstream have implemented all the
>> changes (in GDL >=3.1.1) and then switch over. However, we have no
>> guarantee of how long this will take, and we will be unable to support
>> GDK+ 3 builds until we switch!
>> Please let me know what you think!
>> EditLive Enterprise is the world's most technically advanced content
>> authoring tool. Experience the power of Track Changes, Inline Image
>> Editing and ensure content is compliant with Accessibility Checking.
>> Inkscape-devel mailing list