Computer monitors have been growing up over the years. Once small-screened and bulky, the monitors of today are larger and wider — perfect for multi-window productivity. Some displays can even rotate to a vertical portrait orientation, allowing coders and photo editors to see more of their content. One drawback of going vertical is the lackluster multi-window experience — and Chrome OS does nothing to fix this (except in tablet mode). As it is, you can only dock windows to the left or right side of the screen, resulting in a squished mess. Your multitasking nightmares may soon be over, as Google's been working on some critical changes to how Chrome OS works with vertical monitors.
We recently spotted a handful of new commits over at the Chromium Gerrit that prepare better support for vertical monitors on Chrome OS. While the following code is just a prototype and will probably not merge, it paints a clear picture of what the feature will do once implemented:
[prototypeV2] Vertical split screen snap in clamshell mode Vertical split screen for external monitor and dooly device:
- Allow snapping top/bottom for vertical with top/bottom highlight. The keyboard shortcut also working correctly.
- Display orientation
Unlike before, you'll be able to drag applications to the top and bottom of the screen to dock them into place, which will occupy a half of the display. This gives applications more horizontal space to show their content, as opposed to the cramped mess found today.
It's worth mentioning that the "vertical split screen" moniker used above is misleading — Google renamed it to "Vertical Snap State" in a separate commit, a better fit for this feature. There are a few housekeeping adjustments to help Chrome OS components adapt to the changes — none of which you should worry about.
The prototype and a merged commit lay the groundwork for this work-in-progress code that's likely going to merge soon. We can also expect an internal switch to test this feature in a future Chrome OS Canary build.
snap_state: Make display layout in clamshell align with tablet mode
Previously, clamshell layout always be horizontal and primary when
considered by split_view_controller. This CL make display layout in
clamshell consistent with tablet mode, i.e four possible layouts:
primaryLandscape, primaryPortrait, secondaryLandscape, and
- `IsLayoutHorizontal(window/display)` checks display.width > height
in both clamshell and tablet modes.
- `IsLayoutPrimary(win/dis)` checks for ActiveRotation in both modes.
There isn't much to deduce here, except that it borrows the vertical snapping logic from tablet mode. With this code, clamshell devices will have two additional layouts to match tablets: secondary landscape, and secondary portrait. Google hasn't refactored the split-view code to adapt to this change, so it will likely take a bit more time before we'll be able to test it out in Chrome OS Canary.
Vertical snapping won't affect my productivity anytime soon, but the improved window management is a big deal for coders and portrait artists. A vertical screen space can increase a developer's view of their code by a whopping 82%, and this multitasking improvement helps them even more. Even Windows 10 doesn't have vertical snaps built-in — you'll need to use FanzyZones for that.
The feature still has ways to go before it's ready for everyone on Chrome OS Stable, but I'm happy that Google is improving its window management on vertical displays. Fingers crossed Google has quarter tiling on its radar — snapping four windows on each quadrant of the display would be a huge win for multi-taskers like myself.