VirtualBox

Changeset 85333 in vbox for trunk


Ignore:
Timestamp:
Jul 14, 2020 10:59:56 AM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
139313
Message:

FE/Qt: Workaround for 10.12 event constant reanming affecting CocoaEventHelper.mm. bugref:9790

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin/CocoaEventHelper.mm

    r82968 r85333  
    2525#include <Carbon/Carbon.h>
    2626
     27/* They just had to rename a whole load of constants in 10.12. Just wrap the carp up
     28   in some defines for now as we need to keep building with both 10.9 and 10.13+: */
     29#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_12
     30# define VBOX_NSAlphaShiftKeyMask    NSEventModifierFlagCapsLock
     31# define VBOX_NSAlternateKeyMask     NSEventModifierFlagOption
     32# define VBOX_NSAppKitDefined        NSEventTypeAppKitDefined
     33# define VBOX_NSApplicationDefined   NSEventTypeApplicationDefined
     34# define VBOX_NSCommandKeyMask       NSEventModifierFlagCommand
     35# define VBOX_NSControlKeyMask       NSEventModifierFlagControl
     36# define VBOX_NSCursorUpdate         NSEventTypeCursorUpdate
     37# define VBOX_NSFlagsChanged         NSEventTypeFlagsChanged
     38# define VBOX_NSFunctionKeyMask      NSEventModifierFlagFunction
     39# define VBOX_NSHelpKeyMask          NSEventModifierFlagHelp
     40# define VBOX_NSKeyDown              NSEventTypeKeyDown
     41# define VBOX_NSKeyUp                NSEventTypeKeyUp
     42# define VBOX_NSLeftMouseDown        NSEventTypeLeftMouseDown
     43# define VBOX_NSLeftMouseDragged     NSEventTypeLeftMouseDragged
     44# define VBOX_NSLeftMouseUp          NSEventTypeLeftMouseUp
     45# define VBOX_NSMouseEntered         NSEventTypeMouseEntered
     46# define VBOX_NSMouseExited          NSEventTypeMouseExited
     47# define VBOX_NSMouseMoved           NSEventTypeMouseMoved
     48# define VBOX_NSNumericPadKeyMask    NSEventModifierFlagNumericPad
     49# define VBOX_NSOtherMouseDown       NSEventTypeOtherMouseDown
     50# define VBOX_NSOtherMouseDragged    NSEventTypeOtherMouseDragged
     51# define VBOX_NSOtherMouseUp         NSEventTypeOtherMouseUp
     52# define VBOX_NSPeriodic             NSEventTypePeriodic
     53# define VBOX_NSRightMouseDown       NSEventTypeRightMouseDown
     54# define VBOX_NSRightMouseDragged    NSEventTypeRightMouseDragged
     55# define VBOX_NSRightMouseUp         NSEventTypeRightMouseUp
     56# define VBOX_NSScrollWheel          NSEventTypeScrollWheel
     57# define VBOX_NSShiftKeyMask         NSEventModifierFlagShift
     58# define VBOX_NSSystemDefined        NSEventTypeSystemDefined
     59# define VBOX_NSTabletPoint          NSEventTypeTabletPoint
     60# define VBOX_NSTabletProximity      NSEventTypeTabletProximity
     61#else
     62# define VBOX_NSAlphaShiftKeyMask    NSAlphaShiftKeyMask
     63# define VBOX_NSAlternateKeyMask     NSAlternateKeyMask
     64# define VBOX_NSAppKitDefined        NSAppKitDefined
     65# define VBOX_NSApplicationDefined   NSApplicationDefined
     66# define VBOX_NSCommandKeyMask       NSCommandKeyMask
     67# define VBOX_NSControlKeyMask       NSControlKeyMask
     68# define VBOX_NSCursorUpdate         NSCursorUpdate
     69# define VBOX_NSFlagsChanged         NSFlagsChanged
     70# define VBOX_NSFunctionKeyMask      NSFunctionKeyMask
     71# define VBOX_NSHelpKeyMask          NSHelpKeyMask
     72# define VBOX_NSKeyDown              NSKeyDown
     73# define VBOX_NSKeyUp                NSKeyUp
     74# define VBOX_NSLeftMouseDown        NSLeftMouseDown
     75# define VBOX_NSLeftMouseDragged     NSLeftMouseDragged
     76# define VBOX_NSLeftMouseUp          NSLeftMouseUp
     77# define VBOX_NSMouseEntered         NSMouseEntered
     78# define VBOX_NSMouseExited          NSMouseExited
     79# define VBOX_NSMouseMoved           NSMouseMoved
     80# define VBOX_NSNumericPadKeyMask    NSNumericPadKeyMask
     81# define VBOX_NSOtherMouseDown       NSOtherMouseDown
     82# define VBOX_NSOtherMouseDragged    NSOtherMouseDragged
     83# define VBOX_NSOtherMouseUp         NSOtherMouseUp
     84# define VBOX_NSPeriodic             NSPeriodic
     85# define VBOX_NSRightMouseDown       NSRightMouseDown
     86# define VBOX_NSRightMouseDragged    NSRightMouseDragged
     87# define VBOX_NSRightMouseUp         NSRightMouseUp
     88# define VBOX_NSScrollWheel          NSScrollWheel
     89# define VBOX_NSShiftKeyMask         NSShiftKeyMask
     90# define VBOX_NSSystemDefined        NSSystemDefined
     91# define VBOX_NSTabletPoint          NSTabletPoint
     92# define VBOX_NSTabletProximity      NSTabletProximity
     93#endif
    2794
    2895uint32_t darwinEventModifierFlagsXlated(ConstNativeNSEventRef pEvent)
     
    3299    if (fCocoa)
    33100    {
    34         if (fCocoa & NSAlphaShiftKeyMask)
     101        if (fCocoa & VBOX_NSAlphaShiftKeyMask)
    35102            fCarbon |= alphaLock;
    36         if (fCocoa & (NSShiftKeyMask | NX_DEVICELSHIFTKEYMASK | NX_DEVICERSHIFTKEYMASK))
     103        if (fCocoa & (VBOX_NSShiftKeyMask | NX_DEVICELSHIFTKEYMASK | NX_DEVICERSHIFTKEYMASK))
    37104        {
    38105            if (fCocoa & (NX_DEVICERSHIFTKEYMASK | NX_DEVICERSHIFTKEYMASK))
     
    47114        }
    48115
    49         if (fCocoa & (NSControlKeyMask | NX_DEVICELCTLKEYMASK | NX_DEVICERCTLKEYMASK))
     116        if (fCocoa & (VBOX_NSControlKeyMask | NX_DEVICELCTLKEYMASK | NX_DEVICERCTLKEYMASK))
    50117        {
    51118            if (fCocoa & (NX_DEVICELCTLKEYMASK | NX_DEVICERCTLKEYMASK))
     
    60127        }
    61128
    62         if (fCocoa & (NSAlternateKeyMask | NX_DEVICELALTKEYMASK | NX_DEVICERALTKEYMASK))
     129        if (fCocoa & (VBOX_NSAlternateKeyMask | NX_DEVICELALTKEYMASK | NX_DEVICERALTKEYMASK))
    63130        {
    64131            if (fCocoa & (NX_DEVICELALTKEYMASK | NX_DEVICERALTKEYMASK))
     
    73140        }
    74141
    75         if (fCocoa & (NSCommandKeyMask | NX_DEVICELCMDKEYMASK | NX_DEVICERCMDKEYMASK))
     142        if (fCocoa & (VBOX_NSCommandKeyMask | NX_DEVICELCMDKEYMASK | NX_DEVICERCMDKEYMASK))
    76143        {
    77144            if (fCocoa & (NX_DEVICELCMDKEYMASK | NX_DEVICERCMDKEYMASK))
     
    87154
    88155        /*
    89         if (fCocoa & NSNumericPadKeyMask)
     156        if (fCocoa & VBOX_NSNumericPadKeyMask)
    90157            fCarbon |= ???;
    91158
    92         if (fCocoa & NSHelpKeyMask)
     159        if (fCocoa & VBOX_NSHelpKeyMask)
    93160            fCarbon |= ???;
    94161
    95         if (fCocoa & NSFunctionKeyMask)
     162        if (fCocoa & VBOX_NSFunctionKeyMask)
    96163            fCarbon |= ???;
    97164        */
     
    106173    {
    107174#define EVT_CASE(nm) case nm: return #nm
    108         EVT_CASE(NSLeftMouseDown);
    109         EVT_CASE(NSLeftMouseUp);
    110         EVT_CASE(NSRightMouseDown);
    111         EVT_CASE(NSRightMouseUp);
    112         EVT_CASE(NSMouseMoved);
    113         EVT_CASE(NSLeftMouseDragged);
    114         EVT_CASE(NSRightMouseDragged);
    115         EVT_CASE(NSMouseEntered);
    116         EVT_CASE(NSMouseExited);
    117         EVT_CASE(NSKeyDown);
    118         EVT_CASE(NSKeyUp);
    119         EVT_CASE(NSFlagsChanged);
    120         EVT_CASE(NSAppKitDefined);
    121         EVT_CASE(NSSystemDefined);
    122         EVT_CASE(NSApplicationDefined);
    123         EVT_CASE(NSPeriodic);
    124         EVT_CASE(NSCursorUpdate);
    125         EVT_CASE(NSScrollWheel);
    126         EVT_CASE(NSTabletPoint);
    127         EVT_CASE(NSTabletProximity);
    128         EVT_CASE(NSOtherMouseDown);
    129         EVT_CASE(NSOtherMouseUp);
    130         EVT_CASE(NSOtherMouseDragged);
     175        EVT_CASE(VBOX_NSLeftMouseDown);
     176        EVT_CASE(VBOX_NSLeftMouseUp);
     177        EVT_CASE(VBOX_NSRightMouseDown);
     178        EVT_CASE(VBOX_NSRightMouseUp);
     179        EVT_CASE(VBOX_NSMouseMoved);
     180        EVT_CASE(VBOX_NSLeftMouseDragged);
     181        EVT_CASE(VBOX_NSRightMouseDragged);
     182        EVT_CASE(VBOX_NSMouseEntered);
     183        EVT_CASE(VBOX_NSMouseExited);
     184        EVT_CASE(VBOX_NSKeyDown);
     185        EVT_CASE(VBOX_NSKeyUp);
     186        EVT_CASE(VBOX_NSFlagsChanged);
     187        EVT_CASE(VBOX_NSAppKitDefined);
     188        EVT_CASE(VBOX_NSSystemDefined);
     189        EVT_CASE(VBOX_NSApplicationDefined);
     190        EVT_CASE(VBOX_NSPeriodic);
     191        EVT_CASE(VBOX_NSCursorUpdate);
     192        EVT_CASE(VBOX_NSScrollWheel);
     193        EVT_CASE(VBOX_NSTabletPoint);
     194        EVT_CASE(VBOX_NSTabletProximity);
     195        EVT_CASE(VBOX_NSOtherMouseDown);
     196        EVT_CASE(VBOX_NSOtherMouseUp);
     197        EVT_CASE(VBOX_NSOtherMouseDragged);
    131198#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_5
    132199        EVT_CASE(NSEventTypeGesture);
     
    158225    switch (enmEventType)
    159226    {
    160         case NSLeftMouseDown:
    161         case NSLeftMouseUp:
    162         case NSRightMouseDown:
    163         case NSRightMouseUp:
    164         case NSMouseMoved:
    165 
    166         case NSLeftMouseDragged:
    167         case NSRightMouseDragged:
    168         case NSMouseEntered:
    169         case NSMouseExited:
     227        case VBOX_NSLeftMouseDown:
     228        case VBOX_NSLeftMouseUp:
     229        case VBOX_NSRightMouseDown:
     230        case VBOX_NSRightMouseUp:
     231        case VBOX_NSMouseMoved:
     232
     233        case VBOX_NSLeftMouseDragged:
     234        case VBOX_NSRightMouseDragged:
     235        case VBOX_NSMouseEntered:
     236        case VBOX_NSMouseExited:
    170237            break;
    171238
    172         case NSKeyDown:
    173         case NSKeyUp:
     239        case VBOX_NSKeyDown:
     240        case VBOX_NSKeyUp:
    174241        {
    175242            NSUInteger i;
     
    202269        }
    203270
    204         case NSFlagsChanged:
    205         {
    206             NSUInteger fOddBits = NSAlphaShiftKeyMask | NSShiftKeyMask | NSControlKeyMask | NSAlternateKeyMask
    207                                 | NSCommandKeyMask | NSNumericPadKeyMask | NSHelpKeyMask | NSFunctionKeyMask
     271        case VBOX_NSFlagsChanged:
     272        {
     273            NSUInteger fOddBits = VBOX_NSAlphaShiftKeyMask | VBOX_NSShiftKeyMask | VBOX_NSControlKeyMask | VBOX_NSAlternateKeyMask
     274                                | VBOX_NSCommandKeyMask | VBOX_NSNumericPadKeyMask | VBOX_NSHelpKeyMask | VBOX_NSFunctionKeyMask
    208275                                | NX_DEVICELCTLKEYMASK | NX_DEVICELSHIFTKEYMASK | NX_DEVICERSHIFTKEYMASK
    209276                                | NX_DEVICELCMDKEYMASK | NX_DEVICERCMDKEYMASK | NX_DEVICELALTKEYMASK
     
    213280#define PRINT_MOD(cnst, nm) do { if (fEventMask & (cnst)) printf(" %s", #nm); } while (0)
    214281            /* device-independent: */
    215             PRINT_MOD(NSAlphaShiftKeyMask, "AlphaShift");
    216             PRINT_MOD(NSShiftKeyMask, "Shift");
    217             PRINT_MOD(NSControlKeyMask, "Ctrl");
    218             PRINT_MOD(NSAlternateKeyMask, "Alt");
    219             PRINT_MOD(NSCommandKeyMask, "Cmd");
    220             PRINT_MOD(NSNumericPadKeyMask, "NumLock");
    221             PRINT_MOD(NSHelpKeyMask, "Help");
    222             PRINT_MOD(NSFunctionKeyMask, "Fn");
     282            PRINT_MOD(VBOX_NSAlphaShiftKeyMask, "AlphaShift");
     283            PRINT_MOD(VBOX_NSShiftKeyMask, "Shift");
     284            PRINT_MOD(VBOX_NSControlKeyMask, "Ctrl");
     285            PRINT_MOD(VBOX_NSAlternateKeyMask, "Alt");
     286            PRINT_MOD(VBOX_NSCommandKeyMask, "Cmd");
     287            PRINT_MOD(VBOX_NSNumericPadKeyMask, "NumLock");
     288            PRINT_MOD(VBOX_NSHelpKeyMask, "Help");
     289            PRINT_MOD(VBOX_NSFunctionKeyMask, "Fn");
    223290            /* device-dependent (sort of): */
    224291            PRINT_MOD(NX_DEVICELCTLKEYMASK,   "$L-Ctrl");
     
    240307        }
    241308
    242         case NSAppKitDefined:
    243         case NSSystemDefined:
    244         case NSApplicationDefined:
    245         case NSPeriodic:
    246         case NSCursorUpdate:
    247         case NSScrollWheel:
    248         case NSTabletPoint:
    249         case NSTabletProximity:
    250         case NSOtherMouseDown:
    251         case NSOtherMouseUp:
    252         case NSOtherMouseDragged:
     309        case VBOX_NSAppKitDefined:
     310        case VBOX_NSSystemDefined:
     311        case VBOX_NSApplicationDefined:
     312        case VBOX_NSPeriodic:
     313        case VBOX_NSCursorUpdate:
     314        case VBOX_NSScrollWheel:
     315        case VBOX_NSTabletPoint:
     316        case VBOX_NSTabletProximity:
     317        case VBOX_NSOtherMouseDown:
     318        case VBOX_NSOtherMouseUp:
     319        case VBOX_NSOtherMouseDragged:
    253320#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_5
    254321        case NSEventTypeGesture:
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette