重现方法:
显示操作窗
=
记忆位置等状态
测试动作
这应该是正常的,为了解决有的情况下断开扩展屏的时候操作窗找不到的问题。
当左上角在屏幕外面的时候,会判断成可能的屏幕断开事件,再次显示会确保在屏幕内部。
目前的判断逻辑似乎不能很好满足这个目的,一方面操作窗左上角超出屏幕左侧范围和右下角超出屏幕右侧范围的行为是不一样的,会有点令人困惑;另一方面似乎只检测了操作窗左上角是否超出了显示器的最大范围,如果两个显示器长宽不一致,把窗口放到显示范围的死角也是不会重置位置的(如下图)。
可以的话能不能改成操作窗矩形和任一屏幕没有交集的时候重置位置?
这种方式相对简单,而且操作窗本身可以折叠,右下角的位置会变,没法作为依据。
了解了。另外我又试了一下,如果操作类型是 显示操作窗并等待关闭 ,把操作窗左侧移到屏幕左边缘之外,再次运行动作的时候操作窗还是在原位(此时会先关闭原来的窗口再新建一个,所以闪烁一下);如果是 显示操作窗 ,把操作窗左侧移到屏幕左边缘之外,再次运行就会改变位置。