mirror of
https://github.com/zulip/zulip.git
synced 2025-11-11 09:27:43 +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;
|
message = message_opts.message;
|
||||||
} else {
|
} else {
|
||||||
message = message_lists.current.selected_message();
|
message =
|
||||||
|
message_lists.current.get(opts.message_id) || message_lists.current.selected_message();
|
||||||
|
|
||||||
if (message === undefined) {
|
if (message === undefined) {
|
||||||
// empty narrow implementation
|
// empty narrow implementation
|
||||||
|
|||||||
@@ -263,10 +263,11 @@ test("respond_to_message", ({override, override_rewire, mock_template}) => {
|
|||||||
type: "private",
|
type: "private",
|
||||||
sender_id: person.user_id,
|
sender_id: person.user_id,
|
||||||
};
|
};
|
||||||
override(message_lists.current, "selected_message", () => msg);
|
override(message_lists.current, "get", (id) => (id === 100 ? msg : undefined));
|
||||||
|
|
||||||
let opts = {
|
let opts = {
|
||||||
reply_type: "personal",
|
reply_type: "personal",
|
||||||
|
message_id: 100,
|
||||||
};
|
};
|
||||||
|
|
||||||
respond_to_message(opts);
|
respond_to_message(opts);
|
||||||
@@ -286,6 +287,7 @@ test("respond_to_message", ({override, override_rewire, mock_template}) => {
|
|||||||
stream_id: denmark.stream_id,
|
stream_id: denmark.stream_id,
|
||||||
topic: "python",
|
topic: "python",
|
||||||
};
|
};
|
||||||
|
override(message_lists.current, "selected_message", () => msg);
|
||||||
|
|
||||||
opts = {};
|
opts = {};
|
||||||
|
|
||||||
@@ -319,6 +321,7 @@ test("reply_with_mention", ({override, override_rewire, mock_template}) => {
|
|||||||
sender_full_name: "Bob Roberts",
|
sender_full_name: "Bob Roberts",
|
||||||
sender_id: 40,
|
sender_id: 40,
|
||||||
};
|
};
|
||||||
|
override(message_lists.current, "get", (_id) => undefined);
|
||||||
override(message_lists.current, "selected_message", () => msg);
|
override(message_lists.current, "selected_message", () => msg);
|
||||||
|
|
||||||
let syntax_to_insert;
|
let syntax_to_insert;
|
||||||
@@ -369,6 +372,7 @@ test("quote_and_reply", ({disallow, override, override_rewire}) => {
|
|||||||
override_private_message_recipient({override});
|
override_private_message_recipient({override});
|
||||||
|
|
||||||
let selected_message;
|
let selected_message;
|
||||||
|
override(message_lists.current, "get", (_id) => undefined);
|
||||||
override(message_lists.current, "selected_message", () => selected_message);
|
override(message_lists.current, "selected_message", () => selected_message);
|
||||||
|
|
||||||
let expected_replacement;
|
let expected_replacement;
|
||||||
|
|||||||
Reference in New Issue
Block a user