Comments (6)
I think the window sizes have to be strictly > 0 (though I might be wrong: the XCB docs are patchy to say the least!)
I do know that for the window manager check window (for setting ewmh props etc) I set the width and height to 1px each and that effectively hides the window. Might be worth trying that?
If not, then I suspect I'd need to modify the layout API / ResizeAction
to allow for unmapping a window as opposed to positioning it. The 1px trick feels pretty hacky to be honest so it might be worth doing that anyway...something like this with None
indicating that the window should be unmapped. (Changing to another layout should remap it back but I suppose that'd then be something we'd need to check for / track).
pub type ResizeAction = (WinId, Option<Region>)
from penrose.
I tried changing the size to (1, 1) and I noticed a thing: it was already working before!
The problem actually is that the layout function doesn't seem to run when simply cycling though windows.
Nonetheless, I think the unmapping of windows might be better in the future. Apparently qutebrowser crashes when its screen size is as small as 0 or 1 (still investigating) and other applications might end up having the same bug.
from penrose.
@YohananDiamond are you able to check if this is what you are after?
from penrose.
The problem seems to be still here - I can focus other windows other than the first one, but they are on the background. But I noticed one thing: if I switch workspaces and go back, the window that was hidden is shown. Maybe the layout is not updating on focus change?
from penrose.
Ah sorry, yes you need to set the layout config to trigger follow focus like this. You probably also want to do what I've done and allow client wrapping as well (default is to allow but you need to make sure you specify it when you create the config)
Layout functions by themselve can't determine when and how they are triggered: they only specify what to do with the clients when they are triggered. To be honest, at least for the default layouts I probably should provide some helper functions that bundle them with the appropriate LayoutConfig
.
from penrose.
Oh, okay. It's working now, thanks for the help!
from penrose.
Related Issues (20)
- Starting a new Emacsclient creates a very very small window. HOT 2
- Question: spawned floating windows HOT 4
- Penrose Project showcase proposal. HOT 3
- Question: default widgets not refreshing HOT 2
- Support dmenu-rs and support all base flags for dmenu extension.
- Look into supporting re-rendering the built in status bar without requiring an XEvent HOT 1
- Holding onto destroyed client Xids in a state extension breaks NamedScratchpad behaviour HOT 5
- toggle full screeen example HOT 1
- Add a BSP manual tiling layout HOT 1
- Find an alternative to pango/cairo for penrose_ui HOT 3
- Question: Are you sure file redirection can be used in `Exec=` of `Desktop Entry` HOT 1
- weird behavior caused by reload HOT 6
- Escape key not functional HOT 4
- Error: Io(Os { code: 2, kind: NotFound, message: "No such file or directory" }) HOT 1
- penrose crashes due to unknown client and using expect. prefer if let HOT 2
- Ability to cycle to next/previous tag HOT 6
- Allow the use of other bars e.g. polybar HOT 5
- penrose_ui: Setting background color of status bar to black (0x000000 or 0x000000ff) results in crash HOT 1
- Question: Use xmodmap-pke-umberwm? HOT 4
- ActiveWindowName won't respect max_chars HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from penrose.