.hgignore
author Ryan C. Gordon
Mon, 21 Aug 2017 00:42:06 -0400
changeset 11334 749cb40916f2
parent 10303 b326f93e1bc5
child 11702 cf166abbde4a
permissions -rw-r--r--
x11: specify event mask for buttons when grabbing pointer (thanks, Stas!).

This fixes a strange corner case (notes appended below), and should be
safe to do anyhow.

Fixes Bugzilla #3674.

"I did more tests.
It appears the bug only happens if there is
another window on the screen that has "always
on top" property. For me it is xawtv - it is
always opened in a screen corner. Closing
xawtv or removing "always on top" property
from it makes the problem to go away.
Plus, it doesn't appear like the buttons are
not delivered at all. It appears that instead
the button presses are delivered on some mouse
positions, but not delivered when you move the
mouse to other part of the window... So this is
really weird and is likely somewhere deep in the
Xorg.
Maybe somehow it happens that the cursor is
actually above the xawtv window, but, because
my app uses grab, it is not visible there, and
in that case the events are not delivered to
my app?
But with my patch the button events are
always delivered flawlessly, it seems.

Hmm, and that indeed seems to explain my problem:
if the mask is set properly and my app uses
grab, then, even if the mouse is above some
other window, the events would still be delivered
to the grabbing app, which is what actually wanted
because my app uses relative mouse mode, so it
doesn't know the pointer can cross some other window
(my app draws the pointer itself).
So my current theory is that my patch only enforces
the mouse grab, which otherwise can be tricked by
some other window preventing the button events
delivery (but motion events are still delivered
via xinput2, which makes it all look very obscure)."
icculus@4418
     1
syntax:glob
slouken@7232
     2
aclocal.m4
icculus@4418
     3
autom4te*
icculus@4418
     4
config.cache
icculus@4418
     5
config.log
icculus@4418
     6
config.status
icculus@4418
     7
Makefile
icculus@4418
     8
sdl-config
slouken@6250
     9
SDL2.spec
icculus@4418
    10
build
jadahl@10303
    11
gen
slime73@9487
    12
Build
slouken@5318
    13
ewing@4466
    14
# for Xcode
ewing@4466
    15
*.orig
ewing@4466
    16
*.swp
ewing@4466
    17
*.tmp
ewing@4466
    18
*.rej
ewing@4466
    19
*~
ewing@4466
    20
*.o
ewing@4466
    21
*.mode1*
ewing@4466
    22
*.perspective*
ewing@4466
    23
*.pbxuser
ewing@4466
    24
(^|/)build($|/)
icculus@4418
    25
.DS_Store
slouken@9765
    26
xcuserdata
slouken@9765
    27
*.xcworkspace
slouken@5318
    28
slouken@5318
    29
# for Visual C++
slouken@5318
    30
Debug
slouken@5318
    31
Release
slouken@5318
    32
*.user
slouken@5318
    33
*.ncb
slouken@5318
    34
*.suo
slouken@7572
    35
*.sdf
slouken@8848
    36
VisualC/tests/loopwave/sample.wav
slouken@8848
    37
VisualC/tests/testautomation/CompareSurfaces0001_Reference.bmp
slouken@8848
    38
VisualC/tests/testautomation/CompareSurfaces0001_TestOutput.bmp
slouken@8848
    39
VisualC/tests/testgamecontroller/axis.bmp
slouken@8848
    40
VisualC/tests/testgamecontroller/button.bmp
slouken@8848
    41
VisualC/tests/testgamecontroller/controllermap.bmp
slouken@8848
    42
VisualC/tests/testoverlay2/moose.dat
slouken@8848
    43
VisualC/tests/testrendertarget/icon.bmp
slouken@8848
    44
VisualC/tests/testrendertarget/sample.bmp
slouken@8848
    45
VisualC/tests/testscale/icon.bmp
slouken@8848
    46
VisualC/tests/testscale/sample.bmp
slouken@8848
    47
