mirror of
https://github.com/zulip/zulip.git
synced 2025-11-12 18:06:44 +00:00
compose: Allow message_id to be passed to respond_to_message.
Up until now, the currently selected message was the one that was always responded to. Now if there's a message_id passed in, we'll use that message instead, otherwise we'll fall back to the selected message. This is a prep commit for allowing quoting and replying while editing a message sent earlier.
This commit is contained in:
@@ -42,7 +42,8 @@ export function respond_to_message(opts) {
|
||||
}
|
||||
message = message_opts.message;
|
||||
} else {
|
||||
message = message_lists.current.selected_message();
|
||||
message =
|
||||
message_lists.current.get(opts.message_id) || message_lists.current.selected_message();
|
||||
|
||||
if (message === undefined) {
|
||||
// empty narrow implementation
|
||||
|
||||
@@ -263,10 +263,11 @@ test("respond_to_message", ({override, override_rewire, mock_template}) => {
|
||||
type: "private",
|
||||
sender_id: person.user_id,
|
||||
};
|
||||
override(message_lists.current, "selected_message", () => msg);
|
||||
override(message_lists.current, "get", (id) => (id === 100 ? msg : undefined));
|
||||
|
||||
let opts = {
|
||||
reply_type: "personal",
|
||||
message_id: 100,
|
||||
};
|
||||
|
||||
respond_to_message(opts);
|
||||
@@ -286,6 +287,7 @@ test("respond_to_message", ({override, override_rewire, mock_template}) => {
|
||||
stream_id: denmark.stream_id,
|
||||
topic: "python",
|
||||
};
|
||||
override(message_lists.current, "selected_message", () => msg);
|
||||
|
||||
opts = {};
|
||||
|
||||
@@ -319,6 +321,7 @@ test("reply_with_mention", ({override, override_rewire, mock_template}) => {
|
||||
sender_full_name: "Bob Roberts",
|
||||
sender_id: 40,
|
||||
};
|
||||
override(message_lists.current, "get", (_id) => undefined);
|
||||
override(message_lists.current, "selected_message", () => msg);
|
||||
|
||||
let syntax_to_insert;
|
||||
@@ -369,6 +372,7 @@ test("quote_and_reply", ({disallow, override, override_rewire}) => {
|
||||
override_private_message_recipient({override});
|
||||
|
||||
let selected_message;
|
||||
override(message_lists.current, "get", (_id) => undefined);
|
||||
override(message_lists.current, "selected_message", () => selected_message);
|
||||
|
||||
let expected_replacement;
|
||||
|
||||
Reference in New Issue
Block a user