I tried adding `dockStartupHook` to `myStartupHook` but no change. so i moved it to `main` with still no change. So then i tried both location but nothing different, avoidStruts not working.

how it currently looks in my xmonad.hs file:
[code]
(....... (setLayout =<< asks (XMonad.layoutHook . config)) >> docksStartupHook)
.......
myStartupHook = do
docksStartupHook
       ......
.....
main = do
....
, startupHook = composeAll [
myStartupHook
, docksStartupHook
                        .....
[/code]

Just to reiterate, xmonad 0.12 from GIT allows me to reset the layout but avoidstruts does not work.
Same xmonad.hs code but w/o docksStartupHook under xmonad 0.12 from haskell, still allows me to reset the layout but also respects docs (avoidstruts) if and only if I reset the layout (mod-shift-space) on all "visible" workspaces after an xmonad start/restart. "Non-visible" workspaces seem to work fine, avoidstruts works when spawning a window client; as does reset layout.

My understanding is that GIT is now the "darcs" version of xmonad (aka development version). That being the case, I can live for now under haskell xmonad with the annoyance of (mod-shift-space) upon xmonad start/restart. It's no biggy. I'll deal with it once GIT gets pushed to haskell (unless we abandoning haskell).

Hope all this makes sense.

Thanks again for assistance,
-Dave


On Fri, Mar 4, 2016 at 6:08 AM, Bogdan Sinitsyn <bogdan.sinitsyn@gmail.com> wrote:
Add `docksStartupHook` to both your action on mod-shift-space and your startup
hook(because you restore initial layout state before restart).

On Thursday, March 3, 2016 9:29:38 AM MSK you wrote:
> Yes, it's an action on a hotkey. (mod+shift+space) which resets layout on
> workspace. See http://web.mit.edu/nelhage/Public/xmonad.hs
> Under haskell xmonad, i had to (mod-shift-space) in order for the docks to
> be respected, since it was never respected upon xmonad restart.
> Under Git xmonad, docks are still not respected upon xmonad restart but my
> previous solution (mod-shift-space) for displaying the dock, no longer
> works.
>
> Here is my code:
> https://raw.githubusercontent.com/davama/xmonad/master/xmonad.hs
>
>
> On Thu, Mar 3, 2016 at 8:58 AM, Bogdan Sinitsyn <bogdan.sinitsyn@gmail.com>
>
> wrote:
> > Are you speaking about action on some hotkey instead of `setLayout =<<
> > asks
> > (layoutHook . config)` or something else? If first then I dunno what's
> > wrong,
> > can you give the whole config?
> >
> > On Thursday, March 3, 2016 8:36:10 AM MSK you wrote:
> > > Thank you Bogdan for the reply. I did as suggested.  I tried different
> > > versions:
> > >
> > > `setLayout $ XMonad.layoutHook conf` -- original code. works fine under
> > > Haskell xmonad 0.12. with GIT xmonad docks are not longer respected.
> > > `setLayout $ XMonad.layoutHook conf >> docksStartupHook` -- failed on
> > > xmonad restart
> > > `(setLayout $ XMonad.layoutHook conf) >> docksStartupHook` -- passes
> >
> > xmonad
> >
> > > restart but setLayout to default does not work, neither respect for
> > > docks
> > > `(setLayout =<< asks (XMonad.layoutHook . config)) >> docksStartupHook`
> >
> > --
> >
> > > passes restart. setLayout works. but still no respect for docks.
> > >
> > > I feel like im very close.
> > > Could it be that my `manageDocks` or `docksEventHook e` are not properly
> > > configured?
> > >
> > > Thank you again for assistance. Hopefully my struggles will help someone
> > > else who reads this.
> > > -Dave
> > >
> > > On Wed, Mar 2, 2016 at 2:48 PM, Bogdan Sinitsyn <
> >
> > bogdan.sinitsyn@gmail.com>
> >
> > > wrote:
> > > > On Wednesday, March 2, 2016 2:38:34 PM MSK you wrote:
> > > > > I did not quite understand how to try the `docksStartupHook` after
> > > > > `setLayout =<<...`
> > > >
> > > > `(setLayout =<< asks (layoutHook . config)) >> docksStartupHook`
> > > >
> > > > --
> > > > Bogdan Sinitsyn
> >
> > --
> > Bogdan Sinitsyn

--
Bogdan Sinitsyn