[WORKAROUND] Always show all icons and notifications on the taskbar in Windows 11.

Hello beautiful peoples!


The system tray, also known as the notification area, is a section of your Windows taskbar located on the far right side, next to the clock and calendar. This area houses various icons that provide quick access to important system functions and app notifications. You might find icons for:

• Volume Control: Adjust your sound settings.

• Network Connection: View your internet connection status.

• Battery Status (for laptops): Check your battery level.

• Calendar / Clock: View the date and time, or access the calendar.

• Running Apps: Some applications will have icons here for quick access and status updates.

While you can customize which icons are visible in the system tray, some applications tend to hide their icons in the hidden section (often accessible by clicking the upward-facing arrow).


I absolutely despise that… I want to see those icons. ALL of them – ALL the time. I have a 2560 x 1440 34″ screen. I do not lack screen real estate. I don’t want to search for those icons / notifications.

“BUT BUT BUT…” SHHHUSH! But nothing! I don’t care. I want to see them ALL. ALL the time. Period.

Even though you can set all icons to be visible manually, many apps will hide their icons in the tray again after an update (yes Discord and Nvidia – I am looking at You!), which means you have to set them to visible manually again – and that pisses me off.

If you look online, you’ll find a plethora of “solutions” to keep your system tray icons visible permanently in Windows 11. “Secret codes” that will open the previously accessible Windows 10 menus OR regedit entries… Most of these solutions are outdated and don’t work properly at all, making them more of a headache than a help.

Recently I have discovered a workaround. Its NOT a proper solution but it does what I need it to do… Interested? OK. Here is what I did:

⁃ I have created a .ps1 PowerShell script that makes sure that all the icons are set to visible
⁃ I have created scheduled task that runs ALL DAY EVERY DAY every 5 minutes and fixes any recently hidden icons so that they are visible.

Yes its not a proper solution. This is why I call it a workaround. But it WORKS unlike other “solutions” that waste your time. It also taught me a bit about PowerShell scripts and about creating custom Scheduled Tasks in Microsoft Windows. Its a win in my books.

Now for all those who – like me – NEED this in their lives – here is how You do it…

Open File Explorer window and click on This PC button in the left pane of the Window.


Now double click on Local Disk C: listed in Devices and drives section.


Now right click in an empty space of the right pane of the window and choose New and then Folder from the cascading menu.


Now type in the name of the folder Scripts and press Enter on the keyboard to confirm.

Double click on the Scripts folder.


Now right click in an empty space of the right pane of the window and choose Open in Terminal.


Copy the code below and when the Windows PowerShell window opens right click into it to paste:

echo > TrayIcons.ps1

Now confirm it with Enter.


Close the Windows PowerShell window and direct your attention to the File Explorer window You have opened previously.

Right click on TrayIcons file and choose Edit in Notepad from the menu.


Copy the code below and paste it into the newly open Notepad window.

$RegistryPath = 'HKCU:\Control Panel\NotifyIconSettings'
$Name = 'IsPromoted'
$Value = '1'
Get-ChildItem -path $RegistryPath -Recurse | ForEach-Object {New-ItemProperty -Path $_.PSPath -Name $Name -Value $Value -PropertyType DWORD -Force }

Now click on File and then on Save in the Notepad window menu.

Now close the Notepad window and the File Explorer window.

GREAT! First step – creating the PowerShell script – completed!

Lets keep going.

Click on Start Menu and type in Scheduler and then click on Run as administrator icon in the right pane of the Start Menu window.


When the Task Scheduler window opens first left click and then right click on Task Scheduler Library in the left pane of the window and choose New Folder from the menu.

Type in Custom as name and click OK to confirm.


Now click on the arrow to the left of Task Scheduler Library in the left pane of the window so that it expands and shows its content.

Now left click on the Custom folder You have just created to highlight it.


Now click on Create Task… in the right pane of the window.


You have now opened the Task creator window and You’re in the General tab:


‣ Type in TrayIcons in the Name section

‣ Switch the radio button from Run only when user is logged on to Run whether user is logged in or not

‣ Tick the box next to Run with highest privileges


Now switch to Triggers tab


‣ Click New to open a New Trigger window


‣ Switch the radio button from One time to Daily

‣ Tick the box next to Repeat task every:

‣ In the same line click on the dropdown menu and change it from 1 hour to 5 minutes.

‣ In the same line click on the dropdown menu next to for a duration of: and change it from 1 day to Indefinitely.


‣ Make sure that the tick box next to Enabled is present

‣ Click OK to close the New Trigger window.


You should now see a trigger Daily listed.


Now switch to Actions tab


‣ Click New


‣ Type in powershell.exe in the Program/script: section

‣ Copy the code below and paste into the Add arguments (optional): box

-ExecutionPolicy Bypass -File "C:\Scripts\TrayIcons.ps1"

‣ Click OK to close the New Action window.

You should now see an action Start a program listed.


Now switch to Conditions tab

‣ You can skip this step if You’re using a laptop. Untick the box next to Start the task only if the computer is on AC power.


Now switch to Settings tab

‣ Tick the box next to If the task fails, restart every:


Look into the system tray. It will PROBABLY look something like this:


Click OK to close the Task Creation window.


Log in using Your account password.

You can now see that a new scheduled task was created.


Have a look at the system tray now… IF everything went according to plan it should look something like this:


Yes, its almost 3 in the morning… I couldn’t sleep.

You can now close the Task Scheduler.

Mission accomplished. All your tray icons are now shown. If any of the icons hides after an update all you have to do is wait for about 5 minutes and look into the system tray again. All the icons should be present and accounted for again…

I hope this helps!

Catch you on the flip side,

AndrzejL

Avatar photo

AndrzejL

“Some men just want to watch the world burn.”

Leave a Reply

Your email address will not be published. Required fields are marked *