Merge "subtree(3p/exwm): Update to upstream '10bd1223'" into canon
This commit is contained in:
commit
2d4fa60ae7
12 changed files with 32 additions and 22 deletions
2
third_party/exwm/exwm-cm.el
vendored
2
third_party/exwm/exwm-cm.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-cm.el --- Compositing Manager for EXWM -*- lexical-binding: t -*-
|
;;; exwm-cm.el --- Compositing Manager for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2016-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2016-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
2
third_party/exwm/exwm-config.el
vendored
2
third_party/exwm/exwm-config.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-config.el --- Predefined configurations -*- lexical-binding: t -*-
|
;;; exwm-config.el --- Predefined configurations -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
2
third_party/exwm/exwm-core.el
vendored
2
third_party/exwm/exwm-core.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-core.el --- Core definitions -*- lexical-binding: t -*-
|
;;; exwm-core.el --- Core definitions -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
2
third_party/exwm/exwm-floating.el
vendored
2
third_party/exwm/exwm-floating.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-floating.el --- Floating Module for EXWM -*- lexical-binding: t -*-
|
;;; exwm-floating.el --- Floating Module for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
2
third_party/exwm/exwm-input.el
vendored
2
third_party/exwm/exwm-input.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-input.el --- Input Module for EXWM -*- lexical-binding: t -*-
|
;;; exwm-input.el --- Input Module for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
8
third_party/exwm/exwm-layout.el
vendored
8
third_party/exwm/exwm-layout.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-layout.el --- Layout Module for EXWM -*- lexical-binding: t -*-
|
;;; exwm-layout.el --- Layout Module for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
@ -219,8 +219,11 @@
|
||||||
(exwm-layout--fullscreen-p))
|
(exwm-layout--fullscreen-p))
|
||||||
(cl-return-from exwm-layout-unset-fullscreen))
|
(cl-return-from exwm-layout-unset-fullscreen))
|
||||||
(with-current-buffer (if id (exwm--id->buffer id) (window-buffer))
|
(with-current-buffer (if id (exwm--id->buffer id) (window-buffer))
|
||||||
|
;; `exwm-layout--show' relies on `exwm--ewmh-state' to decide whether to
|
||||||
|
;; fullscreen the window.
|
||||||
(setq exwm--ewmh-state
|
(setq exwm--ewmh-state
|
||||||
(delq xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state))
|
(delq xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state))
|
||||||
|
(exwm-layout--set-ewmh-state exwm--id)
|
||||||
(if exwm--floating-frame
|
(if exwm--floating-frame
|
||||||
(exwm-layout--show exwm--id (frame-root-window exwm--floating-frame))
|
(exwm-layout--show exwm--id (frame-root-window exwm--floating-frame))
|
||||||
(xcb:+request exwm--connection
|
(xcb:+request exwm--connection
|
||||||
|
@ -233,9 +236,6 @@
|
||||||
(let ((window (get-buffer-window nil t)))
|
(let ((window (get-buffer-window nil t)))
|
||||||
(when window
|
(when window
|
||||||
(exwm-layout--show exwm--id window))))
|
(exwm-layout--show exwm--id window))))
|
||||||
(setq exwm--ewmh-state
|
|
||||||
(delq xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state))
|
|
||||||
(exwm-layout--set-ewmh-state exwm--id)
|
|
||||||
(xcb:flush exwm--connection)
|
(xcb:flush exwm--connection)
|
||||||
(set-window-dedicated-p (get-buffer-window) nil)
|
(set-window-dedicated-p (get-buffer-window) nil)
|
||||||
(when (eq 'line-mode exwm--selected-input-mode)
|
(when (eq 'line-mode exwm--selected-input-mode)
|
||||||
|
|
2
third_party/exwm/exwm-manage.el
vendored
2
third_party/exwm/exwm-manage.el
vendored
|
@ -1,7 +1,7 @@
|
||||||
;;; exwm-manage.el --- Window Management Module for -*- lexical-binding: t -*-
|
;;; exwm-manage.el --- Window Management Module for -*- lexical-binding: t -*-
|
||||||
;;; EXWM
|
;;; EXWM
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
2
third_party/exwm/exwm-randr.el
vendored
2
third_party/exwm/exwm-randr.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-randr.el --- RandR Module for EXWM -*- lexical-binding: t -*-
|
;;; exwm-randr.el --- RandR Module for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
2
third_party/exwm/exwm-systemtray.el
vendored
2
third_party/exwm/exwm-systemtray.el
vendored
|
@ -1,7 +1,7 @@
|
||||||
;;; exwm-systemtray.el --- System Tray Module for -*- lexical-binding: t -*-
|
;;; exwm-systemtray.el --- System Tray Module for -*- lexical-binding: t -*-
|
||||||
;;; EXWM
|
;;; EXWM
|
||||||
|
|
||||||
;; Copyright (C) 2016-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2016-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
|
15
third_party/exwm/exwm-workspace.el
vendored
15
third_party/exwm/exwm-workspace.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-workspace.el --- Workspace Module for EXWM -*- lexical-binding: t -*-
|
;;; exwm-workspace.el --- Workspace Module for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 1015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
@ -165,18 +165,20 @@ NIL if FRAME is not a workspace"
|
||||||
"Return t if FRAME is a workspace."
|
"Return t if FRAME is a workspace."
|
||||||
(memq frame exwm-workspace--list))
|
(memq frame exwm-workspace--list))
|
||||||
|
|
||||||
(defvar exwm--client-p-hash-table
|
(defvar exwm-workspace--client-p-hash-table
|
||||||
(make-hash-table :test 'eq :weakness 'key))
|
(make-hash-table :test 'eq :weakness 'key)
|
||||||
|
"Used to cache the results of calling ‘exwm-workspace--client-p’.")
|
||||||
|
|
||||||
(defsubst exwm-workspace--client-p (&optional frame)
|
(defsubst exwm-workspace--client-p (&optional frame)
|
||||||
"Return non-nil if FRAME is an emacsclient frame."
|
"Return non-nil if FRAME is an emacsclient frame."
|
||||||
(let* ((frame (or frame (selected-frame)))
|
(let* ((frame (or frame (selected-frame)))
|
||||||
(cached-value (gethash frame exwm--client-p-hash-table 'absent)))
|
(cached-value
|
||||||
|
(gethash frame exwm-workspace--client-p-hash-table 'absent)))
|
||||||
(if (eq cached-value 'absent)
|
(if (eq cached-value 'absent)
|
||||||
(puthash frame
|
(puthash frame
|
||||||
(or (frame-parameter frame 'client)
|
(or (frame-parameter frame 'client)
|
||||||
(not (display-graphic-p frame)))
|
(not (display-graphic-p frame)))
|
||||||
exwm--client-p-hash-table)
|
exwm-workspace--client-p-hash-table)
|
||||||
cached-value)))
|
cached-value)))
|
||||||
|
|
||||||
(defvar exwm-workspace--switch-map nil
|
(defvar exwm-workspace--switch-map nil
|
||||||
|
@ -1467,7 +1469,8 @@ the next workspace."
|
||||||
;; care of converting a workspace into a regular unmanaged frame.
|
;; care of converting a workspace into a regular unmanaged frame.
|
||||||
(let ((exwm-workspace--create-silently t))
|
(let ((exwm-workspace--create-silently t))
|
||||||
(make-frame)))
|
(make-frame)))
|
||||||
(exwm-workspace--remove-frame-as-workspace frame))))
|
(exwm-workspace--remove-frame-as-workspace frame)
|
||||||
|
(remhash frame exwm-workspace--client-p-hash-table))))
|
||||||
|
|
||||||
(defun exwm-workspace--on-after-make-frame (frame)
|
(defun exwm-workspace--on-after-make-frame (frame)
|
||||||
"Hook run upon `make-frame' that configures FRAME as a workspace."
|
"Hook run upon `make-frame' that configures FRAME as a workspace."
|
||||||
|
|
9
third_party/exwm/exwm-xim.el
vendored
9
third_party/exwm/exwm-xim.el
vendored
|
@ -1,6 +1,6 @@
|
||||||
;;; exwm-xim.el --- XIM Module for EXWM -*- lexical-binding: t -*-
|
;;; exwm-xim.el --- XIM Module for EXWM -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
|
|
||||||
|
@ -161,6 +161,10 @@ C,no"
|
||||||
(defvar exwm-xim--_XIM_PROTOCOL nil)
|
(defvar exwm-xim--_XIM_PROTOCOL nil)
|
||||||
(defvar exwm-xim--_XIM_XCONNECT nil)
|
(defvar exwm-xim--_XIM_XCONNECT nil)
|
||||||
|
|
||||||
|
(defvar exwm-xim-buffer-p nil
|
||||||
|
"Whether current buffer is used by exwm-xim.")
|
||||||
|
(make-variable-buffer-local 'exwm-xim-buffer-p)
|
||||||
|
|
||||||
(defun exwm-xim--on-SelectionRequest (data _synthetic)
|
(defun exwm-xim--on-SelectionRequest (data _synthetic)
|
||||||
"Handle SelectionRequest events on IMS window.
|
"Handle SelectionRequest events on IMS window.
|
||||||
|
|
||||||
|
@ -585,6 +589,9 @@ The actual XIM request is in client message data or a property."
|
||||||
(exwm-input--grab-keyboard))
|
(exwm-input--grab-keyboard))
|
||||||
(unwind-protect
|
(unwind-protect
|
||||||
(with-temp-buffer
|
(with-temp-buffer
|
||||||
|
;; This variable is used to test whether exwm-xim is enabled.
|
||||||
|
;; Used by e.g. pyim-probe.
|
||||||
|
(setq-local exwm-xim-buffer-p t)
|
||||||
;; Always show key strokes.
|
;; Always show key strokes.
|
||||||
(let ((input-method-use-echo-area t)
|
(let ((input-method-use-echo-area t)
|
||||||
(exwm-input-line-mode-passthrough t))
|
(exwm-input-line-mode-passthrough t))
|
||||||
|
|
6
third_party/exwm/exwm.el
vendored
6
third_party/exwm/exwm.el
vendored
|
@ -1,10 +1,10 @@
|
||||||
;;; exwm.el --- Emacs X Window Manager -*- lexical-binding: t -*-
|
;;; exwm.el --- Emacs X Window Manager -*- lexical-binding: t -*-
|
||||||
|
|
||||||
;; Copyright (C) 2015-2020 Free Software Foundation, Inc.
|
;; Copyright (C) 2015-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
;; Author: Chris Feng <chris.w.feng@gmail.com>
|
||||||
;; Maintainer: Chris Feng <chris.w.feng@gmail.com>
|
;; Maintainer: Adrián Medraño Calvo <adrian@medranocalvo.com>
|
||||||
;; Version: 0.24
|
;; Version: 0.26
|
||||||
;; Package-Requires: ((xelb "0.18"))
|
;; Package-Requires: ((xelb "0.18"))
|
||||||
;; Keywords: unix
|
;; Keywords: unix
|
||||||
;; URL: https://github.com/ch11ng/exwm
|
;; URL: https://github.com/ch11ng/exwm
|
||||||
|
|
Loading…
Reference in a new issue