<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/">
<channel>
<title>DisplayFusion RSS: Help with borderless fullscreen function and mouse offset.</title>
<atom:link href="https://www.displayfusion.com/Discussions/RSS/?TopicID=198b026a-7e82-4055-a86a-49c84b6872e5" rel="self" type="application/rss+xml" />
<link>https://www.displayfusion.com/Discussions/RSS/?TopicID=198b026a-7e82-4055-a86a-49c84b6872e5</link>
<description>DisplayFusion RSS: Help with borderless fullscreen function and mouse offset.</description>
<lastBuildDate>Mon, 05 Oct 2026 13:34:20 GMT</lastBuildDate>
<language>en</language>
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<generator>https://www.displayfusion.com/Discussions/RSS/?TopicID=198b026a-7e82-4055-a86a-49c84b6872e5</generator>
<item>
<title>RE: Help with borderless fullscreen function and mouse offset.</title>
<link>https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5#4</link>
<pubDate>Tue, 08 Aug 2023 16:56:52 GMT</pubDate>
<dc:creator>Binary Fortress Software</dc:creator>
<guid isPermaLink="false">https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5#4</guid>
<category>DisplayFusion</category>
<description><![CDATA[We took a look into this but it doesn't look like it's something we can fix unfortunately, sorry!]]></description>
<content:encoded><![CDATA[<div class="CTDiscussions">
We took a look into this but it doesn't look like it's something we can fix unfortunately, sorry!
</div>
]]></content:encoded>
</item>
<item>
<title>RE: Help with borderless fullscreen function and mouse offset.</title>
<link>https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5#3</link>
<pubDate>Mon, 31 Jul 2023 15:02:48 GMT</pubDate>
<dc:creator>Binary Fortress Software</dc:creator>
<guid isPermaLink="false">https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5#3</guid>
<category>DisplayFusion</category>
<description><![CDATA[Yes the mouse click is off from the pointer by (x,y) amount x and y being the about the border size it got rid of.
Like if I had my mouse on top  1/2 of the 'Delete Char' button it would be highlighting the 'change world tier button instead'
Example screenshot the 'change world tier' Clickable ...]]></description>
<content:encoded><![CDATA[<div class="CTDiscussions">
Yes the mouse click is off from the pointer by (x,y) amount x and y being the about the border size it got rid of.<br/>
<br/>
Like if I had my mouse on top  1/2 of the 'Delete Char' button it would be highlighting the 'change world tier button instead'<br/>
<br/>
Example screenshot the 'change world tier' Clickable area would be about the blue box I added to the screenshot from the tip of the mouse cursor. without the function it stays within its normal box.
</div>
]]></content:encoded>
</item>
<item>
<title>RE: Help with borderless fullscreen function and mouse offset.</title>
<link>https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5#2</link>
<pubDate>Mon, 31 Jul 2023 14:46:28 GMT</pubDate>
<dc:creator>Binary Fortress Software</dc:creator>
<guid isPermaLink="false">https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5#2</guid>
<category>DisplayFusion</category>
<description><![CDATA[Is it your mouse clicks that are offset from the actual pointer?]]></description>
<content:encoded><![CDATA[<div class="CTDiscussions">
Is it your mouse clicks that are offset from the actual pointer?
</div>
]]></content:encoded>
</item>
<item>
<title>Help with borderless fullscreen function and mouse offset.</title>
<link>https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5</link>
<pubDate>Sat, 29 Jul 2023 00:37:48 GMT</pubDate>
<dc:creator>Binary Fortress Software</dc:creator>
<guid isPermaLink="false">https://www.displayfusion.com/Discussions/View/help-with-borderless-fullscreen-function-and-mouse-offset/?ID=198b026a-7e82-4055-a86a-49c84b6872e5</guid>
<category>DisplayFusion</category>
<description><![CDATA[Hello I found this borderless fullscreen macro which does seem to work with diablo 4, but when I use it my mouse if offset in the y-axis by the size of the windowed mode bar a the top I believe. the x axis is fine cause there is almost no bar offset there but it might be off by a few pixels. Is t...]]></description>
<content:encoded><![CDATA[<div class="CTDiscussions">
Hello I found this borderless fullscreen macro which does seem to work with diablo 4, but when I use it my mouse if offset in the y-axis by the size of the windowed mode bar a the top I believe. the x axis is fine cause there is almost no bar offset there but it might be off by a few pixels. Is there a way to fix this in the function?<br/>
<br/>
<div class="col-md-12 BoxWrap"><div class="Box table-responsive"><a name="code" style="width:0; height:0;"></a><h2 class="TableTitle" style="border:0"><div class="TableTitleText">Code</div><div class="TitleButtons"><div class="TableTitleButton"><a href="#" onclick="return false;" data-clipboard-target="#code01a10c45bffb75c6b869306cb2557a74" class="ClipboardCopyControl"><img src="https://www.displayfusion.com/MediaCommon/SVGs/FontAwesome/clone.blue.svg" style="box-sizing:border-box;position:relative;overflow:hidden;width:auto;max-width:16px;height:16px;" /><span class="Text">Copy</span></a></div><div class="TableTitleButton"><a href="#" onclick="bfs.util.codeEditorSelectAll('code01a10c45bffb75c6b869306cb2557a74Js'); return false;"><img src="https://www.displayfusion.com/MediaCommon/SVGs/FontAwesome/square-check.blue.svg" style="box-sizing:border-box;position:relative;overflow:hidden;width:auto;max-width:16px;height:16px;" /><span class="Text">Select All</span></a></div></div></h2><div class="TableTitleContent table-responsive"><div class="AceEditorWrapper" style="border-top:solid 1px var(--color-default-border);padding:0"><pre id="code01a10c45bffb75c6b869306cb2557a74Js" name="code01a10c45bffb75c6b869306cb2557a74Js" contenteditable="true" spellcheck="true" class="skiptranslate" style="width:100%;min-height:75px">using System;&#xA;using System.Drawing;&#xA;&#xA;// The &#x27;windowHandle&#x27; parameter will contain the window handle for the:&#xA;//   - Active window when run by hotkey&#xA;//   - Window Location target when run by a Window Location rule&#xA;//   - TitleBar Button owner when run by a TitleBar Button&#xA;//   - Jump List owner when run from a Taskbar Jump List&#xA;//   - Currently focused window if none of these match&#xA;public static class DisplayFusionFunction&#xA;{&#xA;    public static void Run(IntPtr windowHandle)&#xA;    {&#xA;        //get the window styles&#xA;        BFS.WindowEnum.WindowStyle style = BFS.Window.GetWindowStyle(windowHandle);&#xA;        &#xA;        //if the window has any borders and titles, make it full screen&#xA;        if(BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_CAPTION, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_SYSMENU, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX, windowHandle))&#xA;        {&#xA;            //save the size and position of the window&#xA;            SaveWindowSize(windowHandle);&#xA;            &#xA;            //make sure to remove the styles. just toggling these settings may turn on something we dont want&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_CAPTION;&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_SYSMENU;&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX;&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX;&#xA;            &#xA;            //add Maximize Window in case it doesn&#x27;t exist (needs to be done due to bug with DisplayFusion)&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX;&#xA;            &#xA;            //set the window style&#xA;            BFS.Window.SetWindowStyle(style, windowHandle);&#xA;            &#xA;        &#xA;            //get the bounds of the monitor that the window is in&#xA;            Rectangle bounds = BFS.Monitor.GetMonitorBoundsByWindow(windowHandle);&#xA;            &#xA;            //size and position the window to be fullscreen within the monitor&#xA;            BFS.Window.SetSizeAndLocation(windowHandle, 0, 0, 3440, 1440);&#xA;            &#xA;            //remove Maximize Window&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX;&#xA;            BFS.Window.SetWindowStyle(style, windowHandle);&#xA;        }&#xA;        else&#xA;        {&#xA;            //if we got here, then the window must already be fullscreen.&#xA;            //add non-fullscreen styles back to the window&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_CAPTION;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_SYSMENU;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX;&#xA;            &#xA;            //try and load saved window size and position&#xA;            bool isMaximized;&#xA;            Rectangle bounds = GetSavedWindowSize(windowHandle, out isMaximized);&#xA;            &#xA;            //set the window style&#xA;            BFS.Window.SetWindowStyle(style, windowHandle);&#xA;            &#xA;            //if we couldnt load the size, exit the script&#xA;            if(bounds.Equals(Rectangle.Empty))&#xA;                return;&#xA;                &#xA;            //if the window was maximized, maximize it, otherwise set the window size and location with the values we loaded&#xA;            if(isMaximized)&#xA;                BFS.Window.Maximize(windowHandle);&#xA;            else&#xA;                BFS.Window.SetSizeAndLocation(windowHandle, bounds.X, bounds.Y, bounds.Width, bounds.Height);&#xA;        }&#xA;    }&#xA;    &#xA;    //this is a function that will save the window size and position in window properties&#xA;    private static void SaveWindowSize(IntPtr windowHandle)&#xA;    {&#xA;        Rectangle bounds = BFS.Window.GetBounds(windowHandle);&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_X&quot;, new IntPtr(bounds.X));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_Y&quot;, new IntPtr(bounds.Y));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_Width&quot;, new IntPtr(bounds.Width));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_Height&quot;, new IntPtr(bounds.Height));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_IsMaximized&quot;, new IntPtr(BFS.Window.IsMaximized(windowHandle) ? 1 : 0));&#xA;    }&#xA;    &#xA;    private static Rectangle GetSavedWindowSize(IntPtr windowHandle, out bool isMaximized)&#xA;    {&#xA;        Rectangle bounds = new Rectangle();&#xA;        bounds.X = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_X&quot;).ToInt32();&#xA;        bounds.Y = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_Y&quot;).ToInt32();&#xA;        bounds.Width = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_Width&quot;).ToInt32();&#xA;        bounds.Height = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_Height&quot;).ToInt32();&#xA;        isMaximized = (BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_IsMaximized&quot;).ToInt32() == 1);&#xA;        return bounds;&#xA;    }&#xA;}</pre><textarea id="code01a10c45bffb75c6b869306cb2557a74" name="code01a10c45bffb75c6b869306cb2557a74" style="position:absolute;top:0;left:-999999px;width:1px;height:1px"></textarea></div>
</div></div></div><br/>
<br/>
This one works on WoW but not diablo 4. But the mouse doesnt have the offset issue.<br/>
<div class="col-md-12 BoxWrap"><div class="Box table-responsive"><a name="code" style="width:0; height:0;"></a><h2 class="TableTitle" style="border:0"><div class="TableTitleText">Code</div><div class="TitleButtons"><div class="TableTitleButton"><a href="#" onclick="return false;" data-clipboard-target="#code01a10c45c00371c0846d6b62f571476c" class="ClipboardCopyControl"><img src="https://www.displayfusion.com/MediaCommon/SVGs/FontAwesome/clone.blue.svg" style="box-sizing:border-box;position:relative;overflow:hidden;width:auto;max-width:16px;height:16px;" /><span class="Text">Copy</span></a></div><div class="TableTitleButton"><a href="#" onclick="bfs.util.codeEditorSelectAll('code01a10c45c00371c0846d6b62f571476cJs'); return false;"><img src="https://www.displayfusion.com/MediaCommon/SVGs/FontAwesome/square-check.blue.svg" style="box-sizing:border-box;position:relative;overflow:hidden;width:auto;max-width:16px;height:16px;" /><span class="Text">Select All</span></a></div></div></h2><div class="TableTitleContent table-responsive"><div class="AceEditorWrapper" style="border-top:solid 1px var(--color-default-border);padding:0"><pre id="code01a10c45c00371c0846d6b62f571476cJs" name="code01a10c45c00371c0846d6b62f571476cJs" contenteditable="true" spellcheck="true" class="skiptranslate" style="width:100%;min-height:75px">using System;&#xA;using System.Drawing;&#xA;&#xA;// The &#x27;windowHandle&#x27; parameter will contain the window handle for the:&#xA;//   - Active window when run by hotkey&#xA;//   - Window Location target when run by a Window Location rule&#xA;//   - TitleBar Button owner when run by a TitleBar Button&#xA;//   - Jump List owner when run from a Taskbar Jump List&#xA;//   - Currently focused window if none of these match&#xA;public static class DisplayFusionFunction&#xA;{&#xA;    public static void Run(IntPtr windowHandle)&#xA;    {&#xA;        //Hide Taskbar&#xA;        //BFS.Taskbar.SetWindowsTaskbarAutoHide(!BFS.Taskbar.IsWindowsTaskbarAutoHideEnabled());&#xA;        &#xA;        //get the window styles&#xA;        BFS.WindowEnum.WindowStyle style = BFS.Window.GetWindowStyle(windowHandle);&#xA;        &#xA;        //if the window has any borders and titles, make it full screen&#xA;        if(BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_CAPTION, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_SYSMENU, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX, windowHandle) ||&#xA;            BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX, windowHandle))&#xA;             //|| BFS.Window.HasWindowStyle(BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX, windowHandle))&#xA;        {&#xA;            //save the size and position of the window&#xA;            SaveWindowSize(windowHandle);&#xA;            &#xA;            //make sure to remove the styles. just toggling these settings may turn on something we dont want&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_CAPTION;&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_SYSMENU;&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX;&#xA;            style &amp;= ~BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX;&#xA;            //style &amp;= ~BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX;&#xA;        &#xA;            //get the bounds of the monitor that the window is in&#xA;            Rectangle bounds = BFS.Monitor.GetMonitorBoundsByWindow(windowHandle);&#xA;            &#xA;            //set the window style&#xA;            BFS.Window.SetWindowStyle(style, windowHandle);&#xA;                        &#xA;            //size and position the window to be fullscreen within the monitor&#xA;            BFS.Window.SetSizeAndLocation(windowHandle, bounds.X, bounds.Y, bounds.Width, bounds.Height);&#xA;        }&#xA;        else&#xA;        {&#xA;            //if we got here, then the window must already be fullscreen.&#xA;            //add non-fullscreen styles back to the window&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_CAPTION;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_SYSMENU;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX;&#xA;            style |= BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX;&#xA;            &#xA;            //try and load saved window size and position&#xA;            bool isMaximized;&#xA;            Rectangle bounds = GetSavedWindowSize(windowHandle, out isMaximized);&#xA;            &#xA;            //set the window style&#xA;            BFS.Window.SetWindowStyle(style, windowHandle);&#xA;            &#xA;            //if we couldnt load the size, exit the script&#xA;            if(bounds.Equals(Rectangle.Empty))&#xA;                return;&#xA;                &#xA;            //if the window was maximized, maximize it, otherwise set the window size and location with the values we loaded&#xA;            if(isMaximized)&#xA;                BFS.Window.Maximize(windowHandle);&#xA;            else&#xA;                BFS.Window.SetSizeAndLocation(windowHandle, bounds.X, bounds.Y, bounds.Width, bounds.Height);&#xA;        }&#xA;    }&#xA;    &#xA;    //this is a function that will save the window size and position in window properties&#xA;    private static void SaveWindowSize(IntPtr windowHandle)&#xA;    {&#xA;        Rectangle bounds = BFS.Window.GetBounds(windowHandle);&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_X&quot;, new IntPtr(bounds.X));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_Y&quot;, new IntPtr(bounds.Y));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_Width&quot;, new IntPtr(bounds.Width));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_Height&quot;, new IntPtr(bounds.Height));&#xA;        BFS.Window.SetWindowProperty(windowHandle, &quot;ToggleFullscreen_IsMaximized&quot;, new IntPtr(BFS.Window.IsMaximized(windowHandle) ? 1 : 0));&#xA;    }&#xA;    &#xA;    private static Rectangle GetSavedWindowSize(IntPtr windowHandle, out bool isMaximized)&#xA;    {&#xA;        Rectangle bounds = new Rectangle();&#xA;        bounds.X = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_X&quot;).ToInt32();&#xA;        bounds.Y = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_Y&quot;).ToInt32();&#xA;        bounds.Width = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_Width&quot;).ToInt32();&#xA;        bounds.Height = BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_Height&quot;).ToInt32();&#xA;        isMaximized = (BFS.Window.GetWindowProperty(windowHandle, &quot;ToggleFullscreen_IsMaximized&quot;).ToInt32() == 1);&#xA;        return bounds;&#xA;    }&#xA;}</pre><textarea id="code01a10c45c00371c0846d6b62f571476c" name="code01a10c45c00371c0846d6b62f571476c" style="position:absolute;top:0;left:-999999px;width:1px;height:1px"></textarea></div>
</div></div></div>
</div>
]]></content:encoded>
</item>
</channel>
</rss>