1. 13 Nov, 2017 1 commit
    • Benjamin Otte's avatar
      gdk: Fix GDK_ALL_EVENTS_MASK · 4c44ffda
      Benjamin Otte authored
      This mask was forgotten to update when the last 2 event masks were
      added, probably because it looks like it's already maxed.
      4c44ffda
  2. 23 Aug, 2016 1 commit
    • Carlos Garnacho's avatar
      gdk: Add pad event structs, enum values, and event mask bit · 0dcb9b31
      Carlos Garnacho authored
      GDK_PAD_BUTTON*,RING and STRIP will be emitted respectively when
      pad buttons, rings or strips are interacted with. Each of those
      pad components belong to a group (a pad can contain several of
      those), which may be in a given mode. All this information is
      contained in the event.
      
      GDK_PAD_GROUP_MODE is emitted when a group in the pad switches
      mode, which will generally result in a different set of actions
      being triggered from the same buttons/rings/strips in the group.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=770026
      0dcb9b31
  3. 03 Jun, 2016 1 commit
  4. 09 Apr, 2016 2 commits
  5. 03 Feb, 2016 1 commit
  6. 17 Dec, 2015 1 commit
  7. 15 Dec, 2015 2 commits
  8. 14 Dec, 2015 1 commit
  9. 19 Nov, 2015 1 commit
  10. 25 Aug, 2015 1 commit
  11. 12 Aug, 2015 1 commit
  12. 08 May, 2015 1 commit
  13. 02 May, 2015 1 commit
  14. 19 Feb, 2015 1 commit
  15. 12 Feb, 2015 2 commits
    • Emmanuele Bassi's avatar
      Remove GdkGLProfile · d066e754
      Emmanuele Bassi authored
      The existence of OpenGL implementations that do not provide the full
      core profile compatibility because of reasons beyond the technical, like
      llvmpipe not implementing floating point buffers, makes the existence of
      GdkGLProfile and documenting the fact that we use core profiles a bit
      harder.
      
      Since we do not have any existing profile except the default, we can
      remove the GdkGLProfile and its related API from GDK and GTK+, and sweep
      the whole thing under the carpet, while we wait for an extension that
      lets us ask for the most compatible profile possible.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=744407
      d066e754
    • Emmanuele Bassi's avatar
      docs: Specify the minimum version of GL provided by the core profile · f52a59d4
      Emmanuele Bassi authored
      When using GDK_GL_PROFILE_3_2_CORE, we are not only specifying that the
      GDK should create a core profile; we are also specifying that the
      minimum required version of OpenGL is set to 3.2.
      
      We should also specify that the GDK_GL_PROFILE_DEFAULT profile is an
      alias for GDK_GL_PROFILE_3_2_CORE.
      f52a59d4
  16. 09 Feb, 2015 1 commit
    • Emmanuele Bassi's avatar
      gl: Drop OpenGL legacy profile · 4b8b3b43
      Emmanuele Bassi authored
      We simply don't want to care about legacy OpenGL.
      
      All supported platforms also have support for OpenGL ≥ 3.2; it would
      complicate the internal code; and would force us to use legacy GL
      contexts internally if the first context created by the user is a legacy
      GL context, and disable creation of core-3.2 contexts after that.
      
      We will need to fix all our code examples to use the Core 3.2 profile.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=741946
      4b8b3b43
  17. 28 Oct, 2014 1 commit
  18. 13 Oct, 2014 1 commit
    • Alexander Larsson's avatar
      gdk: Add support for OpenGL · 038aac62
      Alexander Larsson authored
      This adds the new type GdkGLContext that wraps an OpenGL context for a
      particular native window. It also adds support for the gdk paint
      machinery to use OpenGL to draw everything. As soon as anyone creates
      a GL context for a native window we create a "paint context" for that
      GdkWindow and switch to using GL for painting it.
      
      This commit contains only an implementation for X11 (using GLX).
      
      The way painting works is that all client gl contexts draw into
      offscreen buffers rather than directly to the back buffer, and the
      way something gets onto the window is by using gdk_cairo_draw_from_gl()
      to draw part of that buffer onto the draw cairo context.
      
      As a fallback (if we're doing redirected drawing or some effect like a
      cairo_push_group()) we read back the gl buffer into memory and composite
      using cairo. This means that GL rendering works in all cases, including
      rendering to a PDF. However, this is not particularly fast.
      
      In the *typical* case, where we're drawing directly to the window in
      the regular paint loop we hit the fast path. The fast path uses opengl
      to draw the buffer to the window back buffer, either by blitting or
      texturing. Then we track the region that was drawn, and when the draw
      ends we paint the normal cairo surface to the window (using
      texture-from-pixmap in the X11 case, or texture from cairo image
      otherwise) in the regions where there is no gl painted.
      
      There are some complexities wrt layering of gl and cairo areas though:
      * We track via gdk_window_mark_paint_from_clip() whenever gtk is
        painting over a region we previously rendered with opengl
        (flushed_region). This area (needs_blend_region) is blended
        rather than copied at the end of the frame.
      * If we're drawing a gl texture with alpha we first copy the current
        cairo_surface inside the target region to the back buffer before
        we blend over it.
      
      These two operations allow us full stacking of transparent gl and cairo
      regions.
      038aac62
  19. 29 Mar, 2014 1 commit
  20. 07 Feb, 2014 2 commits
  21. 04 Feb, 2014 1 commit
  22. 20 Jan, 2014 2 commits
  23. 16 Nov, 2013 1 commit
  24. 17 Mar, 2013 1 commit
  25. 28 Dec, 2012 1 commit
  26. 26 May, 2012 1 commit
  27. 19 May, 2012 1 commit
  28. 01 Mar, 2012 2 commits
    • Carlos Garnacho's avatar
      gdk: Add GDK_SMOOTH_SCROLL_MASK · 4b1e16ca
      Carlos Garnacho authored
      By setting this event, a GdkWindow will receive scroll events
      that provide delta values.
      4b1e16ca
    • Carlos Garnacho's avatar
      gdk: Add touch event types and mask · 7f35708c
      Carlos Garnacho authored
      This commit introduces GDK_TOUCH_BEGIN/UPDATE/END/CANCEL
      and a separate GdkEventTouch struct that they use. This
      is closer to the touch event API of other platforms and
      matches the xi2 events closely, too.
      7f35708c
  29. 27 Feb, 2012 1 commit
  30. 18 Nov, 2011 1 commit
  31. 27 Sep, 2011 1 commit
    • Michael Natterer's avatar
      Bug 659602 - Provide an abstraction for the platform's use of modifier keys · 4a7a6733
      Michael Natterer authored
      Add enum GdkModifierIntent which identifies use cases for modifier masks
      and GdkKeyMap::get_modifier_mask(). Add a default implementation which returns
      what is currently hardcoded all over GTK+, and an implementation in the
      quartz backend. Also add gtk_widget_get_modifier_mask() which simplifies
      things by doing widget->display->keymap->get_modifier_mask().
      4a7a6733
  32. 16 May, 2011 1 commit
  33. 01 Feb, 2011 1 commit
  34. 24 Dec, 2010 1 commit