VisualC/tests/testsprite2/icon.bmp
slouken@8848
    48
VisualC/visualtest/icon.bmp
slouken@8848
    49
VisualC/visualtest/testquit.actions
slouken@8848
    50
VisualC/visualtest/testquit.config
slouken@8848
    51
VisualC/visualtest/testquit.exe
slouken@8848
    52
VisualC/visualtest/testquit.parameters
slouken@8848
    53
VisualC/visualtest/testsprite2.exe
slouken@8848
    54
VisualC/visualtest/testsprite2_sample.actions
slouken@8848
    55
VisualC/visualtest/testsprite2_sample.config
slouken@8848
    56
VisualC/visualtest/testsprite2_sample.parameters
slouken@5318
    57
slouken@6907
    58
# for Android
slouken@6907
    59
android-project/local.properties
slouken@6907
    60
icculus@4418
    61
sdl.pc
icculus@4418
    62
test/autom4te*
icculus@4418
    63
test/config.cache
icculus@4418
    64
test/config.log
icculus@4418
    65
test/config.status
icculus@4418
    66
test/Makefile
slouken@6250
    67
test/SDL2.dll
icculus@4418
    68
test/checkkeys
rohitnirmal9@9550
    69
test/controllermap
icculus@4418
    70
test/loopwave
icculus@9012
    71
test/loopwavequeue
slouken@4862
    72
test/testatomic
rohitnirmal9@9550
    73
test/testaudiohotplug
slouken@4862
    74
test/testaudioinfo
slouken@6958
    75
test/testautomation
slouken@4862
    76
test/testdraw2
rohitnirmal9@9550
    77
test/testdrawchessboard
rohitnirmal9@9550
    78
test/testdropfile
icculus@4418
    79
test/testerror
icculus@4418
    80
test/testfile
slouken@6958
    81
test/testgamecontroller
slouken@4862
    82
test/testgesture
slouken@4862
    83
test/testgl2
slouken@4862
    84
test/testgles
rohitnirmal9@9550
    85
test/testgles2
slouken@4862
    86
test/testhaptic
icculus@8935
    87
test/testhittesting
rohitnirmal9@9550
    88
test/testhotplug
icculus@4418
    89
test/testiconv
slouken@4862
    90
test/testime
slouken@4862
    91
test/testintersections
icculus@4418
    92
test/testjoystick
icculus@4418
    93
test/testkeys
slouken@4862
    94
test/testloadso
icculus@4418
    95
test/testlock
slouken@6658
    96
test/testmessage
slouken@4862
    97
test/testmultiaudio
slouken@6286
    98
test/testnative
icculus@4418
    99
test/testoverlay2
icculus@4418
   100
test/testplatform
slouken@4862
   101
test/testpower
icculus@7667
   102
test/testfilesystem
slouken@6517
   103
test/testrelative
slouken@6517
   104
test/testrendercopyex
slouken@6286
   105
test/testrendertarget
slouken@4862
   106
test/testresample
slouken@5453
   107
test/testrumble
slouken@5318
   108
test/testscale
icculus@4418
   109
test/testsem
slouken@5318
   110
test/testshader
slouken@5318
   111
test/testshape
slouken@4862
   112
test/testsprite2
slouken@4862
   113
test/testspriteminimal
slouken@5318
   114
test/teststreaming
slouken@6286
   115
test/testthread
icculus@4418
   116
test/testtimer
icculus@4418
   117
test/testver
rohitnirmal9@9550
   118
test/testviewport
slouken@4862
   119
test/testwm2
icculus@10019
   120
test/testbounds
icculus@4418
   121
test/torturethread
icculus@9800
   122
test/testdisplayinfo
icculus@10109
   123
test/testqsort
icculus@10231
   124
test/testaudiocapture
icculus@4418
   125
test/*.exe
icculus@4418
   126
test/*.dSYM
icculus@8152
   127
buildbot
icculus@8152
   128
test/buildbot