mirror of https://github.com/zulip/zulip.git
hotkey: Add keyboard shortcut to navigate to starred messages view.
This commit adds '*' as a keyboard shortcut to navigate to the starred messages view and the shortcut is documented in various required locations accordingly. Fixes #31397.
This commit is contained in:
parent
5f6045c878
commit
8911347cdb
|
@ -11,6 +11,11 @@
|
||||||
You can also [search your starred messages](/help/search-for-messages)
|
You can also [search your starred messages](/help/search-for-messages)
|
||||||
using the `is:starred` filter.
|
using the `is:starred` filter.
|
||||||
|
|
||||||
|
!!! keyboard_tip ""
|
||||||
|
|
||||||
|
Use <kbd>*</kbd> to view your starred messages.
|
||||||
|
|
||||||
|
|
||||||
{tab|mobile}
|
{tab|mobile}
|
||||||
|
|
||||||
1. Tap the **Starred messages**
|
1. Tap the **Starred messages**
|
||||||
|
|
|
@ -108,6 +108,8 @@ in the Zulip app to add more to your repertoire as needed.
|
||||||
|
|
||||||
* **Go to combined feed**: <kbd>A</kbd> — Shows all unmuted messages.
|
* **Go to combined feed**: <kbd>A</kbd> — Shows all unmuted messages.
|
||||||
|
|
||||||
|
* **Go to starred messages**: <kbd>*</kbd>
|
||||||
|
|
||||||
* **Go to the conversation you are composing to**: <kbd>Ctrl</kbd> + <kbd>.</kbd>
|
* **Go to the conversation you are composing to**: <kbd>Ctrl</kbd> + <kbd>.</kbd>
|
||||||
|
|
||||||
## Composing messages
|
## Composing messages
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import {z} from "zod";
|
import {z} from "zod";
|
||||||
|
|
||||||
import * as blueslip from "./blueslip";
|
import * as blueslip from "./blueslip";
|
||||||
import * as common from "./common";
|
|
||||||
import * as dialog_widget from "./dialog_widget";
|
import * as dialog_widget from "./dialog_widget";
|
||||||
import {$t_html} from "./i18n";
|
import {$t_html} from "./i18n";
|
||||||
import {localstorage} from "./localstorage";
|
import {localstorage} from "./localstorage";
|
||||||
|
@ -23,14 +22,10 @@ let shown_deprecation_notices: string[] = [];
|
||||||
|
|
||||||
export function maybe_show_deprecation_notice(key: string): void {
|
export function maybe_show_deprecation_notice(key: string): void {
|
||||||
let message;
|
let message;
|
||||||
const isCmdOrCtrl = common.has_mac_keyboard() ? "Cmd" : "Ctrl";
|
|
||||||
switch (key) {
|
switch (key) {
|
||||||
case "Shift + C":
|
case "Shift + C":
|
||||||
message = get_hotkey_deprecation_notice("Shift + C", "X");
|
message = get_hotkey_deprecation_notice("Shift + C", "X");
|
||||||
break;
|
break;
|
||||||
case "*":
|
|
||||||
message = get_hotkey_deprecation_notice("*", isCmdOrCtrl + " + S");
|
|
||||||
break;
|
|
||||||
case "Shift + S":
|
case "Shift + S":
|
||||||
message = get_hotkey_deprecation_notice("Shift + S", "S");
|
message = get_hotkey_deprecation_notice("Shift + S", "S");
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -150,7 +150,7 @@ const keydown_either_mappings = {
|
||||||
};
|
};
|
||||||
|
|
||||||
const keypress_mappings = {
|
const keypress_mappings = {
|
||||||
42: {name: "star_deprecated", message_view_only: true}, // '*'
|
42: {name: "open_starred_message_view", message_view_only: true}, // '*'
|
||||||
43: {name: "thumbs_up_emoji", message_view_only: true}, // '+'
|
43: {name: "thumbs_up_emoji", message_view_only: true}, // '+'
|
||||||
61: {name: "upvote_first_emoji", message_view_only: true}, // '='
|
61: {name: "upvote_first_emoji", message_view_only: true}, // '='
|
||||||
45: {name: "toggle_message_collapse", message_view_only: true}, // '-'
|
45: {name: "toggle_message_collapse", message_view_only: true}, // '-'
|
||||||
|
@ -996,6 +996,9 @@ export function process_hotkey(e, hotkey) {
|
||||||
case "open_inbox":
|
case "open_inbox":
|
||||||
browser_history.go_to_location("#inbox");
|
browser_history.go_to_location("#inbox");
|
||||||
return true;
|
return true;
|
||||||
|
case "open_starred_message_view":
|
||||||
|
browser_history.go_to_location("#narrow/is/starred");
|
||||||
|
return true;
|
||||||
case "open_combined_feed":
|
case "open_combined_feed":
|
||||||
browser_history.go_to_location("#feed");
|
browser_history.go_to_location("#feed");
|
||||||
return true;
|
return true;
|
||||||
|
@ -1044,9 +1047,6 @@ export function process_hotkey(e, hotkey) {
|
||||||
case "C_deprecated":
|
case "C_deprecated":
|
||||||
deprecated_feature_notice.maybe_show_deprecation_notice("Shift + C");
|
deprecated_feature_notice.maybe_show_deprecation_notice("Shift + C");
|
||||||
return true;
|
return true;
|
||||||
case "star_deprecated":
|
|
||||||
deprecated_feature_notice.maybe_show_deprecation_notice("*");
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Hotkeys below this point are for the message feed, and so
|
// Hotkeys below this point are for the message feed, and so
|
||||||
|
|
|
@ -171,6 +171,10 @@
|
||||||
<td class="definition">{{t 'Go to combined feed' }}</td>
|
<td class="definition">{{t 'Go to combined feed' }}</td>
|
||||||
<td><span class="hotkey"><kbd>A</kbd></span></td>
|
<td><span class="hotkey"><kbd>A</kbd></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="definition">{{t 'Go to starred messages' }}</td>
|
||||||
|
<td><span class="hotkey"><kbd>*</kbd></span></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="definition">{{t 'Go to the conversation you are composing to' }}</td>
|
<td class="definition">{{t 'Go to the conversation you are composing to' }}</td>
|
||||||
<td><span class="hotkey"><kbd>Ctrl</kbd> + <kbd>.</kbd></span></td>
|
<td><span class="hotkey"><kbd>Ctrl</kbd> + <kbd>.</kbd></span></td>
|
||||||
|
|
|
@ -109,7 +109,7 @@
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="top_left_starred_messages top_left_row hidden-for-spectators">
|
<li class="top_left_starred_messages top_left_row hidden-for-spectators">
|
||||||
<a class="left-sidebar-navigation-label-container" href="#narrow/is/starred">
|
<a class="left-sidebar-navigation-label-container tippy-views-tooltip" href="#narrow/is/starred" data-tooltip-template-id="starred-message-tooltip-template">
|
||||||
<span class="filter-icon">
|
<span class="filter-icon">
|
||||||
<i class="zulip-icon zulip-icon-star-filled" aria-hidden="true"></i>
|
<i class="zulip-icon zulip-icon-star-filled" aria-hidden="true"></i>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -117,6 +117,12 @@
|
||||||
</div>
|
</div>
|
||||||
{{tooltip_hotkey_hints "T"}}
|
{{tooltip_hotkey_hints "T"}}
|
||||||
</template>
|
</template>
|
||||||
|
<template id="starred-message-tooltip-template">
|
||||||
|
<div class="views-tooltip-container">
|
||||||
|
<div>{{t 'Starred messages' }}</div>
|
||||||
|
</div>
|
||||||
|
{{tooltip_hotkey_hints "*"}}
|
||||||
|
</template>
|
||||||
<template id="my-reactions-tooltip-template">
|
<template id="my-reactions-tooltip-template">
|
||||||
<div class="views-tooltip-container" data-view-code="recent_topics">
|
<div class="views-tooltip-container" data-view-code="recent_topics">
|
||||||
<div>{{t 'Reactions to your messages' }}</div>
|
<div>{{t 'Reactions to your messages' }}</div>
|
||||||
|
|
|
@ -13,18 +13,7 @@ const deprecated_feature_notice = zrequire("deprecated_feature_notice");
|
||||||
|
|
||||||
run_test("get_hotkey_deprecation_notice", () => {
|
run_test("get_hotkey_deprecation_notice", () => {
|
||||||
const expected =
|
const expected =
|
||||||
'translated HTML: We\'ve replaced the "*" hotkey with "Ctrl + s" to make this common shortcut easier to trigger.';
|
'translated HTML: We\'ve replaced the "Shift + C" hotkey with "X" to make this common shortcut easier to trigger.';
|
||||||
const actual = deprecated_feature_notice.get_hotkey_deprecation_notice("*", "Ctrl + s");
|
const actual = deprecated_feature_notice.get_hotkey_deprecation_notice("Shift + C", "X");
|
||||||
assert.equal(actual, expected);
|
assert.equal(actual, expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
run_test("get_hotkey_deprecation_notice_mac", () => {
|
|
||||||
navigator.userAgent =
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.167 Safari/537.36";
|
|
||||||
const expected =
|
|
||||||
'translated HTML: We\'ve replaced the "*" hotkey with "Cmd + s" to make this common shortcut easier to trigger.';
|
|
||||||
const actual = deprecated_feature_notice.get_hotkey_deprecation_notice("*", "Cmd + s");
|
|
||||||
assert.equal(actual, expected);
|
|
||||||
// Reset userAgent
|
|
||||||
navigator.userAgent = "";
|
|
||||||
});
|
|
||||||
|
|
Loading…
Reference in New Issue