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

group: do not cycle when urgent #890

Closed
lasers opened this issue Apr 8, 2017 · 13 comments
Closed

group: do not cycle when urgent #890

lasers opened this issue Apr 8, 2017 · 13 comments
Assignees

Comments

@lasers
Copy link
Contributor

lasers commented Apr 8, 2017

Since we merged PR to support frame: pls expose urgent modules, there have been several "false" positive for urgent in frame. The reason is that the group can cycle modules including urgent ones... so you expands the frame, see nothing, and scroll the group to find the hidden urgent module.

Too many times when I get an urgent, I unfold and see nothing. I think group should stop cycling when urgent... so group and frame could work together much better than before.

@lasers lasers changed the title group: do not cycle urgent module group: do not cycle when urgent Apr 8, 2017
@tobes
Copy link
Contributor

tobes commented Apr 8, 2017

Things can be improved. I think that maybe with the group if one or more module(s) is urgent then we just cycle between urgent modules. The problem is what if as a user say github is urgent but I still want the group to cycle?

The frame should probably learn to only show as urgent if one of it's content it is showing is urgent. It would cause the urgent to come and go though which would be annoying.

@lasers
Copy link
Contributor Author

lasers commented Apr 8, 2017

The problem is what if as a user say github is urgent but I still want the group to cycle?

We have urgent for github, scratchpad_async, group, imap, pomodoro, and frame.

The user should not ignore urgent then... or use allow_urgent from yet-to-be-merged Universal allow_urgent PR to disable github urgent so it can keep cycling.... since that user seems to not want to be bothered with urgents.

@lasers

This comment has been minimized.

@tobes
Copy link
Contributor

tobes commented Jan 20, 2018

Is the real solution here more about 'suspending' modules when they are hidden? So if a cycling group is in a frame it would stop cycling until the frame is reopened. Of course it would still do its switching to urgent even though 'suspended'.

This would take some work as we'd need to pull the cycling out of modules 'direct' control or else the code gets hard to maintain for consistency.

Your branch has too many unrelated changes to easily see what you are trying to do. Small is beautiful

@lasers
Copy link
Contributor Author

lasers commented Jan 20, 2018

The problem I ran into with self.py3.register_function('urgent_function', self._urgent_function) is that it's not stable. It fires off True then False afterward for as long as it takes... but still painted urgent somewhere... so it's good to have this if you want to be notified immediately instead of cycling until waiting for it to hit an urgent module then notifies you.

With this branch, I keep a history of all urgent boolean and keep rechecking as it rotates... allowing format, format_closed to be consistent when opening / closing.. so you can still scroll around... then closes... (still urgent)... meaning there is still an urgent module somewhere... instead of... urgent, open, close, (urgent gone), open... still an urgent module somewhere... or even right in front of you. It's now flawless with this.

I hadn't tested this with frame yet.. as it was long time ago. This branch simplifies things and will always get content regardless of its button state.. for urgent alone. I am only trying to get rid of the occasional flashing orange urgent cycling on my bar.

@ultrabug
Copy link
Owner

ultrabug commented Jan 6, 2019

@lasers ? still wanted?

@lasers
Copy link
Contributor Author

lasers commented Jan 6, 2019

@ultrabug I guess we can close this. I'm not currently using group right now.

@lasers
Copy link
Contributor Author

lasers commented Jan 13, 2019

@ultrabug The branch above is live again. Rebased too. It is still not small nor beautiful. Maybe try this out for a week or two... and compare against master because I think you are a good consumer.

@ultrabug
Copy link
Owner

Maybe, could you move it to this repo so that comparing / testing is easier plz ?

@lasers
Copy link
Contributor Author

lasers commented Jan 13, 2019

Done.

@ultrabug
Copy link
Owner

I was looking into this and found out that master group module is not working as it should on click_mode = "button"

Clicking the button has no effect any more

@lasers
Copy link
Contributor Author

lasers commented Mar 14, 2019

Remove markup = 'pango' from your general.

We support markup for those who want them and for markup to work correctly, we can't have both markup and the composites (indexes, buttons, separators, etc).

Also, if you merge #1746, you can use new option None to turn it off for group.

@ultrabug
Copy link
Owner

No I won't remove it from general, users do this just like I did.

py3status should handle it, that's all.

I found the culprit then, this branch works for me

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

No branches or pull requests

3 participants