1. 02 Jul, 2018 1 commit
    • Matthias Clasen's avatar
      dnd: Rename headers · 64f5afe6
      Matthias Clasen authored
      Rename gdkdnd.h to gdkdrag.h, to go along with gdkdrop.h
      
      This commit includes the necessary updates to the X11, Wayland
      and Broadway backends. Other backends have to be updated separately.
      64f5afe6
  2. 18 Jun, 2018 1 commit
    • Benjamin Otte's avatar
      dnd: Add GdkDrop base class for GdkDragContext · f247d268
      Benjamin Otte authored
      The ultimate goal of this patch series is to split GdkDragContext into
      GdkDrop + GdkDrag classes for the destination and source side of a dnd
      operation.
      
      The refactoring is meant to work something like this:
      1. Introduce GdkDrop as a base class
      2. Make all drop related code (like GdkEvent) use GdkDrop instead of
         GdkDragContext. Move/duplicate APIs to allow that.
      3. Port all drop contexts in the backends from GdkDragContext to GdkDrop
      4. Delete all APIs in GdkDragContext that aren't needed anymore.
      5. Make GdkDragContext no longer a GdkDrop subclass
      6. Rename GdkDragContext to GdkDrag
      f247d268
  3. 24 Apr, 2018 2 commits
    • Benjamin Otte's avatar
      gdk: Get rid of GdkDrawingContext · 48fc18c3
      Benjamin Otte authored
      All information is kept in GdkDrawContext these days, so use that one.
      48fc18c3
    • Benjamin Otte's avatar
      gdk: Add GdkCairoContext · f3967860
      Benjamin Otte authored
      This does nothing but disallow passing NULL to gdk_surface_begin_paint()
      and instead require this context.
      
      The ultimate goal is to split out Cairo drawing into its own source file
      so it doesn't clutter up the generic rendering path.
      f3967860
  4. 20 Mar, 2018 1 commit
    • Alexander Larsson's avatar
      GdkWindow -> GdkSurface: File renames · 890080eb
      Alexander Larsson authored
      Rename all *window.[ch] source files.
      
      This is an automatic operation, done by the following commands:
      
      for i in $(git ls-files gdk | grep window); do
          git mv $i $(echo $i | sed s/window/surface/);
          git sed -f g $(basename $i) $(basename $i | sed s/window/surface/) ;
      done
      
      git checkout NEWS* po-properties po
      890080eb
  5. 18 Mar, 2018 1 commit
    • Benjamin Otte's avatar
      snapshot: Turn into GObject · ea84e974
      Benjamin Otte authored
      This makes GdkSnapshot the base class for GtkSnapshot and hopefully
      stops confusing bindings.
      
      C code should see no difference to before.
      ea84e974
  6. 16 Mar, 2018 1 commit
  7. 12 Mar, 2018 1 commit
  8. 07 Mar, 2018 1 commit
    • Benjamin Otte's avatar
      gdk: Split out GL texture · 160e6ad6
      Benjamin Otte authored
      Put GdkGLTexture into its own file and rename the API to
      gdk_gl_texture_foo() instead of gdk_texture_foo_for_gl().
      
      Apart from naming, no actual code changes.
      160e6ad6
  9. 03 Feb, 2018 1 commit
  10. 14 Dec, 2017 1 commit
  11. 03 Dec, 2017 4 commits
    • Benjamin Otte's avatar
      clipboard: Add serialization · 25c38958
      Benjamin Otte authored
      This completes the local clipboard code.
      25c38958
    • Benjamin Otte's avatar
      clipboard: Introduce GdkContentProvider · 888e5257
      Benjamin Otte authored
      GdkContentProvider is the object that represents local data in the
      clipboard.
      
      This patch only introduces the object and adds the clipboard properties,
      it does not yet provide a way for the actual implementations to access
      it.
      
      The only access that is implemented is the local shortcut GValue access.
      888e5257
    • Benjamin Otte's avatar
      gdk: Im[plement content deserializing · 91910ba0
      Benjamin Otte authored
      Add infrastructure to do GInputStream => GType conversions. Use that to
      implement gdk_clipboard_read_value() which reads into GValues.
      91910ba0
    • Matthias Clasen's avatar
      gdk: A GdkClipboard API draft · e94b9b9a
      Matthias Clasen authored
      This commit adds a GdkClipboard object which is intended to
      replace GtkClipboard, eventually.
      e94b9b9a
  12. 25 Nov, 2017 1 commit
  13. 20 Nov, 2017 1 commit
  14. 17 Nov, 2017 1 commit
  15. 03 Nov, 2017 1 commit
  16. 01 Nov, 2017 2 commits
  17. 08 Jan, 2017 1 commit
  18. 09 Dec, 2016 1 commit
    • Benjamin Otte's avatar
      vulkan: Initial support · cca547e5
      Benjamin Otte authored
      Adds the gdk_display_ref_vulkan() and gdk_display_unref_vulkan()
      functions which setup/tear down VUlkan support for the display.
      
      Nothing is using those functions yet.
      cca547e5
  19. 05 Dec, 2016 1 commit
  20. 01 Nov, 2016 1 commit
  21. 23 Aug, 2016 1 commit
    • Carlos Garnacho's avatar
      gdk: Add GdkDevicePad · b8a77d4d
      Carlos Garnacho authored
      This is an interface meant to be implemented by the "pad" devices.
      This device-specific interface exposes the mapping of all pad features,
      it allows retrieving:
      - The number of buttons/rings/strips
      - The number of groups
      - The number of modes a group has
      - Whether a given button/ring/strip belongs to a given group
      
      https://bugzilla.gnome.org/show_bug.cgi?id=770026
      b8a77d4d
  22. 09 Jun, 2016 1 commit
  23. 28 Apr, 2016 1 commit
  24. 09 Apr, 2016 1 commit
  25. 14 Dec, 2015 1 commit
  26. 02 Feb, 2015 1 commit
  27. 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
  28. 22 May, 2014 1 commit
  29. 25 Feb, 2013 1 commit
  30. 27 Feb, 2012 2 commits
    • Javier Jardón's avatar
      Change FSF Address · 9d0febc9
      Javier Jardón authored
      9d0febc9
    • Matthias Clasen's avatar
      Add versioned deprecation macros · e580c79a
      Matthias Clasen authored
      These macros follow the recent changes in GLibs deprecation
      setup. We now annotate deprecated functions with the version
      they were deprecated in, and you can define the macro
      GDK_VERSION_MIN_REQUIRED to cut off deprecation warnings for
      'recent' deprecations.
      
      At the same time, we introduce version annotations for new API
      and allow you to avoid 'recent' API additions by defining
      GDK_VERSION_MAX_ALLOWED.
      e580c79a
  31. 21 Dec, 2010 2 commits
    • Matthias Clasen's avatar
      Remove gdk_spawn functions · 25c66c11
      Matthias Clasen authored
      These functions were trivial g_spawn wrappers in all backends
      except for X11, and they can be easily replaced by
      g_app_info_create_for_commandline + GdkAppLaunchContext.
      25c66c11
    • Matthias Clasen's avatar
      Merge libgdk and libgtk · 07d49ee5
      Matthias Clasen authored
      This commit does a number of things:
      - remove some dead wchar configury from configure.ac and gdkconfig.h
      - repurpose gdkconfig.h as header that contains GDK_WINDOWING_foo
        macros for each included backend, include it in gdk.h and install
        it in $includedir instead of below $libdir
      - drop the backend from the library names
      - build libgdk-3.0.la as a convenience lib and include it in libgtk-3.0.la
      It does not yet enable building multiple backends at the same time.
      07d49ee5
  32. 17 Dec, 2010 1 commit
  33. 02 Dec, 2010 1 commit