PopupApplet and setFocus() behaviour

Dmitry Suzdalev dimsuzkde at gmail.com
Tue Aug 18 09:52:18 CEST 2009


On Tuesday 18 August 2009 02:20:25 Aaron J. Seigo wrote:
> ugly; perhaps we should allow plasmoids to set a keyboard focus widget .. 
> thinks
Yep, but the only workaround I found currently working is this:

- In my KlipperApplet::focusInEvent() call mywidget->setFocus(). This ensures 
focus gets set when clicking on an icon in a panel with mouse. 
Or else I can't get the focus set right while clicking (at least in the ways i 
tried)
- In KlipperApplet::popupEvent() call mywidget->setFocus() too. This ensures 
that focus gets set when invoking popup with a global shortcut assigned to it.
If I'm not calling it here, focus doesn't get set on keyboard invocation of 
the popup.

Yeah, these are workarounds, not very good.

> actually, when a popup occurs, we should probably shift keyboard focus to t
> he 
>  first widget in the keyboard focus chain automatically. then it would simp
> ly be up to you to ensure that the list view is the first item in the tab-
>  switching order :)
Would be nice I think. But we'll need to ensure that focus gets set only after 
d->dialog inside a popupapplet will be activated. Or any other possible 
(temporary or offscreen for ex) widget on the scene. 
That is we don't wont a focusOut event coming to the widget right after we 
told it to focusIn :)

Cheers,
Dmitry.


More information about the Plasma-devel mailing list