> I guess that I am halfway to a functioning solution: The right mouse doesn't
> initiate launcher or icon drags, but I can't yet open the quicklist and make
> a selection in one click.
> Josh
>
>
> On Sun, Jan 2, 2011 at 8:12 PM, Sam Spilsbury <
smspillaz@xxxxxxxxx> wrote:
>>
>> On Wed, Dec 29, 2010 at 12:27 PM, Josh Headapohl <
joshhead@xxxxxxxxx>
>> wrote:
>> > Hello, I'm working on bug 688830 in Unity, which is about letting the
>> > user
>> > select a quicklist item with just one right click. Currently, you have
>> > to
>> > let go of the mouse button first or you will just start dragging the
>> > launcher icon. This behavior is annoying and the bug is tagged as
>> > bite-size
>> > so I decided to try to help fix it.
>> > Dieder Roche commented it could be "bitesize with good mentorship," so I
>> > hope I can get a little assistance here in figuring out Unity's
>> > technical
>> > design. Okay, maybe more than the design. :) There's a lot to take in.
>> > I see that when there is an OnMouseDown signal emitted, a Launcher
>> > instance
>> > will handle it, and I can see where later in the chain of method calls,
>> > the
>> > quicklist menu item is created and shown in LauncherIcon::RecvMouseDown.
>> > What I haven't found yet is what sends the OnMouseDown signal in the
>> > first
>> > place.
>> > For example, in Launcher.cpp line 186,
>> > OnMouseDown.connect (sigc::mem_fun (this, &Launcher::RecvMouseDown));
>> > What is OnMouseDown and where is it instantiated? Does it happen outside
>> > of
>> > Unity or am I just overlooking the place where it is created?
>> > I think if I could see a higher level source of input events (or do I
>> > mean
>> > lower?) , if would be easier to see what to do with them further down
>> > the
>> > line.
>>
>> The launcher class has a fairly long inheritance tree:
>>
>> InputArea -> View -> Launcher.
>>
>> InputArea is found in nux/Nux/InputArea.h/cpp . It handles raw events
>> (either from X11 or elsewhere) and makes the OnMouseDown etc signals
>> actually emit () once appropriate events are recieved.
>>
>> I have not looked at this particular code in detail, but I would
>> assume that whatever LauncherIcon::OnMouseDown is connected to
>> handles the quicklist creation, button clicks and dragging - although
>> the code that does the dragging isn't checking which button is
>> actually pressed.
>>
>> Regards,
>>
>> Sam
>>
>> > Also, if it sounds like I'm approaching the whole problem the wrong way,
>> > feel free to point me in a new direction.
>> > Thanks,
>> > Josh
>> >
https://bugs.launchpad.net/unity/+bug/688830
>> > _______________________________________________
>> > Mailing list:
https://launchpad.net/~ayatana-dev
>> > Post to :
ayatana-dev@xxxxxxxxxxxxxxxxxxx
>> > Unsubscribe :
https://launchpad.net/~ayatana-dev
>> > More help :
https://help.launchpad.net/ListHelp
>> >
>> >
>>
>>
>>
>> --
>> Sam Spilsbury
>
>