Sublime Forum

Ungroup windows in the taskbar

#1

Actually, windows are gathered in the taskbar, wether they are in the same project or not ; meaning that moving one, is moving all.

I personally create several pairs of workspace/projects for my works (ex : css.sublime-project / css.sublime-workspace), and I open several of these workspaces of the same stuff I’m working on, during my work. But I would like to be able to sort my windows independently in the taskbar, so I can memorize their positions more easily and click on them more efficiently.

The thing is that if we don’t open all those workspaces in the correct sequence, the sorting is changed, and it’s difficult to click on the right workspace, especially given that the names of the windows aren’t customizable and depend on the file focused in the workspace.

Hope you’ll find my suggestion appreciable.

1 Like

#2

You can change grouping behavior in windows settings. It doesn’t seem like this is something applications have control over.

2 Likes

#3

Unfortunately I don’t know how to do that. I know the existence of “Taskbar settings” and to make windows to be nested in a single icon, but there’s no trace of something that could remove the gathering/grouping when they are not compacted.

It doesn’t seem like this is something applications have control over.

Yes they do, because other applications, like Google Chrome, manage to do it. I can move windows of different profiles separatly in the taskbar.

Just to be sure we’re talking about the same thing :

0 Likes

#4

Multiple processes and windows are grouped together on the Taskbar if they have the same Application User Model ID assigned to them.

The linked document shows how to assign individual Application User Model IDs to windows spawned by a single process.

If different windows owned by one process require different AppUserModelIDs to control taskbar grouping, use SHGetPropertyStoreForWindow ) to retrieve the window’s property store and set the AppUserModelID as a window property.

3 Likes

#5

I can’t reproduce the behaviour you’re seeing with chrome with multiple windows, it only happens when using multiple profiles (Like the guest session). Adding this behaviour would break taskbar collapsing as each windows would show up as a top level entry. Since this isn’t how other applications work on windows I don’t think it makes sense for Sublime Text to make this change. This https://rammichael.com/7-taskbar-tweaker seems to be recommended by some people for taskbar behaviour customisation and seems like a reasonable solution.

2 Likes

#6

Yeah, no, maybe. Or maybe other programs sometimes do the same, with several instances, when they are correctly coded.

Adding this behaviour would break taskbar collapsing as each windows would show up as a top level entry

No, it won’t break anything. Taskbar collapsing still work when opening several Google Chrome profiles, so it could be the same for any other program. You base your assumption on the fact that we wouldn’t want to see several icons when using the grouping option of Windows’ taskbar ; but that isn’t true : the so-called option talks about "masking label"s, not grouping things. That Windows’ grouping feature is just a stupid thing that nobody wants, and wich just work by detecting several instances of the same program (ex : Explorer). It doesn’t add any ergonomic improvement, and moreover, it isn’t dissociated from the “mask labels” option, wich is unexpected.

Since this isn’t how other applications work on windows I don’t think it makes sense for Sublime Text to make this change.

I don’t see how saying that other programs make the same mistake than SublimeText can be a valid argument. I think you just don’t want to make any effort to improve the software. Someone gave you informations about how to code correctly the program so it will assign windows IDs properly, but you don’t care.

This https://rammichael.com/7-taskbar-tweaker … seems like a reasonable solution.

No it is not. Installing a third-party software, with hooks on the windows’ core, and potential threats, just because developers don’t want to do their job correctly, isn’t reasonable.

Windows7/10 propose to “ungroup”, but that native feature is ruined by developers bad pratice that unfortunately lead to grouping windows again !!

Can we ungroup the facking windows, please ? Thank you.

0 Likes

#7

It’s not about some program “making a mistake” of some form, but rather how expectations develop from conventions and how Sublime Text would violate that if it chose to do things differently. Also, you should hold back on these accusations. The mere fact that someone took the time to read your post, tried to reproduce the problem and engaged in a conversation obviously means that he does care.

1 Like

#8

Google Chrome ungroup windows, and this persist when using the “compact” mode of the taskbar. So Chrome violates the Windows absurdity that nobody wants. Why Sublime Text couldn’t do the same ? For a question of ethics ?

