FancyWM/fancywm

Crash when trying to move focused window to another monitor.

xuwei152 opened this issue · 3 comments

Describe the bug
Crash when trying to move focused window to another monitor.

To Reproduce
Steps to reproduce the behaviour:

  1. Focus a window, such as FoxiPDFreader
  2. press binded keys to move the window to another monitor.

Expected behaviour
Move focused window to author window

Screenshots
image

Desktop (please complete the following information):

  • OS: [Windows 11]
  • OS Build: [22000.1574]
  • FancyWM Version: [e.g. v2.5.0]

Additional context
Here is the log:

System.InvalidOperationException: Cannot set the position of a window that is not in the restored state!
at WinMan.Windows.Win32Window.SetPosition(Rectangle position, Boolean redraw)
at FancyWM.MainWindow.MoveToDisplayAsync(IDisplay display, IWindow window)
at FancyWM.MainWindow.OnMoveToDisplayHotkeyPressed(Int32 displayIndex)
at System.Threading.Tasks.Task.<>c.b__128_0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.Run()
at System.Windows.Application.RunDispatcher(Object ignore)
at System.Windows.Application.RunInternal(Window window)
at System.Windows.Application.Run()
at FancyWM.Startup.Main(String[] args)

I'm having the same problem, and maybe more frustratingly I've noticed the "Restart FancyWM" seems to never actually work and I keep forgetting to go back and start it manually after every time it happens.

This issue is stale because it has been open for 14 days with no activity.

This issue was closed because it has been inactive for 14 days since being marked as stale.