[GSoC 2017] Calendar Application: Weekly Report 7
In this post I would be focusing on the work done in the past two weeks.
I worked on Google Calendar integration and general improvements and bug fixes in the Calendar App. I also worked on implementing a relative datetime formatter and general enhancements/bug fixes involving the Haiku locale kit.
Fetching events using Google Calendar API and syncing with the database works now. There are issues with sending JSON data in an http post request, which always results in a parse error in the API response, as a result of which adding/updating events to Google Calendar doesn't work currently. I would be working to fix the same over the next few days. Deleting events from Google Calendar works fine.
Currently there is no DateTimeEdit widget. Time preferences has separate DateEdit and TimeEdit widgets implemented. I would look into incorporating the same or work on a DateTimeEdit widget having a calendar pop-up. Currently I have implemented a temporary solution which provides a Calendar pop-up to select dates and a simple text control where the time can be entered in 24-hour(HH:mm) format. Parsing of the entered text is done using time parser implemented in BTimeFormat, and results into 00:00 in case of error.
I also did some initial work on an Agenda view and improving event notifications, but both of them required a Relative DateTime formatter, so implemented one for Haiku as a part of locale kit.
The toolbar icons are just placeholder icons. Icons for the same are welcome. (Something on this line Day View Mockup ) Also improved icon for the main application icon are welcome.
These are two videos I recorded while testing the Google Calendar integration
in the app. It shows the entire flow from authorizing the app to access data from
Google Calendar to the events being synced and displayed in the app.
Github Repo: AkshayAgarwal007/Calendar
- Implemented a Relative DateTime formatter. This takes in a time_t
value and gives a formatted string such as '2 hours ago', 'in 2 hours',
relative to the current time.
- Wrote tests for BRelativeDateTimeFormat, fixed bugs in tests for
BDateFormat/BDateTimeFormat, and added test cases for changes I made in
BDurationFormat earlier this summer. In the process I got familiar with how
unit testing is done in Haiku.
- I worked on parts of the existing codebase to make use of locale kit
for doing relative datetime formatting. For e.g the Web+ downloads Window
doesn't make use of it completely. This is still under progress.
Thanks to PulkoMandy for his help in all the patches I submitted.
Thanks for reading.
- Haiku monthly activity report - 08/2017
- [GSoC 2017] Calendar Application: Final Report
- [GSoC 2017] Porting Swift to Haiku - Final Report
- [GSoC 2017] Preferences GUI Refactoring - Final Report
- [GSoC 2017] Calendar Application: Weekly Report 7
- [GSOC 2017 - TCP optimization and fine tuning] Final Report
- [GSoC 2017] Preferences GUI Refactoring - Weekly Report 6
- [GSoC 2017 - BTRFS write supports] Third coding period - Final recap
- [GSoC 2017] Porting Swift to Haiku - Week #9 / #10