Processing Ajax...

Title
Close Dialog

Message

Confirm
Close Dialog

Confirm
Close Dialog

Confirm
Close Dialog

User Image
dysphasi
2 discussion posts
Hi there,

I can see how to setup monitor profiles / set hot keys.

However, what I would ideally like to do is bind keys to just rotate individual montitors, without affecting the others.

I use three monitors, and swap and change which I have in landscape and portrait quite regularly.

Using monitor profiles isn't ideal, given that I can have 8 different combinations... which is just not really practical and would require me to remember which key is set to which combination.

What I am looking for is the ability to bind just 3 keys, one to rotate the left monitor, another key to rotate the middle monitor and one more to rotate the right.

Each key press would switch from landscape to portrait when first pressed and then back to landscape when pressed again.

Is there a way I can do this?

My thanks in advance! :)
Apr 30, 2020  • #1
Keith Lammers (BFS)'s profile on WallpaperFusion.com
There isn't a way to do this at the moment, sorry! I will put it on our feature request list for scripted functions. If we could add a function for setting the rotation on a monitor, then it would be easy to create scripted functions that do what you're looking for :)

If we're able to add it in a future update, we'll be sure to let you know.

Thanks!
May 1, 2020  • #2
User Image
dysphasi
2 discussion posts
I shall look forward to it! :-)
May 1, 2020  • #3
User Image
About47Pandas11181
1 discussion post
Looking for a solution for this as well.

According to my math-- its been roughtly 1339 days since this post. Or 191 weeks, 32136 hours, 1,928,160 minutes or some 115 million seconds.

I tried writing up some code-- but I dont know Csharp that well.
This is what I tied though and variations of it. I guess I could just do it myself in Python of C++

Code

using System;
using System.Drawing;
using BinaryFortress.Windows;

public static class DisplayFusionFunction
{
    public static void Run(IntPtr windowHandle)
    {
        // Assuming you are using Monitor 1, change this number if you want to target a different monitor.
        int monitorId = 1; 

        // Get the current rotation of the monitor
        DisplayRotation currentRotation = BFS.Display.GetMonitorRotation(monitorId);

        // Determine the new rotation based on the current rotation
        DisplayRotation newRotation;
        if (currentRotation == DisplayRotation.Rotate0 || currentRotation == DisplayRotation.Rotate180)
        {
            // If the current rotation is landscape, change to portrait
            newRotation = DisplayRotation.Rotate90;
        }
        else
        {
            // If the current rotation is portrait, change to landscape
            newRotation = DisplayRotation.Rotate0;
        }

        // Set the new rotation
        BFS.Display.SetMonitorRotation(monitorId, newRotation);
    }
}
Dec 2, 2023  • #4
Owen Muhlethaler (BFS)'s profile on WallpaperFusion.com
This isn't something we've added in but it is still open on our feature request list so I've added your vote to it.

Thanks!
Dec 4, 2023  • #5
Subscribe to this discussion topic using RSS
Was this helpful?  Login to Vote(-)  Login to Vote(1)