Hi everyone,
First of all, I want to say how much I love Drafts and its incredibly powerful Action system. The ability to customize workflows through Actions has completely transformed how I write and format my notes.
As my collection of formatting Actions has grown (bold, italic, underline, headings, toggles, callouts, code blocks, etc.), I’ve run into a limitation: the single-row Action Bar above the keyboard on iOS can only display a limited number of Actions at once.
Feature request: Would it be possible to add an option to display the Action Bar on 2 rows instead of 1?
This would allow power users who rely on many formatting Actions to have quick access to more of them without having to scroll horizontally or use the full Actions list.
I imagine this could be:
I understand this might affect screen real estate for the editor, but having it as an opt-in option would give users the choice.
Has anyone else felt the need for this? I’d love to hear your thoughts!
Thanks for considering this, and keep up the amazing work on Drafts! 
Honestly, not sure about a two row Action Bar, for a number of reasons…but I can give you some power user tips that might improve your experience using it considerably. These mostly apply to iPhone usage, as it is usually easier on iPad (with keyboard) or Mac to use the Command Palette or setup keyboard shortcuts for actions.
- Setup multiple action groups you use for the action bar (that map to the “rows” you would want in a multi-row bar).
- Turn off action bar visibility for action groups that don’t make sense in the action bar, so you only have a few available in the selection menu. Makes it easier to switch between them quickly.
- In addition to the menu at left to select the active group in the bar, you can swipe up and down on the bar to switch groups quickly.
- You can also access any action in a group that is active for use in the bar without switching the group loaded in the bar by long-pressing the down-arrow dismiss button at right to get a menu of actions.
Thank you so much for taking the time to share these tips — I really appreciate it!
I wasn’t aware of the vertical swipe gesture to switch between action groups, and I think that might be exactly what I was looking for. Combined with organizing a few dedicated groups for the action bar, this should give me the quick access I need without requiring a UI change.
I’m going to give it a try and reorganize my groups accordingly. Thanks again for the helpful suggestions!
You can also combine a series of less frequently used actions under one button on the action bar. This is useful for example on an iPad without an external keyboard.
// Choose action to perform using a prompt
const buttonNames =
("🔗 Link|𝒾 Italicise|— Strike|☑ Make Tasks|< Move Left|> Move Right|" +
"↦ Indent|↤ Outdent|↥ Move Line Up|↧ Move Line Down").split("|");
let p = new Prompt();
p.title = "Act";
p.message = "Choose action to perform:";
buttonNames.forEach(name => p.addButton(name));
let splitRE = /^(?<symbol>.) (?<verb>.*)$/u;
while (true) {
if (!p.show()) break;
let { symbol, verb } = p.buttonPressed.match(splitRE).groups;
let action = Action.find(verb);
if (action) app.queueAction(action, draft);
else
throw new Error(
`Unimplemented: button="${p.buttonPressed}" symbol=${symbol} verb="${verb}"`
);
if (!verb.startsWith("Move")) break;
}
editor.activate();
Thanks for sharing this approach! The pattern with Action.find() is clever, and I especially like the while(true) loop that keeps the prompt open for Move actions — very practical for repetitive operations.
For my current use case, I’ve found that the vertical swipe to switch between action groups works well enough — it’s one less tap than opening a menu. But I’ll definitely keep this combined-action pattern in mind for other situations, like grouping rarely-used utilities or building context-specific toolboxes.
Appreciate the idea!
Best regards
1 Like