add keystrokes for exiting reply view

This commit is contained in:
vd
2026-10-09 23:09:44 +02:00
parent 6ef6996522
commit 94697f5876
5 changed files with 87 additions and 81 deletions
+4 -1
View File
@@ -5150,6 +5150,8 @@
this.registerKeyStroke("backspace" /* CloseOrCancel */, () => { this.registerKeyStroke("backspace" /* CloseOrCancel */, () => {
if (this.isFilterModalOpen.value == true) { if (this.isFilterModalOpen.value == true) {
this.hideFilterModal(); this.hideFilterModal();
} else if (this.replyViewSelectedMessage.value != void 0) {
this.resetReplyView();
} else { } else {
this.replyingMessage.value = void 0; this.replyingMessage.value = void 0;
} }
@@ -7289,7 +7291,8 @@
{ {
class: "ghost", class: "ghost",
"on:click": messagePageViewModel.resetReplyView, "on:click": messagePageViewModel.resetReplyView,
"toggle:hidden": messagePageViewModel.isReplyViewInactive "toggle:hidden": messagePageViewModel.isReplyViewInactive,
ctkeystroke: getKeySymbol("backspace" /* CloseOrCancel */)
}, },
/* @__PURE__ */ createElement("span", { class: "icon" }, "arrow_back") /* @__PURE__ */ createElement("span", { class: "icon" }, "arrow_back")
), /* @__PURE__ */ createElement( ), /* @__PURE__ */ createElement(
Vendored
+1 -1
View File
@@ -1,4 +1,4 @@
const VERSION = "2610 Beta 26" const VERSION = "2610 Beta 27"
function processUrl(event) { function processUrl(event) {
const url = event.request.url; const url = event.request.url;
+1 -1
View File
@@ -1 +1 @@
2610 Beta 26 2610 Beta 27
+78 -77
View File
@@ -111,83 +111,84 @@ export function MessagePage(
on:click={messagePageViewModel.resetReplyView} on:click={messagePageViewModel.resetReplyView}
toggle:hidden={ toggle:hidden={
messagePageViewModel.isReplyViewInactive messagePageViewModel.isReplyViewInactive
} }
> ctkeystroke={getKeySymbol(CommonKeys.CloseOrCancel)}
<span class="icon">arrow_back</span> >
</button> <span class="icon">arrow_back</span>
<span </button>
class="title ellipsis width-100 flex" <span
subscribe:innerText={title} class="title ellipsis width-100 flex"
></span> subscribe:innerText={title}
<span> ></span>
<button <span>
class="ghost inset-outline" <button
on:click={messagePageViewModel.showFilterModal} class="ghost inset-outline"
aria-label={ on:click={messagePageViewModel.showFilterModal}
coreViewModel.translations.chatPage.message aria-label={
.filterMessagesButtonAudioLabel coreViewModel.translations.chatPage.message
} .filterMessagesButtonAudioLabel
toggle:selected={ }
messagePageViewModel.isFilterActive toggle:selected={
} messagePageViewModel.isFilterActive
ctkeystroke={getKeySymbol(CommonKeys.Filter)} }
> ctkeystroke={getKeySymbol(CommonKeys.Filter)}
<span class="icon">filter_alt</span> >
</button> <span class="icon">filter_alt</span>
</span> </button>
</div> </span>
<div class="content"> </div>
{messageContainer} <div class="content">
<div id="composer"> {messageContainer}
<div class="content-width-constraint"> <div id="composer">
<div <div class="content-width-constraint">
class="reply-preview-wrapper" <div
children:set={replyPreview} class="reply-preview-wrapper"
></div> children:set={replyPreview}
<div class="input-width-constraint"> ></div>
<input <div class="input-width-constraint">
id="focused" <input
class="blur" id="focused"
bind:value={ class="blur"
messagePageViewModel.composingMessage bind:value={
} messagePageViewModel.composingMessage
on:enter={ }
messagePageViewModel.sendMessage on:enter={
} messagePageViewModel.sendMessage
placeholder={ }
coreViewModel.translations.chatPage placeholder={
.message coreViewModel.translations.chatPage
.composerInputPlaceholder .message
} .composerInputPlaceholder
></input> }
<button ></input>
class="primary blur" <button
aria-label={ class="primary blur"
coreViewModel.translations.chatPage aria-label={
.message coreViewModel.translations.chatPage
.sendMessageButtonAudioLabel .message
} .sendMessageButtonAudioLabel
on:click={ }
messagePageViewModel.sendMessage on:click={
} messagePageViewModel.sendMessage
toggle:disabled={ }
messagePageViewModel.cannotSendMessage toggle:disabled={
} messagePageViewModel.cannotSendMessage
> }
<span class="icon">send</span> >
</button> <span class="icon">send</span>
</div> </button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div>
{MessageFilterModal( {MessageFilterModal(
coreViewModel, coreViewModel,
messagePageViewModel, messagePageViewModel,
ChatMessageViewModelToView, ChatMessageViewModelToView,
)} )}
</div> </div>
); );
} }
+3 -1
View File
@@ -245,7 +245,9 @@ export default class MessagePageViewModel extends Context {
this.registerKeyStroke(CommonKeys.CloseOrCancel, () => { this.registerKeyStroke(CommonKeys.CloseOrCancel, () => {
if (this.isFilterModalOpen.value == true) { if (this.isFilterModalOpen.value == true) {
this.hideFilterModal(); this.hideFilterModal();
} else { } else if (this.replyViewSelectedMessage.value != undefined) {
this.resetReplyView();
} else {
this.replyingMessage.value = undefined; this.replyingMessage.value = undefined;
} }
}); });