Benjamin Otte
234d34366a
clipboard: Add the useful stuff from reverted commit
...
This is the parts of dc50e0637f
that
should have been committed but were reverted in
b5c62cf86f
to unbreak the build.
2017-12-10 01:09:14 +01:00
Benjamin Otte
0d31eb8670
dnd: Add gdk_drag_context_get_display()
...
Also turn it into a readable, construct-only property.
Every GDK object should have this. (Apart from GdkDisplay, obviously.)
2017-12-10 01:09:14 +01:00
Carlos Garnacho
4c45022ed0
gdk: Add gdk_seat_get_master_pointers()
...
Traditionally (and on most backends) there's a single master pointer driven
by all pointing devices. The notable exception is Wayland though, where
master pointing devices are created per capability in the case of
pointer/touch, and one for each drawing tablet.
This function call makes it easy to access all these.
https://bugzilla.gnome.org/show_bug.cgi?id=790920
2017-12-07 21:27:14 -05:00
Matthias Clasen
4a11baa372
gdk: Documentation improvements
2017-12-04 23:52:48 -08:00
Matthias Clasen
4ab15a8292
docs: Drop some no longer existing functions
2017-12-04 23:15:06 -08:00
Matthias Clasen
b5c62cf86f
Revert "clipboard: Add gdk_clipboard_set()"
...
This reverts commit dc50e0637f
.
This broke the build.
2017-12-04 23:09:54 -08:00
Benjamin Otte
dc50e0637f
clipboard: Add gdk_clipboard_set()
...
This API allows specifying a GType and va_args of a value of that type
to set the clipboard contents. This massively simplifies setting weird
object types into the clipboard.
2 example patches included in this patch are the GtkTextBuffer and the
file list in the file chooser.
Using gobject-introspection, this should work without specifying the
type, so that you can literlally say
clipboard.set ("Hello World")
or
clipboard.set (pixbuf)
which is why I've also marked all other setters as (skip). They just
exist in C as wrappers for type safety reasons.
2017-12-05 05:29:03 +01:00
Matthias Clasen
384a999032
Move GdkGrabStatus docs
...
This enum was the odd man out in the initialization docs.
Move it to GdkSeat where grabbing happens nowadays.
2017-12-04 10:36:19 -08:00
Matthias Clasen
edfb86fe10
Add new stuff to the gdk docs
...
Document all the things.
2017-12-04 10:32:17 -08:00
Matthias Clasen
5cc7bf5dbd
Fix the gdk doc build
...
Some types don't exist anymore.
2017-12-04 10:03:23 -08:00
Matthias Clasen
8b1b9f8c55
Drop api that is only for unmanaged dnd
...
These functions are not needed as public api anymore.
2017-12-03 06:24:24 +01:00
Benjamin Otte
4e06aaeaa8
gdk: Add gdk_content_formats_new_for_gtype()
...
Many places create formats for a single tpye, so make it easy for them
to get this without having to create a builder first.
2017-12-03 05:46:48 +01:00
Benjamin Otte
134076e738
x11: Implement claiming the X Selection with the clipboard
...
... and of course support writing to other apps.
2017-12-03 05:46:47 +01:00
Benjamin Otte
7426f1a16b
gdkcontentformats: Change the matching API
...
Instead of having just one function that has the gtype and mime type as
out arguments, have 3 functions: 1 that finds any match, 1 that finds a
GType match and one for a mime type match.
This makes the API way more convenient to use.
2017-12-03 05:46:47 +01:00
Руслан Ижбулатов
c7bdf643c5
GDK: Make sure W32 backend compiles without GdkDeviceManager
...
https://bugzilla.gnome.org/show_bug.cgi?id=773299
2017-12-02 10:37:23 +00:00
Matthias Clasen
c750c0e571
Drop gdk_cursor_new_from_pixbuf
...
Part of the push to remove GdkPixbuf from the API.
2017-11-29 20:16:43 -05:00
Matthias Clasen
1f6fb4e716
Drop GdkDeviceManager APIs
...
No longer used outside of the backends.
2017-11-25 11:04:14 -05:00
Matthias Clasen
480ea400f3
Drop support for setting event masks for floating devices
...
These are very rarely needed, and are X11-specific.
If it turns out that somebody needs this, it can come
back as X11-specific functionality.
2017-11-25 11:04:14 -05:00
Matthias Clasen
4c40accbb9
gdk: Move gdk_disable_multidevice tot he X11 backend
...
This api only ever did something for X11, so move
it there. Update the docs and adapt the only caller.
2017-11-25 11:04:14 -05:00
Matthias Clasen
0cfc812a5d
Drop gdk_display_get_device_manager API
...
GdkDeviceManager is being replaced by GdkSeat.
2017-11-25 11:04:14 -05:00
Benjamin Otte
c82378ea57
gdk: Add GType support to GdkContentFormats
...
This is not used by anything yet, but add it now, so people looking at
this new code can make sense of it.
Plus, the documentation mentions it, so better have the docs make sense.
It will be used once we add support for conversions to GDK and allow
doing cipboard/dnd by GValue.
2017-11-20 23:22:28 +01:00
Benjamin Otte
1a70ca75e8
gdk: Sanitize GdkContentFormats API
...
Make sure the API reflects the idea that GdkContentFormats is a set
containing mime types. In particular, treat the object itself as a
plural - it's named content format`S' after all - and therefor use
the correct verb form.
Also make GdkContentFormats keep an array instead of a list, now that
it's immutable.
2017-11-20 23:15:11 +01:00
Benjamin Otte
fc2ce5a925
gdk: Make GdkContentFormats immutable
2017-11-20 23:13:10 +01:00
Benjamin Otte
1a482ad276
gdk: Add GdkContentFormatsBuilder
...
Yes, the name is too long.
No, I couldn't think of a shorter one.
2017-11-20 23:12:48 +01:00
Benjamin Otte
d6a209816b
gdkdnd: Make GdkDragContext->formats a GdkContentFormats
...
Instead of it being a GList of GdkAtoms.
2017-11-20 23:12:33 +01:00
Benjamin Otte
9a6ec4e959
contentformats: Rename GtkTargetList
...
It's now called GdkContentsFormat
2017-11-20 23:12:33 +01:00
Matthias Clasen
2d591cde78
Include gdk-private.h
...
This gives us access to private gdk api.
2017-11-17 16:34:04 -05:00
Benjamin Otte
f4ec6290f8
gdk: Remove gdk_flush()
...
If you need to flush a display, use gdk_display_flush().
There is never a need to flush displays you don't know about.
2017-11-17 08:36:35 +01:00
Matthias Clasen
cc97c71883
Drop generic error trap api from the docs
2017-11-17 00:17:29 -05:00
Matthias Clasen
6bf215bc15
Drop gdk_set_program_class
...
Together with the corresponding getter.
This is x11-specific functionality.
2017-11-16 23:22:08 -05:00
Matthias Clasen
d73898437f
x11: Add gdk_x11_display_set_program_class
...
The program class is a very X-specific concept.
There should be x11-backend api to deal with it.
2017-11-16 23:21:06 -05:00
Matthias Clasen
211f16d68b
Drop gdk_notify_startup_complete
...
This function and its variant are just wrappers
around the display-specific function.
2017-11-16 22:45:52 -05:00
Matthias Clasen
baf40d35c5
Drop gdk_beep
...
This is an unnecessary wrapper around gdk_display_beep.
2017-11-16 22:10:26 -05:00
Matthias Clasen
ce13dbba10
Drop gdk_set_double_click_time
...
This is an unnecessary and not-recommended-to-be-used
wrapper around gdk_display_set_double_click_time.
2017-11-16 22:04:25 -05:00
Benjamin Otte
4c4e914806
gdk: Replace GDK_NONE with NULL
2017-11-15 19:07:17 +01:00
Matthias Clasen
844b75356d
Documentation fixes
...
Make sure textures show up in the gdk docs.
2017-11-04 23:47:02 -04:00
Benjamin Otte
4c2bae3a1a
texture: Add gdk_texture_new_from_file()
...
and gdk_texture_new_from_resource().
While doing set, turn all GDK_AVAILABLE_IN_3_90 into
GDK_AVAILABLE_IN_3_94 because that's now true after the renaming.
2017-11-04 15:22:25 +01:00
Benjamin Otte
e294f71555
x11: Redo cursor handling completely
...
Instead of creating a GdkX11Cursor, create GdkCursors. Cache the XCursor
in a hash table instead.
Also, make use of the new fallback mechanism for fallback code: Make
sure to provide cursors for the names that are guaranteed to exist, but
do not do bad attempts at displaying texture surfaces.
Black/White/transparent is not a replacement for those.
2017-11-04 00:07:13 +01:00
Benjamin Otte
6b2ea46a5f
gdk: Add gdk_cursor_get_fallback()
...
There's no way to use it yet, but I want it to be available for
refactoring the backends.
2017-11-04 00:07:13 +01:00
Benjamin Otte
5adf21a17d
cursor: Turn new_from_surface() into new_from_texture()
...
Also turn all the arguments into read-only properties on the GdkCursor
object.
2017-11-04 00:07:13 +01:00
Benjamin Otte
81c2bebaca
gdk: Remove ability to download a cursor
2017-11-04 00:07:13 +01:00
Benjamin Otte
ca3c23662c
GskTexture => GdkTexture
...
We want this thing to replace GdkPixbuf, so it has to live in GDK.
2017-11-04 00:07:13 +01:00
Benjamin Otte
8ba9ae6012
gdk: Add gdk_cursor_get_name()
...
Also add the GdkCursor::name property.
2017-11-04 00:07:13 +01:00
Benjamin Otte
a1759a0a52
gdk: Get rid of GdkCursorType
...
Now that we no longer have API that uses cursor types, don't keep them
around.
2017-11-04 00:07:13 +01:00
Benjamin Otte
8aa68110bd
x11: Remove gdk_x11_grab_server()
...
Luckily, this one is unused.
2017-11-02 12:47:50 +01:00
Benjamin Otte
d380cf114b
x11: Remove outdated functions from API
...
We don't want generic APIs that do random stuff on the default X display.
2017-11-02 12:42:58 +01:00
Benjamin Otte
f33c20920b
x11: Add API to query root window and screen from GdkDisplay
2017-11-02 12:42:16 +01:00
Matthias Clasen
2a60928157
t Remove gdk_cursor_new_for_display
...
The preferred api to create cursors is by name, and the
GdkCursorType enumeration can directly trace its ancestry
to the horrible X cursor font. So lets stop using it.
2017-11-01 21:49:05 -04:00
Matthias Clasen
ee72860804
Drop GdkScreen from the docs
...
It is no longer part of the api.
2017-11-01 20:59:54 -04:00
Matthias Clasen
feb870add3
Drop gdk_screen_get_default
...
This function is not used anymore.
2017-11-01 19:44:28 -04:00
Benjamin Otte
bd6b6ed93c
gdk: Remove VisibilityNotify events
2017-11-01 22:00:34 +01:00
Benjamin Otte
bcced800ea
x11: Remove screen-specific macros
2017-11-01 20:51:14 +01:00
Matthias Clasen
f2655b055d
monitor: Add a ::valid property
...
This is slightly more useful than the existing
::invalidate signal, since it can be queried at
any time.
2017-11-01 14:17:20 -04:00
Benjamin Otte
2d31a5499a
gdk: Remove gdk_get_display_arg_name()
...
Since we're no longer allowing arguments, this is always NULL now.
2017-11-01 18:26:34 +01:00
Benjamin Otte
161f891d55
x11: Make gdk_x11_display_open() public API
...
People should be able to explicitily open displays to their backends.
2017-11-01 15:48:00 +01:00
Matthias Clasen
0411cc5620
Drop GdkVisual
...
This type was unused except for serving as a parent
for GdkX11Visual. Just move the fields to that type.
2017-10-31 22:44:15 -04:00
Matthias Clasen
67cea50383
Drop gdk_get_default_root_window
...
This is a trivial convenience function, and it is barely used.
2017-10-31 21:30:59 -04:00
Matthias Clasen
68a61e9ac6
Drop gdk_screen_get_toplevel_windows
2017-10-31 20:49:50 -04:00
Matthias Clasen
b36b7f08fb
Drop gdk_pango_context_get_for_display
...
This api does not offer much over the pango api, and
the use of the resolution here is causing layering
problems.
2017-10-31 18:15:50 -04:00
Matthias Clasen
f8cad19829
dnd: Drop GdkScreen from apis
...
Drop the screen argument from gdk_dnd_find_window_for_screen
and rename the function to gdk_dnd_find_window. The screen
argument does not add anything here since the drag context
is already tied to the display. Update all backends, and
update all callers.
2017-10-31 10:18:10 -04:00
Matthias Clasen
f0189aecbc
Drop gdk_event_set/get_screen
...
These functions have been replaced by display variants.
2017-10-30 22:22:00 -04:00
Matthias Clasen
5c2e254f65
Drop gdk_pango_context_get
...
This is a trivial convenience api, and it is not used in gtk.
2017-10-30 21:36:37 -04:00
Matthias Clasen
1f114b1257
Drop gdk_pango_context_get_for_screen
...
GdkScreen is going away, and this api is unused in gtk.
2017-10-30 21:29:48 -04:00
Matthias Clasen
154117218c
Drop gdk_screen_get_setting
...
It has been replaced by gdk_display_get_setting.
2017-10-30 17:03:09 -04:00
Matthias Clasen
209f24f962
Remove gdk_setting_get
...
This is a minor convenience api, and it is unused.
2017-10-30 15:31:02 -04:00
Matthias Clasen
e99687194a
Forgotten files
...
Clean up the setting event from headers and docs too.
2017-10-30 10:08:32 -04:00
Matthias Clasen
6bfdd772a5
Towards a working docs build
...
Pass mode: 'none' so escaping of <> in doc comments works.
2017-10-09 19:07:05 -04:00
Emmanuele Bassi
391d1a04ec
Drop Autotools build
...
We are officially switching to Meson as the default build system for
GTK+.
2017-08-14 22:23:09 +01:00
Timm Bäder
5874a30c73
GdkWindow: Remove gdk_window_new_input
...
Not needed anymore.
2017-08-09 15:19:46 +02:00
Timm Bäder
c4f6cea111
fix a few documentation problems
2017-07-19 21:27:15 -04:00
Carlos Garnacho
fee289cd06
gdk: Add gdk_rectangle_contains_point() call
...
A little helper function for a somewhat common operation.
2017-05-25 16:25:58 +02:00
Emmanuele Bassi
8acf5a8174
build: Update autotools for API reference changes
2017-05-03 15:10:58 +01:00
Emmanuele Bassi
c984c3b55e
build: Initial attempt at fixing the docs build
...
We need to reference the types file directly, because it won't be copied
into the builddir by Meson — except for GTK, which needs to generate its
own types file using configure_file().
2017-05-03 15:10:57 +01:00
Emmanuele Bassi
ba87e857e2
build: Generate the API references (WIP)
...
Still a work in progress.
2017-05-03 15:10:57 +01:00
Emmanuele Bassi
f942aa53e2
docs: Rename files to match type and version
...
The main GDK API reference index is XML, not SGML.
The overrides file is for GDK 4.x, not 3.x.
2017-05-03 15:10:56 +01:00
Emmanuele Bassi
98b1075764
gdk: Remove GdkX11DisplayManager from the build
...
We don't instantiate it, and we don't use it any more.
2017-05-03 14:15:57 +01:00
Jeremy Bicha
fc70267158
docs: Use https for more links
...
https://bugzilla.gnome.org/show_bug.cgi?id=780878
2017-04-03 16:02:22 -04:00
Jeremy Bicha
183e5bb8a4
docs: Point links to correct versions
...
https://bugzilla.gnome.org/show_bug.cgi?id=780878
2017-04-03 16:02:22 -04:00
Matthias Clasen
cfb599bf67
We no longer have gdktestutils
...
Update the docs build to reflect that.
2017-01-16 17:50:02 -05:00
Benjamin Otte
7ade6e3f46
gdk: Remove testing functions
...
They were unused and unimplemented.
2017-01-08 03:46:30 +01:00
Matthias Clasen
924efd988d
Fixes for the gdk docs
2016-12-21 13:57:16 -05:00
Benjamin Otte
071c9a8221
API: gdk: Add gdk_rgba_is_clear() and gdk_rgba_is_opaque()
...
I want to use these inside GSK, and I'm not a fan of putting GdkRGBA
APIs into it or duplicating it into GTK.
So public API it is.
2016-12-20 18:01:12 +01:00
Benjamin Otte
8915be00d1
gdkgl: Add gdk_gl_context_get_damage()
...
This is a way to query the damaged area of the backbuffer.
The GL renderer uses this to compute the extents of that damage region
(computed via buffer age) and use them to minimize the area to redraw.
This changes the semantics of GL rendering to "When calling
gdk_window_begin_frame() with a GL context, the area by
gdk_gl_context_get_damage() needs to be redrawn and every other pixel of
the backbuffer is guaranteed to be correct.
After gdk_window_end_frame() on a GL-drawn window, the whole backbuffer
must be correct.
We can always glXBufferSwap() now because of this.
2016-12-05 15:02:47 +01:00
Benjamin Otte
db8e3065bd
gdk: Add GdkDrawContext
...
This will be the base class for GdkVulkanContext and GdkGLContext.
2016-12-05 15:02:47 +01:00
Benjamin Otte
2a27b7ecc6
API: Remove gdk_window_process_all_updates()
...
It's completely unused since we have a frame clock.
2016-11-23 19:10:34 +01:00
Benjamin Otte
ef75ca2d53
API: gdk: Remove gdk_window_process_updates()
...
We have a frame clock now.
2016-11-23 19:02:58 +01:00
Benjamin Otte
e62a4d8eea
API: gdk: Remove ability to render window contents
...
The functions gdk_pixbuf_get_from_window() and
gdk_cairo_set_source_window() are unreliable and depend on the windowing
system (they work great on X11 and Win32, less so on Quartz and Wayland).
With the switch to new drawing API and OpenGL, we can definitely no
longer support a generic way to snapshot windows.
People should either write windowsystem-specific code or draw their
widgets directly - like with gtk_widget_draw() - if they need to get a
rendering.
2016-11-20 11:47:44 +01:00
Benjamin Otte
9fe8b1e112
API: gdk: Remove gdk_window_new()
...
It's finally no longer public API.
2016-11-07 01:12:47 +01:00
Benjamin Otte
24d0baec38
API: gdk: Add gdk_window_new_popup()
...
... and use it.
2016-11-06 23:47:56 +01:00
Benjamin Otte
b30afff511
API: wayland: Add gdk_wayland_window_new_subsurface()
...
... and use it instead of gdk_window_new().
2016-11-06 21:36:43 +01:00
Benjamin Otte
87f07bac6b
API: gdk: Add gdk_window_new_toplevel()
...
... and use it in GTK.
2016-11-06 17:40:59 +01:00
Benjamin Otte
33e7a7898f
API: gdk: Remove gdk_window_set_override_redirect()
...
When you want an override-redirect window, you create it that way.
Changing that behavior is not supported anywhere (but on X of course).
2016-11-05 03:32:27 +01:00
Benjamin Otte
4585af5719
gdk: Remove visual APIs from GdkScreen
...
gdk_screen_list_visuals(), gdk_screen_get_system_visual() and
gdk_screen_get_rgba_visual() are gone now.
2016-11-04 00:02:37 +01:00
Matthias Clasen
7a2537866b
Drop GdkColor
...
It is deprecated and no longer used.
2016-11-01 13:58:11 -04:00
Benjamin Otte
d249e77bcb
API: screen: Remove gdk_screen_is_composited()
...
Switch code to use gdk_display_is_composited() instead.
The new code also doesn't use a vfunc to query the property but rather
requires the backend to call set_composited()/set_rgba() to change the
value.
2016-10-29 04:49:47 +02:00
Benjamin Otte
42d8142cc7
API: gdk: Add gdk_display_is_rgba() and gdk_display_is_composited()
...
Also add properties for those two properties.
The first property is equivalent to checking if an RGBA visual exists,
the 2nd is equivalent to gdk_screen_is_composited().
2016-10-29 04:49:47 +02:00
Benjamin Otte
45c0379f87
API: gdk: Remove visual querying APIs
...
They are unused, only work on the default display anyway and visuals are
on their way out.
2016-10-28 05:22:50 +02:00
Benjamin Otte
f420dc7456
API: gdk: Remove gdk_window_get_visual()
...
With it, remove window->visual.
2016-10-28 05:22:49 +02:00
Benjamin Otte
dd105f3db8
gdk: Remove gdk_window_set_invalidate_handler()
...
It's not used anymore.
2016-10-27 05:03:06 +02:00
Alexander Larsson
723b588b5d
Make gdk.la and gsk.la a noninst helper library
...
This merged gtk, gdk and gsk into one library, making it possible to
have internal private APIs between gtk them, as well as producing more
efficient code.
https://bugzilla.gnome.org/show_bug.cgi?id=773100
2016-10-26 16:34:15 +02:00