Files
neovim/runtime/doc
Sean Dewar bbb68e2a03 vim-patch:9.1.0175: wrong window positions with 'winfix{width,height}' (#27845)
Problem:  winframe functions incorrectly recompute window positions if
          the altframe wasn't adjacent to the closed frame, which is
          possible if adjacent windows had 'winfix{width,height}' set.

Solution: recompute for windows within the parent of the altframe and
          closed frame. Skip this (as before) if the altframe was
          top/left, but only if adjacent to the closed frame, as
          positions won't change in that case. Also correct the return
          value documentation for win_screenpos. (Sean Dewar)

The issue revealed itself after removing the win_comp_pos call below
winframe_restore in win_splitmove. Similarly, wrong positions could result from
windows closed in other tabpages, as win_free_mem uses winframe_remove (at least
until it is entered later, where enter_tabpage calls win_comp_pos).

NOTE: As win_comp_pos handles only curtab, it's possible via other means for
positions in non-current tabpages to be wrong (e.g: after changing 'laststatus',
'showtabline', etc.). Given enter_tabpage recomputes it, maybe it's intentional
as an optimization? Should probably be documented in win_screenpos then, but I
won't address that here.

closes: vim/vim#14191

Nvim: don't reuse "wp" for "topleft" in winframe_remove, so the change
integrates better with the call to winframe_find_altwin before it.

5866bc3a0f
2024-03-13 22:06:39 +00:00
..
2023-07-25 05:07:13 -07:00
2024-01-24 06:07:42 +08:00
2023-12-20 07:02:48 +08:00
2023-10-29 16:02:32 +08:00
2023-12-09 15:35:45 +08:00
2024-01-17 14:01:39 +08:00
2023-12-13 20:31:16 +01:00
2024-03-09 11:21:55 +00:00
2024-03-09 11:21:55 +00:00
2023-04-17 15:46:24 +08:00
2024-01-15 11:40:44 +01:00
2024-02-08 19:07:31 +08:00
2023-12-13 20:31:16 +01:00
2021-09-10 08:48:27 +02:00
2023-06-25 17:14:28 +02:00
2023-10-29 16:02:32 +08:00
2023-06-25 17:14:28 +02:00
2024-02-29 22:54:57 +01:00
2024-03-12 13:51:53 +08:00
2023-05-13 21:33:22 +02:00
2024-03-12 13:51:53 +08:00
2023-12-06 08:04:21 +08:00
2024-03-12 13:51:53 +08:00
2024-02-22 10:07:04 +01:00
2024-03-12 13:51:53 +08:00
2022-10-14 08:01:13 -07:00
2024-01-18 00:14:48 -08:00
2022-12-11 18:41:26 -08:00
2024-03-12 05:39:21 +08:00
2023-10-21 18:04:08 +08:00
2023-11-14 23:29:09 +01:00
2018-10-29 09:55:07 +01:00
2023-06-25 17:14:28 +02:00
2015-08-15 15:25:30 -03:00
2023-11-06 19:03:08 +08:00
2024-01-18 00:14:48 -08:00
2023-10-10 19:20:32 +02:00
2023-01-01 15:05:13 +01:00
2023-06-19 08:40:33 -07:00
2023-09-28 05:22:09 +08:00
2023-11-27 17:43:13 +08:00
2023-06-11 12:40:22 +01:00
2023-04-04 19:07:33 +02:00
2024-03-11 06:41:53 +08:00
2022-09-26 17:43:23 +08:00
2023-08-10 17:28:02 +08:00
2024-03-09 11:21:55 +00:00
2023-08-13 13:25:10 +01:00
2023-05-15 09:38:32 +02:00
2023-04-23 15:22:55 +02:00
2023-08-10 17:28:04 +08:00
2023-01-03 10:07:43 +00:00
2023-06-25 17:14:28 +02:00
2023-06-19 08:40:33 -07:00
2023-06-25 17:14:28 +02:00
2023-07-25 05:07:13 -07:00
2023-06-25 17:14:28 +02:00
2021-05-01 22:29:03 -04:00
2023-06-25 17:14:28 +02:00
2018-10-29 10:01:44 +01:00
2021-04-29 09:27:19 -04:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-06-25 17:14:28 +02:00
2021-04-29 20:42:16 -04:00
2023-06-26 11:29:12 +02:00
2023-07-25 05:07:13 -07:00
2021-04-27 09:21:34 -04:00
2023-06-19 08:40:33 -07:00
2023-01-03 10:07:43 +00:00
2023-06-25 17:14:28 +02:00
2024-03-12 13:51:53 +08:00