Replace `frame-geometry'
* exwm-workspace.el (exwm-workspace--frame-y-offset) exwm-workspace--window-y-offset, exwm-workspace--update-offsets): New variables & function for the calculation of Emacs frame offsets, as `frame-geometry' is not available in Emacs 24. * exwm-floating.el (exwm-floating--set-floating) (exwm-floating--do-moveresize): * exwm-layout.el (exwm-layout--show): * exwm-systemtray.el (exwm-systemtray--on-workspace-switch) (exwm-systemtray--on-randr-refresh, exwm-systemtray--init): Use them. * exwm-systemtray.el (exwm-systemtray--refresh-all): Renamed from `exwm-systemtray--on-randr-refresh'. (exwm-systemtray--init, exwm-systemtray--exit): Use it. * exwm-floating.el (exwm-floating--stop-moveresize): Send a ConfigureNotify event to floating frame to update its position (seems required by Emacs 24).
This commit is contained in:
parent
eb49e57f76
commit
f167bc979c
6 changed files with 122 additions and 66 deletions
|
|
@ -52,6 +52,7 @@
|
|||
(defvar exwm-layout--timer nil "Timer used to track echo area changes.")
|
||||
|
||||
(defvar exwm-workspace--current)
|
||||
(defvar exwm-workspace--frame-y-offset)
|
||||
(declare-function exwm-input--release-keyboard "exwm-input.el")
|
||||
(declare-function exwm-input--grab-keyboard "exwm-input.el")
|
||||
(declare-function exwm-input-grab-keyboard "exwm-input.el")
|
||||
|
|
@ -105,15 +106,13 @@
|
|||
(y (pop edges))
|
||||
(width (- (pop edges) x))
|
||||
(height (- (pop edges) y))
|
||||
geometry frame-x frame-y frame-width frame-height)
|
||||
frame-x frame-y frame-width frame-height)
|
||||
(with-current-buffer (exwm--id->buffer id)
|
||||
(when exwm--floating-frame
|
||||
(setq frame-width (frame-pixel-width exwm--floating-frame)
|
||||
geometry (frame-geometry exwm--floating-frame)
|
||||
frame-height (+ (frame-pixel-height exwm--floating-frame)
|
||||
;; Use `frame-outer-height' in the future.
|
||||
(or (cddr (assq 'menu-bar-size geometry)) 0)
|
||||
(or (cddr (assq 'tool-bar-size geometry)) 0)))
|
||||
exwm-workspace--frame-y-offset))
|
||||
(when exwm--floating-frame-position
|
||||
(setq frame-x (elt exwm--floating-frame-position 0)
|
||||
frame-y (elt exwm--floating-frame-position 1)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue