vaporstrike

Dork, Streamer, Nerd

PFP by: Pericote9

Hello! I am a nerd who is working on a TTRPG game! Check out my Pinned posts for more info!

I am legally required to state that I am over 14,000 pokecoins in debt to Professor Willow.


Get a Free Copy of my game's alpha test!
vaporstrike19.itch.io/barrage-ttrpg-pre-alpha
IN THE WAKE OF THE DEATH OF COHOST, PLEASE CLICK THIS TO FIND MY WEBSITE, THE ONLY GUARANTEED PLACE TO FIND ALL PLACES I AM.
vaporstike.online/

YellowAfterlife
@YellowAfterlife

GitHub link

A video demo

On Windows, you don't commonly have to ask other windows about whether they want to be part of your Multi-Document Interface, so I wrote a little Windows Forms application that lets you set up columns and insert windows into them.

I also wrote a little browser extension so that the column can auto-expand when clicking on images on Twitter/Cohost/Mastodon.

The result is amusing - you can have feeds from different social networks, or different accounts, or even non-browser things all inside one "dashboard".


YellowAfterlife
@YellowAfterlife

But also there's a little theme editor so you can do whatever you want in general.

Apparently the only way to recolor a scrollbar is to write your own scrollbar from scratch (no wonder the custom scrollbars in web browsers all look slightly off) so I'll think about this at a later time.


YellowAfterlife
@YellowAfterlife

Also it can now re-insert windows into columns when re-opening a deck and there's a tiny update checker. Grab it from itch

Full changelog

New things

  • You can now have multiple decks!
    Each one has its own columns and can have its own color theme.
  • You can now automatically re-insert windows into columns when re-opening a deck!
    Good if you have a lot of windows / re-open the tool often. Configurable in deck settings.
  • There's now an option to auto-crop "normal" window borders!
    (thanks to Spitfire_x86)
  • There's now a very basic update checker because I found that you can ask itch about the version and it'll respond with 20 bytes of JSON.

Improvements

  • Lightbox extension is now a little smarter about what is worth and what isn't worth showing in a lightbox (e.g. cohost GIFs aren't shown in the lightbox because I can't figure out how to get the full GIF URL from the thumbnail).

Fixes

  • Fixed an oddity where minimizing the window could collapse deck contents into zero-height windows.
    (technically that's how Windows works - minimized windows are just very small and very far away)

You must log in to comment.

in reply to @YellowAfterlife's post:

this is a delight, thank you!
my only (probably very niche, difficult, and selfish) future hope would be for some way to support multiple rows, by capping the vertical height. use case i'm thinking of would be having something like a 2x3 layout on a vertical monitor.
this is already so useful though, what a wonder.

I'd like to support multiple windows with their own columns at the very least. That would allow for a similar effect except for when expanding a column.

A multi-row layout sounds somewhat doable, but will take a bit of work to arrange the columns and also some mechanism to specify row heights (in pixels? Percentages? Both?)

any permutation sounds lovely, including the multiple window option. the lightbox effect would presumably be constrained to any single window, but honestly that's still better than anything we had going on in tweetdeck and its cohort, as this is so far into the New Functionality Zone.

i could probably see cases for pixels or percents (or both); from my narrow view either would be completely fine.

aside from all of the wishlisting, i just want to again say i'm having an absolute blast with this.

this is extremely cool! i can easily see myself setting up a separate browser profile just to easily repopulate everything after reboots and such

edit: oh wow i just better realized how you've implemented the viewport/cropping, so that it actually secretly expands the size of the 'window' in order to continue to fill the column. how clean!

It's more about SetParent than WinForms - where Windows says "of course you can embed this application into a completely unrelated process", Mac/Linux's response would be "you're going to jail" and you'd have to fall back to something silly like rendering a background window into a bitmap and then rendering that bitmap.

I think you can do this with Electron - I checked and it appeared to allow multiple "views" inside one window using BrowserWindow.addBrowserView, but then you'll need to re-create some other elements of a browser or base this on some open-source Chromium project.

in reply to @YellowAfterlife's post:

Pinned Tags