You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As per the API of version 3, multi window support is broken by design. The root of the issue is that the same buffer can't be shown in multiple windows. There is no indication that WebKitGTK doesn't allow it, so it is unclear why this isn't implemented.
Find below 3 perspectives on the manifestation of the issue:
Start Nyxt and call (ffi-window-set-buffer (window-make *browser*) (current-buffer)). Note that the new window is blank.
What happens if the window count surpasses the buffer count?
Take Nyxt with a single window and two buffers. Then create a window and call switch-buffer. Note that this results in swapping buffers across the windows. From a UI's perspective, this behavior is unsettling at best (not to mention that the window title is not properly handled).
output.mp4
For version 4, the root of the issue must be addressed for the WebKitGTK port.
Additionally, ffi-window-set-buffer should handle slots active-buffer, last-access and hook window-set-buffer-hook. It should be possible to drop window-set-buffer and rely exclusively on ffi-window-set-buffer-hook.
The text was updated successfully, but these errors were encountered:
This reverts commit d027b31.
It turns out that the changes introduced in
d027b31 change the logic.
Indeed window-set-buffer is a sea of obscure incantations and bad design.
See #3510.
aadcg
changed the title
ffi-window-set-buffer behaviour on multi window setting
Reimplement multi window logic
Sep 20, 2024
Delete window-set-buffer indirection.
Delete dummy-buffer-p (breadcrumbs from ancient refactors).
Note that from this commit on, multi window support on WebKitGTK is unusable.
This is done on purpose. The way is being paved to reimplement the feature, by
simplifying the API.
See #3510 for a detailed discussion.
As per the API of version 3, multi window support is broken by design. The root of the issue is that the same buffer can't be shown in multiple windows. There is no indication that WebKitGTK doesn't allow it, so it is unclear why this isn't implemented.
Find below 3 perspectives on the manifestation of the issue:
(ffi-window-set-buffer (window-make *browser*) (current-buffer))
. Note that the new window is blank.switch-buffer
. Note that this results in swapping buffers across the windows. From a UI's perspective, this behavior is unsettling at best (not to mention that the window title is not properly handled).output.mp4
For version 4, the root of the issue must be addressed for the WebKitGTK port.
Additionally,
ffi-window-set-buffer
should handle slotsactive-buffer
,last-access
and hookwindow-set-buffer-hook
. It should be possible to dropwindow-set-buffer
and rely exclusively onffi-window-set-buffer-hook
.The text was updated successfully, but these errors were encountered: