Meeting with your mates — Kalendar week 8 (GSoC 2021)

Last week’s large merge request added the ability for Kalendar to add, edit, view and delete todos alongside events. That MR was merged on Friday and you can now play around with it on Kalendar’s master branch!

This week, a lot of time was spent polishing that MR as well as adding a few additions to make it even nicer for you to use todos. A new MR has also been added this week which adds a convenient new feature to the incidence creation process.

Let’s go through what’s new!

Making todo completion more granular and accessible

!12: Add support for more incidence types

Since last week, you were able to create and view new todos and mark them as complete or incomplete from the incidence information drawer. That was nice, but it didn’t offer much granularity over setting exactly how complete a todo was.

This week, the incidence view component now includes a slider that lets you easily change how complete an ongoing todo is. The completion of a todo is also clear and easily visible near the top of the drawer.

Adding support for todo-specific features

!12: Add support for more incidence types

Kalendar now also lets you adjust the priority level of a task. Priority levels will let you quickly see how important a task is, and to manage your schedule in accordance to the importance of different todos. Priority levels can be set on a scale of 1-9 (descending order of importance). This is then presented to you in the information drawer, with a short description of what that priority level means.

Another new feature specific to todos is the ability to create todos without a set due date. This currently makes the todo invisible on Kalendar, as it won’t show up on the currently-supported time-based views… but this will not be the case forever. 😉

Making incidences’ right-click drop-down menus more useful

!12: Add support for more incidence types

Whereas in past weeks right-clicking on an event or todo only presented you with the choices ‘Edit’ and ‘Delete’, the drop-down menu is now a little more useful. Two new options have been added: the first is ‘View’, which opens the information drawer in much the same way that left clicking an incidence would do. On todos, you are also presented with the option to mark the todo as complete or incomplete depending on its status, which should make it easy for you to quickly alter that todo’s status.

Adding a contact picker

!13: Add a contact picker for easy attendee addition

Kalendar’s incidence editor now features a convenient contact picker. You are given the choice of using it when choosing to add new attendees to an incidence, helping you add guests more quickly and easily than doing so manually.

The contact picker features a list of your contacts (including those in your synchronised online accounts), letting you select them, remove them, or search through them as you please. Adding a contact as an attendee is as simple as tapping them, with their addition indicated by a checkmark next to their names. Doing the same on a contact that has already been added will remove them from your attendees.

The contact picker’s user interface is heavily based on the work done by the Plasma Mobile Phonebook team, so a big thanks to them for making such a nice-looking app. 🙂

Coming up next

Remember when I said that those todos without due dates won’t be inaccessible forever? Well, work is ongoing on a todo view that will let you view, edit, and sort through your todos exclusively. Thanks to comments from readers like you, we also have some ideas about new additions we can make to areas such as the information drawer.

Is there anything you’d like to see added to Kalendar? Get in touch! I’m @clau-cambra:kde.org on Matrix.

Ticking this off the todo list — Kalendar week 7 (GSoC 2021)

Last week brought a significant new addition: the schedule view. It, and all of the other features explored in last week’s post, have been added over the course of this week and are now part of the master branch of Kalendar!

  1. !8: Improved event info drawer, event collection editing, attachments
  2. !9: Add undo/redo functionality
  3. !10: Add a schedule view to Kalendar

This week brings a number of smaller visual tweaks and a significant new feature that has involved a lot of wrangling inside Kalendar’s guts. Let’s go through ’em!

Making the incidence editor prettier

!11: Improve appearance of incidence editor

The incidence editor’s has been modified to make it nicer to look at and easier to differentiate between its different sections. The description textarea has been moved to the top, and separators have been added between each of the model-driven sections (attendees, attachments, reminders, and recurrence exceptions).

Additionally, these model-driven sections have been changed to use much more visually attractive Kirigami components.

Tweaks to the calendar views

!10: Add a schedule view to Kalendar (and tweak the month view)

Kalendar’s views have seen some small changes. First, the schedule view: on desktop, the padding on the cards has been reduced in order to present more incidences at once, since on desktop the cursor allows you to click on smaller cards just as precisely.

Additionally, both the schedule and the month view now let you double-click on a date in order to instantly open the event addition window set to the date you double-clicked on. Right-clicking opens a context menu that lets you specify what kind of incidence you’d like to add.

