update to 0.11 release
This commit is contained in:
parent
2b51cced06
commit
1aa12d6f43
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
||||
xmonad-0.9.1.tar.gz
|
||||
/xmonad-0.9.2.tar.gz
|
||||
/xmonad-0.10.tar.gz
|
||||
/xmonad-0.11.tar.gz
|
||||
|
@ -1,7 +1,7 @@
|
||||
= Packaging =
|
||||
xmonad in Fedora is provided by 3 packages:
|
||||
xmonad in Fedora is provided by 3 subpackages:
|
||||
|
||||
- xmonad-core: just the base window manager and X session files
|
||||
- xmonad-basic: just the base window manager and X session files
|
||||
- xmonad: additionally installs the devel library files needed to configure and customize xmonad
|
||||
- xmonad-gnome: additionally includes a gnome session file and requires gnome-session and gnome-terminal
|
||||
|
||||
@ -17,12 +17,13 @@ To activate the gnome-panel menu use Alt+Super+Button3 or Alt+Button3.
|
||||
|
||||
= xmonad-start =
|
||||
For new users without "~/.xmonad/", Fedora's xmonad-start script
|
||||
displays "man xmonad" in an xterm to provide help initially.
|
||||
displays "man xmonad" in a terminal to provide help initially.
|
||||
|
||||
To stop this behaviour, just create "~/.xmonad/".
|
||||
|
||||
With the xmonad-gnome or xmonad packages installed, xmonad-start will create
|
||||
a basic "~/.xmonad/xmonad.hs" file configured for desktops.
|
||||
With the xmonad, xmonad-config, or xmonad packages installed,
|
||||
xmonad-start will create a basic "~/.xmonad/xmonad.hs" file
|
||||
configured for desktops.
|
||||
|
||||
= Configuration references =
|
||||
- xmonad man-page
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
f8381e1ec15137863558a454d4466467 xmonad-0.10.tar.gz
|
||||
5ac9dc1dae5e85dcbdfb9f70cbe312c1 xmonad-0.11.tar.gz
|
||||
|
@ -1,105 +0,0 @@
|
||||
Mon Feb 22 06:45:12 PST 2010 Adam Vogt <vogt.adam@gmail.com>
|
||||
* Resolve conflicts Geoff Reedy's window focus hack.
|
||||
Sat Oct 10 16:19:07 PDT 2009 Geoff Reedy <geoff@programmer-monk.net>
|
||||
* Give focus to windows that don't set the input hint
|
||||
Sun Jun 21 22:19:11 PDT 2009 Geoff Reedy <geoff@programmer-monk.net>
|
||||
* implement the ICCCM WM_TAKE_FOCUS protocol
|
||||
Sun Jun 21 20:56:49 PDT 2009 Geoff Reedy <geoff@programmer-monk.net>
|
||||
* track currently processing event
|
||||
diff -rN -u old-xmonad/XMonad/Core.hs new-xmonad/XMonad/Core.hs
|
||||
--- old-xmonad/XMonad/Core.hs 2012-11-14 22:40:50.637523085 -0800
|
||||
+++ new-xmonad/XMonad/Core.hs 2012-11-14 22:40:50.649523104 -0800
|
||||
@@ -26,7 +26,7 @@
|
||||
runX, catchX, userCode, userCodeDef, io, catchIO, installSignalHandlers, uninstallSignalHandlers,
|
||||
withDisplay, withWindowSet, isRoot, runOnWorkspaces,
|
||||
getAtom, spawn, spawnPID, xfork, getXMonadDir, recompile, trace, whenJust, whenX,
|
||||
- atom_WM_STATE, atom_WM_PROTOCOLS, atom_WM_DELETE_WINDOW, ManageHook, Query(..), runQuery
|
||||
+ atom_WM_STATE, atom_WM_PROTOCOLS, atom_WM_DELETE_WINDOW, atom_WM_TAKE_FOCUS, ManageHook, Query(..), runQuery
|
||||
) where
|
||||
|
||||
import XMonad.StackSet hiding (modify)
|
||||
@@ -86,6 +86,8 @@
|
||||
, mousePosition :: !(Maybe (Position, Position))
|
||||
-- ^ position of the mouse according to
|
||||
-- the event currently being processed
|
||||
+ , currentEvent :: !(Maybe Event)
|
||||
+ -- ^ event currently being processed
|
||||
}
|
||||
|
||||
-- todo, better name
|
||||
@@ -202,10 +204,11 @@
|
||||
getAtom str = withDisplay $ \dpy -> io $ internAtom dpy str False
|
||||
|
||||
-- | Common non-predefined atoms
|
||||
-atom_WM_PROTOCOLS, atom_WM_DELETE_WINDOW, atom_WM_STATE :: X Atom
|
||||
+atom_WM_PROTOCOLS, atom_WM_DELETE_WINDOW, atom_WM_STATE, atom_WM_TAKE_FOCUS :: X Atom
|
||||
atom_WM_PROTOCOLS = getAtom "WM_PROTOCOLS"
|
||||
atom_WM_DELETE_WINDOW = getAtom "WM_DELETE_WINDOW"
|
||||
atom_WM_STATE = getAtom "WM_STATE"
|
||||
+atom_WM_TAKE_FOCUS = getAtom "WM_TAKE_FOCUS"
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- LayoutClass handling. See particular instances in Operations.hs
|
||||
diff -rN -u old-xmonad/XMonad/Main.hsc new-xmonad/XMonad/Main.hsc
|
||||
--- old-xmonad/XMonad/Main.hsc 2012-11-14 22:40:50.636523083 -0800
|
||||
+++ new-xmonad/XMonad/Main.hsc 2012-11-14 22:40:50.652523110 -0800
|
||||
@@ -121,7 +121,8 @@
|
||||
, keyActions = keys xmc xmc
|
||||
, buttonActions = mouseBindings xmc xmc
|
||||
, mouseFocused = False
|
||||
- , mousePosition = Nothing }
|
||||
+ , mousePosition = Nothing
|
||||
+ , currentEvent = Nothing }
|
||||
|
||||
st = XState
|
||||
{ windowset = initialWinset
|
||||
@@ -163,7 +164,7 @@
|
||||
prehandle e = let mouse = do guard (ev_event_type e `elem` evs)
|
||||
return (fromIntegral (ev_x_root e)
|
||||
,fromIntegral (ev_y_root e))
|
||||
- in local (\c -> c { mousePosition = mouse }) (handleWithHook e)
|
||||
+ in local (\c -> c { mousePosition = mouse, currentEvent = Just e }) (handleWithHook e)
|
||||
evs = [ keyPress, keyRelease, enterNotify, leaveNotify
|
||||
, buttonPress, buttonRelease]
|
||||
|
||||
diff -rN -u old-xmonad/XMonad/Operations.hs new-xmonad/XMonad/Operations.hs
|
||||
--- old-xmonad/XMonad/Operations.hs 2012-11-14 22:40:50.630523074 -0800
|
||||
+++ new-xmonad/XMonad/Operations.hs 2012-11-14 22:40:50.654523114 -0800
|
||||
@@ -24,7 +24,7 @@
|
||||
import Data.Maybe
|
||||
import Data.Monoid (Endo(..))
|
||||
import Data.List (nub, (\\), find)
|
||||
-import Data.Bits ((.|.), (.&.), complement)
|
||||
+import Data.Bits ((.|.), (.&.), complement, testBit)
|
||||
import Data.Ratio
|
||||
import qualified Data.Map as M
|
||||
import qualified Data.Set as S
|
||||
@@ -325,7 +325,27 @@
|
||||
|
||||
-- If we ungrab buttons on the root window, we lose our mouse bindings.
|
||||
whenX (not <$> isRoot w) $ setButtonGrab False w
|
||||
- io $ setInputFocus dpy w revertToPointerRoot 0
|
||||
+
|
||||
+ hints <- io $ getWMHints dpy w
|
||||
+ protocols <- io $ getWMProtocols dpy w
|
||||
+ wmprot <- atom_WM_PROTOCOLS
|
||||
+ wmtf <- atom_WM_TAKE_FOCUS
|
||||
+ currevt <- asks currentEvent
|
||||
+ let inputHintSet = wmh_flags hints `testBit` inputHintBit
|
||||
+
|
||||
+ when ((inputHintSet && wmh_input hints) || (not inputHintSet)) $
|
||||
+ io $ do setInputFocus dpy w revertToPointerRoot 0
|
||||
+ when (wmtf `elem` protocols) $
|
||||
+ io $ allocaXEvent $ \ev -> do
|
||||
+ setEventType ev clientMessage
|
||||
+ setClientMessageEvent ev w wmprot 32 wmtf $ maybe currentTime event_time currevt
|
||||
+ sendEvent dpy w False noEventMask ev
|
||||
+ where event_time ev =
|
||||
+ if (ev_event_type ev) `elem` timedEvents then
|
||||
+ ev_time ev
|
||||
+ else
|
||||
+ currentTime
|
||||
+ timedEvents = [ keyPress, keyRelease, buttonPress, buttonRelease, enterNotify, leaveNotify, selectionRequest ]
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- Message handling
|
@ -1,12 +0,0 @@
|
||||
diff -u xmonad-0.10/xmonad.cabal\~ xmonad-0.10/xmonad.cabal
|
||||
--- xmonad-0.10/xmonad.cabal~ 2011-11-19 08:14:36.000000000 +0900
|
||||
+++ xmonad-0.10/xmonad.cabal 2012-06-11 10:46:59.925650241 +0900
|
||||
@@ -46,7 +46,7 @@
|
||||
build-depends: base < 5 && >=3, containers, directory, process, filepath, extensible-exceptions
|
||||
else
|
||||
build-depends: base < 3
|
||||
- build-depends: X11>=1.5.0.0 && < 1.6, mtl, unix,
|
||||
+ build-depends: X11>=1.5.0.0 && < 1.7, mtl, unix,
|
||||
utf8-string >= 0.3 && < 0.4
|
||||
|
||||
if true
|
21
xmonad.spec
21
xmonad.spec
@ -16,8 +16,8 @@ workspace. Xinerama is fully supported, allowing windows to be tiled\
|
||||
on several screens.
|
||||
|
||||
Name: %{pkg_name}
|
||||
Version: 0.10
|
||||
Release: 17%{?dist}
|
||||
Version: 0.11
|
||||
Release: 1%{?dist}
|
||||
Summary: A tiling window manager
|
||||
|
||||
License: BSD
|
||||
@ -30,8 +30,6 @@ Source4: README.fedora
|
||||
Source5: xmonad-gnome-session.desktop
|
||||
Source6: xmonad.session
|
||||
Source7: xmonad.hs
|
||||
Patch1: xmonad-0.10-X11-1.6.patch
|
||||
Patch2: xmonad-0.10-WM_TAKE_FOCUS-track-currently-processing-event.patch
|
||||
|
||||
BuildRequires: ghc-Cabal-devel
|
||||
BuildRequires: ghc-rpm-macros
|
||||
@ -114,8 +112,6 @@ in a GNOME session.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1 -b .orig
|
||||
%patch2 -p1 -b .orig
|
||||
cp -p %SOURCE4 .
|
||||
|
||||
|
||||
@ -132,9 +128,9 @@ install -p -m 0755 -D %SOURCE2 %{buildroot}%{_bindir}/%{name}-start
|
||||
desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE3}
|
||||
install -p -m 0644 -D %SOURCE5 %{buildroot}%{_datadir}/xsessions/%{name}-gnome.desktop
|
||||
install -p -m 0644 -D %SOURCE6 %{buildroot}%{_datadir}/gnome-session/sessions/%{name}.session
|
||||
install -p -m 0644 -D %SOURCE7 %{buildroot}%{_datadir}/xmonad/%{name}.hs
|
||||
install -p -m 0644 -D %SOURCE7 %{buildroot}%{_datadir}/xmonad/xmonad.hs
|
||||
|
||||
rm %{buildroot}%{_datadir}/%{name}-%{version}/man/xmonad.hs
|
||||
rm %{buildroot}%{_datadir}/%{name}-%{version}/man/xmonad.{hs,1,1.html}
|
||||
# ship LICENSE in xmonad-core
|
||||
rm %{buildroot}%{_docdir}/%{name}-%{version}/LICENSE
|
||||
|
||||
@ -160,7 +156,8 @@ rm %{buildroot}%{_docdir}/%{name}-%{version}/LICENSE
|
||||
|
||||
|
||||
%files core
|
||||
%doc CONFIG LICENSE README man/%{name}.hs README.fedora
|
||||
%doc CONFIG LICENSE README README.fedora
|
||||
%doc man/xmonad.{hs,1{.html,.markdown}}
|
||||
%attr(755,root,root) %{_bindir}/%{name}
|
||||
%attr(755,root,root) %{_bindir}/%{name}-start
|
||||
%{_mandir}/man1/%{name}.1*
|
||||
@ -168,7 +165,7 @@ rm %{buildroot}%{_docdir}/%{name}-%{version}/LICENSE
|
||||
|
||||
|
||||
%files config
|
||||
%{_datadir}/xmonad/%{name}.hs
|
||||
%{_datadir}/xmonad/xmonad.hs
|
||||
|
||||
|
||||
%files gnome
|
||||
@ -181,6 +178,10 @@ rm %{buildroot}%{_docdir}/%{name}-%{version}/LICENSE
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri Jan 18 2013 Jens Petersen <petersen@redhat.com> - 0.11-1
|
||||
- update to 0.11
|
||||
- X11-1.6 and WM_TAKE_FOCUS patches no longer needed
|
||||
|
||||
* Thu Dec 13 2012 Jens Petersen <petersen@redhat.com> - 0.10-17
|
||||
- xmonad-gnome now requires gnome-panel and gnome-settings-daemon to start
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user