Zorin taskbar conflict when switching between 1 and 2 monitor setups

Hello there

Recently I enabled Zorin Dash with the GNOME Tweaks tool. On a 2-monitor setup, the normal Zorin Taskbar is on my laptops screen and Zorin Dash on my secondary monitor.
Problem is, when the secondary monitor is off, the Zorin Dash Taskbar jumps to the primary monitor and this is how it looks. Autohide breaks aswell, so it just permanently looks like that. It looks bad…
I would rather have it turned off when only 1 monitor is available, or at least hidden so that it doesnt look so ridiculous.

Many thanks,
Grigory

2 Likes

Hi @gpavlov ,

I understand the inconvenience you’re facing with the Zorin Dash on a dual-monitor setup. Here’s a potential solution to your issue:

Potential Solution

This problem can be potentially fixed using the xrandr command and a custom script that can detect when your secondary monitor is turned off. This way, we can disable the Zorin Dash when only one monitor is active.

  1. Check monitor names:
    First, find out the name of your monitors using the xrandr command. The names will be something like HDMI-1, eDP-1, etc. Let’s assume your secondary monitor is named HDMI-1.

    xrandr
    
  2. Script to detect monitor status:
    Create a script named monitor_check.sh and paste the following content:

    #!/bin/bash
    
    # Check if HDMI-1 is connected
    if xrandr | grep "HDMI-1 connected"; then
        # Your command to enable Zorin Dash here
    else
        # Your command to disable Zorin Dash here
    fi
    
  3. Integrate with GNOME Tweaks:
    In the script, replace the comments (# Your command to enable/disable Zorin Dash here) with the actual commands or operations to toggle Zorin Dash. You might need to check GNOME Tweaks’ documentation or related tools to get the exact command for this.

  4. Make the script executable:

    chmod +x /path/to/monitor_check.sh
    
  5. Run the script automatically:
    You can set this script to run at intervals using cron or use a tool like watch to keep checking continuously.

    For example, using watch:

    watch -n 10 /path/to/monitor_check.sh
    

    This will run the script every 10 seconds to check the status of the monitors.

This approach provides a way to automate the process of checking the monitor status and adjusting the Zorin Dash accordingly. It might not be the most elegant solution, but it should serve as a workaround until a more streamlined solution is available from the Zorin OS development team.

I hope this helps!