New incidence types

!12: Add support for more incidence types

That’s right! A lot of work has gone into Kalendar this week in order to let you view, edit, and add different types of incidences. Now, you can add todos in addition to events to your calendars. This has meant significant changes under the hood, which should make work to add support for additional types of incidences much more straightforward.

Including new types of incidences has also meant some changes to the UIs of different parts of the application. Event addition buttons are now replaced with menus that let you select the type of incidence you want to add, for example. Both the month and schedule views now show what type of incidence something is alongside its name. The layout and contents of the incidence editor also change depending on what sort of incidence you are adding or modifying. In the case of todos, you can also mark them as complete or incomplete from the incidence information drawer.

This merge request is big, so it is still under review (sorry!) but it should land over the next few days.

Coming up next

Up next will be to finish tailoring the different aspects of Kalendar to accommodate new incidence types. This will include changes to the incidence editor to include support for additional and specific features of todos. Journals will also be added in the next few days.

Also coming up is the addition of a view focused on todos — but more on that when it’s ready. 😉

Is there anything you’d like to see added to Kalendar? Get in touch! I’m @clau-cambra:kde.org on Matrix.

*BZZT* Your 12 o’clock is next on your schedule — Kalendar week 6 (GSoC 2021)

It’s hard to believe, but we are now half-way through Google Summer of Code. Wow, does time fly. 6 weeks ago Kalendar let you view events from your local and online accounts — now, it does a lot more than that!

This week brings quite a few big changes. We don’t have one merge request, but three!! They’re all in the polishing phase, and they each should get merged over the coming days. You can find each of the MRs here:

  1. !8: Improved event info drawer, event collection editing, attachments
  2. !9: Add undo/redo functionality
  3. !10: Add a schedule view to Kalendar

There’s a lot of ground to cover, so let’s get started:

Improving the event information drawer/sidebar

Last week, we introduced the event information component, which appears on the right-hand side of Kalendar’s window. This week, we are adding more information to this component. With these additions, the event information drawer should display all the information you need!

You can now expect to see, on top of what you could already view:

  • Fancy descriptions of the recurrence rules for your chosen event
  • Glanceable icons at the top of the event info describing the type of the event as well as if it recurs or has reminders set
  • Files attached to your calendar event, with clickable names that will open said attachment

That conveniently leads us to…

The event editor’s new capabilities

The event editor has also been upgraded to allow you to add new attachments to or remove existing ones from your chosen calendar event. This is done with a UI that is similar to and consistent with the rest of the things you can add to an event, like reminders or attendees.

Clicking the ‘Add attachment’ button pops up a dialog that, upon file selection, will attach your chosen file to your event.

The event editor now also correctly lets you change an event’s parent calendar, which means you can move an event from one calendar to another even if the event has already been created.

Undo/redo

Several people have asked for some way to prevent potentially destructive actions such as event deletion and modification from being permanent. With MR !9, there is now a way to undo these changes in your calendar with simple undo/redo actions (or the shortcuts you’re used to — CTRL+Z and CTRL+SHIFT+Z). Now you can undo event creations, changes, and deletions… or redo them!

A new view for Kalendar!

Since its creation, Kalendar has supported a month view that provided you with a clean view of all events in a given month, much like a traditional calendar would.

We are now working on a new view that will be able to use alongside the month view. This view is a schedule view.

The schedule view lets you view your current and upcoming events in a simple and attractive list of cards. It opens on the current day so you can see what you need to take care of over the next 24 hours. This will be especially useful for mobile devices, where the month view might be a bit cramped.

The schedule view’s cards contain all the basic information you’ll need to know about these events. Name, time, recurrence, if the event is multi-day — you got it.

You can interact with this view as you’d expect to. Double clicking an empty day opens the event editor so you can quickly create a new event; you can also right-click on a day and create a new event from the context menu.

This view is still under development, and it will take some time to merge. Still, it is quite exciting and I couldn’t help but share on the progress that has been made!

Coming up next

The next big change we are looking forward to is adding support for more calendar items besides events — mainly journals and to-dos. This should make Kalendar a much more versatile productivity tool, though it will require some wrangling behind the scenes to get everything working well.

Is there anything you’d like to see added to Kalendar? Get in touch! I’m @clau-cambra:kde.org on Matrix.