Xmonad geçersiz kıl Bir pencere için etkin değil


0

Odaklanmamış pencereleri şeffaf yapmak için Xmonad-Contrib'in Fade Inactive ve xcompmgr kullanıyorum.

Bazen, video izlerken olduğu gibi tamamen opak bir etkin olmayan bir pencereye sahip olmak istiyorum.

Fade Inactive kullanarak çoklu opak pencerelere sahip olmak için stratejisi olan var mı?

Yanıtlar:


0

Üzerinde çalışıyorum. :) Eğer xmonad'ı darcs'tan çalıştırıyorsanız deneyin http://www.ece.cmu.edu/~allbery/FadeWindows.tgz . (Test edeceğiniz bir şeyin, tarballda olduğundan daha fazla bağımlılığa sahip olup olmadığına dikkat edin; halen devam etmekte olan bir çalışmadır.) Xmonad çekirdeğine yeni bir düzeltme eki gerektiriyor; henüz yukarı yönde uygulanmış.

Bu arşiv kutunuzda açılmalıdır. ~/.xmonad ve iki Haskell kaynak dosyasını içine yerleştirir. ~/.xmonad/lib/XMonad/Hooks. (Başka bir yerde paketini açmaktan ve doğru yerlerine kopyalamadan önce doğrulamaktan çekinmeyin.) Belgeler lib/XMonad/Hooks/FadeWindows.hs. Özellikle gerekli ManageHook yamasının nasıl kontrol edileceğine dikkat edin.


2
Bu arada, hızlı bir hack olarak bir anahtarı spawn "xprop -set _NET_WINDOW_OPACITY 4294967295"; Çalıştırdığınızda, imleç artı işaretine dönüşecek, opak yapmak istediğiniz pencereye tıklayın. Odaklanma veya çalışma alanı değiştikten sonra genellikle tekrarlamanız gerekir, bu yüzden bu bir çözüm değil bir hack.
geekosaur

2011.2.0.0 Haskell Platformunu kullanarak paketlerinizde MoreManagerHelpers'ı derlerken bazı sorunlarla karşılaştım
Zaki Manian

Bunları yapıştırın ve / veya ziyaret edin #xmonad FreeNode'da.
geekosaur

0

Bu Xmonad.hs örnekleri yardımıyla bir çözüm buldum

http://code.google.com/p/xmonad/issues/attachmentText?id=393&aid=4341235945524725336&name=xmonad.hs&token=cc0422d6dd7c329bce14d1f4ca93a3db

FadeIf aracılığıyla solmayan pencerelerin bir listesini oluşturabilirsiniz

bir örnek xmonad.hs böyle görünür

import XMonad
import XMonad.Hooks.FadeInactive
import Control.Monad (filterM,liftM, join)
import Data.IORef
import Data.List
import qualified Data.Set as S
import qualified XMonad.StackSet as W
import XMonad.Util.EZConfig(additionalKeys,removeKeys)

myFadeHook toggleFadeSet = fadeOutLogHook $ fadeIf (testCondition toggleFadeSet) 0.7
doNotFadeOutWindows = title =? "Call with " <||> className =? "xine" <||> className =? "MPlayer"

testCondition :: IORef (S.Set Window) -> Query Bool
testCondition floats =
    liftM not doNotFadeOutWindows <&&> isUnfocused
    <&&> (join . asks $ \w -> liftX . io $ S.notMember w `fmap` readIORef floats)

toggleFadeOut :: Window -> S.Set Window -> S.Set Window
toggleFadeOut w s | w `S.member` s = S.delete w s
                  | otherwise = S.insert w s


main = do
  toggleFadeSet <- newIORef S.empty
  xmonad $ defaultConfig
  {
  logHook = myFadeHook toggleFadeSet
  , modMask = mod4Mask
  } `additionalKeys`
  [
  ((mod4Mask, xK_f), withFocused $ io . modifyIORef toggleFadeSet . toggleFadeOut
  ]
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.