)]}'
{
  "log": [
    {
      "commit": "1a63a60d62f0a447d9015eeae0203be19d236ff9",
      "tree": "f131569a2e396f34f69eec1eb790f6b1177ebcb2",
      "parents": [
        "239bdc7d11d8371fb219500a598e1d79d9ac6163"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Tue Feb 09 15:10:06 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Tue Feb 09 15:10:06 2021 -0800"
      },
      "message": "Fixed bug 5539 - Clang 11 fails to compile a CMake build with conflicting types for _m_prefetchw\n\nvladius\n\nIn SDL_cpuinfo.h it seems like \u003cintrin.h\u003e is not included when __clang__ is defined, as the comment in the file explicitly reads:\n\"Many of the intrinsics SDL uses are not implemented by clang with Visual Studio\"\n\nHowever, the SDL_endian.h header does include \u003cintrin.h\u003e without any precautions like:\n\u003e#ifdef _MSC_VER\n\u003e#include \u003cintrin.h\u003e\n\u003e#endif\n\n\nMaybe it should be changed to something like:\n\u003e#ifdef _MSC_VER\n\u003e#ifndef __clang__\n\u003e#include \u003cintrin.h\u003e\n\u003e#endif\n\u003e#endif\n"
    },
    {
      "commit": "239bdc7d11d8371fb219500a598e1d79d9ac6163",
      "tree": "108fa849c804c1657d7b09cd1fefa469423c6751",
      "parents": [
        "cfc8745aee93707ccbe5c41c908eae52aebacec7"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Tue Feb 09 15:02:55 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Tue Feb 09 15:02:55 2021 -0800"
      },
      "message": "Fixed bug 5543 - Wayland: Fix waylandvideo.h warnings\n\nwahil1976\n\nThis patch fixes the warnings seen when compiling the Wayland backend. This will also be required in the future to avoid issues with compilation.\n"
    },
    {
      "commit": "cfc8745aee93707ccbe5c41c908eae52aebacec7",
      "tree": "37403017a3d82398a05112102a7dbba7fdbfbb71",
      "parents": [
        "f395fdb59ab9d5ee980da875343aa50e04d46235"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Mon Feb 08 18:31:08 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Mon Feb 08 18:31:08 2021 -0600"
      },
      "message": "Fix waiting on condition variables with the SRW lock implmentation\n\nWhen SleepConditionVariableSRW() releases the SRW lock internally, it causes\nour SDL_mutex_srw state to become inconsistent. The lock is unowned yet inside,\nthe owner is still the sleeping thread and more importantly the owner count is\nstill 1.\n\nThe next time someone acquires the lock, they will bump the owner count from 1\nto 2. At that point, the lock is hosed. From the internal lock state, it looks\nto us like that owner has acquired the lock recursively, even though they have\nnot. When they call SDL_UnlockMutex(), it will see the owner count \u003e 0 and not\ncall ReleaseSRWLockExclusive().\n\nNow when someone calls SDL_CondSignal(), SleepConditionVariableSRW() will start\nthe wakeup process by attempting to re-acquire the SRW lock. This will deadlock\nbecause the lock was never released after the other thread had used it. The\nthread waiting on the condition variable will never be able to wake up, even if\nthe SDL_CondWaitTimeout() function is used and the timeout expires.\n"
    },
    {
      "commit": "f395fdb59ab9d5ee980da875343aa50e04d46235",
      "tree": "28ab21a746bf09d679b56325359731b93861c8e9",
      "parents": [
        "ce38d2936d5e51ab0ea11b1938c005d2abf3c322"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 08 16:55:01 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 08 16:55:01 2021 -0800"
      },
      "message": "Backed out changeset 852a7bdbdf4b\nThis causes a use-after-free memory error\n"
    },
    {
      "commit": "ce38d2936d5e51ab0ea11b1938c005d2abf3c322",
      "tree": "46dcd6d3bf95d7107385dbe87b1a758a137f7106",
      "parents": [
        "92f0848ec83f73628d3c1e19b7e25ed3a8c9b3c2"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 16:01:37 2021 -0800"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 16:01:37 2021 -0800"
      },
      "message": "free the \u0027display\u0027 after it was added to global list\n"
    },
    {
      "commit": "92f0848ec83f73628d3c1e19b7e25ed3a8c9b3c2",
      "tree": "28ab21a746bf09d679b56325359731b93861c8e9",
      "parents": [
        "46120df21a1cfcef608eff8ca2e367a6faa46459"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Tue Feb 09 00:57:25 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Tue Feb 09 00:57:25 2021 +0100"
      },
      "message": "[KMS/DRM] Bugfix number #5535: Improve reliability, by wahil1976.\n"
    },
    {
      "commit": "46120df21a1cfcef608eff8ca2e367a6faa46459",
      "tree": "34ce221f6b3e8c011eb1ce97b72846e499a38c98",
      "parents": [
        "a2fb9cbe4f1f71e510d9a8e2eb054ed2e27fa859"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 23:55:50 2021 +0300"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 23:55:50 2021 +0300"
      },
      "message": "make AddressSanitizer optional and disabled by default\n"
    },
    {
      "commit": "a2fb9cbe4f1f71e510d9a8e2eb054ed2e27fa859",
      "tree": "4c00a1ad47037dc05943444305691d42feea7d4a",
      "parents": [
        "d6060c148cc939193cf0d511f2a29a980953c8bf"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 20:50:00 2021 +0300"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 20:50:00 2021 +0300"
      },
      "message": "enable AddressSanitizer only for GCC 5 onwards (bug #5533)\n"
    },
    {
      "commit": "d6060c148cc939193cf0d511f2a29a980953c8bf",
      "tree": "ec77f18da790af98a518efc31b7d571648feebca",
      "parents": [
        "2038bb0b86d2495bb05a9f039be7d3361bcb3fbd"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 02:15:50 2021 +0300"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 08 02:15:50 2021 +0300"
      },
      "message": "add \u0027-shared-libasan\u0027 to debug flags (bug #5533)\n"
    },
    {
      "commit": "2038bb0b86d2495bb05a9f039be7d3361bcb3fbd",
      "tree": "33c8e807166c3b7189546dcea1a80c515309f90a",
      "parents": [
        "644ff836a12268ce6aa529ef8b94a0f44c7cf345"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Mon Feb 08 00:20:56 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Mon Feb 08 00:20:56 2021 +0300"
      },
      "message": "avoid some pedantic warnings in array initializers\n"
    },
    {
      "commit": "644ff836a12268ce6aa529ef8b94a0f44c7cf345",
      "tree": "2fb7700f254046d3839fb2bd201025f2b285c2cd",
      "parents": [
        "5e41ee0f28a5cef64ed59d620487e1dfc19d8d26"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Feb 06 15:43:17 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Feb 06 15:43:17 2021 -0800"
      },
      "message": "SDL: fix packet handling for original version of Stadia FW\n"
    },
    {
      "commit": "5e41ee0f28a5cef64ed59d620487e1dfc19d8d26",
      "tree": "f995d798e7ecb4127a5c459dd9341e7703a89ae0",
      "parents": [
        "91d2bc105a12376ba5e96291a44985dcbe712f3d"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Sun Feb 07 00:37:00 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Sun Feb 07 00:37:00 2021 +0300"
      },
      "message": "minor updates to libc function checks\n"
    },
    {
      "commit": "91d2bc105a12376ba5e96291a44985dcbe712f3d",
      "tree": "927192d004d272140853bb1b94beeac92429e7b3",
      "parents": [
        "d15563cc2aec7fcc3e5635ae6caa7036fbb4c5f3"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sat Feb 06 16:05:55 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sat Feb 06 16:05:55 2021 +0100"
      },
      "message": "[KMS/DRM] Fix build warning.\n"
    },
    {
      "commit": "d15563cc2aec7fcc3e5635ae6caa7036fbb4c5f3",
      "tree": "d8ff3004918148b611ff762ee1dc4f1cf0bd776c",
      "parents": [
        "491136b77c94e18f97a710f134d48ff5b692f432"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sat Feb 06 14:03:53 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sat Feb 06 14:03:53 2021 +0100"
      },
      "message": "[KMS/DRM] Replace indent tabs with spaces, as intended.\n"
    },
    {
      "commit": "491136b77c94e18f97a710f134d48ff5b692f432",
      "tree": "4be69237466594bc63255b26292b9a0ae50774c1",
      "parents": [
        "03b83bacd1f6f815d9f2b7d1493f5ac40e153edc"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Feb 05 22:16:50 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Feb 05 22:16:50 2021 +0100"
      },
      "message": "[KMS/DRM] Merge patch for bug #5532: No need to correct cursor position now that all windows are fullscreen. Link: https://bugzilla.libsdl.org/show_bug.cgi?id\u003d5519.\n"
    },
    {
      "commit": "03b83bacd1f6f815d9f2b7d1493f5ac40e153edc",
      "tree": "3038799eff2f058c3d1f041fcda25f68bf6cc87d",
      "parents": [
        "c3805704a7e65e961fe43491f94ac86605411f0c"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Feb 05 00:27:11 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Feb 05 00:27:11 2021 +0100"
      },
      "message": "[KMS/DRM] Remove redundant SDL_SendWindowEvent() call.\n"
    },
    {
      "commit": "c3805704a7e65e961fe43491f94ac86605411f0c",
      "tree": "7a2eab743806845179a8b29cd97d33078587c3c6",
      "parents": [
        "b4af8ea15de8c916a030413728aaa679f993ea92"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Thu Feb 04 23:35:52 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Thu Feb 04 23:35:52 2021 +0100"
      },
      "message": "[KMS/DRM] Restore all-windows-are-fullscreen functionality, since there is no window manager in KMSDRM.\n"
    },
    {
      "commit": "b4af8ea15de8c916a030413728aaa679f993ea92",
      "tree": "901c027f43e12c377464016f47771940317f50b5",
      "parents": [
        "8bfbd83cd6be58e44e31ca140ec803ce577b0008"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Wed Feb 03 18:00:22 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Wed Feb 03 18:00:22 2021 -0600"
      },
      "message": "Fix Xbox Series X controller on macOS\n\nThere were two different implementations of IsBluetoothXboxOneController(), one\nin SDL_hidapi_xbox360.c and one in SDL_hidapi_xboxone.c. The latter had been\nupdated to include USB_PRODUCT_XBOX_ONE_SERIES_X_BLUETOOTH while the former had\nnot.\n\nThis mismatch led to the Xbox Series X failing on macOS only. We have special\ncode for handling the 360Controller driver for macOS which requires us to use\nthe Xbox 360 driver for wired Xbox One controllers, and the SDL_hidapi_xbox360\nversion of IsBluetoothXboxOneController() was used to determine which devices\nwere wired.\n\nIn addition to adding the missing USB_PRODUCT_XBOX_ONE_SERIES_X_BLUETOOTH, this\nchange moves IsBluetoothXboxOneController() into a single shared function which\nwill ensure this bug won\u0027t happen again.\n"
    },
    {
      "commit": "8bfbd83cd6be58e44e31ca140ec803ce577b0008",
      "tree": "0fe790295bde1c4002150bd185c86d3387dd4f3f",
      "parents": [
        "6f1af971bb2e8ba6d61a3cf683f4f0acd74485a9"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Feb 04 10:47:16 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Feb 04 10:47:16 2021 -0800"
      },
      "message": "Updated runtime dependency on libudev\n"
    },
    {
      "commit": "6f1af971bb2e8ba6d61a3cf683f4f0acd74485a9",
      "tree": "3c35a269f555543df1ededd738d9b0f80d29a6cc",
      "parents": [
        "9f3af48ee2cb3a57fbb9b39a96c245659e954707"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Feb 04 10:46:34 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Feb 04 10:46:34 2021 -0800"
      },
      "message": "Fixed compiler warning\n"
    },
    {
      "commit": "9f3af48ee2cb3a57fbb9b39a96c245659e954707",
      "tree": "85e80176278170f9b6454df55c0a4b294efd835f",
      "parents": [
        "3e9a1a2308252296faf5301180fb649febf168cd"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Feb 04 07:00:06 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Feb 04 07:00:06 2021 -0800"
      },
      "message": "Backed out changeset 1cde3dd0f44d - this breaks windows which are created and then set to FULLSCREEN_DESKTOP\n"
    },
    {
      "commit": "3e9a1a2308252296faf5301180fb649febf168cd",
      "tree": "871bdb154942e9ce6e4872e42ab10fff5ec62262",
      "parents": [
        "08ee70d468503078587b079933f8cdf280a96c16"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Feb 04 13:50:56 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Feb 04 13:50:56 2021 +0100"
      },
      "message": "Android: documention update\n"
    },
    {
      "commit": "08ee70d468503078587b079933f8cdf280a96c16",
      "tree": "a9c2918beec979ef5ad849b74e5d3c7616439546",
      "parents": [
        "bc8859185274845ba919a5f13cd7e00e78115c7c"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Feb 03 21:31:50 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Feb 03 21:31:50 2021 -0800"
      },
      "message": "KMSDRM doesn\u0027t have a window manager, so all windows are fullscreen\n"
    },
    {
      "commit": "bc8859185274845ba919a5f13cd7e00e78115c7c",
      "tree": "36ecb73be67d5bf61b6b47e8b590f7fb0e0216fb",
      "parents": [
        "59292f12ee4bc9b9d43ee582a70846107a7e3a78"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Feb 03 09:51:42 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Feb 03 09:51:42 2021 +0100"
      },
      "message": "SDL_vulkan_utils: minor code clean-up\n"
    },
    {
      "commit": "59292f12ee4bc9b9d43ee582a70846107a7e3a78",
      "tree": "fe468b30138a373f93f8de3ccbb525a1ddaf2d22",
      "parents": [
        "f09f0a997d04dc0742a67b425bb5657d342967d6"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Feb 03 09:32:09 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Feb 03 09:32:09 2021 +0100"
      },
      "message": "SDL_ConvertColorkeyToAlpha: remove and clarify a FIXME\nThis function doesn\u0027t handle bpp 1 or 3 case, because those formats never have an alpha channel\n"
    },
    {
      "commit": "f09f0a997d04dc0742a67b425bb5657d342967d6",
      "tree": "f4b0ce429d0fa91c16dce5ec49196f7f55a2de67",
      "parents": [
        "1c6dd604fe836e1ac819012d49536690408c18f2"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Tue Feb 02 11:53:31 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Tue Feb 02 11:53:31 2021 -0800"
      },
      "message": "Fixed detecting the paddles on the Xbox Elite Series 1 controller\n"
    },
    {
      "commit": "1c6dd604fe836e1ac819012d49536690408c18f2",
      "tree": "3c7f720464772950cac53668316bfc43b94f4979",
      "parents": [
        "ca799c81c9f4016286da3493778e874aa815f6e6"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 22:35:46 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 22:35:46 2021 -0800"
      },
      "message": "Fixed bug 5471 - Creating a fullscreen desktop window goes windowed temporarily\n\nThis is caused by the Metal renderer recreating the window because by default we create an OpenGL window on macOS.\n\nIt turns out that at least on macOS 10.15, a window that has been initialized for OpenGL can also be used with Metal. So we\u0027ll skip recreating the window in that case.\n"
    },
    {
      "commit": "ca799c81c9f4016286da3493778e874aa815f6e6",
      "tree": "a14877e125240cfc194c97561037fd68dc24e970",
      "parents": [
        "24b5341fc397a63e17d7fd4b72dc5ab9ff4d2d6a"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 22:30:31 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 22:30:31 2021 -0800"
      },
      "message": "Added test command line options to force different window types\n"
    },
    {
      "commit": "24b5341fc397a63e17d7fd4b72dc5ab9ff4d2d6a",
      "tree": "42b4ad5d0e5798926b750170f2a85eedad6bac08",
      "parents": [
        "c9d581ca7103a85ceda119b9d858f6fcf9a847e0"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 21:56:56 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 21:56:56 2021 -0800"
      },
      "message": "Removed support for clock_gettime_nsec_np()\n\nSDL_GetTicks() was broken and it\u0027s not adding any real value here.\n"
    },
    {
      "commit": "c9d581ca7103a85ceda119b9d858f6fcf9a847e0",
      "tree": "a7b396d44175b930c51d16b7d6ca5ee05a2b67d8",
      "parents": [
        "f876d14520b3e2578e217f3b96a82b3e4d919e67"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 01 20:25:24 2021 -0800"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Mon Feb 01 20:25:24 2021 -0800"
      },
      "message": "cmake: enable AddressSanitizer in Debug builds if supported\n"
    },
    {
      "commit": "f876d14520b3e2578e217f3b96a82b3e4d919e67",
      "tree": "93eaa7cd7a903b15d15da87ff3005b5bb3a4f47c",
      "parents": [
        "58b3f43b96026581af31a6b7466f6b091eb74b3f"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 09:21:11 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 09:21:11 2021 -0800"
      },
      "message": "Don\u0027t uncorrelate while rumble is active and stay correlated longer in case raw input messages are lagging a bit.\n"
    },
    {
      "commit": "58b3f43b96026581af31a6b7466f6b091eb74b3f",
      "tree": "73897d1c2510c5f9b5e740f15dd1c3d7f25aaf07",
      "parents": [
        "caeae5757d47be6be288cd4769f241d5bcc354cc"
      ],
      "author": {
        "name": "Sebastian Krzyszkowiak",
        "email": "sebastian.krzyszkowiak@puri.sm",
        "time": "Mon Feb 01 08:57:39 2021 -0800"
      },
      "committer": {
        "name": "Sebastian Krzyszkowiak",
        "email": "sebastian.krzyszkowiak@puri.sm",
        "time": "Mon Feb 01 08:57:39 2021 -0800"
      },
      "message": "wayland: Don\u0027t crash when the properties of already existing wl_output change\n"
    },
    {
      "commit": "caeae5757d47be6be288cd4769f241d5bcc354cc",
      "tree": "aa99bf5ae01347ab8c442eee33fe48905b8523f1",
      "parents": [
        "a560281a99d649d2b1849c31f2402af3bd12fcc7"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 08:55:48 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Feb 01 08:55:48 2021 -0800"
      },
      "message": "Fixed bug 5524 - Pass NSString to NSLog()\n\nHiroyuki Iwatsuki\n\nIf you pass the C string directly to NSLog(), it will be garbled with Japanese and probably other language strings, or no log will be output at all.\n\nNSLog(\"Hello, World!\"); // \u003d\u003e \"Hello, World!\"\nNSLog(\"こんにちは、世界！\"); // \u003d\u003e No output...\n\nTherefore, you need to convert the string to an NSString before passing it to NSLog().\n\nNSString *str \u003d [NSString stringWithUTF8String:\"こんにちは、世界！\"];\nNSLog(@\"%@\", str); // \u003d\u003e \"こんにちは、世界！\"\n\nThank you.\n"
    },
    {
      "commit": "a560281a99d649d2b1849c31f2402af3bd12fcc7",
      "tree": "0b4f6ebbb9c2ac98a85be92ded6c46c2d4807bdc",
      "parents": [
        "97ddd27b078dfe3583ffe5ac9751bbe07419b8cf"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sun Jan 31 19:11:49 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sun Jan 31 19:11:49 2021 -0800"
      },
      "message": "Don\u0027t enable address sanitize flags without checking compiler first\n"
    },
    {
      "commit": "97ddd27b078dfe3583ffe5ac9751bbe07419b8cf",
      "tree": "1a3dc546e14412786daab5f117fb15866bb0285d",
      "parents": [
        "e0a556fa393de940ba4e52d8f6461c1b6026991e"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Sun Jan 31 19:10:02 2021 -0800"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Sun Jan 31 19:10:02 2021 -0800"
      },
      "message": "free \u0027outputs\u0027 in \u0027Wayland_DestroyWindow\u0027\n"
    },
    {
      "commit": "e0a556fa393de940ba4e52d8f6461c1b6026991e",
      "tree": "004f9d4598550b8a99cf95dede2d876793e27737",
      "parents": [
        "1082d235c63be4322b503867e60d55daad396325"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Sun Jan 31 19:09:44 2021 -0800"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Sun Jan 31 19:09:44 2021 -0800"
      },
      "message": "free the \u0027data_device_manager\u0027\n"
    },
    {
      "commit": "1082d235c63be4322b503867e60d55daad396325",
      "tree": "41dc4b66c9d2f5b7e7131075e94146e2b51b271a",
      "parents": [
        "9b0b2fa025a41f59d778deec80f282e718a6657b"
      ],
      "author": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Sun Jan 31 19:09:25 2021 -0800"
      },
      "committer": {
        "name": "Christian Rauch",
        "email": "Rauch.Christian@gmx.de",
        "time": "Sun Jan 31 19:09:25 2021 -0800"
      },
      "message": "cmake: enable AddressSanitizer in Debug builds\n"
    },
    {
      "commit": "9b0b2fa025a41f59d778deec80f282e718a6657b",
      "tree": "207eee16c636f947e6d66e90d3ee32b2e0d884cc",
      "parents": [
        "b7ab7a43171adbe659cd5844d2fd55ff2207bfac"
      ],
      "author": {
        "name": "Sebastian Krzyszkowiak",
        "email": "sebastian.krzyszkowiak@puri.sm",
        "time": "Sun Jan 31 19:06:37 2021 -0800"
      },
      "committer": {
        "name": "Sebastian Krzyszkowiak",
        "email": "sebastian.krzyszkowiak@puri.sm",
        "time": "Sun Jan 31 19:06:37 2021 -0800"
      },
      "message": "wayland: Fix transform and scale handling when setting display mode\n"
    },
    {
      "commit": "b7ab7a43171adbe659cd5844d2fd55ff2207bfac",
      "tree": "bb3ef03d83c40746124464b38c8fd7a25be864ba",
      "parents": [
        "22dd02f042f8e331000ddf6a9f7bb492407311b1"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sun Jan 31 04:04:26 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sun Jan 31 04:04:26 2021 +0100"
      },
      "message": "[KMS/DRM] Merge patch for bug 5522#: Implement KMSDRM_GetWindowWMInfo().\n"
    },
    {
      "commit": "22dd02f042f8e331000ddf6a9f7bb492407311b1",
      "tree": "e5d960965dafc75b73b3c79c24ab206092205986",
      "parents": [
        "4772f687d8454eff01b31ffaf9751c25d439021d"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sun Jan 31 03:48:29 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sun Jan 31 03:48:29 2021 +0100"
      },
      "message": "[KMS/DRM] Fix for bug #5518: only do async pageflips when hardware supports them.\n"
    },
    {
      "commit": "4772f687d8454eff01b31ffaf9751c25d439021d",
      "tree": "d1dc0782ad5dc40326ce9c638840568e7b5a7237",
      "parents": [
        "43751ef00f66073c1b480f520b709474ea3e8db7"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Wed Jan 27 20:41:36 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Wed Jan 27 20:41:36 2021 -0600"
      },
      "message": "Add default handler for Alt+Tab while keyboard grab is enabled\n\nBy default, we will minimize the window when we receive Alt+Tab with a\nfull-screen keyboard grabbed window to allow the user to escape the\nfull-screen application.\n\nSome applications like remote desktop clients may want to handle Alt+Tab\nthemselves, so provide an opt-out via SDL_HINT_ALLOW_ALT_TAB_WHILE_GRABBED\u003d0.\n"
    },
    {
      "commit": "43751ef00f66073c1b480f520b709474ea3e8db7",
      "tree": "0086bb02fb5fa41d8e9597de814d6988d70f7ec9",
      "parents": [
        "495b0f51171de6284e7d0cfc26ca8c3691b4f83d"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Sat Jan 30 20:09:35 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Sat Jan 30 20:09:35 2021 +0100"
      },
      "message": "Revert checks on destination scaling size (see bug #5510)\n"
    },
    {
      "commit": "495b0f51171de6284e7d0cfc26ca8c3691b4f83d",
      "tree": "27b108107893be623809e38e94b46ffcaa61721a",
      "parents": [
        "e92f09533831ddcd67c678174b5de463a000dfa4"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Jan 29 23:32:42 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Jan 29 23:32:42 2021 +0100"
      },
      "message": "[KMS/DRM] Correct small omission on bugfix #5513: y-coord correction has to be done on WarpMouseGlobal, too.\n"
    },
    {
      "commit": "e92f09533831ddcd67c678174b5de463a000dfa4",
      "tree": "7aceef5bf2af28992de3725318049617e1ce755a",
      "parents": [
        "88c38818177903fae07072ab86323e9ec1039bd4"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Fri Jan 29 13:04:01 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Fri Jan 29 13:04:01 2021 -0800"
      },
      "message": "Fixed crash if the GameCube controller hasn\u0027t been opened yet\n"
    },
    {
      "commit": "88c38818177903fae07072ab86323e9ec1039bd4",
      "tree": "fc120bcde16dbcb02e1b6867f53fa1b53aed4b5b",
      "parents": [
        "caab6298f47c22141117e2042425cf062f856621"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Fri Jan 29 23:11:13 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Fri Jan 29 23:11:13 2021 +0300"
      },
      "message": "added --enable-xinput switch for windows builds\n"
    },
    {
      "commit": "caab6298f47c22141117e2042425cf062f856621",
      "tree": "66c473a34350dc8f27480f37bb9c07b77af2773a",
      "parents": [
        "56460f9432352912734a44e4935ef77dcce339f8"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Fri Jan 29 20:34:20 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Fri Jan 29 20:34:20 2021 +0100"
      },
      "message": "Remove checks on destination scaling size (see bug #5510)\n"
    },
    {
      "commit": "56460f9432352912734a44e4935ef77dcce339f8",
      "tree": "0b4073488408882c0bb63b3a1afaaf3b223d9b54",
      "parents": [
        "5c6a2307458ca38481823e9c24e5c20e11af77fd"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Jan 29 18:17:16 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Jan 29 18:17:16 2021 +0100"
      },
      "message": "[KMS/DRM] Remove unused KMSDRM_SetWindowGrab prototype in header file.\n"
    },
    {
      "commit": "5c6a2307458ca38481823e9c24e5c20e11af77fd",
      "tree": "df2f7a188e378782c9ba665b1b03d11450660153",
      "parents": [
        "e0087f0135dddc4dff2f3215fc9097e2f88c3e11"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Jan 29 18:08:04 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Fri Jan 29 18:08:04 2021 +0100"
      },
      "message": "[KMS/DRM] Patch for bug #5513. KMSDRM backend can now manage and use several displays.\n"
    },
    {
      "commit": "e0087f0135dddc4dff2f3215fc9097e2f88c3e11",
      "tree": "ce930944bc39529f7e3e1b77a96b43d1b1e1415f",
      "parents": [
        "40ae11901af2bfdb3c70b92f4de0f7b8c49725bd"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Thu Jan 28 20:02:01 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Thu Jan 28 20:02:01 2021 -0600"
      },
      "message": "Properly handle keys already down when the hook is installed\n\nFor keys that are already down when we install the keyboard hook, we need to\nallow the WM_KEYUP/WM_SYSKEYUP message to be processed normally. This ensures\nthat other applications see the key up, which prevents the key from being stuck\ndown from the perspective of other apps when our grab is released.\n"
    },
    {
      "commit": "40ae11901af2bfdb3c70b92f4de0f7b8c49725bd",
      "tree": "e414d7ada43c3892ee480fa010364926b6719e3d",
      "parents": [
        "0d5aa3837b4604204e9bc312633d37ec5d1d6321"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Fri Jan 29 13:38:39 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Fri Jan 29 13:38:39 2021 +0100"
      },
      "message": "Remove old YUV fixme\n"
    },
    {
      "commit": "0d5aa3837b4604204e9bc312633d37ec5d1d6321",
      "tree": "a364d65a90a722dcf1a272de2a4375632e099815",
      "parents": [
        "48a6e210f894a6be39768c92efba848b1398c136"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Fri Jan 29 12:04:48 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Fri Jan 29 12:04:48 2021 +0100"
      },
      "message": "Add checks for maximun scaling size (see bug #5510)\n"
    },
    {
      "commit": "48a6e210f894a6be39768c92efba848b1398c136",
      "tree": "0a3b0ea5d8394efe1521dcb67733d16c965a1645",
      "parents": [
        "44703d54ac44d2b0d822512c153229b214d12180"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Jan 28 14:54:01 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Jan 28 14:54:01 2021 -0800"
      },
      "message": "Make sure we don\u0027t create a game controller mapping for HID devices that aren\u0027t supported by HIDAPI\n"
    },
    {
      "commit": "44703d54ac44d2b0d822512c153229b214d12180",
      "tree": "bdb282d38890a089f2826b300e54f9591b31110e",
      "parents": [
        "717ca7679d555346262fd2b55ae220172c436715"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Jan 28 14:53:59 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Thu Jan 28 14:53:59 2021 -0800"
      },
      "message": "Note that the Logitech G29 (PS4) is a racing wheel\n"
    },
    {
      "commit": "717ca7679d555346262fd2b55ae220172c436715",
      "tree": "3b5183b772fe9f4295ef9e3e95cfdd045d401975",
      "parents": [
        "cd5c507a9a9f6b312a25c3ce5f4698b67cdae8f4"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Fri Jan 29 00:55:00 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Fri Jan 29 00:55:00 2021 +0300"
      },
      "message": "SDL_config_os2.h: remove some duplicated lines.\n"
    },
    {
      "commit": "cd5c507a9a9f6b312a25c3ce5f4698b67cdae8f4",
      "tree": "760001367e47bc7283187f8d21c69bf8e173adb7",
      "parents": [
        "f4bcfc02e52b81d608023244e58d9dfbb71e9ec6"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Thu Jan 28 23:03:50 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Thu Jan 28 23:03:50 2021 +0300"
      },
      "message": "config.guess and config.sub updates from mainstream\n"
    },
    {
      "commit": "f4bcfc02e52b81d608023244e58d9dfbb71e9ec6",
      "tree": "c558310ba95563db47faf427d453432cb3576ac7",
      "parents": [
        "af65ee9b58f676749510cdbab964699127258a30"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Jan 28 15:34:33 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Jan 28 15:34:33 2021 +0100"
      },
      "message": "Fixed bug 5510 - simplify the scaling functions blit auto (generated file)\n"
    },
    {
      "commit": "af65ee9b58f676749510cdbab964699127258a30",
      "tree": "191c3849cf39b7e1170b34215a862e2291ca778d",
      "parents": [
        "eef52ae77923b0f6712285521df77d55a035f49d"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Jan 28 15:33:47 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Jan 28 15:33:47 2021 +0100"
      },
      "message": "Fixed bug 5510 - simplify the scaling functions\n"
    },
    {
      "commit": "eef52ae77923b0f6712285521df77d55a035f49d",
      "tree": "e5decd4a1081c1d3a3ff3adebd51c2dd9411b07a",
      "parents": [
        "9ca25ac0ea8a27270e468cfb4723bf19f3fc7a7b"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Jan 28 11:03:45 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Thu Jan 28 11:03:45 2021 +0100"
      },
      "message": "SDL_stretch: remove un-used vars, same notation as blit functions\n"
    },
    {
      "commit": "9ca25ac0ea8a27270e468cfb4723bf19f3fc7a7b",
      "tree": "34f27617aae280c0f9ad537e55261f8dc87ca7dc",
      "parents": [
        "19976c865ec4efe70d166acb4a62ca92f68047bd"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:25 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:25 2021 -0800"
      },
      "message": "Fixed compiler warnings\n"
    },
    {
      "commit": "19976c865ec4efe70d166acb4a62ca92f68047bd",
      "tree": "516dbca9482dff9b3678b754f88927e71d2ba650",
      "parents": [
        "a1cfc42985024580f1daed18bae006711ad05426"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:21 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:21 2021 -0800"
      },
      "message": "Fixed build warning\n"
    },
    {
      "commit": "a1cfc42985024580f1daed18bae006711ad05426",
      "tree": "814b02b881b0c9d75a50640f2e49823d89ae6639",
      "parents": [
        "7c54ecbd220fbcff7a5ff1b79dff2b1c07105699"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:17 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:17 2021 -0800"
      },
      "message": "Fixed PS4 controllers over Bluetooth on Windows 7\n"
    },
    {
      "commit": "7c54ecbd220fbcff7a5ff1b79dff2b1c07105699",
      "tree": "445a7f23c1ae77a081dceac564d7a70def8d6a88",
      "parents": [
        "6eb468bedf8dca09cb5e10e9f3822e8dc76e5870"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:13 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 21:30:13 2021 -0800"
      },
      "message": "Added WIN_IsWindows8OrGreater() for internal use\n"
    },
    {
      "commit": "6eb468bedf8dca09cb5e10e9f3822e8dc76e5870",
      "tree": "94a1a44bcb3cafe39584635f35d9a792c726add3",
      "parents": [
        "8712cc2b7a561a95478fd9cdcb532f1f0901da92"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Wed Jan 27 19:40:55 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Wed Jan 27 19:40:55 2021 -0600"
      },
      "message": "X11: Ungrab the keyboard when the mouse leaves the window\n\nGNOME Mutter requires keyboard grab for certain important functionality like\nwindow resizing, interaction with the application context menu, and opening the\nActivites view. To allow Mutter to grab the keyboard as needed, we\u0027ll ungrab\nwhen the mouse leaves our window.\n\nTo be safe, we\u0027ll do this for all WMs since forks of Mutter and Matacity (and\npossibly others) may have the same behavior, and we don\u0027t want to have to keep\ntrack of those.\n"
    },
    {
      "commit": "8712cc2b7a561a95478fd9cdcb532f1f0901da92",
      "tree": "b7b6ace83baf5ed4e37bc4e6301db2402d1e6ab7",
      "parents": [
        "084eb6f8258e7b1423f0c708cc28c7a30ee2f13f"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Thu Jan 28 00:11:24 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Thu Jan 28 00:11:24 2021 +0300"
      },
      "message": "SDL_LowerSoftStretchLinear: assign result from scale_mat() to ret.\n\notherwise it would always return -1 when SSE and NEON instrinsics\nare absent.\n"
    },
    {
      "commit": "084eb6f8258e7b1423f0c708cc28c7a30ee2f13f",
      "tree": "c6b6550178a640e4bdc8208dfad655bf4ccf6ff5",
      "parents": [
        "f90e1472bf9b66215b34ef160dee68b9ff6fd586"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:50:09 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:50:09 2021 -0800"
      },
      "message": "Fixed bug 3816 - asm code in video/SDL_stretch.c\n\nSylvain\n\nI propose this new version for SDL_stretch.c that drops mprotect and asm\n\nCode is similar to the StretchLinear, but the steps computation are kept similar to the nearest.\nso that:\n- it\u0027s pixel perfect with nearest\n- as fast as asm I think\n- no asm, nor mprotect\n- benefit for all archicture\n"
    },
    {
      "commit": "f90e1472bf9b66215b34ef160dee68b9ff6fd586",
      "tree": "815fecf4409a4cc6e13ab79df03b28bb3d6bb914",
      "parents": [
        "4b7984f571809b9043b29e1690ca80a5d34f9dd8"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:43:35 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:43:35 2021 -0800"
      },
      "message": "Added explicit case from Uint8 to int before subtracting offset\n"
    },
    {
      "commit": "4b7984f571809b9043b29e1690ca80a5d34f9dd8",
      "tree": "993303845364e99b8cfa8ff1ce62f4e3faadc74b",
      "parents": [
        "f444437b67a7ef538d951ca35249925d7be5b102"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:41:58 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:41:58 2021 -0800"
      },
      "message": "Fixed compile warning\n"
    },
    {
      "commit": "f444437b67a7ef538d951ca35249925d7be5b102",
      "tree": "3ecd574354fc18e0f8abc3e8d3a271fd016a0dff",
      "parents": [
        "c0ed3b978bf646a3b50db2bec59360233aba6eb6"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:41:37 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 12:41:37 2021 -0800"
      },
      "message": "The Sharkoon Skiller SGH2 headset hangs in DirectInput enumeration, so avoid it here just in case.\n\nSee bug 5485 for details.\n"
    },
    {
      "commit": "c0ed3b978bf646a3b50db2bec59360233aba6eb6",
      "tree": "43b4e8b6e76a37b1d126daa97703d00c1996cf95",
      "parents": [
        "22c072529db935a4173c6af2cb4346683862b60b"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 11:39:03 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 11:39:03 2021 -0800"
      },
      "message": "Fixed bug 3816 - asm code in video/SDL_stretch.c\n\nOzkan Sezer\n\n- adds MSVC __declspec(align(x)) support,\n- disables asm if PAGE_ALIGNED no macro is defined,\n- still disables asm for gcc \u003c 4.6, need more info,\n- drops Watcom support.\n"
    },
    {
      "commit": "22c072529db935a4173c6af2cb4346683862b60b",
      "tree": "b08598e77f8be65fc42d17bdd0f6cbdbbb6bb055",
      "parents": [
        "d2112a026e0b886ed5d3e4e8d91d921d8640975b"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 10:58:36 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Wed Jan 27 10:58:36 2021 -0800"
      },
      "message": "Fixed building with mingw64\n"
    },
    {
      "commit": "d2112a026e0b886ed5d3e4e8d91d921d8640975b",
      "tree": "8d04f2d30e2c809095c4b37cd60218c9836e76b8",
      "parents": [
        "cafdc7ecf3cdb059f07abf74a8f8dd8426489e6d"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Jan 27 10:54:49 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Jan 27 10:54:49 2021 +0100"
      },
      "message": "SDL_Update{YUV,NV}Texture: also intersect rect with texture dimension\n"
    },
    {
      "commit": "cafdc7ecf3cdb059f07abf74a8f8dd8426489e6d",
      "tree": "68af63f131b7d645d651cd2e55420e27d58d93f0",
      "parents": [
        "a2470d0ad94b3424ecfa2b60e34b3b248f4d4426"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Jan 27 10:20:13 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Jan 27 10:20:13 2021 +0100"
      },
      "message": "SDL_UpdateTexture: intersect update rect with texture dimension\n- fix crash with software renderer\n- fix non texture update with opengl/gles2\n"
    },
    {
      "commit": "a2470d0ad94b3424ecfa2b60e34b3b248f4d4426",
      "tree": "28156d01b515ebf0ab41583c0ff7583681a85ce1",
      "parents": [
        "944650669960d4bb9173de1c7ea40dddb6069055"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Jan 27 09:34:23 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Wed Jan 27 09:34:23 2021 +0100"
      },
      "message": "SDL_SoftStretch: disable asm path if mprotect isn\u0027t available (see bug #3816)\n"
    },
    {
      "commit": "944650669960d4bb9173de1c7ea40dddb6069055",
      "tree": "d6e625f9847486f3928cc8f88200e636947f52ad",
      "parents": [
        "727007d6be2d750763c18c1ced21417ab7206ae2"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Tue Jan 26 19:16:17 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Tue Jan 26 19:16:17 2021 -0600"
      },
      "message": "Expose separate keyboard and mouse grab support\n\nThis adds SDL_SetWindowKeyboardGrab(), SDL_GetWindowKeyboardGrab(),\nSDL_SetWindowMouseGrab(), SDL_GetWindowMouseGrab(), and new\nSDL_WINDOW_KEYBOARD_GRABBED flag. It also updates the test harness to exercise\nthis functionality and makes a minor fix to X11 that I missed in\nhttps://hg.libsdl.org/SDL/rev/02a2d609369b\n\nTo fit in with this new support, SDL_WINDOW_INPUT_CAPTURE has been renamed to\nSDL_WINDOW_MOUSE_CAPTURE with the old name remaining as an alias for backwards\ncompatibility with older code.\n"
    },
    {
      "commit": "727007d6be2d750763c18c1ced21417ab7206ae2",
      "tree": "bf2dcee3175cb2dc8e187d1e94576451f9baef24",
      "parents": [
        "19b0c06f3292ee1a4598e4a90fd9d4314a18c97c"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Tue Jan 26 21:15:15 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Tue Jan 26 21:15:15 2021 +0100"
      },
      "message": "SDL_SoftStretch: re-enable USE_ASM_STRETCH path for gcc \u003e\u003d 4.6\n"
    },
    {
      "commit": "19b0c06f3292ee1a4598e4a90fd9d4314a18c97c",
      "tree": "567c8c0ad9ef13e0f81280794026036ac0cb16c0",
      "parents": [
        "67468d4e0f8ea130096060498d08d03d04c32ace"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Tue Jan 26 00:05:01 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Tue Jan 26 00:05:01 2021 -0600"
      },
      "message": "DirectFB: Split input grab handling into keyboard and mouse parts\n\nThe grabbed_window field is superfluous now since SDL added the\nSDL_GetGrabbedWindow() function, so it can be removed.\n\nDirectFB_SetWindowMouseGrab() is also simplified because SDL handles ungrabbing\nany previously grabbed window prior to calling SetWindowMouseGrab() now.\n\nCompile-tested only.\n"
    },
    {
      "commit": "67468d4e0f8ea130096060498d08d03d04c32ace",
      "tree": "dfd597cb8631d76022f045b1dc189df16905431d",
      "parents": [
        "e0bf60b17e33948a5d734af0696284879591869c"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:51:47 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:51:47 2021 -0800"
      },
      "message": "Fixed bug 5497 - SDL_COMPOSE_ERROR is wrong\n\nUMU\n\n#define SDL_COMPOSE_ERROR(str) SDL_STRINGIFY_ARG(__FUNCTION__) \", \" str\n\nI think SDL_STRINGIFY_ARG should be removed.\n\n#define SDL_COMPOSE_ERROR(str) __FUNCTION__ \", \" str\n\n(verified with Visual Studio 2019)\n"
    },
    {
      "commit": "e0bf60b17e33948a5d734af0696284879591869c",
      "tree": "f0c9bc7698c6f1af81d3ddd39cf6eaaa14d9ad82",
      "parents": [
        "3b2b0cd3cedb077383624c16f993591a9fbecd03"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:43:21 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:43:21 2021 -0800"
      },
      "message": "Fixed bug 5481 - iOS-specific main sources not used for CMake build.\n\nAaron Barany\n\nThe CMake build for SDL doesn\u0027t set SDLMAIN_SOURCES on iOS to the sources in src/main/ios. As a result, SDL fails to initialize since it falls back to the dummy main. Adding the line file(GLOB SDLMAIN_SOURCES ${SDL2_SOURCE_DIR}/src/main/uikit/*.c) fixes the issue.\n"
    },
    {
      "commit": "3b2b0cd3cedb077383624c16f993591a9fbecd03",
      "tree": "1ecc23327f39a8e05efc63a0c3c47d633eac9bae",
      "parents": [
        "07a92586a71930c9a52b4130e117b1949f5b6c56"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:38:50 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:38:50 2021 -0800"
      },
      "message": "Fixed bug 5493 - Hint to let the user opt out of having Switch controllers\u0027 Home button lit when opened\n\njibb\n\nNew hint to let the user opt out of having Switch controllers\u0027 Home button lit when opened.\n\nThis is more consistent with the Switch itself (which doesn\u0027t light the button normally) and may be preferred by users who may disconnect their controller without letting the application close it.\n\nI think this warrants a Switch-specific hint because the default behaviour is unusual (inconsistent with using a Switch controller on a Switch itself or with some other programs on PC), and because of that it\u0027s distinct from other lights (the player number on Switch controllers and the player colour on PlayStation controllers).\n"
    },
    {
      "commit": "07a92586a71930c9a52b4130e117b1949f5b6c56",
      "tree": "3032741668ef689d02a6b3e3a7975787a5b1f876",
      "parents": [
        "0ff8dde46e2653ba6b4cda171a1ef4bfb112f2f2"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:03:21 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Mon Jan 25 20:03:21 2021 -0800"
      },
      "message": "Removed non-functional window grab implementations\n"
    },
    {
      "commit": "0ff8dde46e2653ba6b4cda171a1ef4bfb112f2f2",
      "tree": "1cf7e1e762fe0c1d0fd23dfa6332a389c30bf818",
      "parents": [
        "b300375623baa1e59b1d2fbd368f13691282bc69"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Mon Jan 25 21:42:14 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Mon Jan 25 21:42:14 2021 -0600"
      },
      "message": "Rename SetWindowGrab() to SetWindowMouseGrab()\n"
    },
    {
      "commit": "b300375623baa1e59b1d2fbd368f13691282bc69",
      "tree": "cd561ad3434a410e7863f93fd7479ecbc717b8d1",
      "parents": [
        "c76e6c1479e192a9784917afe4423cdc38e9d791"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Sun Jan 24 17:19:48 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Sun Jan 24 17:19:48 2021 -0600"
      },
      "message": "wayland: cancel key repeat when keyboard focus is lost\n\nSDL_SetKeyboardFocus(NULL) will lift any keys still pressed when keyboard focus\nleaves the window, but then key repeat comes behind our backs and presses the\nkey down again. This results in an infinite stream of SDL_KEYDOWN events when\nfocus leaves the window with a key down (particularly noticeable with Alt+Tab).\n"
    },
    {
      "commit": "c76e6c1479e192a9784917afe4423cdc38e9d791",
      "tree": "a4d353081c1d9f401315ae98d0747be2843c65c9",
      "parents": [
        "c74fe8807232c11c41bd61a5bd8a5897cad44aba"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Mon Jan 25 18:40:26 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Mon Jan 25 18:40:26 2021 -0600"
      },
      "message": "Fix grabbing Alt+Tab and Alt+Esc on Windows 7\n"
    },
    {
      "commit": "c74fe8807232c11c41bd61a5bd8a5897cad44aba",
      "tree": "2cfc61f10b586ee58e0287a1498d3af8e4e5225f",
      "parents": [
        "a2893ea91352c5f4830780e136ed699b23805cde"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Sat Jan 23 16:22:44 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Sat Jan 23 16:22:44 2021 -0600"
      },
      "message": "Refactor keyboard grab to be managed by the video core\n\nThis gives us flexibility to add others hints to control keyboard grab behavior\nwithout having to touch all of the backends. It also allows us to possibly\nexpose keyboard grab separately from mouse grab for applications that want to\nmanage those independently.\n"
    },
    {
      "commit": "a2893ea91352c5f4830780e136ed699b23805cde",
      "tree": "968e011843cc960b01379ab0a394de8da87dd2ac",
      "parents": [
        "67f89bafc7f5a0e8afaa845eb93097d670627c96"
      ],
      "author": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Mon Jan 25 22:17:11 2021 +0100"
      },
      "committer": {
        "name": "Sylvain Becker",
        "email": "sylvain.becker@gmail.com",
        "time": "Mon Jan 25 22:17:11 2021 +0100"
      },
      "message": "GLES2 SDL_Renderer: remove old ZUNE_HD defines and simplify shader cache\n"
    },
    {
      "commit": "67f89bafc7f5a0e8afaa845eb93097d670627c96",
      "tree": "3ccfd8c74bb0b0d02cad10b1a22f53fa25976b79",
      "parents": [
        "3545adee548437f9f42077635df6e5d5fe34fd28"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Mon Jan 25 04:11:40 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Mon Jan 25 04:11:40 2021 +0300"
      },
      "message": "better check for clock_gettime_nsec_np() -- cf. bug #5467.\n"
    },
    {
      "commit": "3545adee548437f9f42077635df6e5d5fe34fd28",
      "tree": "4851b1ad2c0caf617c2ec3d7e092d01402822ad4",
      "parents": [
        "239c12cf85db4db383ecabe8ce0496ea34c90889"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Sun Jan 24 17:37:24 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Sun Jan 24 17:37:24 2021 +0300"
      },
      "message": "CMakeLists.txt: fix check_symbol_exists() for clock_gettime_nsec_np\n"
    },
    {
      "commit": "239c12cf85db4db383ecabe8ce0496ea34c90889",
      "tree": "d6c8b8b219f309acb5864e4763138c972d33b7fb",
      "parents": [
        "97d3d8e3f2335303f415a95f3a939b5496cb6cd5"
      ],
      "author": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Sun Jan 24 17:02:40 2021 +0300"
      },
      "committer": {
        "name": "Ozkan Sezer",
        "email": "sezeroz@gmail.com",
        "time": "Sun Jan 24 17:02:40 2021 +0300"
      },
      "message": "minor clean-up in SDL_os2audio.c\n"
    },
    {
      "commit": "97d3d8e3f2335303f415a95f3a939b5496cb6cd5",
      "tree": "ba18370ab3ab6446f106fe75ae1a2bdb235d808f",
      "parents": [
        "0530ff844dfefc5d89f67b1f56b50dbd6bb17f70"
      ],
      "author": {
        "name": "Brandon DeRosier",
        "email": "x@bdero.me",
        "time": "Sun Jan 24 03:55:04 2021 -0800"
      },
      "committer": {
        "name": "Brandon DeRosier",
        "email": "x@bdero.me",
        "time": "Sun Jan 24 03:55:04 2021 -0800"
      },
      "message": "fix build failure due to -Werror\u003ddeclaration-after-statement (bug #5500)\n"
    },
    {
      "commit": "0530ff844dfefc5d89f67b1f56b50dbd6bb17f70",
      "tree": "4f4ee11d5ba31c7dd1f94ee1afe6a39b3cddda2c",
      "parents": [
        "0ec0405cfc093d47e71759899151f6338a68b58c"
      ],
      "author": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sat Jan 23 22:47:06 2021 +0100"
      },
      "committer": {
        "name": "Manuel Alfayate Corchete",
        "email": "redwindwanderer@gmail.com",
        "time": "Sat Jan 23 22:47:06 2021 +0100"
      },
      "message": "[KMS/DRM] Bugfix for #5489: Non-FULLSCREEN windows incorrecty use videomode changing to look fullscreen.\n"
    },
    {
      "commit": "0ec0405cfc093d47e71759899151f6338a68b58c",
      "tree": "c6b7e52d801ef80e947189d0dc64acf05a14109d",
      "parents": [
        "385116719c4fac0d432997d8453867f11b395a6b"
      ],
      "author": {
        "name": "Ethan Lee",
        "email": "flibitijibibo@flibitijibibo.com",
        "time": "Sat Jan 23 15:40:22 2021 -0500"
      },
      "committer": {
        "name": "Ethan Lee",
        "email": "flibitijibibo@flibitijibibo.com",
        "time": "Sat Jan 23 15:40:22 2021 -0500"
      },
      "message": "Implement Wayland_SetWindowResizable\n"
    },
    {
      "commit": "385116719c4fac0d432997d8453867f11b395a6b",
      "tree": "353595c9d967b85ff5dca34f400a71973410ac8b",
      "parents": [
        "aa1371e7413457275625c94978dee4b03172317f"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 13:15:02 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 13:15:02 2021 -0800"
      },
      "message": "Added Stadia controller source file to Visual Studio and Xcode projects\n"
    },
    {
      "commit": "aa1371e7413457275625c94978dee4b03172317f",
      "tree": "03484694fad88556e6f39f366342dc5c45559b24",
      "parents": [
        "4f95ccadfde2d5393a2fbce485c41f23aabe9af1"
      ],
      "author": {
        "name": "Simon McVittie",
        "email": "smcv@collabora.com",
        "time": "Sat Jan 23 11:22:35 2021 -0800"
      },
      "committer": {
        "name": "Simon McVittie",
        "email": "smcv@collabora.com",
        "time": "Sat Jan 23 11:22:35 2021 -0800"
      },
      "message": "waylandtouch: Don\u0027t export interface structs\nThese are explicitly written in C code rather than generated at build\ntime, so they weren\u0027t affected by changing how we invoke\nwayland-scanner.\n\nSigned-off-by: Simon McVittie \u003csmcv@collabora.com\u003e\n"
    },
    {
      "commit": "4f95ccadfde2d5393a2fbce485c41f23aabe9af1",
      "tree": "e38b2e643590ec241f0f2b38a8f90a77ed714e26",
      "parents": [
        "b78384a4d12215c5c8bb11cd33be27feb97513a4"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 11:21:01 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 11:21:01 2021 -0800"
      },
      "message": "Minor cleanup\n"
    },
    {
      "commit": "b78384a4d12215c5c8bb11cd33be27feb97513a4",
      "tree": "a662f2f344531c62827c29a3ed5774fbb9c6b53e",
      "parents": [
        "5099bcff9ea227aa4280381ce60829da43d385db"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 11:06:35 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 11:06:35 2021 -0800"
      },
      "message": "Fixed bug 5466 - Add haptic support for Stadia Controller\n\nDimitriy Ryazantcev\n\nConsider adding support for Stadia Controller haptics.\n\nHere is example code how to deal with it:\nhttps://github.com/chromium/chromium/blob/99314be8152e688bafbbf9a615536bdbb289ea87/device/gamepad/hid_haptic_gamepad.cc#L45\n"
    },
    {
      "commit": "5099bcff9ea227aa4280381ce60829da43d385db",
      "tree": "1540ec42e95f8bffd028b9c2abe0b769bbeb5219",
      "parents": [
        "cca251b34f01ececb41d0cdece072d90965b6189"
      ],
      "author": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 09:50:43 2021 -0800"
      },
      "committer": {
        "name": "Sam Lantinga",
        "email": "slouken@libsdl.org",
        "time": "Sat Jan 23 09:50:43 2021 -0800"
      },
      "message": "Fixed bug 5467 - SDL sys timer Mac OS update proposal\n\nDavid Carlier\n\nChange of api from 2016 which reduce code complexity a bit.\n"
    },
    {
      "commit": "cca251b34f01ececb41d0cdece072d90965b6189",
      "tree": "affd4567c30fe15d49e2d240d57f620ca47547b1",
      "parents": [
        "ede5f3f21d44cd57967805faeec581f9c0ee09e5"
      ],
      "author": {
        "name": "JibbSmart",
        "email": "none@none",
        "time": "Mon Jan 18 19:57:29 2021 +0800"
      },
      "committer": {
        "name": "JibbSmart",
        "email": "none@none",
        "time": "Mon Jan 18 19:57:29 2021 +0800"
      },
      "message": "Hint SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS added so we can recognise a Joy-Con as half a Pro Controller, so we can read its analog input and read its sensors just like we do a Pro Controller.\n"
    },
    {
      "commit": "ede5f3f21d44cd57967805faeec581f9c0ee09e5",
      "tree": "c82c94003ea8ccc79fa83bfc7abda7ad81f596a2",
      "parents": [
        "64697b4034ab3e8439ef572f21f2523a84878906"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Wed Jan 20 21:17:20 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Wed Jan 20 21:17:20 2021 -0600"
      },
      "message": "Implement support for inhibiting the screensaver on Wayland\n\nWe support both the org.freedesktop.ScreenSaver D-Bus API (same as the X11\nbackend) and the Wayland idle_inhibit_unstable_v1 protocol.\n\nSome Wayland compositors only support one or the other, so we need both to\nfor broad compatibility.\n"
    },
    {
      "commit": "64697b4034ab3e8439ef572f21f2523a84878906",
      "tree": "7030b481065df56baecd2d61d25870fa2f217600",
      "parents": [
        "920f258fa9523ae2b03dd3f69c0fc4538ff39899"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Fri Jan 22 19:22:17 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "cameron.gutman@gmail.com",
        "time": "Fri Jan 22 19:22:17 2021 -0600"
      },
      "message": "Fix continuous scrolling speed on Wayland\n\nWayland compositors seem to have standardized on 10 units per \"wheel tick\" for\ncontinuous scroll events, so we need to convert these axis values to ticks by\ndividing by 10 before reporting them in SDL_MOUSEWHEEL events.\n"
    },
    {
      "commit": "920f258fa9523ae2b03dd3f69c0fc4538ff39899",
      "tree": "bea5310d94ddf6f92687d9fc6db669384c4e63ed",
      "parents": [
        "2f020644a953615dfbba7cdec2ede0c863e9027e"
      ],
      "author": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Fri Jan 22 19:40:26 2021 -0600"
      },
      "committer": {
        "name": "Cameron Gutman",
        "email": "aicommander@gmail.com",
        "time": "Fri Jan 22 19:40:26 2021 -0600"
      },
      "message": "Implement keyboard grab support for Windows\n\nThis is implemented via a low-level keyboard hook. Unfortunately, this is\nrather invasive, but it\u0027s how Microsoft recommends that it be done [0].\nWe want to do as little as possible in the hook, so we only intercept a few\ncrucial modifier keys there, while leaving other keys to the normal event\nprocessing flow.\n\nWe will only install this hook if SDL_HINT_GRAB_KEYBOARD\u003d1, which is not\nthe default. This will reduce any compatibility concerns to just the SDL\napplications that explicitly ask for this behavior.\n\nWe also remove the hook when the grab is terminated to ensure that we\u0027re\nnot unnecessarily staying involved in key event processing when it\u0027s not\nrequired anymore.\n\n[0]: https://docs.microsoft.com/en-us/windows/win32/dxtecharts/disabling-shortcut-keys-in-games\n"
    }
  ],
  "next": "2f020644a953615dfbba7cdec2ede0c863e9027e"
}
