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

Triggers resize events for clients #1

Closed
blueyed opened this issue Feb 28, 2014 · 9 comments
Closed

Triggers resize events for clients #1

blueyed opened this issue Feb 28, 2014 · 9 comments
Labels

Comments

@blueyed
Copy link

blueyed commented Feb 28, 2014

Calling revelation triggers the resize event for clients, which makes e.g. Vim change its internal window layout (splits): because there is less space for the whole Vim window, the internal windows/splits get shrunken.
After picking a window via revelation, the original (internal) window/split layout isn't restored.

This affects any application which adjusts it's inner layout when being resized to something smaller, but does not restore it when it gets resized back to the original size.

It would be nice, if this could be avoided.

@guotsuan
Copy link
Owner

Hi blueyed,

revelation suppose to restore the window layout of every client after you select.
Could you tell me what your awesome window layout is, when it happened.
And Besides the your select client, e.g. Vim, have the layout of other clients without focus been restored?

Thank you very much.

@blueyed
Copy link
Author

blueyed commented Feb 28, 2014

@guotsuan
I wasn't clear enough: the awesome window layout is not affected, but the internal window/split layout in Vim: I have updated the issue's description - please re-read.

@guotsuan
Copy link
Owner

Thanks @blueyed, I think I unstood the problem now.

@blueyed
Copy link
Author

blueyed commented Feb 28, 2014

I have no idea how that might get solved though.
For Vim in particular, it could be made to ignore the resize event maybe and/or be scripted to restore itself via the VimResized autocommand somehow.

The main issue appears to be that revelation resizes the windows though: it would be nice, if some kind of pixmaps of the clients could be used instead.

@blueyed
Copy link
Author

blueyed commented Mar 2, 2014

I have just seen that there's content (a client's screenshot) in the client API: http://awesome.naquadah.org/doc/api/modules/client.html#client

@guotsuan
Copy link
Owner

guotsuan commented Mar 2, 2014

Thank you @blueyed for the heads up.
I think the way that you proposed is the also the best way I can image for now.
The only thing I am worried is that the taking the screenshot and using them rather than the real windows of clients could be much complicated than directly using the windows of clients.
Currently, revelation is only a simple awesome extending module. I hope I can implement this idea without introducing other dependencies.

.

@blueyed
Copy link
Author

blueyed commented Mar 2, 2014

I think that using the content property might be quite effective, in contrast to automatically calling some external program on each client at least.

@guotsuan
Copy link
Owner

guotsuan commented Mar 2, 2014

I just checked the content property. I'm afraid that this field is empty unless you fill it specifically.
One may still have to fill this field by some external program. Please correct me if I am wrong.

@blueyed
Copy link
Author

blueyed commented Mar 2, 2014

Yes, I had asked about it on IRC already.

psychon | client.content has undefined content for the parts of the client that aren't currently visisble
psychon | not that useful for an expose effect

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants