According to the schedule[1], the feature proposals discussion is supposed to heat up today. I'd like to share the current status of my dynamic help menus work.
There are instructions on how to build everything I've done on the gitorious ghelp wiki: https://gitorious.org/ghelp/pages/Home The GHelp API in GIO is nearly complete, in terms of what I wanted to accomplish with it. I have one more method I want to add to the interface to activate a full text search. I've changed the API three times now, and I'm happy with how it works now. I know Ryan and others are working on proxying menus in GIO. I don't think that work precludes what I've worked on. The GHelp API can be reused in different ways. Ryan thinks it should return a GMenuModel, but I'm hesitant to make it rely on an API that's not yet accepted. Anyway, I think the current API is generic and can stay regardless. Convenience functions to create a GMenuModel will be easy to add on top. There are some minor glitches in the way the help widgets work. The help button looks kind of ugly in a GtkButtonBox. Maybe that's just up to themes to fix. When you use the up and down arrow to navigate the help menu, there's a sort of blank spot when you hit the search entry. I posted a patch to GTK+ to make "selectable" a property of GtkMenuItem[2]. Although now I think it's worthwhile for the search entry to be activatable, for full text search activation. I'd just need to have some kind of visual indication. I've ported most of Nautilus to use this API, everything except the preferences dialog. There are minor pain points that I think could be made nicer with some convenience API, like adding a help button to a GtkDialog and changing a help button's tag based on the current tab in a GtkNotebook. Not blockers to me. I just think they'll be common enough cases to be able to do them in one line. I know some people think menus are dead. I don't agree, but it's not really relevant to this proposal. This proposal is about bringing the help closer to the user in the application. The button and menu are just two implementations based on UI paradigms we're using today. We can apply the same principles to other interfaces. GHelp is designed to be generic enough to accommodate different interfaces. [1] http://live.gnome.org/ThreePointThree [2] https://bugzilla.gnome.org/show_bug.cgi?id=662626 -- Shaun _______________________________________________ desktop-devel-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/desktop-devel-list
