Hi Josh,
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!
AV
On 12 June 2011 19:43, Josh Andler <scislac@...400...> 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?
Cheers, Josh
On Sun, Jun 12, 2011 at 7:10 AM, Alex Valavanis <valavanisalex@...400...> wrote:
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:
- 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.
- 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 branch.
- 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!
AV
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. http://p.sf.net/sfu/ephox-dev2dev _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel