Clicking dock application icons behave in different ways depending on the application

As a new user this is something that really annoys me and would like to know if there’s a way to restrict the action of clicking a dock icon to just open a new instance of the app if there’s no other running or bringing its window to the top if there’s an instance running.

There are some apps like discord that shows a little point to the left when it has an instance running. This is great and behaves as macOs. It is a clear way to know that we have a running instance of that application. If you click on it it makes discord the top most window. Nice!

But then we have apps like spotify, krita and others than don’t show any dot beside the icon when they have a running instance. Moreover, for example if I click on the spotify icon again it tries to open a new instance instead of bringing the previously open instance to the top of the window stack.

The dock has a feature to open new instances if needed and for me this is how it should be. You press right button and then there a “new window” option.

Is there anyway to make all this little mess behave the same? I mean, clicking new instance first time I click an icon and show the little dot, if I press on the icon again just bring window to the top and if I want to open a new instance I could press right button on the icon and select “new window”.

Sorry for the wall of text!

Cheers.

Dash to Dock offers this behavior options when clicking running applications, and you can set what best suites you

And this are the settings/options available for middle click

Thanks for answering.

I knew what you suggested but that is not a solution to what I’m experimenting.

I replaced Dash to Dock for Dash to Panel and everything works as expected by I don’t like several things about Dash to panel. So, I think it is a problem with Dash to Dock. Moreover, sometimes it behaves as it should with some taskbar icons (showing the dot when you have instances opened) and some other don’t.

Pretty weird.