From dce6e0954d0f1e767b7c9dafd538541ceaee8412 Mon Sep 17 00:00:00 2001
From: Stephen Blott
Date: Thu, 4 Jun 2015 06:04:42 +0100
Subject: Help page, use separate row for long bindings.
If there are many bindings for a command, then the column layout on the
help page can become out of whack. This commit puts such bindings on a
separate table row which spans all three columns.
(Many bindings for a single command are more likely in light of #1697.)
---
background_scripts/main.coffee | 27 ++++++++++++++++++---------
1 file changed, 18 insertions(+), 9 deletions(-)
(limited to 'background_scripts')
diff --git a/background_scripts/main.coffee b/background_scripts/main.coffee
index 980f8e18..0d56e54d 100644
--- a/background_scripts/main.coffee
+++ b/background_scripts/main.coffee
@@ -149,17 +149,26 @@ helpDialogHtmlForCommandGroup = (group, commandsToKey, availableCommands,
bindings = (commandsToKey[command] || [""]).join(", ")
if (showUnboundCommands || commandsToKey[command])
isAdvanced = Commands.advancedCommands.indexOf(command) >= 0
- html.push(
- "
",
- "| ", Utils.escapeHtml(bindings), " | ",
- ": | ", availableCommands[command].description)
-
- if (showCommandNames)
- html.push("(#{command})")
-
- html.push(" |
")
+ description = availableCommands[command].description
+ if bindings.length < 12
+ helpDialogHtmlForCommand html, isAdvanced, bindings, description, showCommandNames, command
+ else
+ # If the length of the bindings is too long, then we display the bindings on a separate row from the
+ # description. This prevents the column alignment from becoming out of whack.
+ helpDialogHtmlForCommand html, isAdvanced, bindings, "", false, ""
+ helpDialogHtmlForCommand html, isAdvanced, "", description, showCommandNames, command
html.join("\n")
+helpDialogHtmlForCommand = (html, isAdvanced, bindings, description, showCommandNames, command) ->
+ html.push ""
+ if description
+ html.push "| ", Utils.escapeHtml(bindings), " | "
+ html.push "#{if description and bindings then ':' else ''} | ", description
+ html.push("(#{command})") if showCommandNames
+ else
+ html.push " | ", Utils.escapeHtml(bindings)
+ html.push(" |
")
+
#
# Fetches the contents of a file bundled with this extension.
#
--
cgit v1.2.3