diff --git a/src/main.tsx b/src/main.tsx index 02c0b498..5942b679 100644 --- a/src/main.tsx +++ b/src/main.tsx @@ -8,7 +8,7 @@ import dayjs from 'dayjs' import {If, For, When, Otherwise, Choose} from "tsx-control-statements/components"; import cn from "classnames" import {TermWrap} from "./term"; -import type {SessionDataType, LineType, CmdDataType, RemoteType, RemoteStateType, RemoteInstanceType, RemotePtrType, HistoryItem} from "./types"; +import type {SessionDataType, LineType, CmdDataType, RemoteType, RemoteStateType, RemoteInstanceType, RemotePtrType, HistoryItem, HistoryQueryOpts} from "./types"; import localizedFormat from 'dayjs/plugin/localizedFormat'; import {GlobalModel, GlobalCommandRunner, Session, Cmd, Window, Screen, ScreenWindow, riToRPtr} from "./model"; @@ -547,6 +547,22 @@ class TextAreaInput extends React.Component<{}, {}> { let opts = mobx.toJS(inputModel.historyQueryOpts.get()); opts.includeMeta = !opts.includeMeta; inputModel.setHistoryQueryOpts(opts); + return; + } + if (e.code == "KeyR" && (e.getModifierState("Meta") && !e.getModifierState("Shift"))) { + console.log("meta-r"); + e.preventDefault(); + let opts = mobx.toJS(inputModel.historyQueryOpts.get()); + if (opts.limitRemote) { + opts.limitRemote = false; + opts.limitRemoteInstance = false; + } + else { + opts.limitRemote = true; + opts.limitRemoteInstance = true; + } + inputModel.setHistoryQueryOpts(opts); + return; } if (e.code == "Tab") { e.preventDefault(); @@ -602,6 +618,9 @@ class TextAreaInput extends React.Component<{}, {}> { displayLines = 5; } let disabled = inputModel.historyShow.get(); + if (disabled) { + displayLines = 1; + } return (