Location: lg@xxxxxxxxxxxxxx http://arch.xwem.org/2005/
Revision: xwem--main--2.2--patch-23
Archive: lg@xxxxxxxxxxxxxx
Creator: Zajcev Evgeny <lg@xxxxxxxx>
Date: Thu Aug 4 16:33:21 MSD 2005
Standard-date: 2005-08-04 12:33:21 GMT
Modified-files: lisp/xwem-clients.el lisp/xwem-keyboard.el
lisp/xwem-keymacro.el lisp/xwem-minibuffer.el
lisp/xwem-theme.el lisp/xwem-win.el
New-patches: lg@xxxxxxxxxxxxxx/xwem--main--2.2--patch-23
Summary: tiny fixes, tiny themes rework, keyboard macro hack added
Keywords: themes, keymacro
* lisp/xwem-clients.el (xwem-refit-dedicated): [bug fix] Resize frame if
client requests resizing.
* lisp/xwem-keyboard.el (xwem-self-insert-or-undefined): [bug fix]
Incorrect use of `xwem-dummy-client-p'.
* lisp/xwem-minibuffer.el (xwem-minibuffer-active-border-color): [change]
Default value is "cyan3" now, to be more visibile.
* lisp/xwem-keymacro.el
(xwem-keymacro-check-block-in-read-from-minibuffer): [new] Hack to
prevent blocking when replying keyboard macro.
* lisp/xwem-theme.el: Tiny rework.
* added files
{arch}/xwem/xwem--main/xwem--main--2.2/lg@xxxxxxxxxxxxxx/patch-log/patch-23
* modified files
--- orig/lisp/xwem-clients.el
+++ mod/lisp/xwem-clients.el
@@ -2383,7 +2383,7 @@
(defun xwem-refit-dedicated (cl)
"Refit method for dedicated CL."
(cond ((xwem-cl-new-xgeom cl)
- (xwem-cl-apply-new-xgeom cl nil t)
+ (xwem-cl-apply-new-xgeom cl)
(xwem-cl-apply-xgeom cl)
(xwem-window-set-size
(xwem-cl-win cl)
--- orig/lisp/xwem-keyboard.el
+++ mod/lisp/xwem-keyboard.el
@@ -458,7 +458,7 @@
;; Self insert command allowed only for normal clients to avoid
;; infinite loops.
- (unless (xwem-dummy-client-p (xwem-cl-selected))
+ (unless (eq (xwem-dummy-client) (xwem-cl-selected))
(xwem-kbd-add-pending-keys
(apply 'vconcat (make-list (prefix-numeric-value arg)
xwem-this-command-keys))
(xwem-cl-selected))))))
--- orig/lisp/xwem-keymacro.el
+++ mod/lisp/xwem-keymacro.el
@@ -196,6 +196,24 @@
(and (boundp 'xwem-keymacro-keys)
(boundp 'xwem-keymacro-keys-index)))
+(defun xwem-keymacro-check-block-in-read-from-minibuffer ()
+ "Check whether SXEmacs has been blocked while reading from minibuffer."
+ (when (and (xwem-cl-selected-p (xwem-minib-cl xwem-minibuffer))
+ (> (minibuffer-depth) 0)
+ (xwem-keymacro-executing-p)
+ (< (incf xwem-keymacro-keys-index)
+ (length xwem-keymacro-keys)))
+ ;; We are currently reading from minibuffer, so keep executing
+ ;; self-insert commands
+
+ ;; XXX MEGA HACK (check for keys that terminates minibuffer)
+ (unless (member (aref xwem-keymacro-keys xwem-keymacro-keys-index)
+ '((return) (control ?g) (control ?G) (hyper ?g)))
+ (xwem-deffered-funcall
'xwem-keymacro-check-block-in-read-from-minibuffer))
+
+ (xwem-dispatch-command-event
+ (aref xwem-keymacro-keys xwem-keymacro-keys-index))))
+
;;;###xwem-autoload
(defun xwem-keymacro-execute-keys (keys)
"Execute keyboard macro KEYS."
@@ -207,18 +225,19 @@
(let ((xwem-keymacro-keys keys)
(xwem-keymacro-keys-index 0))
(while (< xwem-keymacro-keys-index (length xwem-keymacro-keys))
+ (xwem-deffered-funcall
'xwem-keymacro-check-block-in-read-from-minibuffer)
(xwem-dispatch-command-event
(aref xwem-keymacro-keys xwem-keymacro-keys-index))
(incf xwem-keymacro-keys-index))))
(defun xwem-keymacro-start-recording ()
- "Start recording Keys."
+ "Start recording keyboard events."
;; Clear events queue and enable context
(setf (X-Dpy-evq xwem-keymacro-dpy) nil)
(X-XRecordEnableContext xwem-keymacro-dpy xwem-keymacro-rcontext)
(setq xwem-keymacro-saving t)
- ;; Change xwem's minibuffer background
+ ;; XXX Change minibuffer background
(when xwem-keymacro-minib-bg
(setq xwem-keymacro-minib-old-bg
(face-background-name 'default (xwem-minib-frame xwem-minibuffer)))
@@ -226,12 +245,12 @@
(xwem-minib-frame xwem-minibuffer))))
(defun xwem-keymacro-stop-recording ()
- "Stop recording Keys."
+ "Stop recording keyboard events."
(X-XRecordDisableContext (xwem-dpy) xwem-keymacro-rcontext)
(XFlush (xwem-dpy))
(setq xwem-keymacro-saving nil)
- ;; Change xwem's minibuffer background back
+ ;; XXX Revert minibuffer background
(when xwem-keymacro-minib-old-bg
(set-face-property 'default 'background xwem-keymacro-minib-old-bg
(xwem-minib-frame xwem-minibuffer))))
--- orig/lisp/xwem-minibuffer.el
+++ mod/lisp/xwem-minibuffer.el
@@ -140,7 +140,7 @@
:initialize 'custom-initialize-default
:group 'xwem-minibuffer)
-(defcustom xwem-minibuffer-active-border-color "blue"
+(defcustom xwem-minibuffer-active-border-color "cyan3"
"Border color for `xwem-minibuffer' when it focused."
:type 'color
:set (lambda (sym val)
--- orig/lisp/xwem-theme.el
+++ mod/lisp/xwem-theme.el
@@ -39,341 +39,11 @@
:prefix "xwem-theme-"
:group 'xwem)
-(defcustom xwem-theme-default
- `((face xwem-tabber-face
- (((frame-selected tab-selected)
- (:foreground "white" :background "green4" :bold t))
- ((delimiter-left frame-selected tab-selected)
- (:foreground "white"))
- ((delimiter-right frame-selected tab-selected)
- (:foreground "black"))
-
- ((frame-selected tab-nonselected)
- (:foreground "black" :background "gray80"))
- ((delimiter-left frame-selected tab-nonselected)
- (:foreground "white"))
- ((delimiter-right frame-selected tab-nonselected)
- (:foreground "black"))
-
- ((frame-nonselected tab-selected)
- (:foreground "gray80" :background "DarkGreen" :bold t))
- ((delimiter-left frame-nonselected tab-selected)
- (:foreground "white"))
- ((delimiter-right frame-nonselected tab-selected)
- (:foreground "black"))
-
- ((frame-nonselected tab-nonselected)
- (:foreground "black" :background "gray40"))
- ((delimiter-left frame-nonselected tab-nonselected)
- (:foreground "white"))
- ((delimiter-right frame-nonselected tab-nonselected)
- (:foreground "black"))
-
- (t (:foreground "white"))))
-
- (face x-border-face
- (((selected) (:foreground "green"))
- (t (:foreground "gray80"))))
-
- (face xwem-frame-inner-border-face
- (((light nonselected)
- (:foreground "gray80" :background "gray80"))
- ((medium nonselected)
- (:foreground "gray50" :background "gray50"))
- ((dark nonselected)
- (:foreground "gray20" :background "gray20"))
- ((light selected)
- (:foreground "cyan2" :background "cyan2"))
- ((medium selected)
- (:foreground "royalblue" :background "royalblue"))
- ((dark selected)
- (:foreground "blue4" :background "blue4"))))
-
- (face xwem-launch-dock-face
- (((medium) (:foreground "gray70"))
- ((light) (:foreground "white"))
- ((dark) (:foreground "black"))))
-
- (face xwem-strokes-face
- (((background light)
- (:foreground "red4" :background "black"))
- ((background dark)
- (:foreground "red" :background "black"))
- ((background begin light)
- (:foreground "magenta4" :background "black"
- :line-width 12 :cap-style X-CapRound))
- ((background begin dark)
- (:foreground "magenta" :background "black"
- :line-width 12 :cap-style X-CapRound))))
-
- (face xwem-tray-delimiter-face
- (((background light)
- (:foreground "gray40"))
- ((background light shadow)
- (:foreground "gray30"))
- ((background dark)
- (:foreground "gray70"))
- ((background dark shadow)
- (:foreground "gray80"))))
-
- (face xwem-window-outline-face
- (((frame-selected win-selected)
- (:foreground "green" :background "green4" :line-width 4))
- ((frame-selected win-nonselected)
- (:foreground "gray70" :background "gray70" :line-width 4))
- ((frame-nonselected win-selected)
- (:foreground "green3" :background "green4" :line-width 4))
- ((frame-nonselected win-nonselected)
- (:foreground "gray60" :background "gray40" :line-width 4))))
-
- (face xwem-window-delimiter-face
- (((horizontal)
- (:foreground "royalblue" :background "black"))
- ((horizontal shadow)
- (:foreground "blue4" :background "black"))
- ((horizontal light shadow)
- (:foreground "cyan" :background "black"))
- ((vertical)
- (:foreground "royalblue" :background "black"))
- ((shadow vertical)
- (:foreground "blue4" :background "black"))
- ((light shadow vertical)
- (:foreground "cyan" :background "black"))
- (t (:foreground "gray20" :background "black"))))
-
- ;; Frames properties
- (frame-property inner-border-width 8)
- (frame-property inner-border-thickness 2)
- (frame-property title-height 18)
-
- ;; Clients properties
- (client-property x-border-width 2)
-
- ;; Custom settings
- (custom xwem-cursor-help-foreground-color "#00BB00")
- (custom xwem-cursor-help-background-color "#009900")
- (custom xwem-root-cursor-foreground-color "white")
- (custom xwem-root-cursor-background-color "black")
- (custom xwem-frame-cursor-foreground-color "#111111")
- (custom xwem-frame-cursor-background-color "#EEEEEE")
-
- (custom xwem-minibuffer-bgcol "gray80")
- )
- "Default xwem theme."
- :type 'xwem-theme
- :group 'xwem-theme)
-
-(defcustom xwem-theme-extrim
- `((face xwem-tabber-face
- (((frame-selected tab-selected)
- (:foreground "white" :background "gray20"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*" :bold t))
- ((delimiter-left frame-selected tab-selected)
- (:foreground "white"))
- ((delimiter-right frame-selected tab-selected)
- (:foreground "black"))
-
- ((frame-selected tab-nonselected)
- (:foreground "black" :background "gray80"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*"))
- ((delimiter-left frame-selected tab-nonselected)
- (:foreground "white"))
- ((delimiter-right frame-selected tab-nonselected)
- (:foreground "black"))
-
- ((frame-nonselected tab-selected)
- (:foreground "gray80" :background "gray40"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*" :bold t))
- ((delimiter-left frame-nonselected tab-selected)
- (:foreground "white"))
- ((delimiter-right frame-nonselected tab-selected)
- (:foreground "black"))
-
- ((frame-nonselected tab-nonselected)
- (:foreground "black" :background "gray40"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*"))
- ((delimiter-left frame-nonselected tab-nonselected)
- (:foreground "white"))
- ((delimiter-right frame-nonselected tab-nonselected)
- (:foreground "black"))
-
- (t (:foreground "white"))))
-
- (face x-border-face
- (((selected) (:foreground "white"))
- (t (:foreground "dark"))))
-
- (face xwem-frame-inner-border-face
- (((light nonselected)
- (:foreground "gray80"))
- ((medium nonselected)
- (:foreground "gray50"))
- ((dark nonselected)
- (:foreground "gray20"))
- ((light selected)
- (:foreground "white"))
- ((medium selected)
- (:foreground "gray50"))
- ((dark selected)
- (:foreground "dark"))))
-
- (face xwem-launch-dock-face
- (((medium) (:foreground "gray70"))
- ((light) (:foreground "white"))
- ((dark) (:foreground "black"))))
-
- (face xwem-strokes-face
- (((background light)
- (:foreground "dimgray" :background "black"))
- ((background dark)
- (:foreground "lightgray" :background "black"))
- ((background begin light)
- (:foreground "darkslategrey" :background "black"
- :line-width 12 :cap-style X-CapRound))
- ((background begin dark)
- (:foreground "grey" :background "black"
- :line-width 12 :cap-style X-CapRound))
- (t (:foreground "dimgray" :background "black"
- :line-width 6 :cap-style X-CapRound
- :subwindow-mode X-IncludeInferiors
- :function (eval xwem-strokes-gc-function)))))
-
- (face xwem-tray-delimiter-face
- (((background light)
- (:foreground "gray40"))
- ((background light shadow)
- (:foreground "gray30"))
- ((background dark)
- (:foreground "gray70"))
- ((background dark shadow)
- (:foreground "gray80"))))
-
- (face xwem-window-outline-face
- (((frame-selected win-selected)
- (:foreground "dark" :background "dark"))
- ((frame-selected win-nonselected)
- (:foreground "gray50" :background "gray50"))
- ((frame-nonselected win-selected)
- (:foreground "gray20" :background "gray20"))
- ((frame-nonselected win-nonselected)
- (:foreground "gray60" :background "gray40"))))
-
- (face xwem-window-delimiter-face
- (((horizontal)
- (:foreground "gray30" :background "black"))
- ((horizontal shadow)
- (:foreground "gray10" :background "black"))
- ((horizontal light shadow)
- (:foreground "gray80" :background "black"))
- ((vertical)
- (:foreground "gray10" :background "black"))
- ((shadow vertical)
- (:foreground "gray40" :background "black"))
- ((light shadow vertical)
- (:foreground "white" :background "black"))
- (t (:foreground "gray20" :background "black"))))
-
- ;; Frames properties
- (frame-property inner-border-width 3)
- (frame-property inner-border-thickness 1)
- (frame-property title-height 12)
-
- ;; Clients properties
- (client-property x-border-width 3)
-
- ;; Custom settings
- (custom xwem-cursor-help-foreground-color "#888888")
- (custom xwem-cursor-help-background-color "#080808")
- (custom xwem-root-cursor-foreground-color "black")
- (custom xwem-root-cursor-background-color "white")
- (custom xwem-frame-cursor-foreground-color "white")
- (custom xwem-frame-cursor-background-color "black")
-
- (custom xwem-minibuffer-bgcol "black")
- )
- "Extrimal xwem theme."
- :type 'xwem-theme
- :group 'xwem-theme)
-
-;;;; Cursor themes
-(defconst xwem-cursor-default-theme
- '((custom xwem-cursor-help-foreground-color "#00BB00")
- (custom xwem-cursor-help-background-color "#009900")
- (custom xwem-root-cursor-foreground-color "white")
- (custom xwem-root-cursor-background-color "black")
- (custom xwem-frame-cursor-foreground-color "#111111")
- (custom xwem-frame-cursor-background-color "#EEEEEE")))
-
-(defconst xwem-cursor-extrim-theme
- `((custom xwem-cursor-help-foreground-color "#888888")
- (custom xwem-cursor-help-background-color "#080808")
- (custom xwem-root-cursor-foreground-color "black")
- (custom xwem-root-cursor-background-color "white")
- (custom xwem-frame-cursor-foreground-color "white")
- (custom xwem-frame-cursor-background-color "black")))
-
-(defconst xwem-cursor-ocean-theme
- `((custom xwem-cursor-help-foreground-color "#009999")
- (custom xwem-cursor-help-background-color "#006B6B")
- (custom xwem-root-cursor-foreground-color "#005858")
- (custom xwem-root-cursor-background-color "#AFFFFA")
- (custom xwem-frame-cursor-foreground-color "#BFFFFB")
- (custom xwem-frame-cursor-background-color "#006D66")))
-
-(defconst xwem-cursor-spring-theme
- `((custom xwem-cursor-help-foreground-color "#00B366")
- (custom xwem-cursor-help-background-color "#007D48")
- (custom xwem-root-cursor-foreground-color "#007B3D")
- (custom xwem-root-cursor-background-color "#BFFFD6")
- (custom xwem-frame-cursor-foreground-color "#80FFC9")
- (custom xwem-frame-cursor-background-color "#007D48")))
-
-(defconst xwem-cursor-winter-theme
- `((custom xwem-cursor-help-foreground-color "white")
- (custom xwem-cursor-help-background-color "gray50")
- (custom xwem-root-cursor-foreground-color "white")
- (custom xwem-root-cursor-background-color "gray50")
- (custom xwem-frame-cursor-foreground-color "white")
- (custom xwem-frame-cursor-background-color "gray50")))
-
-(defvar xwem-cursor-themes
- '((default . xwem-cursor-default-theme)
- (extrim . xwem-cursor-extrim-theme)
- (ocean . xwem-cursor-ocean-theme)
- (spring . xwem-cursor-spring-theme)
- (winter . xwem-cursor-winter-theme))
- "Alist of themes for cursors colors.
-Alist in form \(THEME-NAME . THEME-VAR\).")
-
-;;;; Frame themes
-(defconst xwem-frame-default-theme
- '((frame-property inner-border-width 8)
- (frame-property inner-border-thickness 2)
- (frame-property title-height 18)
- (custom xwem-win-vertical-delim-width (8 . 1))
- (custom xwem-win-horizontal-delim-width (6 . 1))))
-
-(defconst xwem-frame-extrim-theme
- '((frame-property inner-border-width 3)
- (frame-property inner-border-thickness 1)
- (frame-property title-height 12)
- (custom xwem-win-vertical-delim-width (4 . 1))
- (custom xwem-win-horizontal-delim-width (3 . 1))))
-
-(defvar xwem-frame-themes
- '((default . xwem-frame-default-theme)
- (extrim . xwem-frame-extrim-theme))
- "Alist of themes for frame.
-Alist in form \(THEME-NAME . THEME-VAR\).")
-
-;;; Internal variables
-(defvar xwem-managing-themes nil
- "List of themes to manage clients.")
-
+;;;; Face themes
(defconst xwem-face-default-theme
- '((face xwem-tabber-face
+ `((face xwem-tabber-face
(((frame-selected tab-selected)
- (:foreground "white" :background "green4" :bold t))
+ (:foreground "white" :background "green4"))
((delimiter-left frame-selected tab-selected)
(:foreground "white"))
((delimiter-right frame-selected tab-selected)
@@ -387,7 +57,7 @@
(:foreground "black"))
((frame-nonselected tab-selected)
- (:foreground "gray80" :background "DarkGreen" :bold t))
+ (:foreground "gray80" :background "DarkGreen"))
((delimiter-left frame-nonselected tab-selected)
(:foreground "white"))
((delimiter-right frame-nonselected tab-selected)
@@ -476,32 +146,28 @@
(defconst xwem-face-extrim-theme
`((face xwem-tabber-face
(((frame-selected tab-selected)
- (:foreground "white" :background "gray20"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*" :bold t))
+ (:foreground "white" :background "gray20"))
((delimiter-left frame-selected tab-selected)
(:foreground "white"))
((delimiter-right frame-selected tab-selected)
(:foreground "black"))
((frame-selected tab-nonselected)
- (:foreground "black" :background "gray80"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*"))
+ (:foreground "black" :background "gray80"))
((delimiter-left frame-selected tab-nonselected)
(:foreground "white"))
((delimiter-right frame-selected tab-nonselected)
(:foreground "black"))
((frame-nonselected tab-selected)
- (:foreground "gray80" :background "gray40"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*" :bold t))
+ (:foreground "gray80" :background "gray40"))
((delimiter-left frame-nonselected tab-selected)
(:foreground "white"))
((delimiter-right frame-nonselected tab-selected)
(:foreground "black"))
((frame-nonselected tab-nonselected)
- (:foreground "black" :background "gray40"
- :font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*"))
+ (:foreground "black" :background "gray40"))
((delimiter-left frame-nonselected tab-nonselected)
(:foreground "white"))
((delimiter-right frame-nonselected tab-nonselected)
@@ -539,7 +205,7 @@
(:foreground "darkslategrey" :background "black"
:line-width 12 :cap-style X-CapRound))
((background begin dark)
- (:foreground "grey" :background "black"
+ (:foreground "gray" :background "black"
:line-width 12 :cap-style X-CapRound))))
(face xwem-tray-delimiter-face
@@ -578,7 +244,7 @@
"Extrim face theme.")
(defconst xwem-face-ocean-theme
- '((face xwem-tabber-face
+ `((face xwem-tabber-face
(((frame-selected tab-selected)
(:foreground "#7DC5C5" :background "#174D4D" :bold t))
((delimiter-left frame-selected tab-selected)
@@ -680,16 +346,164 @@
(defvar xwem-face-themes
'((default . xwem-face-default-theme)
(extrim . xwem-face-extrim-theme)
- (ocean . xwem-face-ocean-theme)
- )
+ (ocean . xwem-face-ocean-theme))
"List of themes for xwem faces.")
-(defvar xwem-frame-themes nil
- "List of themes for frames.")
+;;;; Fonts theme
+(defconst xwem-font-default-theme
+ `((face xwem-tabber-face
+ (((frame-selected tab-selected)
+ (:font ,(face-font-name 'default) :bold t))
+ ((frame-selected tab-nonselected)
+ (:font ,(face-font-name 'default)))
+ ((frame-nonselected tab-selected)
+ (:font ,(face-font-name 'default) :bold t))
+ ((frame-nonselected tab-nonselected)
+ (:font ,(face-font-name 'default)))))))
+
+(defconst xwem-font-extrim-theme
+ `((face xwem-tabber-face
+ (((frame-selected tab-selected)
+ (:font "-*-fixed-medium-r-*-*-13-*-*-*-*-*-*-*" :bold t))
+ ((frame-selected tab-nonselected)
+ (:font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*"))
+ ((frame-nonselected tab-selected)
+ (:font "-*-fixed-medium-r-*-*-13-*-*-*-*-*-*-*" :bold t))
+ ((frame-nonselected tab-nonselected)
+ (:font "-*-fixed-medium-r-*-*-12-*-*-*-*-*-*-*"))))))
+
+(defvar xwem-font-themes
+ '((default . xwem-font-default-theme)
+ (extrim . xwem-font-extrim-theme)))
+
+;;;; Cursor themes
+(defconst xwem-cursor-default-theme
+ '((custom xwem-cursor-help-foreground-color "#00BB00")
+ (custom xwem-cursor-help-background-color "#009900")
+ (custom xwem-root-cursor-foreground-color "white")
+ (custom xwem-root-cursor-background-color "black")
+ (custom xwem-frame-cursor-foreground-color "#111111")
+ (custom xwem-frame-cursor-background-color "#EEEEEE")))
+
+(defconst xwem-cursor-extrim-theme
+ `((custom xwem-cursor-help-foreground-color "#888888")
+ (custom xwem-cursor-help-background-color "#080808")
+ (custom xwem-root-cursor-foreground-color "black")
+ (custom xwem-root-cursor-background-color "white")
+ (custom xwem-frame-cursor-foreground-color "white")
+ (custom xwem-frame-cursor-background-color "black")))
+
+(defconst xwem-cursor-ocean-theme
+ `((custom xwem-cursor-help-foreground-color "#009999")
+ (custom xwem-cursor-help-background-color "#006B6B")
+ (custom xwem-root-cursor-foreground-color "#005858")
+ (custom xwem-root-cursor-background-color "#AFFFFA")
+ (custom xwem-frame-cursor-foreground-color "#BFFFFB")
+ (custom xwem-frame-cursor-background-color "#006D66")))
+
+(defconst xwem-cursor-spring-theme
+ `((custom xwem-cursor-help-foreground-color "#00B366")
+ (custom xwem-cursor-help-background-color "#007D48")
+ (custom xwem-root-cursor-foreground-color "#007B3D")
+ (custom xwem-root-cursor-background-color "#BFFFD6")
+ (custom xwem-frame-cursor-foreground-color "#80FFC9")
+ (custom xwem-frame-cursor-background-color "#007D48")))
+
+(defconst xwem-cursor-winter-theme
+ `((custom xwem-cursor-help-foreground-color "white")
+ (custom xwem-cursor-help-background-color "gray50")
+ (custom xwem-root-cursor-foreground-color "white")
+ (custom xwem-root-cursor-background-color "gray50")
+ (custom xwem-frame-cursor-foreground-color "white")
+ (custom xwem-frame-cursor-background-color "gray50")))
+
+(defvar xwem-cursor-themes
+ '((default . xwem-cursor-default-theme)
+ (extrim . xwem-cursor-extrim-theme)
+ (ocean . xwem-cursor-ocean-theme)
+ (spring . xwem-cursor-spring-theme)
+ (winter . xwem-cursor-winter-theme))
+ "Alist of themes for cursors colors.
+Alist in form \(THEME-NAME . THEME-VAR\).")
+
+;;;; Frame themes
+(defconst xwem-frame-default-theme
+ '((frame-property inner-border-width 8)
+ (frame-property inner-border-thickness 2)
+ (frame-property title-height 18)
+ (custom xwem-win-vertical-delim-width (8 . 1))
+ (custom xwem-win-horizontal-delim-width (6 . 1))))
+
+(defconst xwem-frame-extrim-theme
+ '((frame-property inner-border-width 3)
+ (frame-property inner-border-thickness 1)
+ (frame-property title-height 14)
+ (custom xwem-win-vertical-delim-width (4 . 1))
+ (custom xwem-win-horizontal-delim-width (3 . 1))))
+
+(defvar xwem-frame-themes
+ '((default . xwem-frame-default-theme)
+ (extrim . xwem-frame-extrim-theme))
+ "Alist of themes for frame.
+Alist in form \(THEME-NAME . THEME-VAR\).")
+
+;;;; Client themes
+(defconst xwem-client-default-theme
+ '((client-property x-border-width 2)))
+
+(defconst xwem-client-extrim-theme
+ '((client-property x-border-width 3)))
+
+(defvar xwem-client-themes
+ '((default . xwem-client-default-theme)
+ (extrim . xwem-client-extrim-theme))
+ "Alist of themes for clients.
+Alist in form \(THEME-NAME . THEME-VAR\).")
+
+;;;; Minibuffer themes
+(defconst xwem-minibuffer-default-theme
+ '((custom xwem-minibuffer-bgcol "gray80")
+ (custom xwem-minibuffer-passive-border-color "blue3")
+ (custom xwem-minibuffer-active-border-color "cyan3")))
+
+(defconst xwem-minibuffer-extrim-theme
+ '((custom xwem-minibuffer-bgcol "black")
+ (custom xwem-minibuffer-passive-border-color "gray30")
+ (custom xwem-minibuffer-active-border-color "white")))
+
+(defconst xwem-minibuffer-ocean-theme
+ '((custom xwem-minibuffer-bgcol "gray80")
+ (custom xwem-minibuffer-passive-border-color "#306F6F")
+ (custom xwem-minibuffer-active-border-color "cyan")))
+
+(defvar xwem-minibuffer-themes
+ '((default . xwem-minibuffer-default-theme)
+ (extrim . xwem-minibuffer-extrim-theme)
+ (ocean . xwem-minibuffe-ocean-theme))
+ "Alist of themes for minibuffer.
+Alist in form \(THEME-NAME . THEME-VAR\).")
-(defvar xwem-client-themes nil
- "List of themes for clients.")
+;;;; TODO: managing themes
+;;; Themes definition
+(defconst xwem-theme-default
+ (append xwem-face-default-theme
+ xwem-font-default-theme
+ xwem-cursor-default-theme
+ xwem-frame-default-theme
+ xwem-client-default-theme
+ xwem-minibuffer-default-theme)
+ "Default xwem theme.")
+
+(defconst xwem-theme-extrim
+ (append xwem-face-extrim-theme
+ xwem-font-extrim-theme
+ xwem-cursor-extrim-theme
+ xwem-frame-extrim-theme
+ xwem-client-extrim-theme
+ xwem-minibuffer-extrim-theme)
+ "Extrim theme for xwem.")
+
(defvar xwem-theme-themes '(xwem-theme-default xwem-theme-extrim)
"List of themes.")
@@ -784,7 +598,7 @@
nil t)
(xwem-completing-read
"XWEM Domain [global]: "
- '(("client") ("window") ("frame"))
+ '(("global") ("client") ("window") ("frame"))
nil t)))
;; Fix theme
--- orig/lisp/xwem-win.el
+++ mod/lisp/xwem-win.el
@@ -1489,8 +1489,7 @@
;; Redraw window delimiters and outline
(xwem-win-redraw-delims (xwem-win-parent nwin))
(xwem-win-redraw-win nwin)
- (xwem-win-redraw-win sp-win)
- ))
+ (xwem-win-redraw-win sp-win)))
(defvar xwem-allow-resize-frame-when-resizing-root-window t
"Non-nil mean win's frame can be resized if resizing frame's root window.")
|