summaryrefslogtreecommitdiff
path: root/gtk/gtkprivate.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove GtkPlacesOpenFlags from public headersMatthias Clasen2020-11-091-0/+1
| | | | | | | | | | | | The GtkPlacesOpenFlags enum is only used in private API, so move it to private headers. Since we still need a GType for it, add gtkplacessidebarprivate.h to the headers we use for generating private enum types. In turn, this registers the other private enums in that header, so take the opportunity to fix their naming, and use the generated types for the corresponding sidebarrow properties. Fixes: #3337
* Redo the handling of Emoji dataemoji-data-cldrMatthias Clasen2020-10-041-0/+2
| | | | | | | | | | | | | | | Use the data files from https://github.com/milesj/emojibase.git as source for our Emoji data. Slightly change our data format by adding a group to each item, in both the Emoji data and in the setting for recent-emoji. Install translated versions of the data as separate resource bundles in $prefix/gtk-4.0/emoji, and load them when appropriate. Currently, we have data for de, en, es, fr, zh, with data taken from Unicode 13 and CLDR 13. Fixes: #950 #1511
* Replace "gdouble" with "double"Benjamin Otte2020-07-251-2/+2
|
* Replace "gchar" with "char"Benjamin Otte2020-07-251-6/+6
|
* Drop gtk_get_current_ apisMatthias Clasen2020-04-111-0/+2
| | | | | | | | We have event controller apis to replace these. There is one remaining use of gtk_get_current_event_time in gtkwindow.c, so we can't drop the implementation yet. Add a section in the migration guide for this.
* gtk: Stop using modifier intentsMatthias Clasen2020-04-061-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewing the existing settings, the only backend with some differences in the modifier intent settings is OS X, and we would rather have that implemented by interpreting the existing modifiers in the appropriate way. X11 Wayland Win32 OS X primary ctrl ctrl ctrl mod2 mnemonic alt alt alt alt context menu - - - ctrl extend sel shift shift shift shift modify sel ctrl ctrl ctrl mod2 no text alt|ctrl alt|ctrl alt|ctrl mod2|ctrl shift group varies - - alt GTK now uses the following modifiers: primary ctrl mnemonic alt extend sel shift modify sel ctrl no text alt|ctrl The context menu and shift group intents were not used in GTK at all. Update tests to no longer expect <Primary> to roundtrip through the accelerator parsing and formatting code.
* gtk: Remove handling of virtual modifiersMatthias Clasen2020-04-061-2/+0
| | | | | | These are going away. We expect to just have named modifiers in modifier masks now, so we longer juggle 'real' and 'virtual' modifiers.
* Drop some no longer used codeMatthias Clasen2020-04-051-10/+0
|
* Add portal version checking helperBastien Nocera2020-03-301-0/+2
| | | | Add gtk_get_portal_interface_version() to check the version of a portal.
* Drop gtk_grab_add/remove from public apiMatthias Clasen2020-02-281-0/+5
| | | | | The only form in which we still allow grabs to take place is with modal toplevels.
* motion controller: Match focus event propagationMatthias Clasen2020-02-211-0/+6
| | | | | Make the crossing event generation for pointer events match what we do for focus now.
* Remove gtk_propagate_event from public APIMatthias Clasen2020-02-091-0/+2
| | | | | This is not a function that can be safely called outside of GTK.
* Remove gtk_main_do_event from public APIMatthias Clasen2020-02-091-0/+1
|
* Use normal event propagation for DND eventsMatthias Clasen2020-01-081-1/+1
| | | | | | | This works just fine, now that drop targets are event controllers. There is only a very vestigial gtk_drag_dest_handle_event() left that deals with corner cases.
* gtkprivate: Only define gtk_internal_return_if* for consistency checksTimm Bäder2019-09-091-3/+3
| | | | | The wanted behavior here is that these are only defined if the buildtype is debug, i.e. full debugging.
* widget: Add gtk_widget_compute_point()Benjamin Otte2019-02-191-7/+0
| | | | It's the replacement for gtk_widget_translate_coordinates()
* Remove nonexisting function from headerBenjamin Otte2019-02-191-6/+0
|
* Move the should_use_portal helper to gdkMatthias Clasen2018-11-041-1/+1
| | | | | We want to use it there too, in the future. Update all callers.
* GtkApplication: track screensaver stateMatthias Clasen2018-08-301-0/+1
| | | | | | | | | | | A number of applications want to track the state of the screensaver. Make this information available as a boolean property. We only listen for state changes when ::register-session is set to TRUE. This is implemented for unsandboxed D-Bus access by talking directly to org.gnome.ScreenSaver or org.freedesktop.ScreenSaver, and for sandboxed D-Bus by using a (new) portal API. A Quartz implementation is missing.
* Add utility functions for portal pathsMatthias Clasen2018-08-301-0/+4
| | | | | The paths that we create for requests and sessions need some icky code to create. Keep it in one place.
* Use defines for bus namesMatthias Clasen2018-08-151-0/+8
| | | | | | This helps eradicate typos (we had some here). Closes https://gitlab.gnome.org/GNOME/gtk/issues/1267
* main: Don't look at first GTK_DISPLAY_DEBUG_CHECK parameter...Timm Bäder2018-07-081-1/+2
| | | | | | | | | ... if none of the debug displays have any debug flags set. This way, we can ignore the first parameter to e.g. GTK_DISPLAY_NOTE, which is usually a call to gtk_widget_get_display. Before this patch, gtk_widget_get_display was the slowest part of gtk_widget_query_size_for_orientation.
* gtk: Add GtkGestureStylusCarlos Garnacho2018-04-051-0/+7
| | | | | | This is a GtkGesture done to deal with stylus events from drawing tablets. Those have a special number of characteristics that extend a regular pointer, so it makes sense to wrap that.
* gtk: add a per-display log macroMatthias Clasen2018-01-141-0/+5
| | | | This makes the conversion easier.
* application: Put shared code into a common functionBenjamin Otte2017-12-031-0/+2
|
* gtk: Change gtk_propagate_event() to propagate both ways.Carlos Garnacho2017-09-191-1/+1
| | | | | | | This change is made for consistency, it doesn't make sense to expose one-way propagation, as it can only break expectations from GTK+. This function might be made entirely private in the future, but it still makes sense to do this in one go for our internal usecases.
* gtk: Add private _gtk_toplevel_pick() methodCarlos Garnacho2017-05-251-0/+5
| | | | | This function returns both the widget at the given toplevel coordinates, and the translated x/y in widget relative coordinates.
* gtk: Add missing function declarationsEmmanuele Bassi2016-10-171-0/+2
|
* Fix _gtk_get_slowdown()Emmanuele Bassi2016-10-171-1/+1
| | | | We need to pass void as the argument type.
* Add a portal helperMatthias Clasen2016-07-081-0/+2
| | | | | | | Instead of open-coding checks for sandboxing in multiple places, add a helper function that caches the information. https://bugzilla.gnome.org/show_bug.cgi?id=768499
* progresstracker: add GTK_SLOWDOWN environment variableMatt Watson2016-04-081-0/+4
| | | | | As we consolidate widgets to use progress tracker, this will allow us to control the speed of all animations in a centralized place
* Make debug flags per-displayMatthias Clasen2016-03-111-0/+12
| | | | | Tihs lets us toggle debug flags in the inspector without affecting the inspector itself.
* Add a private function to determine if we simulateMatthias Clasen2015-07-311-0/+2
| | | | | | These same two or three tests are currently duplicated in several places, with separate static variables. Lets do this in one place.
* Make sure native W32 print dialog uses visual stylesРуслан Ижбулатов2014-08-051-0/+4
| | | | | | | | | | | For that to happen the libgtk3 is embedded with a manifest that requests common controls library 6.x, and GTK lazily calls InitCommonControlsEx() to initialize those. Then this manifest is used to temporarily override the process activation contest when loading comdlg32 (which contains the code for the print dialog), ensuring that it too depends on common controls 6.x, even if the application that uses GTK does not. https://bugzilla.gnome.org/show_bug.cgi?id=733773
* gtkprivate: #define OPPOSITE_ORIENTATIONBenjamin Otte2013-05-011-0/+2
| | | | and use it
* Work around access to global resources without calling gtk_init()Tristan Van Berkom2013-04-081-0/+2
| | | | | | | | | | | Some utilities such as GIR and gtk-doc, initialize class vtables without initializing GTK+, with composite templates accessing resources this causes a hand full of unneeded warnings. The workaround for now is the use a private function _gtk_ensure_resources() which is both called while initializing GTK+, and at the beginning of gtk_widget_class_set_template_from_resource() (the private function ensures that the resource will only ever be registered GOnce).
* Add internal versions of g_return_[val_]_if_failAlexander Larsson2012-12-041-0/+10
| | | | | These are only enabled on debug=yes, so not by default in released tarballs.
* Add GtkTextHandleCarlos Garnacho2012-09-031-0/+1
| | | | | | | | | | This is a helper object to allow text widgets to implement text selection on touch devices. It allows for both cursor placement and text selection, displaying draggable handles on/around the cursor and selection bound positions. Currently, this is private to GTK+, and only available to GtkEntry and GtkTextView.
* gtk: Add a way to do event captureCarlos Garcia Campos2012-03-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds a capture phase to GTK+'s event propagation model. Events are first propagated from the toplevel (or the grab widget, if a grab is in place) down to the target widget and then back up. The second phase is using the existing ::event signal, the new capture phase is using a private API instead of a public signal for now. This mechanism can be used in many places where we currently have to prevent child widgets from getting events by putting an input-only window over them. It will also be used to implement kinetic scrolling in subsequent patches. http://bugzilla.gnome.org/show_bug.cgi?id=641836 We automatically request more motion events in behalf of the original widget if it listens to motion hints. So the capturing widget doesn't need to handle such implementation details. We are not making event capture part of the public API for 3.4, which is why there is no ::captured-event signal.
* Change FSF AddressJavier Jardón2012-02-271-3/+1
|
* Add generation of private g-types for private headersAlexander Larsson2011-11-251-0/+2
| | | | This starts with just the gtkcsstypesprivate.h header
* Turn the private #define for the group-shifting modifier into APIMichael Natterer2011-11-181-7/+0
| | | | | | | Add GDK_MODIFIER_INTENT_SHIFT_GROUP to enum GdkModifierIntent and handle it in gdk_keymap_get_modifier_mask(). Add an X11 impl of the method and return keymap_x11->group_switch_mask. Return 0 from the default impl because we don't know.
* Bug 663856 - Make option-foo accelerators use the right symbolMichael Natterer2011-11-181-0/+17
| | | | | | | | | | | | | | | | | If the keyboard group shifting modifier is *also* a normal accelerator modifier, we need to special case it when calling gdk_keymap_translate_keyboard_state(), so we get the right key symbol for accelerators (for example we want Option-O, not Option-Ø displayed in menu items). This patch should only affect quartz where the Alt key both shifts the group and can be used as accel modifier, and not X11 or Win32 where AltGr is not used for accelerators. - fix quartz' gdk_keymap_translate_keyboard_state() to return the right consumed_modifiers - add _gtk_translate_keyboard_accel_state() which does the special casing - use it everywhere instead of gdk_keymap_translate_keyboard_state()
* Move gtkstyle and gtkrc to deprecated/Matthias Clasen2011-11-021-3/+2
| | | | | | This required a somewhat more substantial include reshuffling. Some typedefs have been moved to gtkiconfactory.h and to gtksettings.h.
* gtk: clean up the private horrorMichael Natterer2011-10-221-34/+18
| | | | | | | | | | | - add gtkmodulesprivate.h and move stuff there from gtkprivate.h - add gtkprivate.c and move stuff there from gtkmain.c - add gtkwin32.c and move stuff there from gtkmain.c - don't redefine GTK_DATADIR and friends in gtkprivate.h - have _gtk_get_datadir() and friends on all platforms - remove the horrid hacks where gtkprivate.h can't be included, or must be included later due to redefinition of the compile-time directories
* Bug 658772: Directory paths for resource directories are hard coded.John Ralls2011-10-081-1/+2
| | | | Provide dynamic path discovery functions as are provided for win32.
* gtk: remove the private GTK_DEFAULT_ACCEL_MOD_MASK defineMichael Natterer2011-10-071-9/+4
| | | | | | | | | and finish the port to using the new modifier abstraction API. This commit has some evilness, it uses the default display for the lack of a widget context, and the change to gtkstock.c is very ugly, but I can't think of anything better given GtkStockItem needs an accel mask instead of a proper accel string.
* Bug 659406 - Abstract what triggers a context menuMichael Natterer2011-09-271-2/+0
| | | | | | Add gdk_event_triggers_context_menu(), using the new modifier abstraction API. Remove _gtk_button_event_triggers_context_menu() and port all callers.
* gtk: remove the private GTK_EXTEND/MODIFY_SELECTION_MOD_MASKMichael Natterer2011-09-271-8/+0
| | | | and use the new public modifier abstraction API instead.
* gtk: remove the private GTK_NO_TEXT_INPUT_MOD_MASKMichael Natterer2011-09-271-10/+0
| | | | and use the new public modifier abstraction API.