GitLab will be down for maintenance this Sunday 13th June, from approx 7-11am UTC. This is for a PostgreSQL migration. See the tracker issue for more informations.

  1. 03 Jun, 2020 1 commit
  2. 27 May, 2020 3 commits
    • Jan Beich's avatar
      meson: split udev from udev_kms which requires systemd · b5b52979
      Jan Beich authored
      DragonFly and FreeBSD can use xf86-input-libinput with config/udev.
      
      ld: error: undefined symbol: xf86PlatformDeviceProbe
      >>> referenced by xf86platformBus.c
      >>>               xf86platformBus.c.o:(xf86platformProbe) in archive hw/xfree86/common/libxorg_common.a
      
      ld: error: undefined symbol: xf86PlatformDeviceCheckBusID
      >>> referenced by xf86platformBus.c
      >>>               xf86platformBus.c.o:(xf86platformProbeDev) in archive hw/xfree86/common/libxorg_common.a
      
      ld: error: undefined symbol: xf86PlatformReprobeDevice
      >>> referenced by xf86platformBus.c
      >>>               xf86platformBus.c.o:(xf86platformVTProbe) in archive hw/xfree86/common/libxorg_common.a
      
      ld: error: undefined symbol: NewGPUDeviceRequest
      >>> referenced by udev.c
      >>>               udev.c.o:(device_added) in archive config/liblibxserver_config.a
      
      ld: error: undefined symbol: DeleteGPUDeviceRequest
      >>> referenced by udev.c
      >>>               udev.c.o:(device_removed) in archive config/liblibxserver_config.a
      b5b52979
    • Jan Beich's avatar
      glx: unbreak on Unix without /usr/include/drm · be731e0b
      Jan Beich authored
      In file included from ../glx/glxdri2.c:35:
      /usr/local/include/GL/internal/dri_interface.h:43:10: fatal error: 'drm.h' file not found
       #include <drm.h>
                ^~~~~~~
      In file included from ../glx/glxdriswrast.c:39:
      /usr/local/include/GL/internal/dri_interface.h:43:10: fatal error: 'drm.h' file not found
       #include <drm.h>
                ^~~~~~~
      be731e0b
    • Jan Beich's avatar
      os: unbreak xsha1 on FreeBSD · f2cf236d
      Jan Beich authored
      ../os/xsha1.c:36:10: fatal error: 'sha1.h' file not found
       #include <sha1.h>
                ^~~~~~~~
      ../os/xsha1.c:45:5: error: implicit declaration of function 'SHA1Init' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
          SHA1Init(ctx);
          ^
      ../os/xsha1.c:54:5: error: implicit declaration of function 'SHA1Update' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
          SHA1Update(sha1_ctx, data, size);
          ^
      ../os/xsha1.c:63:5: error: implicit declaration of function 'SHA1Final' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
          SHA1Final(result, sha1_ctx);
          ^
      f2cf236d
  3. 20 May, 2020 2 commits
  4. 18 May, 2020 1 commit
  5. 13 May, 2020 1 commit
    • Carlos Garnacho's avatar
      xwayland: Improve checks for confined_to on InputOnly windows · 0777cf46
      Carlos Garnacho authored
      
      
      In this pretty Wine/Proton specific kludge, we try to handle confining grabs
      on InputOnly windows by trying to find the InputOutput window that the pointer
      would get visually confined to.
      
      The grabbing window and the visible window come from different clients, so
      we used to simply resort to the pointer focus. This is troublesome though, as
      the call may happen very soon at a time that the toplevel wasn't yet mapped by
      the Wayland compositor, so the pointer focus may well be out of date soon.
      
      In these situations, it does seem that even though the confining grab happens
      too early to have the wayland surface mapped, the xserver view of the WindowPtr
      does already reflect the size. Use this to find out the better window to
      assign the confining grab to, one whose geometry fully contains the InputOnly
      window's.
      Signed-off-by: Carlos Garnacho's avatarCarlos Garnacho <carlosg@gnome.org>
      Reviewed-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
      0777cf46
  6. 12 May, 2020 4 commits
  7. 11 May, 2020 1 commit
  8. 08 May, 2020 1 commit
  9. 07 May, 2020 1 commit
  10. 01 May, 2020 2 commits
  11. 30 Apr, 2020 1 commit
    • Tobias Stoeckmann's avatar
      hw/xfree86: Support ACPI without APM. · 9890e912
      Tobias Stoeckmann authored
      
      
      On systems with ACPI but disabled APM (e.g. --disable-linux-apm)
      the code does not compile due to preprocessor directives.
      
      If APM is disabled, the final return statement is considered to
      be part of ACPI's last if-statement, leading to a function which
      has no final return statement at all.
      
      I have refactored the code so ACPI and APM are independent of each
      other.
      Signed-off-by: Tobias Stoeckmann's avatarTobias Stoeckmann <tobias@stoeckmann.org>
      9890e912
  12. 27 Apr, 2020 1 commit
    • Olivier Fourdan's avatar
      xwayland: Fix infinite loop at startup · 785e5906
      Olivier Fourdan authored
      
      
      Mutter recently added headless tests, and when running those tests the
      Wayland compositor runs for a very short time.
      
      Xwayland is spawned by the Wayland compositor and upon startup will
      query the various Wayland protocol supported by the compositor.
      
      To do so, it will do a roundtrip to the Wayland server waiting for
      events it expects.
      
      If the Wayland compositor terminates before Xwayland has got the replies
      it expects, it will loop indefinitely calling `wl_display_roundtrip()`
      continuously.
      
      To avoid that issue, add a new `xwl_screen_roundtrip()` that checks for
      the returned value from `wl_display_roundtrip()` and fails if it is
      negative.
      Signed-off-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
      Reviewed-by: Roman Gilg's avatarRoman Gilg <subdiff@gmail.com>
      Reviewed-by: Jonas Ådahl's avatarJonas Ådahl <jadahl@gmail.com>
      785e5906
  13. 15 Apr, 2020 9 commits
    • Jon Turney's avatar
      hw/xwin: Drop call to setlocale() · 2fe13a1f
      Jon Turney authored
      Since we now only work with UTF-8 (or ISO8859-1) text in the clipboard,
      we don't need to setlocale().
      2fe13a1f
    • Jon Turney's avatar
      hw/xwin: Consistently use BOOL type from Xmd.h · f269e01e
      Jon Turney authored
      This avoids including Xdefs.h, which means we avoid all the issues with
      _XSERVER64 effecting how types are defined by that.
      f269e01e
    • Jon Turney's avatar
      hw/xwin: Remove XSetAuthorization() for helper clients · 4055fed1
      Jon Turney authored
      All helper client code now uses xcb, so calling XSetAuthorization() is
      no longer needed.
      
      This is the last reference to libX11 from helper clients, so linking
      with x11-xcb and libX11 is no longer required.
      
      Also drop (unneeded?) linking with libXau.
      
      Also drop installing these prerequistes on AppvVeyor.
      
      Also move prototypes for functions in winauth.c from win.h into a new
      header, winauth.h, and include that where needed.
      4055fed1
    • Jon Turney's avatar
      hw/xwin: xcbify clipboard integration · 9e02e023
      Jon Turney authored
      Convert clipboard integration code from libX11 to xcb
      
      This drops support for COMPOUND_TEXT.  Presumably some ancient
      (pre-2000) clients exist which support that, but not UTF8_STRING, but we
      don't have an example to test with. (Given the nature of the thing, the
      users of those clients probably work in CJK languages)
      
      Supporting COMPOUND_TEXT would also involve writing (or extracting from
      Xlib) support for the ISO 2022 encoding.
      
      v2:
      Fix the length of text property set by a SelectionRequest
      
      The length of the text property is not neccessarily the same as the
      length of the clipboard text before it is d2u converted (specifically,
      if that contains any '\r\n' sequences, it will be shorter as they are
      now just '\n')
      9e02e023
    • Jon Turney's avatar
      hw/xwin: Remove nounicodeclipboard option · f4936de7
      Jon Turney authored
      Always use CF_UNICODETEXT clipboard format.  Windows will automatically
      down-convert to CF_TEXT for clients which request that.
      
      This is subtly different in one way: if CF_TEXT is requested, we now
      post CF_UNICODETEXT and it is converted to CF_TEXT *in the locale of the
      requesting process*.  Previously, we would convert to CF_TEXT *in our
      locale* and post that.
      
      It looks like the code in the !X_HAVE_UTF8_STRING case didn't actually
      work correctly, but fortunately that has never been true...
      f4936de7
    • Jon Turney's avatar
      hw/xwin: Remove support for pre-Vista Win32 clipboard API · 9f51dfde
      Jon Turney authored
      The original Win32 clipboard API is widely regarded as terrible, since
      it relies on clients co-operatively managing the clipboard viewer chain,
      and a single buggy client can break it for all other clients.
      
      The last Windows version only supporting that API was Windows XP (5.1),
      EOLed in 2014.
      
      (This requires MinGW-w64 w32api 6.0.0 or later for
      Add/RemoveClipboardListener correctly exported by the x86_64 user32
      implib)
      9f51dfde
    • Jon Turney's avatar
      9a4b6279
    • Jon Turney's avatar
      hw/xwin: Warn about too large Windows -> X clipboard pastes · d7010cd9
      Jon Turney authored
      XChangeProperty() requests larger than the ~16MB permitted even with
      BigReq will fail BadLength
      d7010cd9
    • Jon Turney's avatar
      hw/xwin: Implement INCR protocol for X clipboard -> Windows clipboard · 56a91f20
      Jon Turney authored
      Also, relax the timeout mechanism so it allows 1 second between events,
      rather than 1 second for the entire transfer, as transfers of large
      pastes can take more than 1 second.
      
      Also, prefer UTF8_STRING encoding to COMPOUND_TEXT encoding
      56a91f20
  14. 10 Apr, 2020 1 commit
    • Michael Stapelberg's avatar
      Xorg: honor AutoRepeat option · 4f95d87d
      Michael Stapelberg authored
      
      
      This option was implemented before the drivers were split in ≈2006,
      and e.g. XWin still supports it.
      
      With this commit, Xorg regains support, so that the following configuration can
      be used to set the repeat rate for all keyboard devices without having to modify
      Xorg command-line flags or having to automate xset(1):
      
      Section "InputClass"
              Identifier "system-keyboard"
              MatchIsKeyboard "on"
              Option "XkbLayout" "de"
              Option "XkbVariant" "neo"
      	Option "AutoRepeat" "250 30"
      EndSection
      Signed-off-by: default avatarMichael Stapelberg <stapelberg@google.com>
      4f95d87d
  15. 30 Mar, 2020 3 commits
  16. 23 Mar, 2020 1 commit
    • Vasily Khoruzhick's avatar
      glx: fixup symbol name for get_extensions function · b56e5010
      Vasily Khoruzhick authored
      
      
      glxProbeDriver() concatenates __DRI_DRIVER_GET_EXTENSIONS with driver name
      to get symbol name for get_extension function. Unfortunately that doesn't
      work for drivers that have hyphen in their name, e.g. sun4i-drm --
      get_extensions() for these uses underscore instead.
      
      As result dlsym() doesn't find get_extension() function and AIGLX
      initialization fails resulting in following message in Xorg.0.log:
      
      (EE) AIGLX error: sun4i-drm does not export required DRI extension
      
      Replace all non-alpha-numeric characters with underscore to fix the issue.
      Signed-off-by: Vasily Khoruzhick's avatarVasily Khoruzhick <anarsoul@gmail.com>
      b56e5010
  17. 17 Mar, 2020 1 commit
  18. 13 Mar, 2020 2 commits
  19. 28 Feb, 2020 1 commit
    • mntmn's avatar
      xwayland: port rooted xwayland from wl_shell to xdg-shell protocol · 3d6efc4a
      mntmn authored
      
      
      Recently, rooted Xwayland crashes on wlroots-based compositors, because
      wlroots removed the deprecated wl_shell protocol.
      This MR fixes this by changing the code in question to the xdg-shell
      protocol. My motivation do this: on etnaviv-based embedded platforms,
      rooted Xwayland is much faster and doesn't cause UI rendering bugs
      compared to rootless Xwayland.
      Signed-off-by: default avatarLukas F. Hartmann <lukas@mntre.com>
      3d6efc4a
  20. 25 Feb, 2020 2 commits
    • Peter Harris's avatar
      xkb: fix key type index check in _XkbSetMapChecks · de940e06
      Peter Harris authored
      This code block was moved from a function that returns 0 for failure to a
      function that returns 0 for Success in commit
      649293f6
      
      . Change the return value to
      BadValue to match the other checks in _XkbSetMapChecks.
      
      Set nTypes to xkb->map->num_types when XkbKeyTypesMask is not set, to
      allow requests with the XkbKeyTypesMask flag unset in stuff->present to
      succeed.
      
      Fixes a potential heap smash when client->swapped is true, because the
      remainder of the request will not be swapped after "return 0", but
      _XkbSetMap will be called anyway (because 0 is Success).
      Signed-off-by: Peter Harris's avatarPeter Harris <pharris@opentext.com>
      de940e06
    • Peter Harris's avatar
      xkb: only swap once in XkbSetMap · 270e4397
      Peter Harris authored
      
      
      The server swaps part of the request in _XkbSetMapChecks instead of
      SProcXkbSetMap (presumably because walking the XkbSetMap request is hard,
      and we don't want to maintain another copy of that code).
      
      Swap the first time _XkbSetMapChecks is called, not the second time.
      Signed-off-by: Peter Harris's avatarPeter Harris <pharris@opentext.com>
      270e4397
  21. 23 Feb, 2020 1 commit
    • Hans de Goede's avatar
      xwayland: Remove unnecessary xwl_window_is_toplevel() check from... · d4faab87
      Hans de Goede authored
      
      xwayland: Remove unnecessary xwl_window_is_toplevel() check from xwl_output_set_window_randr_emu_props()
      
      Since the recent fix to call xwl_output_set_window_randr_emu_props() from
      ensure_surface_for_window(), it is now only called on a toplevel window,
      so the is-toplevel check is not necessary for the
      xwl_output_set_window_randr_emu_props() case.
      
      This commit moves the check to xwl_output_set_randr_emu_prop_callback()
      so that we only do it when we are walking over all Windows of a client
      to update the property on a change of the emulated resolution.
      Acked-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      d4faab87