Subject: Re: bug#49247: 28.0.50; [Feature Request] Make tab-bar-lines dragable

From: martin rudalics <[email-masked]>
Date: Thu, 1 Jul 2021 09:54:49 +0200

> This is an impressive feature - it works like in window managers.
 >
 > The only difference is that after trying
 >
 >    (set-frame-parameter nil 'drag-with-header-line t)
 >
 > then dragging is limited only to the screen boundaries
 > and doesn't allow dragging parts of the frame off the screen
 > (to leave frame partly visible) like window managers do.

This should be customizable via the `top-visible' and `bottom-visible'
parameters.  Note that dragging frames is mainly intended for child
frames - frames contained within another frame - which with all GNU
Linux window managers I know of are neither equipped with a title bar
nor with a border.  It's too easy to drag a child frame off the area of
its parent in a way that you can't recover it with the mouse - also
because in such case the mouse-sensitive regions of parent and child
frame overlap.  The default should keep you on the safe side.

 > Also can't drag by the mode-line with
 >
 >    (set-frame-parameter nil 'drag-with-mode-line t)
 >
 > but probably because it affects only frames without minibuffer window.

That's not a principal restriction.  But I considered it confusing to
allow dragging with a bar that is not located on top or bottom of the
containing frame.

 > So it seems it should be possible to do the same for tab-line by implementing
 >
 >    (set-frame-parameter nil 'drag-with-tab-line t)

It should be also possible to drag a frame with the tab bar.  Unless
dragging should conceptually have different semantics with tabs as, for
example, to drag them from left to right and vice versa on their bar or
line.

martin