Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

X.L.TrackFloating: Clean up and simplify #418

Merged
merged 4 commits into from
Jan 30, 2021

Conversation

liskin
Copy link
Member

@liskin liskin commented Dec 9, 2020

Description

#253 added a similar module using a somewhat simpler implementation. Borrow some ideas and share some code, so that we can possibly deprecate one in favor of the other.

Checklist

  • I've read CONTRIBUTING.md

  • I tested my changes with xmonad-testing

  • I updated the CHANGES.md file

  • n/a I updated the XMonad.Doc.Extending file (if appropriate)

Drop Eq constraint that isn't needed.

Drop the redundant Maybe from findZ return type. Breaks symmetry but
makes it easier to use (join no longer needed).
X.L.TrackFloating is more or less the same as X.L.StateFull's
FocusTracking, so it's no surprise the same helpers can be used...
It was added in 81d3389 in an attempt to fix focus handling after
closing a floating window, but shortly after made redundant in
a551d13 when we noticed it causes more harm than good. Unfortunately
it wasn't fully reverted, making the code more complex than necessary.

Drop the remaining bits.

Now it's almost obvious that the only difference between this and
X.L.StateFull.FocusTracking is the isF condition.

BTW the original issue 81d3389 was trying to fix can be fixed by
using X.H.RefocusLast, from the author of X.L.StateFull.FocusTracking.
:-)
It seems the logic used in X.L.StateFull's FocusTracking should cover
all use cases here. Let's try it for a while. :-)
@liskin
Copy link
Member Author

liskin commented Jan 23, 2021

@aavogt @LSLeary Are you guys still around?

(I'll merge this in a couple of days if nobody says anything. It should be a harmless refactor, anyway.)

@liskin liskin closed this Jan 26, 2021
@liskin liskin deleted the trackfloating-focustracking branch January 26, 2021 12:04
@liskin liskin restored the trackfloating-focustracking branch January 26, 2021 12:08
@liskin liskin reopened this Jan 26, 2021
@liskin liskin merged commit 2eb67ed into xmonad:master Jan 30, 2021
@liskin liskin deleted the trackfloating-focustracking branch January 30, 2021 11:53
LSLeary added a commit to LSLeary/xmonad-contrib that referenced this pull request Dec 5, 2022
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: xmonad#418; comments on xmonad#253, xmonad#783.
LSLeary added a commit to LSLeary/xmonad-contrib that referenced this pull request Feb 12, 2023
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: xmonad#418; comments on xmonad#253, xmonad#783.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant