From 69e5ab693c1d3c3b0f9873c0da0579341a2659e9 Mon Sep 17 00:00:00 2001 From: Bozhidar Batsov Date: Fri, 26 Jul 2013 17:36:18 +0300 Subject: [PATCH] Refine fullscreen support --- core/prelude-core.el | 16 ++++++++-------- core/prelude-global-keybindings.el | 3 +++ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/core/prelude-core.el b/core/prelude-core.el index 026ca2c..a3b20fc 100644 --- a/core/prelude-core.el +++ b/core/prelude-core.el @@ -515,16 +515,16 @@ With numeric prefix arg DEC, decrement the integer by DEC amount." (prelude-increment-integer-at-point (- (or dec 1)))) ;;; Emacs in OSX already has fullscreen support -(when (eq window-system 'x) - (defun prelude-fullscreen () - "Makes Emacs window fullscreen. +;;; Emacs has a similar built-in command in 24.4 +(defun prelude-fullscreen () + "Make Emacs window fullscreen. This follows freedesktop standards, should work in X servers." - (interactive) - (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 - '(2 "_NET_WM_STATE_FULLSCREEN" 0))) - (global-set-key (kbd "") 'prelude-fullscreen) -) + (interactive) + (if (eq window-system 'x) + (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 + '(2 "_NET_WM_STATE_FULLSCREEN" 0)) + (error "Only X server is supported"))) (provide 'prelude-core) ;;; prelude-core.el ends here diff --git a/core/prelude-global-keybindings.el b/core/prelude-global-keybindings.el index 2cbff9b..7f8acd5 100644 --- a/core/prelude-global-keybindings.el +++ b/core/prelude-global-keybindings.el @@ -96,6 +96,9 @@ ;; replace buffer-menu with ibuffer (global-set-key (kbd "C-x C-b") 'ibuffer) +(unless (fboundp 'toggle-frame-fullscreen) + (global-set-key (kbd "") 'prelude-fullscreen)) + ;; toggle menu-bar visibility (global-set-key (kbd "") 'menu-bar-mode)