1. 19 Aug, 2020 4 commits
  2. 11 May, 2020 2 commits
  3. 09 Apr, 2020 1 commit
  4. 18 Dec, 2019 1 commit
  5. 14 Oct, 2019 1 commit
  6. 03 Sep, 2019 1 commit
  7. 11 Jun, 2019 1 commit
    • Snir Sheriber's avatar
      Adjust to window scaling · 262c8408
      Snir Sheriber authored
      When GDK_SCALE is != 1 and egl is used, the image presented does not
      fit to the window (scale of 2 is often used with hidpi monitors).
      Usually this is not a problem since all components are adjusted by
      gdk/gtk but with egl, pixel-based data is not being scaled. In this
      case window's scale value can be used in order to determine whether
      to use a pixel resource with higher resolution data.
      
      In order to reproduce the problem set spice with virgl/Intel-vGPU
      and run spice-gtk with GDK_SCALE=2
      
      This issue was also reported at freedesktop gitlab repo:
      #99
      
      
      
      Signed-off-by: Snir Sheriber's avatarSnir Sheriber <ssheribe@redhat.com>
      Acked-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      262c8408
  8. 22 Feb, 2019 3 commits
  9. 15 Jan, 2019 3 commits
  10. 08 Jan, 2019 1 commit
  11. 05 Jan, 2019 1 commit
    • Marc-André Lureau's avatar
      widget: display a message about required EGL support · 0a1408ae
      Marc-André Lureau authored
      Add a new "label" stack page. When EGL is unsupported and a GL scanout
      message is received, switch to that page with an appropriate message
      hint.
      
      At this point, no further switch back to 2d drawing is implemented,
      although it is theorically possible for a server to switch between GL
      and 2D, I don't think we need to bother with this corner case.
      
      Alternative implementation also considered:
      
      - a dialog: problematic, the widget may not have an associated
        GtkWindow parent, not very user friendly (one time dialog).
      
      - an info-bar: does not fit well inside display widget, may not be
        well integrated with client application. Can usually be discarded.
      
      - an error signal: would need to be implemented by various client, but
        could give more flexibility on how to present various errors.  Could
        be added later, and replace the "label" page used here by
        default (if a signal handler is detected).
      
      - a property: may be more appropriate, since the error should
        stick. Although it would more complicated to deal with multiple
        errors in that case.
      
      The current solution is not perfect, but should be a decent default,
      not requiring client modification. It can be later refined by adding a
      way for the client to override the presentation of the message via
      signal handlers.
      
      Fixes:
      #69
      
      
      
      Signed-off-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
      Acked-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      0a1408ae
  12. 03 Jan, 2019 2 commits
  13. 30 Nov, 2018 1 commit
  14. 18 Sep, 2018 1 commit
  15. 25 Jul, 2018 2 commits
    • Victor Toso's avatar
      gtk-deprecated: silence warn on gtk_widget_set_double_buffered() · ad22132a
      Victor Toso authored
      
      
      By default, all widgets are double buffered so this patch removes two
      calls to gtk_widget_set_double_buffered() that are only enabling it.
      
      The only special case is under egl (virgl) at set_egl_enabled() as
      disabling the double buffered seems to prevent glitches. The call to
      gtk_widget_set_double_buffered() was kept but wrapped under
      G_GNUC_BEGIN/END_IGNORE_DEPRECATIONS to avoid warnings.
      
      Note however that this is only expected to work under X11.
      
      Warnings fixed:
       | spice-widget.c: In function ‘spice_display_init’:
       | spice-widget.c:643:5: warning: ‘gtk_widget_set_double_buffered’ is
       | deprecated
       |
       |     gtk_widget_set_double_buffered(area, true);
       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       |
       | spice-widget.c:661:5: warning: ‘gtk_widget_set_double_buffered’ is
       | deprecated
       |
       |     gtk_widget_set_double_buffered(area, true);
       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       |
       | spice-widget.c: In function ‘set_egl_enabled’:
       | spice-widget.c:1290:9: warning: ‘gtk_widget_set_double_buffered’ is
       | deprecated
       |     gtk_widget_set_double_buffered(GTK_WIDGET(area), !enabled);
       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      
      Signed-off-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      Acked-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
      ad22132a
    • Frediano Ziglio's avatar
      Remove deprecation blocks not needed anymore · bd78558b
      Frediano Ziglio authored
      
      
      Some deprecation blocks in the code were there to avoid
      warning when using too recent GTK and Glib functions.
      Now that we bump GTK version remove these warning avoidance.
      
      Signed-off-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
      Acked-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      bd78558b
  16. 24 Jul, 2018 3 commits
    • Victor Toso's avatar
      gtk-deprecated: Avoid gdk_screen_get_width/height() · 3cdcc5a8
      Victor Toso authored
      
      
      As those were deprecated in favor of fetching for information directly
      with GdkMonitor.
      
      Warnings fixed:
       | spice-widget.c: In function ‘mouse_wrap’:
       | spice-widget.c:1136:5: warning: ‘gdk_screen_get_width’ is deprecated
       |
       |     xr = gdk_screen_get_width(screen) / 2;
       |     ^~
       |
       | spice-widget.c:1137:5: warning: ‘gdk_screen_get_height’ is deprecated
       |
       |     yr = gdk_screen_get_height(screen) / 2;
       |     ^~
      
      Signed-off-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      Acked-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
      3cdcc5a8
    • Victor Toso's avatar
      gtk-deprecated: Use gdk_keymap_get_for_display() · d98a684f
      Victor Toso authored
      
      
      As gdk_keymap_get_default() was deprecated in 3.22
      
      Warnings fixed:
       | vncdisplaykeymap.c: In function ‘vnc_display_keyval_set_entries’:
       | vncdisplaykeymap.c:263:4: warning: ‘gdk_keymap_get_default’ is
       | deprecated: Use 'gdk_keymap_get_for_display' instead
       |
       |     gdk_keymap_get_entries_for_keyval(gdk_keymap_get_default(),
       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       |
       | spice-gtk-session.c: In function ‘spice_gtk_session_init’:
       | spice-gtk-session.c:181:5: warning: ‘gdk_keymap_get_default’ is
       | deprecated: Use 'gdk_keymap_get_for_display' instead
       |
       |     GdkKeymap *keymap = gdk_keymap_get_default();
       |     ^~~~~~~~~
       |
       | spice-widget.c: In function ‘get_scancode_from_keyval’:
       | spice-widget.c:1731:5: warning: ‘gdk_keymap_get_default’ is
       | deprecated: Use 'gdk_keymap_get_for_display' instead
       |
       |      if (gdk_keymap_get_entries_for_keyval(gdk_keymap_get_default(),
       |      ^~
      
      Signed-off-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      Acked-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
      d98a684f
    • Victor Toso's avatar
      build-sys: bump gtk requirement 3.12 -> 3.22 · a1fd9ee1
      Victor Toso authored
      
      
      Fedora 28: 3.22.30
      Fedora 27: 3.22.26
      Fedora 26: 3.22.21
      RHEL 7.6: 3.22.30
      RHEL 7.5: 3.22.26
      RHEL 7.4: 3.22.10
      Debian 10: 3.22.30
      Debian  9: 3.22.11
      Ubuntu 18.04: 3.22.30
      Ubuntu 17.10: 3.22.24
      
      Besides cleanup the code, gtk is under heavy development to better
      work under Wayland and reducing the code path based on library version
      should be helpful as well.
      
      This patch also removes the check for gdk_event_get_scancode as it is
      included in 3.22.
      
      Signed-off-by: Victor Toso's avatarVictor Toso <victortoso@redhat.com>
      Signed-off-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
      a1fd9ee1
  17. 20 Jul, 2018 1 commit
  18. 08 Jun, 2018 3 commits
  19. 22 May, 2018 1 commit
  20. 09 May, 2018 1 commit
    • Snir Sheriber's avatar
      Gstreamer: Use GstVideoOverlay if possible · 42439754
      Snir Sheriber authored and Frediano Ziglio's avatar Frediano Ziglio committed
      
      
      Currently when gstreamer is used to decode a full-screen
      stream sent from the server, the decoding frames are being
      forced to RBGA format and pushed using appsink to be scaled
      and rendered to screen.
      
      Today most of the gstreamer sinks supports the GstVideoOverlay
      interface which allows to render directly from the pipeline to
      a window by a given windowing system id (i.e. xid). This patch
      makes playbin to use this feature if possible.
      
      Setting the DISABLE_GSTVIDEOOVERLAY environment variable will
      make gstreamer to avoid of using the gstvideooverlay interface.
      
      Acked-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
      42439754
  21. 23 Apr, 2018 1 commit
  22. 19 Apr, 2018 1 commit
  23. 04 Apr, 2018 2 commits
  24. 28 Feb, 2018 1 commit
  25. 04 Jan, 2018 1 commit