Add a mappable action to toggle the mirrored setting for the tall and fat layouts

Fixes #5344
This commit is contained in:
Kovid Goyal 2022-08-03 22:45:38 +05:30
parent fd6bc55db6
commit a9a9f1ac00
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
3 changed files with 19 additions and 1 deletions

View File

@ -60,6 +60,9 @@ Detailed list of changes
- macOS: Fix a regression that caused switching keyboard input using Eisu and
Kana keys not working (:iss:`5232`)
- Add a mappable action to toggle the mirrored setting for the tall and fat
layouts (:pull:`5344`)
- Wayland: Reduce flicker at startup by not using render frames immediately after a resize (:iss:`5235`)
- Linux: Update cursor position after all key presses not just pre-edit text

View File

@ -68,10 +68,13 @@ for the options is::
└──────────────┴───────────────┘
In addition, you can map keys to increase or decrease the number of full-height
windows, for example::
windows, or toggle the mirrored setting, for example::
map ctrl+[ layout_action decrease_num_full_size_windows
map ctrl+] layout_action increase_num_full_size_windows
map ctrl+/ layout_action mirror toggle
map ctrl+y layout_action mirror true
map ctrl+n layout_action mirror false
The Fat Layout

View File

@ -203,6 +203,18 @@ class Tall(Layout):
if self.layout_opts.full_size > 1:
self.layout_opts.full_size -= 1
return True
if action_name == 'mirror':
action = (args or ('toggle',))[0]
ok = False
if action == 'toggle':
self.layout_opts.mirrored = not self.layout_opts.mirrored
ok = True
else:
new_val = to_bool(action)
if new_val != self.layout_opts.mirrored:
self.layout_opts.mirrored = new_val
ok = True
return ok
return None
def minimal_borders(self, all_windows: WindowList) -> Generator[BorderLine, None, None]: