summaryrefslogtreecommitdiff
path: root/gdk/gdkdisplayprivate.h
Commit message (Collapse)AuthorAgeFilesLines
* displaymanager: Move set_default_display vfuncBenjamin Otte2013-04-151-0/+1
| | | | | ... to GdkDisplayClass.make_default. It's only implemented by X11 anyway.
* gdkdisplay: Remove get_screen() and get_n_screens() vfuncsBenjamin Otte2013-04-021-3/+0
|
* GdkDisplay: handle multiple calls to _gdk_display_pause_events()Owen W. Taylor2013-02-141-3/+4
| | | | | | | | | Since events can be paused independently for each window during processing, make _gdk_display_pause_events() count how many times it is called and only unpause when unpause_events() is called the same number of times. https://bugzilla.gnome.org/show_bug.cgi?id=685460
* Compress motion synchronized with the paint cycleOwen W. Taylor2013-02-141-0/+5
| | | | | | | | | | | | | | | | | | | When we have pending motion events, instead of delivering them directly, request the new FLUSH_EVENTS phase of the frame clock. This allows us to compress repeated motion events sent to the same window. In the FLUSH_EVENTS phase, which occur at priority GDK_PRIORITY_EVENTS + 1, we deliver any pending motion events then turn off event delivery until the end of the next frame. Turning off event delivery means that we'll reliably paint the compressed motion events even if more have arrived. Add a motion-compression test case which demonstrates behavior when an application takes too long handle motion events. It is unusable without this patch but behaves fine with the patch. https://bugzilla.gnome.org/show_bug.cgi?id=685460
* gdk: Remove GdkDisplay->ignore_core_pointerAlexander Larsson2012-04-031-1/+0
| | | | This is not used anywhere anymore
* gdk: Add internal API to deal with touch implicit grabsCarlos Garnacho2012-03-011-0/+29
| | | | | | The necessary information about a touch implicit grab is stored in GdkTouchGrabInfo structs, these are meant to be transient to the touch sequence.
* gdk: Generate crossing events around touch devices' press/releaseCarlos Garnacho2012-03-011-0/+1
| | | | | | | | | | | | | Anytime a touch device interacts, the crossing events generation will change to a touch mode where only events with mode GDK_CROSSING_TOUCH_BEGIN/END are handled, and those are sent around touch begin/end. Those are virtual as the master device may still stay on the window. Whenever there is a switch of slave device (the user starts using another non-touch device), a crossing event with mode GDK_CROSSING_DEVICE_SWITCH may generated if needed, and the normal crossing event handling is resumed.
* Change FSF AddressJavier Jardón2012-02-271-3/+1
|
* gdk: Keep track of the last slave device usedCarlos Garnacho2012-02-231-0/+1
| | | | | | | This last slave device (stored per master) is used to fill in the missing slave device in synthesized crossing events that are not directly caused by a device event (ie due to configure events or grabs).
* gdk: Use const instead G_CONST_RETURNJavier Jardón2011-06-101-1/+1
|
* GdkDisplay: Struct packing improvementsMatthias Clasen2011-04-121-5/+4
|
* API: gdk: Change get_drag_window() APIBenjamin Otte2011-02-011-4/+0
| | | | | | | | The previous function gdk_drag_get_protocol_for_display() took native window handles, so it had to be changed. Because it didn't do what it was named to do (it didn't return a protocol even though it was named get_protocol) and because it doesn't operate on the display anymore but on the actual window, it's now called gdk_window_get_drag_protocol().
* API: gdk: Make GdkEventSelection.requestor a GdkWindowBenjamin Otte2011-02-011-1/+1
| | | | | instead of a GdkNativeWindow. Also change gdk_selection_notify() API to take a GdkWindow to match this change.
* gdk: Remove GdkEventClientBenjamin Otte2011-02-011-7/+0
| | | | | | | | | | | | ... and all APIs making use of it. That code like it hasn't been touched in years, Google codesearch didn't find any users and most importantly it's a horrendous API, so let's just make it die instead of having to port it over to non-GdkNativeWindow usage, which would be required for multi-backend GDK. http://mail.gnome.org/archives/gtk-devel-list/2011-January/msg00049.html
* gdk: Get rid of GdkDisplayDeviceHooksBenjamin Otte2011-01-031-12/+0
| | | | | Move the only user to call the function directly and copy the called function over.
* gdk: Move get_device_state out of the display hooksBenjamin Otte2011-01-031-6/+0
| | | | Previous callers now use _gdk_device_query_state() directly.
* gdk: Move window_get_device_position function out of the device hooksBenjamin Otte2011-01-031-6/+0
|
* API: gdk: Remove gdk_display_set_device_hooks()Benjamin Otte2011-01-031-0/+22
| | | | | | | | There's no usecase for them, so remove them before we have to commit to keeping an API. Make the hooks private for now, actually removing them will come in followup patches.
* Consistently hide class structsMatthias Clasen2010-12-241-0/+5
| | | | | And, since we've decided to keep the structs private, there is no point in having the standard GObject clas macros anymore either.
* gdk: Allow display subclasses to override the type used for windowsBenjamin Otte2010-12-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want to have different window types for different displays, so we can write code like this: #if GDK_WINDOWING_X11 if (GDK_IS_X11_WINDOW (window)) { /* do x11 stuff */ } else #endif #if GDK_WINDOWING_WAYLAND if (GDK_IS_WAYLAND_WINDOW (window)) { /* do wayland stuff */ } else #endif { /* do stuff for unsupported system */ } This requires different GdkWindow types and we currently don't have that, as only the GdkWindowImpl differs. With this method, every backend defines a custom type that's just a simple subclass of GdkWindow. This way GdkWindow behaves like all the other types (visuals, screens, displays) and we can write code like the above.
* gdk: Create windows via _gdk_display_create_window()Benjamin Otte2010-12-211-0/+1
| | | | | THe use of this function will become visible in the next commits. But wrapping g_object_new() is a generally a good idea anyway.
* Deal with property encoding functionsMatthias Clasen2010-12-211-0/+9
| | | | | | | | Move everything dealing with compound text to be X11 specific Only gdk_text_property_to_utf8_list and gdk_utf8_to_string_target are kept across backends, so add vfuncs for these. Also, remove the non-multihead-safe variants of all these.
* Add a vfunc for gdk_selection_convertMatthias Clasen2010-12-211-1/+6
|
* Add a vfunc for gdk_selection_property_getMatthias Clasen2010-12-211-0/+5
|
* Add a vfunc for gdk_selection_send_notify_for_displayMatthias Clasen2010-12-211-0/+6
|
* Add vfuncs for get/set_selection_ownerMatthias Clasen2010-12-211-0/+8
|
* Add vfuncs for gdk_test apisMatthias Clasen2010-12-211-0/+3
|
* Add a vfunc for gdk_keymap_get_for_displayMatthias Clasen2010-12-211-0/+2
|
* Add a vfunc for _gdk_window_impl_newMatthias Clasen2010-12-211-0/+15
|
* Add vfuncs for _gdk_windowing_event_data_{copy,free}Matthias Clasen2010-12-211-0/+10
|
* Add a vfunc for gdk_notify_startup_completeMatthias Clasen2010-12-211-0/+3
| | | | | At the same time, add a display api for this, since it really is per-display.
* Add a vfunc for _gdk_windowing_window_get_next_serialMatthias Clasen2010-12-211-1/+3
|
* Add vfuncs for process_updates_recurse and the before and after hooksMatthias Clasen2010-12-211-0/+3
|
* Add vfuncs for a bunch of cursor functionality to GdkDisplayMatthias Clasen2010-12-211-3/+23
|
* Explode gdkinternals.h into per-class private headersMatthias Clasen2010-12-211-0/+202
At the same time, move some more class and instance structs out of public headers.