Browse Source

Merge pull request #14913 from poke1024/tooltip-shortcut-names

Consistent display of shortcut names in tooltips
Rémi Verschelde 7 năm trước cách đây
mục cha
commit
3068ccc8e6
2 tập tin đã thay đổi với 5 bổ sung5 xóa
  1. 1 1
      editor/plugins/canvas_item_editor_plugin.cpp
  2. 4 4
      scene/gui/base_button.cpp

+ 1 - 1
editor/plugins/canvas_item_editor_plugin.cpp

@@ -4100,7 +4100,7 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) {
 	select_button->connect("pressed", this, "_tool_select", make_binds(TOOL_SELECT));
 	select_button->set_pressed(true);
 	select_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/select_mode", TTR("Select Mode"), KEY_Q));
-	select_button->set_tooltip(TTR("Select Mode") + " $sc\n" + keycode_get_string(KEY_MASK_CMD) + TTR("Drag: Rotate") + "\n" + TTR("Alt+Drag: Move") + "\n" + TTR("Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving).") + "\n" + TTR("Alt+RMB: Depth list selection"));
+	select_button->set_tooltip(keycode_get_string(KEY_MASK_CMD) + TTR("Drag: Rotate") + "\n" + TTR("Alt+Drag: Move") + "\n" + TTR("Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving).") + "\n" + TTR("Alt+RMB: Depth list selection"));
 
 	move_button = memnew(ToolButton);
 	hb->add_child(move_button);

+ 4 - 4
scene/gui/base_button.cpp

@@ -450,11 +450,11 @@ String BaseButton::get_tooltip(const Point2 &p_pos) const {
 
 	String tooltip = Control::get_tooltip(p_pos);
 	if (shortcut.is_valid() && shortcut->is_valid()) {
-		if (tooltip.find("$sc") != -1) {
-			tooltip = tooltip.replace_first("$sc", "(" + shortcut->get_as_text() + ")");
-		} else {
-			tooltip += " (" + shortcut->get_as_text() + ")";
+		String text = shortcut->get_name() + " (" + shortcut->get_as_text() + ")";
+		if (shortcut->get_name().nocasecmp_to(tooltip) != 0) {
+			text += "\n" + tooltip;
 		}
+		tooltip = text;
 	}
 	return tooltip;
 }