serenity/Userland/Applications/TerminalSettings/TerminalSettingsMain.gml
Ali Mohammad Pur 54ab6fe5b9 LibVT+Everywhere: Introduce 'automarks' and 'clear previous command'
Automarks are similar to bookmarks placed by the terminal, allowing the
user to selectively remove a single command and its output from the
terminal scrollback.
This commit implements a single way to add marks: automatically placing
them when the shell becomes interactive.

To make sure the shell behaves correctly after its expected prompt
position changes, the terminal layer forces a resize event to be passed
to the shell on such (possibly) partial clears; this also has the nice
side effect of fixing the disappearing prompt on the preexisting "clear
including history" action: Fixes #4192.
2024-02-07 00:43:11 +01:00

70 lines
1.6 KiB
Plaintext

@TerminalSettings::MainWidget {
fill_with_background_color: true
layout: @GUI::VerticalBoxLayout {
margins: [10]
spacing: 5
}
@GUI::GroupBox {
title: "Bell mode"
preferred_height: "fit"
layout: @GUI::VerticalBoxLayout {
margins: [8]
spacing: 8
}
@GUI::Widget {
preferred_height: "fit"
layout: @GUI::VerticalBoxLayout {
spacing: 4
}
@GUI::RadioButton {
name: "beep_bell_radio"
text: "Audible bell"
}
@GUI::RadioButton {
name: "visual_bell_radio"
text: "Visible bell"
}
@GUI::RadioButton {
name: "no_bell_radio"
text: "No bell"
}
}
}
@GUI::GroupBox {
title: "Exit behavior"
preferred_height: "fit"
layout: @GUI::VerticalBoxLayout {
margins: [8]
}
@GUI::CheckBox {
name: "terminal_confirm_close"
text: "Confirm exit when process is active"
}
}
@GUI::GroupBox {
title: "Auto-mark behavior"
preferred_height: "fit"
layout: @GUI::VerticalBoxLayout {
margins: [8]
}
@GUI::RadioButton {
name: "automark_off"
text: "Do not auto-mark"
}
@GUI::RadioButton {
name: "automark_on_interactive_prompt"
text: "Auto-mark on interactive shell prompts"
}
}
}