fix some incorrect capture magnifier logic
Signed-off-by: fufesou <shuanglongchen@yeah.net>
This commit is contained in:
parent
e30f690f9c
commit
c0d367f7b1
@ -282,10 +282,10 @@ impl CapturerMag {
|
||||
let y = GetSystemMetrics(SM_YVIRTUALSCREEN);
|
||||
let w = GetSystemMetrics(SM_CXVIRTUALSCREEN);
|
||||
let h = GetSystemMetrics(SM_CYVIRTUALSCREEN);
|
||||
if !(origin.0 == x as i32
|
||||
&& origin.1 == y as i32
|
||||
&& width == w as usize
|
||||
&& height == h as usize)
|
||||
if !(origin.0 >= x as i32
|
||||
&& origin.1 >= y as i32
|
||||
&& width <= w as usize
|
||||
&& height <= h as usize)
|
||||
{
|
||||
return Err(Error::new(
|
||||
ErrorKind::Other,
|
||||
@ -518,10 +518,10 @@ impl CapturerMag {
|
||||
let y = GetSystemMetrics(SM_YVIRTUALSCREEN);
|
||||
let w = GetSystemMetrics(SM_CXVIRTUALSCREEN);
|
||||
let h = GetSystemMetrics(SM_CYVIRTUALSCREEN);
|
||||
if !(self.rect.left == x as i32
|
||||
&& self.rect.top == y as i32
|
||||
&& self.rect.right == (x + w) as i32
|
||||
&& self.rect.bottom == (y + h) as i32)
|
||||
if !(self.rect.left >= x as i32
|
||||
&& self.rect.top >= y as i32
|
||||
&& self.rect.right <= (x + w) as i32
|
||||
&& self.rect.bottom <= (y + h) as i32)
|
||||
{
|
||||
return Err(Error::new(
|
||||
ErrorKind::Other,
|
||||
@ -545,8 +545,8 @@ impl CapturerMag {
|
||||
HWND_TOP,
|
||||
self.rect.left,
|
||||
self.rect.top,
|
||||
self.rect.right,
|
||||
self.rect.bottom,
|
||||
self.rect.right - self.rect.left,
|
||||
self.rect.bottom - self.rect.top,
|
||||
0,
|
||||
)
|
||||
{
|
||||
@ -556,8 +556,8 @@ impl CapturerMag {
|
||||
"Failed SetWindowPos (x, y, w , h) - ({}, {}, {}, {}), error {}",
|
||||
self.rect.left,
|
||||
self.rect.top,
|
||||
self.rect.right,
|
||||
self.rect.bottom,
|
||||
self.rect.right - self.rect.left,
|
||||
self.rect.bottom - self.rect.top,
|
||||
GetLastError()
|
||||
),
|
||||
));
|
||||
|
Loading…
x
Reference in New Issue
Block a user