Window Previews in the Task Bar (Test Implementation)

TL;DR: I made this for myself and thought I’d post it here in case others wanted it.

I was really discouraged when I installed Ubuntu Budgie and discovered it didn’t have window previews in the task bar. Even the dash to panel extension for gnome has this feature. So, after a week or so of feeling the pain, I dove in and implemented it myself.

Here’s what it looks like:

In order to get this for yourself you’ll have to rebuild budgie-desktop. This isn’t for the faint of heart, but if you’re like me and really missing those window previews. You can find it here:

To build, clone that repository then run the following

cd budgie-desktop
mkdir build
ninja -j$(($(getconf _NPROCESSORS_ONLN)+1)) -C build
sudo ninja install -C build

This will screw up your desktop a little. To fix it reinstall the theme and layout selector (and other ubuntu budgie stuff) by installing the ‘budgie welcome’ snap in ‘Software’. You can also run this from the command line:

sudo snap install budgie-welcome

Then open
‘Budgie Themes and Layouts’ > ‘Desktop Layout’
and reselect your layout.

This also includes fixes for some other annoyances. Including better indicators.

What it doesn’t include: it removes window actions other than ‘New Window’ (like ‘New Incognito Window’ in Chrome) it also removes the ability to edit window properties like ‘Always on Top’ from the taskbar. You can still use these features. They just aren’t in the taskbar anymore. I don’t really use these things and didn’t want to spend the extra time implementing them. If others really want them I may add them. No promises.

3 Likes

I could only include one image in the above post, so heres images that show the Indicator fixes:

Before
bad-ui

After
good-ui

Congrats!

I haven’t had time to test this myself - but I’ve quickly knocked up a PPA (20.04 only) for folks to test and feedback using the three commits in your git repo.

sudo add-apt-repository ppa:ubuntubudgie-dev/iconappletpreviews
sudo apt upgrade

To remove the test PPA:

sudo ppa-purge ppa:ubuntubudgie-dev/iconappletpreviews
2 Likes

Wow, thanks. That should really help people who want to try it out!

Please let me know if any bugs come up or you have any feedback.

@waylonflinn looks really nice! Silly question, this works on icon tasklist, right? I installed the ppa, upgraded, but no effect yet. Should I take any additional action?

@Jacob Vlijm yeah - just tried on a live session. I don’t see any options so not sure what is going on. The patch has definitely applied though as part of the build - https://launchpadlibrarian.net/494169330/buildlog_ubuntu-focal-amd64.budgie-desktop_10.5.1-6.0ppaiconpreviews_BUILDING.txt.gz

EDIT:

ok - kicked off a new build - this time using a diff patch between upstream and waylon’s repo rather than just concatenating together all three commits.


version - budgie-desktop - 10.5.1-6.0ppaiconpreviews1

ah - right - I see - the new popover only appears on right click. Not very obvious and goes against the general view of budgie accessibility where things should be done on a left click / hover

IMHO - a previews option for icon-task-list applet budgie-desktop-settings should be available - so when enabled - hovering over the icon would display the new popover

Ah, right. The project might also benefit from a slight rework on the appearance; it’s quite huge and theming is quite intimidating :slight_smile:
Also not sure if it shouldn’t be just a preview without mini-icon, adding the favourite / remove / close functionality etc.

With grouping enabled - it is possible to see multiple previews - although with many similar previews the right-most “+” (in this case) can be off-screen

Otherwise very nice work though! Congratz!

Thanks for the feedback.
Since I’ve done very little development in gtk I basically just replaced the existing Popover with a new one. That’s why it comes up on right click, it’s also why it includes the favorite, close and close all functionality. That’s what the old one did. My preference would also be to have it appear on hover and be a bit more streamlined.

Regarding the size, it looks like it’s bigger for you. I can fit about six (6) preview windows before things go off the edge of the screen. This aspect was also a bit of a copy job. I just took the existing Window Preview code used for the alt-tab based system and ported it over. Thanks for checking it out!

Out of curiosity, I checked how windows is doing the job. On Windows 10, if previews do not fit on the monitor, first step is to reduce the size of the previews. If size still exceeds the width of the monitor, previews switch to a list view.

Variable size is not necessarily done imo, just reducing preview size (and mostly the huge border and skipping the left over tools) would be a great improvement i.c.w. switching to a list view in case of out-sizing.

normal size:

reducing size to fit:

switching to list view:

Thanks for doing the research. I don’t have time to make these changes right now, but feel free to build on what I’ve already done.

Question for you guys. After I build and install this I lose my ‘Redmond’ style budgie menu. Is there an easy way to get that back?

If you are building from upstream sources then it should still be installed … and certainly listed in the budgie panel applets to add.

1 Like

Maybe I should just be modding and building from the ubuntu budgie sources instead of upstream? Every time I just build and install upstream it messes things up.

Hmm… as long as you are building into the locations debian and ubuntu expect all should work ok.

  meson --prefix=/usr  --libdir=/usr/lib

  ninja
  sudo ninja install
1 Like

Thanks for being so helpful man. That’s probably what I’m doing wrong. I’m using the build command supplied in the docs for upstream and it’s probably not using the correct prefixes. Looks like it doesn’t include the libdir argument.