path: root/plugin
Commit message (Collapse)AuthorAgeFilesLines
* Add currentItem -methodHEADmasterAntti Hölttä2019-08-022-1/+11
| | | | | | | | Add currentItem -method to the attached CursorNavigation property. The method returns the QQuickItem that currently has the cursor. Change-Id: I3b43f819d915280bfab58639ccfb429fdcf818a4 Reviewed-by: Robert Griebl <>
* Add license and copyright informationAntti Hölttä2019-03-1918-0/+702
* Add existing isues as TODOsAntti Hölttä2019-03-184-0/+20
* Fix issue with move-method when using angles greater or equal to 360Antti Hölttä2019-03-181-2/+5
* Little fixes and cleanup, TODOsAntti Hölttä2019-03-184-18/+13
| | | | | Explained some TODOs a bit better. Fixed mismatching tab titles in demo app. Removed unused predefined CursorNavigationCommands.
* Reparenting testAntti Hoelttae2019-03-182-1/+3
* Start tests, basic case pretty completeAntti Hölttä2019-03-181-4/+1
* Add redirect feature for manually fine tuning the cursor's movementAntti Hölttä2019-03-188-31/+193
| | | | | | | | Cursornavigation now has a property redirects, that allows defining exceptions to the navigation behaviour. A redirect allows defining a starting and an ending angle and a target object. If the move command's direction falls between the limits, the algorithm is bypassed and cursor is moved to the target object.
* Bugfix: acceptsCursor should be set to false by default.Antti Hölttä2019-03-181-1/+1
| | | | Otherwise items that are not supposed to get the cursor may receive it.
* Add more features for the demo appAntti Hölttä2019-03-183-9/+6
| | | | | | | | | Add a common cursor indicator item that all navigable items may use for visualizing the cursor. Add a cursor navigable delegate. Make lists more generic by adding a CNItemDelegate. Add CNFlipButton that has flipping animations when used with CursorNavigation. Update Page4 with the new button type.
* Add an alternative list based tabbar to the mainpage, fix page 2 a bitAntti Hölttä2019-03-182-3/+3
* Fix definition of CursorNavigation.hasCursorAntti Hölttä2019-03-181-3/+12
| | | | | An item may now have the cursor on it also if the active focus is last set on one of its non-navigable children.
* Add callbacks for magnitude, moves and actionsAntti Hölttä2019-03-185-131/+153
| | | | | | | | | When cursor is moved, the current item is informed of the actions via callbacks. Eg. when cursor is moved up, the item that had the cursor will have its movedUp signal fired. It is now also possible to inform navigable items over incomplete movement, or the magnitude of the movement. This may be used eg. to make buttons or elements to flip/rotate to indicate that the cursor is about to be moved.
* Add available-function for a cursor navigableAntti Hölttä2019-03-184-12/+25
| | | | | | Availability means that the item first of all accepting cursor, visible, enabled, and within its parent's geometry. This value is meant for the algorithms to define if item is navigable.
* Add demo page with a map and POIs, navigated with a GamepadAntti Hölttä2019-03-181-8/+0
* Simplified the 4 way algorithmAntti Hölttä2019-03-182-52/+24
* cursor trapping and navigation out of a scope works now as intendedAntti Hölttä2019-03-183-4/+29
| | | | | | done by precopying the list of candidates. Could avoid extra list copies if the algorithm traversed the tree, but this is simpler and works for now
* When following focus, set cursor only on items that accept itAntti Hölttä2019-03-181-1/+1
* Cursor now movable only to items that set the acceptsCursor value to trueAntti Hölttä2019-03-182-21/+42
* Add find-functionAntti Hölttä2019-03-186-22/+60
| | | | | | find-function is similar to the move, but instead of moving the cursor, it returns the item that cursor would move to if move was called with the same arguments
* Bugfixes to 360 algorithm, added cooldown for gamepad controlAntti Hölttä2019-03-183-44/+17
| | | | | Joystick produce change events very rapidly and continuously, so a cooldown time is needed so that the cursor wont jump over multiple items
* Add 360 algorithmAntti Hölttä2019-03-1811-110/+415
| | | | | Add algorithm that allows navigation to any direction. Works somewhat well now. Example app has a page with a gamepad/stick support.
* CursorNavigationAttached now implements the control interfaceAntti Hölttä2019-03-185-12/+77
| | | | | | CursorNavigationAttached now implements the functions for moving the cursor and for giving commands. This makes it possible to reassign the control keys, or use other input sources as well
* More on scopes, works to some extent in the test programAntti Hölttä2019-03-1810-121/+150
| | | | | Scope may be entered and escaped. Navigable items may have escape targets defined
* Refactor item registration with scopes in mindAntti Hölttä2019-03-1810-67/+148
| | | | | ItemRegister class removed and items now keep track of their own cursor navigable child items. Navigation happens now only between siblings.
* Bind cursor presence to the current active focusAntti Hölttä2019-03-182-15/+41
* Initial commit, demoable pocAntti Hölttä2019-03-1818-0/+797
Sort of working with 4 dir navigation, check demoapp