I rather see a developer that doesn’t care about most developers needing to move the windows separatly, than a guy that wants to stick to an absurd convention that by the way I debunked (the option is associating two options in one, and the second one is unexpected).

Have you a cognitive problem, to understand that the whole mess is due to a semantic conflict between “grouping” and “grouping” ? Meaning that yeah, nesting windows in a single icon is grouping, and yeah, and in the other hand making the windows to stick together is grouping too : but when we talk about the first grouping, we do NOT necessarily talk about the second one, and vice-versa. So we don’t want a refusal for the second case, just based on the first one.

The mere fact that someone took the time to read your post, tried to reproduce the problem

You didn’t reproduced the problem, you said that you didn’t succeeded in reproducing it (quote : “I can’t reproduce the behaviour you’re seeing with chrome with multiple windows…”) and at the same time said that you understood how it worked (quote : “it only happens when using multiple profiles”), so I deduce that you just made a mental projection without testing anything in real.

and engaged in a conversation

You engaged it the most laziest way we can, by denying the problem and reorienting me to a wrong option that wasn’t doing what I asked. (quote : “You can change grouping behavior in windows settings. It doesn’t seem like this is something applications have control over.”). So, I deduce that you don’t facking care.

obviously means that he does care

(caugh) You will care when you will read people’s requests properly without filtering them to your personal desire, and when you’ll stop ignoring @deathaxe 's post, showing you the way to code properly the application. Yeah, of course, you will refuse it, because you feel we force you. But you have wrong arguments, so… just admit the reality.

Also, you should hold back on these accusations.

No. I don’t know if you’re a Sublime Text developer, I think you’re a fanboy that just contradict people on the forum to have the lesser to think about when going to sleep. Thanks to hold back your ego and to cease answering here, I know perfectly where you want that topic to fall in. The page gets bigger, and as you don’t give up and the altercation lasts longer, moderation will come and of course lock the topic. It’s always been like that in the past 15 years, so I would like this discussion to end in an other way.

Give a chance to other people to answer something, thank you. Yeah yeah, we understand, you absolutely want to avoid something that other developers do for easying the use of the GUI and improve their product. Don’t repeat yourself.

0 Likes

#9

This is certainly wrong. I personally (and maybe a little number of others) like the taskbar grouping as it keeps the taskbar clean with many apps/windows open.

I never felt the need to ungroup apps.

The only valid argument may be the missing ability to (re-)sort the different windows, but this is really a lack of Windows’ functionalities.

None of the apps running on my Windows “ungroups” all its windows. The behavior is the same for all of them.

Some of them are:

  • Firefox
  • VS Code
  • Kodi
  • MediaMonkey
  • LibreOffice

That said, I am with @FichteFoll. Please keep polite. This is the first time I see someone asking about such a topic at all. With the overall amount of feature and bugfix requests in mind - please understand such a very special request to need several considerations about its sense and consequences.

It seems you are not happy with the overall taskbar grouping feature of modern Windows versions which applies to the majority of windows applications - fine.

But is it really a reason for ST to break conventions?

0 Likes

#10

Yeah, of course, because one guy just contradict two other ones.

I personally (and maybe a little number of others) like the taskbar grouping as it keeps the taskbar clean with many apps/windows open.

And I’m sure you like to increase the number of click before reaching the window you want to open, more than that. It’s so useful to add more clicks to reach something. Given that when combining windows, one program just takes one icon, I suppose you open more than 20 programs at once in your taskbar before filling it out and needing to defend the so-called option for its vital necessity ? What’s your specs ?

I never felt the need to ungroup apps.

But you felt useful to comehere and help me for a second, before flipping and saying the opposite.

None of the apps running on my Windows “ungroups” all its windows. The behavior is the same for all of them.

Like Google Chrome and VScode ? Come one, try me. VScode ungroup windows, don’t deny it, I’ve just tested it.

Some of them are:

  • Firefox
  • VS Code

No, stop, STOOOOOP ! VScode does ungroup windows !

That said, I am with @FichteFoll. Please keep polite.

