Commit aa8fc698 authored by Iban Hatchondo's avatar Iban Hatchondo
Browse files

Add: demands attention handling.

parent 04e605fb
;;; -*- Mode: Lisp; Package: ECLIPSE-INTERNALS -*-
;;; $Id: global.lisp,v 1.30 2008/04/23 09:54:46 ihatchondo Exp $
;;; $Id: global.lisp,v 1.31 2008/04/25 16:02:49 ihatchondo Exp $
;;;
;;; This file is part of Eclipse.
;;; Copyright (C) 2001, 2002 Iban HATCHONDO
......@@ -46,7 +46,7 @@
:_net_wm_state_maximized_horz :_net_wm_state_maximized_vert
:_net_wm_state_skip_taskbar :_net_wm_state_skip_pager :_net_wm_state_shaded
:_net_wm_state_sticky :_net_wm_state_fullscreen :_net_wm_state_hidden
:_net_wm_state_above :_net_wm_state_below))
:_net_wm_state_above :_net_wm_state_below :_net_wm_state_demands_attention))
(defconstant +root-event-mask+
'(:substructure-redirect :substructure-notify :button-press :button-release
......
;;; -*- Mode: Lisp; Package: ECLIPSE-INTERNALS -*-
;;; $Id: input.lisp,v 1.50 2008/04/28 12:29:38 ihatchondo Exp $
;;; $Id: input.lisp,v 1.51 2008/04/28 16:09:16 ihatchondo Exp $
;;;
;;; ECLIPSE. The Common Lisp Window Manager.
;;; Copyright (C) 2000, 2001, 2002 Iban HATCHONDO
......@@ -414,7 +414,9 @@
(put-on-top application))
(when (or-eql :_net_wm_state_below p1 p2)
(set-netwm-state :_net_wm_state_below mode)
(put-on-bottom application))))))
(put-on-bottom application))
(when (or-eql :_net_wm_state_demands_attention p1 p2)
(set-netwm-state :_net_wm_state_demands_attention mode))))))
(:_net_moveresize_window
(let ((value-mask (logand #x0F (ash (aref data 0) -8)))
(gravity (logand #xFF (aref data 0))))
......
;;; -*- Mode: Lisp; Package: ECLIPSE-INTERNALS -*-
;;; $Id: wm.lisp,v 1.55 2008/04/25 16:02:49 ihatchondo Exp $
;;; $Id: wm.lisp,v 1.56 2008/04/28 16:09:16 ihatchondo Exp $
;;;
;;; ECLIPSE. The Common Lisp Window Manager.
;;; Copyright (C) 2000, 2001, 2002 Iban HATCHONDO
......@@ -496,6 +496,13 @@
(declare (ignorable window timestamp))
(values))
(defmethod set-focus :after (input-model window timestamp)
(declare (ignorable timestamp))
(let ((states (netwm:net-wm-state window)))
(when (member :_net_wm_state_demands_attention states)
(setf (netwm:net-wm-state window)
(remove :_net_wm_state_demands_attention states)))))
;; Next is methods for menu-3 who permit to manage any window :
;; choose an action in the menu and click on a window
;; to perform this action.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment