marcusolsson / obsidian-projects

Plain text project planning in Obsidian

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Calendar: click-and-drag interaction

Acylation opened this issue · comments

What would you like to be added?

The Full-Calendar plugin provides a good exmaple. By simply select the ranges in the table, users are allowed to batch create normal notes.

Calendar.-.ObsidianLib.-.Obsidian.v1.1.9.2022-12-30.10-57-57_1.mp4

However, to further improve the experience, if the feature applied, change the behavior of "Drag vertically" from creating tasks from the start day to the end day, like what it does in the video, but apply this to select a vertical range, to create task every specified weekdays. In brief, a range selection like spread sheet is expected.

After triggering the modal, user would batch create notes, or create a recursive task (#69)

Why is this needed?

High efficiency.

Looking at this, I'm curious to learn how the integration of custom view into Projects works? So we can just plug the view of FullCalendar into Projects

While I like the idea, this feels like a feature for more advanced users? I'm thinking it may be out of scope for now. Of course, if enough users vote for this, I'll consider it.

Looking at this, I'm curious to learn how the integration of custom view into Projects works? So we can just plug the view of FullCalendar into Projects

@andrey-jef Here's how the dbfolder plugin realizes it. There are also commits for further support in the repo. RafaelGB/obsidian-db-folder@b58bcd6

Seems like much work needs to be done before we can integrate the full-calendar plugin as a view. For now, since the full-calendar plugin also uses YAML metadata as the data source, there's no conflict between the two plugins. We can just include all the required headers in the same note, then use both plugins to manage.
davish/obsidian-full-calendar#176

For this issue, just to clarify, I intended to introduce "range selection by drag" as a new interaction design, and not that related to the full-calendar plugin actually.

For this issue, just to clarify, I intended to introduce "range selection by drag" as a new interaction design, and not that related to the full-calendar plugin actually.

That's what I understood it as. My initial goal for the Calendar view is to have basic feature parity with calendars that most users are familiar with, for example Google Calendar and Apple Calendar. When I said that it seems to be a feature for advanced users, I was referring to batch editing rather than the selection itself.

Also, the click-and-drag action in most calendars lets you create multi-day events, which I think is something we want to do at some point. Instead of selecting days, you might also want to select the events as well. I think this needs some design work before we can commit to this.

Other than FullCalendar, I can't really seem to find any other calendar that lets you batch edit calendar events. Would've been nice for inspiration :)

Oh! Sorry for the confusion. Not until I actually tried out the full-calendar plugin did I notice that the "click-and-drag" action will create multi-day events and has nothing to do with the batch operation.

My initial goal for the Calendar view is to have basic feature parity with calendars that most users are familiar with, for example Google Calendar and Apple Calendar.

Providing users with a common and familiar feature, rather than a new design, will certainly get a better UX. Therefore I would change the title to "click-and-drag interaction". Additionally, for a multi-day event, an additional field is required to describe the start-end or start-lasts relationship, and this needs to be well-designed. The batch operation seems indeed out of the scope of this plugin, it should be discussed in a professional calendar plugin instead.

Multi-day events should definitely be supported! Click and drag is a common interaction pattern for this, which I fully support! 👌