I won’t stay polite if I have liars in front of me. I hate when human beings act like hypocrits. I prefer truth above social codes to let other think they are right.

It seems you are not happy with the overall taskbar grouping feature of modern Windows versions which applies to the majority of windows applications - fine. But is it really a reason for ST to break conventions?

Yeah, it is. Given that Chrome and VScode do it. Just admit that it would be useful to ungroup windows, instead of making me lose my time to type those words in order to make you understand it.

0 Likes

#11

I wont lie to you. I use this third part application to hack into windows and fix his damn broken behavior.

Using 7+ Taskbar Tweaker I can configure it to allow me drag windows how much I want to using my right click mouse button. On the following I am demonstrating my use of the right and left mouse buttons:

  1. bug
1 Like

#12

I can’t reproduce the behaviour you’re seeing with chrome or VSCode. I agree with you that ungrouping the windows is better for usability, but it’s simply not how Windows 10 is supposed to work.

On the topic of politeness, I generally take the approach that when someone’s being nasty about a bug report or feature request it ends up not being prioritized.

0 Likes

#13

@addons_zz Thanks for the demo. I installed 7+ Taskbar Tweaker, haven’t no choice.

0 Likes

#14

This is exactly how I can see all apps to behave on my Windows 10 Pro 1903 x64 as well.

0 Likes

#15

Excuse me? The way Windows 10 is supposed to work is let applications decide whether they want their windows grouped, how many groups to have and choose a group for each window. This is what Application User Model IDs are for. Firefox, for example, assigns IDs based on profile, so that windows opened within particular profile stay grouped in the taskbar. This reduces visual clutter.

I can easily ungroup or regroup ST windows with a small Python or PowerShell script (which basically makes call to SHGetPropertyStoreForWindow and sets the value in window’s property store). Too bad I have to resort to scripts instead of using command-line switch to subl.exe. Within ST it would be even simpler to implement by using SetCurrentProcessExplicitAppUserModelID.

0 Likes

#16

SetCurrentProcessExplicitAppUserModelID as per the documentation sets the ID per process. Sublime Text windows all share a single process. Firefox can only open one profile per process, so if you have multiple profiles open you then have multiple distinct instances of Firefox running - hence why the windows are not grouped.

0 Likes

#17

No, grouping of Firefox windows has nothing to do with the number of processes it spawns. It has to do with usability. Firefox profile, in the first place, is a logical boundary. And that boundary is clearly communicated to user by grouping corresponding windows.

Once again: grouping of taskbar buttons in Windows is per AppUserModelID, not per process. SetCurrentProcessExplicitAppUserModelID is just a convenient shortcut to it (as a common use case). There’s absolutely no problem setting AppUserModelID per window using SHGetPropertyStoreForWindow. Firefox profile’s windows are grouped not because they are owned by the same process. They are grouped because Firefox cares to assign distinct AppUserModelIDs.

0 Likes

#18

Seems that’s correct - incognito windows for instance aren’t grouped in the taskbar. Note however that windows from the same profile are grouped and as far as I can tell there’s no way to ungroup them. If we were to behave like firefox you still wouldn’t get ungrouped tabs as requested upthread.

This does mean a workaround is possible.

0 Likes

#19

I don’t think the goal should be to behave like something. The goal should be to behave in a meaningful way for particular use case(s). I’d say a switch to subl.exe taking AppUserModelID to assign to a newly opened window would be perfect.

BTW, it is possible to ungroup any Firefox window – programmatically. I just moved a window out of one profile’s group. And I could move it to another’s profile group as well. In Windows, basically, arbitrary windows can be grouped, like Notepad with Calculator. With Python the corresponding Win32 calls are (using pywin32):

import pythoncom
import win32com.propsys
from win32com.propsys import propsys

ps = propsys.SHGetPropertyStoreForWindow(hwnd, propsys.IID_IPropertyStore)
pk = propsys.PSGetPropertyKeyFromName('System.AppUserModel.ID')
pv = propsys.PROPVARIANTType(group_name, pythoncom.VT_BSTR)
ps.SetValue(pk,pv)
ps.Commit()
0 Likes