diff mbox series

[v2] ui/cocoa.m: replace scrollingDeltaY with deltaY

Message ID 20180706025352.42643-1-programmingkidx@gmail.com
State New
Headers show
Series [v2] ui/cocoa.m: replace scrollingDeltaY with deltaY | expand

Commit Message

Programmingkid July 6, 2018, 2:53 a.m. UTC
The NSEvent class method scrollingDeltaY is available
for Mac OS 10.7 and newer. Since QEMU supports Mac OS
10.5 and up, we need to be using a method that is
available on these version of Mac OS X. The deltaY
method is a method that does the same thing as
scrollingDeltaY and is available on Mac OS 10.5 and
up. So we simply replace scrollingDeltaY with deltaY.

Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
---
v2 changes:
- Added a condition that drops scroll events that have a deltaY value of zero.

 ui/cocoa.m | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

Comments

Peter Maydell July 6, 2018, 9:11 a.m. UTC | #1
On 6 July 2018 at 03:53, John Arbuckle <programmingkidx@gmail.com> wrote:
> The NSEvent class method scrollingDeltaY is available
> for Mac OS 10.7 and newer. Since QEMU supports Mac OS
> 10.5 and up, we need to be using a method that is
> available on these version of Mac OS X. The deltaY
> method is a method that does the same thing as
> scrollingDeltaY and is available on Mac OS 10.5 and
> up. So we simply replace scrollingDeltaY with deltaY.

Commit message doesn't match code change.

> Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
> ---
> v2 changes:
> - Added a condition that drops scroll events that have a deltaY value of zero.
>
>  ui/cocoa.m | 15 ++++++++-------
>  1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/ui/cocoa.m b/ui/cocoa.m
> index 2991ed4..f371469 100644
> --- a/ui/cocoa.m
> +++ b/ui/cocoa.m
> @@ -802,14 +802,15 @@ QemuCocoaView *cocoaView;
>               * This is in-line with standard Mac OS X UI behaviour.
>               */
>
> +            if ([event deltaY] != 0) {

This could use a comment about why we need to check it.

>              /* Determine if this is a scroll up or scroll down event */
> -            buttons = ([event scrollingDeltaY] > 0) ?
> -                INPUT_BUTTON_WHEEL_UP : INPUT_BUTTON_WHEEL_DOWN;
> -            qemu_input_queue_btn(dcl->con, buttons, true);
> -            qemu_input_event_sync();
> -            qemu_input_queue_btn(dcl->con, buttons, false);
> -            qemu_input_event_sync();
> -
> +                buttons = ([event deltaY] > 0) ?
> +                    INPUT_BUTTON_WHEEL_UP : INPUT_BUTTON_WHEEL_DOWN;
> +                qemu_input_queue_btn(dcl->con, buttons, true);
> +                qemu_input_event_sync();
> +                qemu_input_queue_btn(dcl->con, buttons, false);
> +                qemu_input_event_sync();
> +            }
>              /*
>               * Since deltaY also reports scroll wheel events we prevent mouse
>               * movement code from executing.
> --
> 2.7.2

thanks
-- PMM
Programmingkid July 6, 2018, 2:22 p.m. UTC | #2
On Jul 6, 2018, at 5:11 AM, Peter Maydell wrote:

> On 6 July 2018 at 03:53, John Arbuckle <programmingkidx@gmail.com>  
> wrote:
>> The NSEvent class method scrollingDeltaY is available
>> for Mac OS 10.7 and newer. Since QEMU supports Mac OS
>> 10.5 and up, we need to be using a method that is
>> available on these version of Mac OS X. The deltaY
>> method is a method that does the same thing as
>> scrollingDeltaY and is available on Mac OS 10.5 and
>> up. So we simply replace scrollingDeltaY with deltaY.
>
> Commit message doesn't match code change.

Did you want me to add information on dropping events with a
deltaY value of zero?

>
>> Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
>> ---
>> v2 changes:
>> - Added a condition that drops scroll events that have a deltaY  
>> value of zero.
>>
>>  ui/cocoa.m | 15 ++++++++-------
>>  1 file changed, 8 insertions(+), 7 deletions(-)
>>
>> diff --git a/ui/cocoa.m b/ui/cocoa.m
>> index 2991ed4..f371469 100644
>> --- a/ui/cocoa.m
>> +++ b/ui/cocoa.m
>> @@ -802,14 +802,15 @@ QemuCocoaView *cocoaView;
>>               * This is in-line with standard Mac OS X UI behaviour.
>>               */
>>
>> +            if ([event deltaY] != 0) {
>
> This could use a comment about why we need to check it.

Sounds good.

>
>>              /* Determine if this is a scroll up or scroll down  
>> event */
>> -            buttons = ([event scrollingDeltaY] > 0) ?
>> -                INPUT_BUTTON_WHEEL_UP : INPUT_BUTTON_WHEEL_DOWN;
>> -            qemu_input_queue_btn(dcl->con, buttons, true);
>> -            qemu_input_event_sync();
>> -            qemu_input_queue_btn(dcl->con, buttons, false);
>> -            qemu_input_event_sync();
>> -
>> +                buttons = ([event deltaY] > 0) ?
>> +                    INPUT_BUTTON_WHEEL_UP : INPUT_BUTTON_WHEEL_DOWN;
>> +                qemu_input_queue_btn(dcl->con, buttons, true);
>> +                qemu_input_event_sync();
>> +                qemu_input_queue_btn(dcl->con, buttons, false);
>> +                qemu_input_event_sync();
>> +            }
>>              /*
>>               * Since deltaY also reports scroll wheel events we  
>> prevent mouse
>>               * movement code from executing.
>> --
>> 2.7.2
>
> thanks
> -- PMM
Peter Maydell July 6, 2018, 2:30 p.m. UTC | #3
On 6 July 2018 at 15:22, G 3 <programmingkidx@gmail.com> wrote:
>
> On Jul 6, 2018, at 5:11 AM, Peter Maydell wrote:
>
>> On 6 July 2018 at 03:53, John Arbuckle <programmingkidx@gmail.com> wrote:
>>>
>>> The NSEvent class method scrollingDeltaY is available
>>> for Mac OS 10.7 and newer. Since QEMU supports Mac OS
>>> 10.5 and up, we need to be using a method that is
>>> available on these version of Mac OS X. The deltaY
>>> method is a method that does the same thing as
>>> scrollingDeltaY and is available on Mac OS 10.5 and
>>> up. So we simply replace scrollingDeltaY with deltaY.
>>
>>
>> Commit message doesn't match code change.
>
>
> Did you want me to add information on dropping events with a
> deltaY value of zero?

Yes. The code is not doing a simple replace of one method
with the other, so the commit message shouldn't say it is.

thanks
-- PMM
diff mbox series

Patch

diff --git a/ui/cocoa.m b/ui/cocoa.m
index 2991ed4..f371469 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -802,14 +802,15 @@  QemuCocoaView *cocoaView;
              * This is in-line with standard Mac OS X UI behaviour.
              */
 
+            if ([event deltaY] != 0) {
             /* Determine if this is a scroll up or scroll down event */
-            buttons = ([event scrollingDeltaY] > 0) ?
-                INPUT_BUTTON_WHEEL_UP : INPUT_BUTTON_WHEEL_DOWN;
-            qemu_input_queue_btn(dcl->con, buttons, true);
-            qemu_input_event_sync();
-            qemu_input_queue_btn(dcl->con, buttons, false);
-            qemu_input_event_sync();
-
+                buttons = ([event deltaY] > 0) ?
+                    INPUT_BUTTON_WHEEL_UP : INPUT_BUTTON_WHEEL_DOWN;
+                qemu_input_queue_btn(dcl->con, buttons, true);
+                qemu_input_event_sync();
+                qemu_input_queue_btn(dcl->con, buttons, false);
+                qemu_input_event_sync();
+            }
             /*
              * Since deltaY also reports scroll wheel events we prevent mouse
              * movement code from executing.