Checklist un-checking - Nested checklists


Imagine this hierarchy for a packing checklist. I’d expect everything here would be a checklist:

  • Packing Lists!
    ** Dad list
    *** Hat
    *** Shirts
    *** Sunglasses
    ** Mom List
    *** Pants
    *** Swimsuit
    ** Kid List
    *** Hat
    *** Snacks

Before a vacation, here would be my expected workflow:

  1. Uncheck everything. Optimally I’d just click next to “packing lists” and uncheck-all.
  2. If Dad isn’t going, I just click the checkbox next to “Dad list”, and boom, his whole list disappears.
  3. Individually for the remaining lists I’d click on specific items.

As things are, there’s no easy way to do step-1, the “Uncheck everything” action. If you selected everything & checked/unchecked-all, it would only uncheck at the top level. The only way (I think) to do this would be to individually select each packing list, check/uncheck all. This makes step-1 into a many step process.

Perhaps we need a “Uncheck-all Cascade Hierarchy” or something like that at the top level of a checkbox tree?

Uncheck All Items in a Checklist on Multiple Indent Levels

I imagine this is optionally linked to the checkbox independence thing. Like there are times I want to make a checkbox item, and add some details that are not checkable things. But sometimes I want some to have checkboxes.

And if I check the root item, I don’t want all the boxes to get checkmarks. Unless, as you propose, the Cascade command is chosen.

Again, make checkable item is one thing. Cascade checkable is another thing.


Yeah, it’s linked to the independence thing.

It’s also linked to how right now, bulk actions behave a bit inconsistently. For commands like bold (Ctrl+B), children items on all levels are affected. For some other commands, like unchecking mentioned by @Dave, only affect top level items. If we make everything consistent, it would at least solve his problem.

The issue is that for some commands, it makes more sense to only affect the first category. Inconsistency sucks though.


What if Select had two modes, deep and shallow? Maybe Shallow select being the new command.


Consistency would be super nice. I really like the idea Alan said which is to just make two types of select. One selects everything at that level, and one selects the entire tree. That would allow all actions to apply shallowly or deeply. That could make sense for styling (bold) as well as things like checkboxes. Not sure what other features might be impacted, which would make this odd… but it feels right :slight_smile:


Yeah, that would be more consistent. The challenge is how to present the two modes – if a dialog or an option pops out each time you do a select, that sounds like too much distraction.

If it’s just personal preference, a global option (select all levels or just top level) would suffice.


How to present: each kind of selection should look different. For example one is a sold box around the items and the other is a hollow box around the selection (or perhaps just around the bullets).


Two shortcuts (initially blank): one selects entire tree; another one selects a level each time it’s invoked.

First shortcut use: first level is selected; second use in sequence: first level (previoulsy selected) and second level (now selected too). And so on.


@Alan: What I meant by the challenge is how does one start making one kind of selection vs another. Sorry if I wasn’t being clear!


Sorry, could you explain a bit more? I understand the first shortcut is like Ctrl+A, what does the second shortcut do? And how can you use them in combination to select only the top-level items?


User can be initially at any node level.

Then shortcut is used for the first time. First level nodes are selected (basis is where caret is positioned. it may or may not be positioned at page root node).

Shortcut is used for the second time in a row. First level nodes remain selected and second level ones are selected too.

And so on.

I’m not sure if it would be of relevance for a use case of someone.


My answer to the second challenge is simply: add a new command or two. I don’t think it’s a high-use thing.


I use a lot of nested checklists for daily/weekly/monthly routines, and would love to have this feature to quickly “reset” the checklists. I am using workarounds just fine, but this would be a timesaver for me.
In addition I also have wanted to have some children items with a box, and others without - so that would also be handy.


Thanks for the pictures, I think I understand it perfectly now.

The shortcut can be called something along the lines of “Select one level deeper”.

Another challenge is that there’s currently no way in Dynalist to select a parent without selecting its children. All the current behaviors assume that when a parent gets selected, its children are selected too. The children are part of the parent in the context of selection. So, we’ll need to go through all the things that relate to selection and make sure they work correctly.

By all the above I don’t mean we’re not doing it, just saying it’s more complicated under the hood than just adding a new shortcut. We’ll have to change a lot of things in order to achieve this, and re-consider some existing behaviors (e.g. should Ctrl+Click select only the parent or the parent plus the children?).


Thanks for your detailed reply.
Probably not a worthwhile effort. In fact my post was just another point of view in respect to selection. Not a thing I hunger. :grinning:


Got it! Best to you too :sunny:


Going back to the original problem though (in regards to worthwhile efforts). I had to print my packing list for my families trip last weekend, because checking all the nested checkboxes (and then unchecking them later) was far too manual of a process.

Perhaps a very simple button to uncheck everything in a document? I don’t know what percentage that’d solve, but it’d at least fix my problem :slight_smile:


Yep, there has been a feature request on specifically that:

If this can fix 80% of the use case by doing 5% of the work, we’ll prioritize that.


Wait, can’t you do this already? Select already gets the top level and everything below it no?


Visually everything is selected, but if you uncheck, only the top level items are unchecked. They want a way to uncheck every single item under item.