nextcloud / deck

🗂 Kanban-style project & personal management tool for Nextcloud, similar to Trello
https://apps.nextcloud.com/apps/deck
GNU Affero General Public License v3.0
1.2k stars 273 forks source link

Mark cards as `done` automatically when dragging into list #5485

Open stefan-niedermann opened 8 months ago

stefan-niedermann commented 8 months ago

How to use GitHub

Is your feature request related to a problem? Please describe. Deck 1.12.0 introduced a done state for cards which can be set or unset manually.

Describe the solution you'd like In many™ scenarios the lists represent some kind of workflow (ToDo / WiP / Done), for example when Deck is used as a Kanban board. In this case, it would be convenient to be able to mark cards as done automatically when dragging a card in the last list. There are three options that came to my mind:

  1. Configure per list, whether a card gets marked as done when dragging it into the list a) Optionally also configure whether the cards gets marked as undone when dragging it into another (or a "lower" list)
  2. Configure per board whether a card which gets dragged into the "last" list gets marked as done automatically a) Optionally allow selecting lists which behave this way, in case the last list represents some kind of blocked state b) Optionally also configure undone when leaving the list
  3. For the sake of completeness: Configure 2.) per user (does not make sense in my opinion)

No matter which solution, it must™ be synchronizable via the REST API to allow the Deck Android app to behave the same way - a user would simply expect this.

Describe alternatives you've considered The Deck Android app could do this without synchronization, users would be disappointed that the behavior is inconsistent.

cc @nextcloud/designers @nextcloud/designers-community

putt1ck commented 8 months ago

From a PM/workflow perspective I'd favour option 1. A not uncommon workflow has a "done" state which means "considered functionally complete" from a development/contractual perspective but still requires end user/customer sign-off, and that would be the last list on the board.

Additional: "last" is not an absolute - while people who write LTR, last is right-most but for people whose native language is RTL, last could be seen as left-most.

stefan-niedermann commented 8 months ago

Additional: "last" is not an absolute - while people who write LTR, last is right-most but for people whose native language is RTL, last could be seen as left-most.

I used the term last on purpose for this reason 🙂 Let's define last in this issue as "The list with the highest order property, in LTR the most right, in RTL the most left list". I think the intention is clear 👍

tucker-m commented 8 months ago

From a PM/workflow perspective I'd favour option 1. A not uncommon workflow has a "done" state which means "considered functionally complete" from a development/contractual perspective but still requires end user/customer sign-off, and that would be the last list on the board.

I agree with this; I feel like option 1 would cover nearly everyone's needs. Such as: