Re: Idea: Command search



On 04/13/2011 04:03 PM, Rodrigo Moya wrote:
On Wed, 2011-04-13 at 14:04 +0100, Who wrote:
On Tue, Apr 12, 2011 at 10:32 PM, Mirek M.<mazelm gmail com>  wrote:
Hi everyone,
I realize that plans for Gnome 3.2 are being determined, and I just want to
put an idea out there.
What I'd really love to see in Gnome is command search for every
application, much like Mac OS X has *.
This search should reside in the Application menu, and should, if possible,
also be based on menu items. Developers should, of course, also have the
option of adding commands not available under menus and of adding "tags" to
their commands, to make search more relevant.
Do you think this would be possible? Would there be any major hurdles to
overcome before this can be implemented (besides with applications that
don't use the native GTK menu widget)?
I've been hoping for an API like this for some time, as it would
enable gnome-do/quicksilver/etc integration with applications
themselves.

Workflows like file->save as can be done very elegantly for a power
user by gnome-do style interaction, but it requires integration with
the apps themselves.

My suspicion is that Mac OS uses its accessibility APIs to work with
menus like that - is that an option for GNOME?
it should be right? That is, we have access via ATK to all the apps'
menus

Yes the menus should have ATK support, but:

1) * AFAIU, what you want is doing a search an execute a command. There is no direct API on the ATK framework, unless you want to do this:
       *  Explore all the accessible object hierarchy
* See which objects have a specific action (in this case, I guess that "activate" is the one you want)
       * Search from this list of objects
       * Once the user select a object, execute the action
    * So you could use ATK, but you would require to create and API over it
    * This would be similar to how the testing frameworks use ATK

2) If the accessibility support is not enabled, you don't have the accessible object hierarchy created from the beginning. Although you could ask for a manual creation on this layer that you want to implement, you just need to know the root object that you want to explore.

BR

--
API



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]