slint/sixtyfps_compiler/tests/syntax/focus/initial_focus_non_input.60
2021-08-17 22:38:16 +02:00

40 lines
1.1 KiB
Text

/* LICENSE BEGIN
This file is part of the SixtyFPS Project -- https://sixtyfps.io
Copyright (c) 2021 Olivier Goffart <olivier.goffart@sixtyfps.io>
Copyright (c) 2021 Simon Hausmann <simon.hausmann@sixtyfps.io>
SPDX-License-Identifier: GPL-3.0-only
This file is also available under commercial licensing terms.
Please contact info@sixtyfps.io for more information.
LICENSE END */
X := Rectangle {
forward-focus: someRect;
// ^error{element is not focusable}
callback trigger_focus_change();
trigger_focus_change => {
someRect.focus();
// ^error{focus\(\) can only be called on focusable elements}
}
indirect_focus_chain_rect := Rectangle {
forward-focus: someRect;
// ^error{element is not focusable}
}
callback trigger_focus_change_2();
trigger_focus_change_2 => {
indirect_focus_chain_rect.focus();
// ^error{focus\(\) can only be called on focusable elements}
}
someRect := Rectangle {}
someFocusScope := FocusScope {}
callback activate_focus_scope();
activate_focus_scope => {
someFocusScope.focus(); // OK!
}
}