This function is used by custom widget implementations; if you're writing an app, you’d use grab_focus to move the focus to a particular widget, and set_focus_chain to change the focus tab order.
So you may want to investigate those functions instead.
child_focus is called by containers as the user moves around the window using keyboard shortcuts.
direction
indicates what kind of motion is taking place (up, down, left, right, tab forward, tab backward).
child_focus emits the focus signal; widgets override the default handler for
this signal in order to implement appropriate focus behavior.
The default focus handler for a widget should return true
if moving in direction
left the focus on a focusable location inside that widget, and
false if moving in direction
moved the focus outside the widget. If returning true
, widgets normally call grab_focus to place the focus accordingly; if returning
false, they don’t modify the current focus location.
this |
a Widget |
direction |
direction of focus movement |
true if focus ended up inside this |