10 ms·
Cardboard: a scrollable tiling window manager
- unfocussed_mike 5y ago"exciting" More like hell on earth. Since you're all downvoting me for simply having an unenthusiastic opinion, here is that opinion in detail: we spend a lot of time designing applications so they don't horizontally scroll, and now you want your window manager to do it? What's wrong with full-screen applications in multiple virtual desktops like macOS?
- throwaway984393 5y ago............ Why?
- throwaway984393 5y agoWhy was I downvoted?
- unfocussed_mike 5y ago(Dunno. Wasn't me! Still haven't used my downvote power... I don't really understand people's use of it at all. Have an upvote. It was a fair question.)
- d2wa 5y ago> What's wrong with full-screen applications in multiple virtual desktops like macOS? Sometimes you need to look at two–three windows at a time. Maybe four (a terminal) that can live sort of to the side of the main two–three windows. A scrolling VM lets you work more fluidly instead of forcing everything into a screen-sized box. It’s useful to have a note-taking app side-by-side with a document you work with or a webpage for research. (Not all apps are designed to be used fullscreen. E.g. a calculator.)
- unfocussed_mike 5y ago> Sometimes you need to look at two–three windows at a time. You can actually tile two windows in a single full-screen (menu-less) view on macOS, and they can be sized arbitrarily as the two windows allow. So for example you can do the editor/browser pair, or the file manager/preview pair. macOS doesn't get everything about the window selection process right, mind you, but this pairing approach does work pretty well.[0] You can then swap (slide) between those full-screen views (and other ordinary desktop views) with a gesture, but because it snaps to full screens, you only need a simple swipe gesture. Endless _arbitrary_ horizontal scrolling will get tiresome, having the window scroll as soon as the focus changes will be jarring at times, and having half the content of one or more windows off the screen at any one time will become cognitively frustrating. [0] I find it very rare to need to tile four windows on a screen but surely ordinary window manager tiling mechanics can handle that (or Magnet, on the mac).
- mhdhn 5y agoI hadn't learned of this, so googling I came across this: Use two Mac apps side by side in Split View https://support.apple.com/en-us/HT204948 https://support.apple.com/en-us/HT204948 I am totally dependent on Spectacle. There are modern equivalent replacements, since the original is no longer supported. I can never understand why Apple won't build that functionality in.
- unfocussed_mike 5y ago> I hadn't learned of this, so googling I came across this: Use two Mac apps side by side in Split View https://support.apple.com/en-us/HT204948 https://support.apple.com/en-us/HT204948 Yes. It's sort of slowly converging with the equivalent functionality in iPadOs. > I am totally dependent on Spectacle. There are modern equivalent replacements, since the original is no longer supported. Magnet that I mention above is one of them. It's in the App Store. I don't use it all the time but I have been known to. https://apps.apple.com/us/app/magnet/id441258766?mt=12 https://apps.apple.com/us/app/magnet/id441258766?mt=12 I guess Apple either think this kind of functionality is too fiddly or it's at odds with where they want their Split View semi-tiled approach to go. Lack of MS Windows-style tiling is indeed something of an odd omission in macOS.
- lkschubert8 5y agoYou aren't getting downvoted for the opinion, but for the tone and lack of constructive feedback. The following is from the HN comment guidelines: Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something.
- Gualdrapo 5y agoThis is reminiscent of Gnome's PaperWM [0]. Not a Gnome user and just had the chance to try it for less than an hour, but the experience in my head sounded better than it was in reality - though was more of 'unexpected behavior' things than faults in the concept. I think this approach tries to solve the 'cramming too much windows in a single virtual desktop' that sometimes can be felt with tiling WMs. For example, when I'm drawing something in Krita I'd want to see some references of what I'm drawing - I'd just scroll a bit to unveil an adjacent Falkon window to browse some images on the internet, do some strokes and scroll back to Krita's window - without having to resize it in half. [0] https://github.com/paperwm/PaperWM https://github.com/paperwm/PaperWM
- operator-name 5y agoI've sadly had a similar experience with System 76's Pop Shell[0]. That said I suspect graphical workloads and applications designed around conventional sizes and aspec ratios are generally not well suites for TWMs. [0]: https://github.com/pop-os/shell https://github.com/pop-os/shell
- unfocussed_mike 5y agoUnexpected behaviour is exactly the problem -- I can see a lot of potential for it in the demo in the video, which is hard to follow. Not to mention the serious problem with scrolling-within-scrolling. One of those windows could be a browser window, sized too thin so its content scrolls horizontally as well as vertically, and some of the content inside that browser window might scroll vertically or horizontally or both -- perhaps a textarea. Can the UI ever make it clear enough what scroll action is going to be triggered, or will there be a situation where you want to scroll one aspect but end up scrolling the whole desktop? It's better to keep scrolling _out_ of a design, and it's surely better to switch context whole apps at a time, and not have them half-off the screen (which is the exact sort of occlusion irritation that tiling window managers are meant to avoid, surely?)
- dan-robertson 5y agoWell you can just have different scrolling, eg hold the super key and scroll with the mouse or use four fingers at once on a trackpad. I feel like this is asking the question of whether the TAB key will indent or switch controls or switch to a different window or whatever when you have an ordinary wm.
- drekipus 5y agoInteresting take, but I can't see much use for it perhaps. I'd probably prefer vertical scrolling, and to be frank I did something like this a long time ago by setting my Xorg screen settings to be larger than my monitor (and then scrolling around with the mouse). Tie that with a tiling window manager like awesomeWM so that you can configure while you work and it should work out to be just about the same experience. Highly appreciative of people trying new things though, I will never shut down people's desire to experiment. More power to them I say, one day someone might stumble into something that really really works wonders. edit: sorry, I thought the project WAS PaperWM. but no it's cardboard that has been inspired by PaperWM.
- Lramseyer 5y agoMaybe this is a bit of a ridiculous idea, but what about natively supporting tabs in a window manager? While it would probably be impractical to force all applications to support tabs, it would be nice to be able to rearrange elements/windows of work/productivity apps as such.
- pdosev 5y agoA lot of tiling WMs, for example i3, already support that. It can be useful when you want to hide a window like a long running terminal session, but I usually go to a new virtual desktop instead
- unfocussed_mike 5y agoThis is not that far from the way macOS does it, where apps can go full-screen as if they were single-app virtual desktops. You can flick between the apps, but the useless situation where apps are half-off the screen, like the wretched Metro interface on Windows, does not occur.
- ruined 5y agokde has supported this for years, and pretty much every tiling wm allows similar configuration
- isr 5y ago
- skavi 5y agoIs it just me or is their demo video flickering?
- unfocussed_mike 5y agoDon't worry I'm sure it'll be buttery smooth for real. Graphics on linux are known for that, right? ;-)
- d2wa 5y agoThat’s the actual experience. There’s open bugs about it in Cardboard.
- daxuak 5y agoLooks interesting, I wonder how does it handle floating windows.
- bduerst 5y agoI feel like this would have been killer with integration to something like leap motion. It has that Minority Report UI feel.
- unfocussed_mike 5y agoI used one of those leap motion controllers once, but then I spent a few minutes watching someone else use one and I realised several things that seem equally important to me: 1) moving your hand away from a keyboard to perform gestures not that much richer than a trackpad isn't as transformative as it seems, or very efficient 2) how they feel to interact with does not balance well with how they look to interact with, away from a gaming type context. How it feels: peculiarly magical, like casting spells. How it looks: D&D wizard excitedly miming his spells at the table-top, to the annoyance of his party. 3) there's really very often a beverage on my desk in a way that is at odds with me -- a clumsy type -- waving my hands around enthusiastically.
- egypturnash 5y agoThe only use I ever really found for my Leap was to control iTunes when I was in the middle of bleaching or dyeing my hair and didn’t want to touch the keyboard. It was great for that. I say “was” because the tool I was using for this no longer supports the Leap.
- unfocussed_mike 5y agoI'd be happy to wave gestures for stuff that people normally use Alexa/Siri for, because while I talk to myself out loud all the time, talking to a computer is weird. But it's fascinating isn't it how the Leap was going to be everything and then within a year or two it's discounted in Maplin.
- gedy 5y agoLooks like a nice idea for mobile devices as well.
- d2wa 5y agoIt’s not unlike what Android and iOS does in their app switchers. This just gets rid of the app switcher.
- happybuy 5y agoIn essence, this is similar how I setup and use Spaces on macOS. Have a number of spaces that are horizontally laid out with a three finger left/right swipe between them. For each Space, you can make the apps full-screen or split screen to have variable width windows. Of course you don't need to make them full screen but it does keep it simple similar to Cardboard. The added functionality with this approach is that you can use the Space as a casual grouping of windows in a related project.
- jasonpeacock 5y agoI do this too! I have [Messages/Slack/Chrome | Outlook/Notes/Chrome | iTerm3/Chrome] setup and easily swipe between them. Chrome is fixed in place on all of them b/c I frequently refer to websites while doing Slack/Outlook/coding work. iTerm3 is running tmux, connected to my remove development env (I'm a Neovim person, no local IDE needed). All those apps are tiled at full size, on a wide-screen monitor. It's a great way to organize based on task (chat, email, code) and easily switch between them.
- thechao 5y agoMy boss thinks I'm the crazy one because I do this; now I lnow I'm not alone! I bet there's dozens of us!
- em-bee 5y agoyup, both on macos and on gnome. fullscreen windows, one per workspace (or multiple ones if that makes sense because i need them together) on macos i scroll horizontally, on gnome vertically. (although newer gnome now also does horizontally by default, haven't checked how to change that) the only problem i have is that i want to be able to scroll independently per display. i don't know if macos can do that, but gnome for sure can't. (it appears paperwm referenced in the article does that)
- brundolf 5y agoIn particular I've found that using one Space per Jira ticket is a great way to juggle multiple ongoing tasks at once. Each gets its own code editor and Chrome window, with the ticket, merge request if applicable, any relevant research tabs, etc Unfortunately macOS still doesn't let you name Spaces, but I figured out you can just create a text edit window, make the font gigantic and put it in the middle of the screen, and it can be readable from Mission Control
- alberth 5y agoOff topic: love the blog design. It's information dense, non-distracting, and links look like links.
- unfocussed_mike 5y agoSome good subliminal design stuff in there too. Notably a very nice, somewhat newspaper-like choice of line-length, line-spacing, and paragraph margins, which make quick reading easier (which might be part of what you mean by non-distracting)
- alberth 5y agoThis, 100%.
- rwc 5y agoThis is the ideal multitasking model for the iPad
- yjftsjthsd-h 5y agoSo I have very mixed feelings. On the one hand, super cool; this is the first time in a long time I've actually considered switching away from i3, because this seems like a natural fit for how I actually want to work. On the other hand, Wayland decided that each and every compositor is responsible for everything, so AFAICT cardboard can only handle QWERTY right now, and that's a complete non-starter for me.
- boogerlad 5y agoWhere do you see that Cardboard handles only QWERTY?
- yjftsjthsd-h 5y agoEr, on my laptop? It might be more precise to say that I can't find any way to make it use anything else; manpages give me nothing, grepping for "layout" in the source tree gives me nothing (relevant; window layouts show up), and there's an open issue (https://gitlab.com/cardboardwm/cardboard/-/issues/30 https://gitlab.com/cardboardwm/cardboard/-/issues/30) asking for it, all of which makes me conclude that it doesn't appear to support doing anything but QWERTY. That said, I said "AFAICT" for a reason; if you can prove me wrong I'll be quite grateful (because, seriously, I would like to use this thing).
- boogerlad 5y agoOh I think I understand what you're saying now. You have a laptop with a QWERTY hardware layout, and rely on the WM to remap the keys to a different layout? Sorry I can't help out. Just wanted to understand the issue.
- yjftsjthsd-h 5y agoBasically, yes. The hardware is QWERTY, and something in software has to be fiddled with to get my preferred layout - on Linux console that's loadkeys, in X11 it's setxkbmap or a config file, other systems do their own thing. The annoying thing to me is that in X11, the X server (usually Xorg) was the single point of configuration, and setxkbmap would work with any window manager without any special support needed; in Wayland, the compositor replaces Xorg and the window manager, so every single compositor has to do its own support for changing keyboard layout. As a sibling comment notes, wlroots appears to make this easier to implement, but as far as I can make out (I'm not much of a programmer) the dev still has to actually wire it up to do that, and cardboard doesn't seem to have done so. In the general case, I'm annoyed because the end result is that even if everyone did implement it, every single compositor would have its own special setting, when before I could either run setxkbmap or set it in the Xorg configuration file and it would work regardless of what window manager I happened to be running today.
- tra3 5y agoA tiling window manager is one thing I still miss on MacOS from Linux. Back then I used ion3, I still think about it fondly. I've been eyeing yabai [0] for a while. It requires system integrity protection to be disabled. I initially misread it as being fully disabled, but it turns out once whatever extensions are injected, protection can be reenabled. Excited to try it once it's got a Monterey version. [0] https://github.com/koekeishiya/yabai https://github.com/koekeishiya/yabai
- gregwebs 5y agore-enabling only works on Intel so I had to drop it :( Amethyst is the only alternative I know of but I am still trying to get it to use the shortcuts that I want.
- maximilianroos 5y agoAmethyst is great!
- Steltek 5y agoCounterpoint: Amethyst is not great but it's also not Amethyst's fault. It does the best it can with MacOS's limited API support (really, using "accessibility" APIs, not windowing). Compared to i3 and other "standard" tiling WMs, you can't even really call it a tiling WM. - The shortcuts are hot garbage - Excessive windowing chrome everywhere takes up screen real estate - Tree hierarchy of windows/containers (e.g. horizontal box of vertical boxes of windows) is not possible/practical - Responsiveness to manual window manipulation is not great. I keep it installed because MacOS's default keyboard support for windowing is far worse, borderline unusable compared to Linux options. It sets the wrong expectations to talk about Amethyst (or MacOS in general) in the context of tiling WMs.
- tra3 5y agoBeen playing with Amethyst for a couple of hours; valid complaints, but it's true of others (magnet, sizeup, etc). I guess the only other option is yabai. I'm not clear what the story is with respect to SIP and Monterey.
- jrm4 5y agoWas very excited to see this idea, some time ago I was very excited by the thought of pretty much this same concept without the smooth scrolling, because I knew it could be done with some scripting in some other tiling wm that did "desktops" or "tags" on the fly. And then I saw Wayland. Bleh. So I'll ask -- anyone have any ideas, thoughts, pointers on doing something similar in X?
- sprash 5y agoIf you don't want to write a new window manager from scratch you could use icewm with the companion program icesh and implement this behavior in bash.
- jrm4 5y agoOoh thanks. I switch between Openbox and AwesomeWM these days and had kind of forgotten about IceWM. Icesh seems tighter than the other stuff I've seen in this space.
- surrTurr 5y agoIs there a way to also arrange windows vertically or is every window auto maxed out in vertical space?
- habitue 5y agoThis is cool. Would be good to see vertical scrolling as well
- coldblues 5y agoTruly awesome. This might be a game-changer for laptops. If I were actively using a laptop, I would definitely be using this.
- unfocussed_mike 5y agoWhy not use a series of full-screen apps like in Monterey? I don't get it. Horizontal scrolling is such a jarring experience.
- gjvc 5y agocontent vertical, context horizontal. Not so revolutionary.
- unfocussed_mike 5y agoOn macOS you can easily tile pairs of apps on a single virtual screen and switch between virtual screens with a gesture. But you always know you're on a particular screen; it's all or nothing. Arbitrary scroll left and right with arbitrary window widths is going to be tiresome, and good luck keeping up with what the window manager in that demo is doing when you're tired. Scrolling automatically to the window that has focus? Narp. Applications that are half off the screen? Why? It's just extra cognitive load. It's not good.
- jeremydw 5y agoPersonally I'd like it a lot. I think applications half of the screen can make sense. It'd be great to use to place things off screen that I may not need to use actively like Chrome devtools. Accessibility is an issue though. If i could three finger scroll context horizontally that would be nice.
- unfocussed_mike 5y agoBut isn't having things positioned half-off the screen one of the traditional overlapping-window manager patterns that tiling window managers are meant to avoid?
- DiggyJohnson 5y agoHow ready is this to replace i3?
- danuker 5y ago> The WM isn’t suitable for day-to-day use by most users. It doesn’t support drag-and-drop and other features most people would consider being necessities.
- yjftsjthsd-h 5y agoIt's not entirely clear to me whether that's meant to say that the software is in a beta state, or that it uses a sufficiently different model that it will never be entirely suitable for a general audience (like rather many existing tiling window managers)