0

I am trying to remove all window manager decorations from emacs. This works well using:

(set-frame-parameter nil 'undecorated t) 

But now what I want to have is a one line (global) header line (which spans across the entire frame) which acts like a title bar. Where I can drag the frame and resize it and so on.

(set-frame-parameter nil 'drag-with-header-line t) 

Works to make the header line draggable. But I so far was only able to get a separate header line for each window. But I want one global one. Also I did not find out a way to resize the frame.

Any way to do this?

2 Answers 2

1

As far as I know, a header-line, like a mode-line, is specific to a particular buffer, which means a window showing that buffer.

So I believe the answer is that you can't do what you want, without having just one window in the frame.

0

I don't know how to make a titlebar that works as you want, but you can drag the window around by clicking anywhere on it and holding down the Super key (this works on Linux). As for resizing the frame, you need to set the frame parameters drag-internal-border and internal-border-width, for instance

(setq default-frame-alist (append ; Note: if there are any conflicting settings in ‘default-frame-alist’, it is the one that comes first that gets applied. '((undecorated . t) (drag-internal-border . t) (internal-border-width . 4)) default-frame-alist)) 

Or, interactively, you can use the commands set-frame-height and set-frame-width (assuming you're on Emacs 27).

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.