aboutsummaryrefslogtreecommitdiffstats
path: root/plugin/cursornavigation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/cursornavigation.cpp')
-rw-r--r--plugin/cursornavigation.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/plugin/cursornavigation.cpp b/plugin/cursornavigation.cpp
index 00a1af0..e2b5856 100644
--- a/plugin/cursornavigation.cpp
+++ b/plugin/cursornavigation.cpp
@@ -134,9 +134,6 @@ CursorNavigationAttached *CursorNavigation::qmlAttachedProperties(QObject *objec
QQuickItem *item = static_cast<QQuickItem *>(object);
- // TODO: what if an object, with an already attached object, gets reparented (say, in another window?)
- // with or without a focus system.
-
qWarning() << "Created a new CN attachment";
return new CursorNavigationAttached(item);
}
@@ -227,6 +224,14 @@ void CursorNavigation::registerItem(CursorNavigationAttached* item)
m_rootItem->m_children.append(item);
item->m_parentNavigable=m_rootItem;
}
+
+ /* TODO reparenting from window to another kind of works, but reparenting
+ * within a window not so well. problems arise when reaprenting items
+ * contained in an item that is also navigable. for this to work, we would
+ * need to detect all parent changes, including items non navigable parents
+ * and grandparents, and reorganize the internal tree when needed.
+ * For now, consider reparenting as not recommended
+ */
}
void CursorNavigation::unregisterItem(CursorNavigationAttached* item)
@@ -238,7 +243,6 @@ void CursorNavigation::unregisterItem(CursorNavigationAttached* item)
if (item->m_parentNavigable)
item->m_parentNavigable->m_children.removeOne(item);
- //TODO if the item that is being unregistered has children, they should be reassigned to the item's parent
}
CursorNavigationAttached *CursorNavigation::defaultItem()