Cleanup kube component structure
Closed, ResolvedPublic

Description

We currently have
components/accounts/*
components/mailviewer/qml/*
components/package/contents/ui/*
components/mail/contents/ui/main.qml

installed as:
install(FILES qmldir DESTINATION ${QML_INSTALL_DIR}/org/kube/components)
install(DIRECTORY package/contents/ui/ DESTINATION ${QML_INSTALL_DIR}/org/kube/components)
install(DIRECTORY mailviewer/qml/ DESTINATION ${QML_INSTALL_DIR}/org/kube/mailviewer)
install(DIRECTORY accounts/ DESTINATION ${QML_INSTALL_DIR}/org/kube/accounts)

We should restructure it so:

  • We have a Kube.Mail component that can be loaded from tests as well.
  • We have one mail.qml that is mostly empty except instantiating the Kube.Mail component
  • Mailviewer and accounts become components (with the same directory structure)
cmollekopf moved this task from Backlog to 0.1 on the Kube board.Feb 21 2017, 12:38 PM
cmollekopf edited projects, added Kube (0.1); removed Kube.
cmollekopf moved this task from Backlog to In Progress on the Kube (0.1) board.Feb 21 2017, 12:49 PM

so in the end we will have:

  • components/accounts
  • components/mail
  • components/people
  • components/..

?

We kept mailviewer as a seperate component so that we could eventually share it with kdepim. I guess that is not relevant anymore?

cmollekopf moved this task from In Progress to Done on the Kube (0.1) board.Feb 21 2017, 2:32 PM

I don't think there are any concrete plans to share components with any other application. IMO it wouldn't make much sense as they are per definition Kube/Sink specific. If there is a desire to do so at some point we can of course revisit that aspect, but no need to plan for that now.

What the components exactly will be I don't know yet but I guess we'll have higherlevel and lowerlevel components. A high level component would be the mail component that is embedded in the "kube" or "main" component that ties everything together. A lower-level component could be the calendar-view itself (not the complete organizer component) or the contact or mail viewer. Having the mailviewer as separate component is probably not necessary right now but could eventually become interesting for alternative mailviewers... Let's just leave it for the time being.

cmollekopf closed this task as Resolved.Feb 22 2017, 3:00 PM
cmollekopf claimed this task.