← Back to team overview

elementary-dev-community team mailing list archive

Maya backend branch status update

 

My work on Maya taking place in the backend branch is at an advanced
stage. And so I have merged my work into trunk.

I would like to give existing and potential contributors an overview of
the state of Maya...

New features:
* Maya tracks the events in EDS. If you add, update, or remove an event
that is in the current range of the Maya calendar, it will be picked up
by Maya.
* Maya allows you to select and deselect the sources you wish to make
use of. The events for the source will be loaded and unloaded automatically.
* When you switch month or year, the events for the new date range are
loaded. Only the events for the selected sources are loaded.
* Maya has a pretty damn good set of vapi's now, including one for
libical. However only functions actually used have been tested. Many
functions will probably require tweaking.

Future work:
* Consistent formatting of the source code. Currently there are problems
with inconsistent code style and tab/space conventions. I have developed
a solution using uncrustify that I am currently testing.
* Creating basic sources in EDS if they don't exist. I have not tested
what happens if a user starts Maya without previously ever using
Evolution. In this case, the sources might need to be created in the EDS
backend.
* Storing the user's selected sources in saved-state or preferences.
Currently the list of sources that the user has selected are not stored
once Maya is closed.
* Backend support for more EDS features: free-busy, attachments,
recurring events, and so on.

How you can help:
* Improving the source selector. Turn it from a popup dialog into a
popover. Implement adding/removing sources. Design of add/edit source
dialog.
* Rendering actual events on the grid and "sidebar". Implement the
methods tagged TODO in Maya.View.CalendarView: add_event, update_event,
remove_event, remove_all_events. Also get the sidebar working to list
the day's events.
* Get the vapi's properly integrated into EDS. Currently we are using
vala-gen-introspect and vapigen. However, the EDS team have moved to
using gobject-introspection. So contributing back will require adapting
the .metadata files to GIR.

I plan to write up most of the above points into bug/wishlist reports
and blueprints on Launchpad.

Instead of responding to specific points on the mailing list, you might
want to continue the discussion on the appropriate (forthcoming)
Launchpad page!