* First version of DecorationEx.
* Fixed most warnings.
* Fix build error with ghc-9.8.1.
* Fix title shrinking with text decoration.
* Add convinience re-exports.
* Get rid of orphan instances.
* Fix a couple of warnings.
* Rename X.L.DecorationEx.Types -> X.L.DecorationEx.Common
* Add instance Default StandardCommand.
* Fix some typos and formatting
thanks to @geekosaur
Co-authored-by: brandon s allbery kf8nh <allbery.b@gmail.com>
* Fix reference to xmonad.hs
See also #859
Co-authored-by: brandon s allbery kf8nh <allbery.b@gmail.com>
* Fix reference to xmonad.hs
Co-authored-by: brandon s allbery kf8nh <allbery.b@gmail.com>
* Fix formatting
Co-authored-by: brandon s allbery kf8nh <allbery.b@gmail.com>
* Fix some typos and formatting
thanks to @geekosaur
Co-authored-by: brandon s allbery kf8nh <allbery.b@gmail.com>
* Remove commented code.
* Update CHANGES.md.
* calcWidgetPlace is now allowed to return rectangle with any X,
but that will be ignored.
* More generic instance for DecorationWidget GenericWidget.
* Replace explicit definition of `fi` with import from X.Prelude.
thanks to @slotThe.
* Move fetch-all pattern to the end of definition.
thanks to @slotThe.
* X.L.DecorationEx: Add screenshot
---------
Co-authored-by: brandon s allbery kf8nh <allbery.b@gmail.com>
Co-authored-by: Tony Zorman <soliditsallgood@mailbox.org>
Useful for restoring browser windows to where they were before restart
(which is something one should do several times a week as security
updates get released).
I believe this common use-case for the deprecated X.L.Named should still
be provided somewhere, rather than telling everybody to let-define this
themselves.
The other one – `nameTail` – only has about 6 uses in publicly available
configs (https://github.com/search?q=nameTail+path%3Axmonad&type=code),
so I'm not adding that one but I'm happy to be convinced to add it too.
Related: 3bf9d80c40b9 ("XMonad.Layout.Named: Deprecate")
The module has badly bitrotted, and is in such a state that it's
unlikely anyone is using it currently. Better alternatives exist, so
just deprecating seems appropriate here.
Closes: https://github.com/xmonad/xmonad-contrib/issues/793
+ Add a new prevCompletionKey to XPConfig, in order to cycle backwards.
Bound to S-<Tab> by default.
+ Already handle null keystrings (times when only a modifier was
pressed) in handleMain, such that completions aren't cleared
prematurely.
+ Augment nextComplIndex (now computeComplIndex) with the ability to go
in an arbitrary 1-dimensional direction. As a result, that function,
as well as handleCompletion and handleCompletionMain now take an
additional Direction1D argument.
Based on: https://github.com/solomon-b/xmonad-contrib/tree/feature/scrolling-prompt-completions
Fixes: https://github.com/xmonad/xmonad-contrib/issues/831
Co-authored-by: Solomon Bothwell <ssbothwell@gmail.com>
Originally, `dynamicLogString` could have a bottom hidden in it and
thereby crash the `logHook`. Under some circumstances (see #801)
this could cause xmonad to get stuck. We now force the result, and
`dynamicLogString` catches the exception and substitutes a
message (currently "_|_"). Use `dynamicLogString'` for the old behavior.
X.L.StateFull's `FocusTracking` and the eponymous `TrackFloating` were
redundant, hence the former was slated for deprecation. However,
the latter and its host module are somewhat poorly named; the layout
modifier has little relation to floats. As such, it's renamed and
rehosted, becoming the eponymous `FocusTracking`.
The redundant offerings in the original modules are redefined in terms
of the new module where possible, and deprecated.
See: #418; comments on #253, #783.
These modules were duplicating a substantial amount of low-level code.
`X.A.CycleWorkspaceByScreen` had already separated most of the
implementation details from the logic with `repeatableAction`; all that
was left was to generalise it a little further, put it in a suitable
place and express the other modules through it.
This combinator forces XMonad to *not* set _NET_DESKTOP_VIEWPORT.
This information is picked up by polybar's xworkspaces module and used
to re-group the workspaces by monitor. I (and others) find this super
confusing, but polybar doesn't not seem open to addressing it.
https://github.com/polybar/polybar/issues/2603
Opting in to the old behavior of not managing this property is one way
to work around it instead.