summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix formattingMatthias Clasen2016-05-051-7/+7
| | | | The previous change was not quite using the right coding style.
* listbox: Make sure page down/up move at least one rowTimm Bäder2016-05-051-36/+17
| | | | | | | | | When the current cursor_row is taller than the page_size we get from the GtkAdjustment, the previous code would not actually cause any scrolling, so make sure we just take the row after or before the cursor_row in that case. https://bugzilla.gnome.org/show_bug.cgi?id=765261
* cssshadowsvalue: Avoid allocating new value if not neededBenjamin Otte2016-05-052-5/+41
|
* cssbordervalue: Avoid allocating new value if not neededBenjamin Otte2016-05-051-6/+11
|
* cssbgsizevalue: Avoid allocating new value if not neededBenjamin Otte2016-05-051-0/+10
|
* Add a dnd test using a window as iconMatthias Clasen2016-05-051-1/+61
| | | | | This case is causing problems in firefox. Lets at least make sure that it doesn't crash in GTK+.
* gtkmenusectionbox: remove submenus when the parent item is removedJonathan Matthew2016-05-051-0/+16
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=749405
* widget: Don't show widget resizes in the inspectorMatthias Clasen2016-05-051-1/+1
| | | | | Avoiding this sort of visual debugging in the inspector is the main reason we have per-display debug flags now.
* css gadget: Fix baseline debugMatthias Clasen2016-05-051-1/+1
| | | | We were not using the baseline that we're computing.
* Use qdata for debug flagsMatthias Clasen2016-05-051-2/+5
| | | | This avoids some overhead.
* css gadget: Don't get display flags twiceMatthias Clasen2016-05-051-2/+3
| | | | | This got more expensive now that we store them per-display, so don't get them twice in the same function.
* debug: remove open-coded debug checks in gtktextsegmentChristian Hergert2016-05-051-7/+7
| | | | | | | | | | | | These runtime checks were being performed whether or not we were in a debug build. Using GTK_DEBUG_CHECK() will compile out of production builds, as it will result in something like: if (G_UNLIKELY(0)) which the optimizer can prune. https://bugzilla.gnome.org/show_bug.cgi?id=765284
* Add some va marshallers to frequent signalsMatthias Clasen2016-05-051-0/+11
| | | | This makes us take the fast path in signal emission.
* magnifier: Only connect to ::draw when neededMatthias Clasen2016-05-051-4/+26
| | | | | | | This making us take the slow path in ::draw handling, so we want to avoid it if we can. https://bugzilla.gnome.org/show_bug.cgi?id=765238
* Adwaita: more flexible headerbar_fill mixinLapo Calamandrei2016-05-053-12/+11
| | | | adding an additional background layer as a parameter.
* Updated Norwegian bokmål translation.Kjartan Maraas2016-05-031-2147/+1314
|
* wayland: fix up/down mix up in discrete eventsOlivier Fourdan2016-05-031-2/+2
| | | | | | | | | | | | | | | | | | | | | The wayland specification for discrete step information for scroll and other axes reads: | The discrete value carries the directional information. e.g. a | value of -2 is two steps towards the negative direction of this axis. mutter sets a value of 1 for SCROLL_DOWN events and -1 for SCROLL_UP events. gdkdevice Wayland backend does the opposite, it translates a positive discrete value as SCROLL_UP and a negative value as SCROLL_DOWN, which ends up inverting the scrolling direction. Fix the logic in gdkdevice Wayland to use a positive value as SCROLL_DOWN and a negative value as SCROLL_UP so that it matches mutter and weston logic. https://bugzilla.gnome.org/show_bug.cgi?id=765907
* testnotebookdnd: add one GtkListBox as tab contentCarlos Soriano2016-05-021-1/+50
| | | | | | | To make sure we test regressions on widgets that bubble up motion handling and can trigger the motion handling code path on GtkNotebook. https://bugzilla.gnome.org/show_bug.cgi?id=764395
* gtknotebook: avoid tab dnd from contentCarlos Soriano2016-05-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Before commit 6c1bee2377eba8 we were setting an attribute of GtkNotebook to track the pressed button if the pressed button happened on the tab itself. Later in the motion handling code we were checking whether the private pressed button attribute was set or not in order to handle a tab dnd or not. In commit 6c1bee2377eba8 the code changed and set the pressed button variable unconditionally, which means, a motion event from within the tab content triggered a tab reordering. This happened only if the children hierarchy have a widget that bubbles up both button press event, which sets the private pressed button attribute; and motion events, which started the tab dnd checking the private pressed button attribute. A widget that experienced the regression was GtkListBox. In order to fix it, set the button pressed variable only when it press the tab itself, not the content. https://bugzilla.gnome.org/show_bug.cgi?id=764395
* W32: reword the error about required cairo versionРуслан Ижбулатов2016-04-291-2/+2
| | | | | | | 1.14.x series does not contain the functionality needed by GTK+. Advise to use 1.15.x (1.15.2 is available) or 1.16.x (yet to be released). https://bugzilla.gnome.org/show_bug.cgi?id=765790
* Adwaita: refactor levelbar styling.Lapo Calamandrei2016-04-283-79/+61
|
* wayland: Ignore NoSymbol keysDaniel Stone2016-04-272-1/+4
| | | | | | | | | | | | | | NoSymbol is not a valid GDK symbol (it only has the concept of VoidSymbol, for some reason, which is neither the same thing nor produced by any sane keymap). Passing NoSymbol events through to GTK+ apps is unlikely to produce anything useful. In particular, this meant VTE would scroll to the end of the buffer when pressing Fn (required for Page Up/Down on Macs), as it was receiving a keypress that wasn't a modifeir. This does not happen on X11, as the KEY_FN keycode is above 255, so does not get sent to clients. https://bugzilla.gnome.org/show_bug.cgi?id=764825
* wayland: Perform seat grab focus checks on native windowsCarlos Garnacho2016-04-271-7/+7
| | | | | | | | We don't care about the specific (possibly client-side) window that requested the focus here, only the toplevel. Fixes mistakenly sent focus events when the grab happens inside the current focus window. https://bugzilla.gnome.org/show_bug.cgi?id=762756
* Update Latvian translationRūdolfs Mazurs2016-04-241-271/+282
|
* wayland: Leave existing mods on map_virtual_modifiersRui Matos2016-04-191-1/+1
| | | | | | | map_virtual_modifiers() is supposed to add the necessary virtual mods but otherwise leave the mods that are passed in. https://bugzilla.gnome.org/show_bug.cgi?id=765270
* gtkcssimagebuiltin: Save/restore around cairo_clipTimm Bäder2016-04-191-0/+2
| | | | | This was previously causing trouble in checkbuttons where the check node didn't have an icon shadow set, e.g. in Raleigh.
* frame-clock: avoid g_signal_emit_by_name()Christian Hergert2016-04-193-7/+57
| | | | | | | | These were showing up higher in Sysprof profiles. The simple fix is to avoid the emit_by_name() and let the interface emit the signals directly. No function preconditions are provided since these are internal API.
* wayland: Improve checks when flushing scroll eventsCarlos Garnacho2016-04-191-18/+23
| | | | | | | | | | If we get gdk_wayland_seat_flush_frame_event() with no previous event to be flushed, we fallback into the scroll event checks. However, there's no check performed there as to whether it really scrolled, so it'd always send a smooth scroll event with 0/0 deltas in this case. This should be mostly harmless, but still, we should only end up emitting scroll events if those really happened.
* wayland: Do not check the pointer focus when receiving wl_pointer.frameCarlos Garnacho2016-04-191-3/+0
| | | | | | | | The frame event is also meant to compress wl_pointer.leave events, at this point the focus surface will be definitely NULL. In the end, wl_pointer.frame should flush the last composed event despite the pointer focus. https://bugzilla.gnome.org/show_bug.cgi?id=765065
* gdk: Make GDK_TOUCH_CANCEL be dealt with similarly to GDK_TOUCH_ENDCarlos Garnacho2016-04-191-1/+3
| | | | | | | | | We must emit the cancel event with the same semantics, and towards the GdkWindow that is currently under the touchpoint, so make proxy_button_event() deal with GDK_TOUCH_CANCEL. Fixes the GDK_TOUCH_CANCEL event being emitted only on the toplevel, which is usually non-sufficient.
* menuitem: Fix some possible problems with arrow_gadgetMatthias Clasen2016-04-191-3/+8
| | | | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=765134 shows a stacktrace where we end up with arrow_gadget being NULL despite the conditions for its presence being satisfied. This commit makes sure we call update_arrow_gadget() whenever any of the conditions changes. This should fix the reported crash.
* Add some more accelerator / modifier testsMatthias Clasen2016-04-191-1/+23
|
* wayland: Make virtual modifier mapping more similar to XMatthias Clasen2016-04-191-1/+1
| | | | | | Ignore virtual modifiers that are mapped to Mod1 (as Meta often is), to avoid interfering with our fix interpretation of Mod1 as Alt.
* wayland: Fix the map_virtual_modifiers implementationMatthias Clasen2016-04-191-1/+1
| | | | | | We were not stripping real modifiers out, and thus always thought there's a conflict when the passed in modifiers included any real modifiers.
* wayland: Implement virtual modifiersMatthias Clasen2016-04-191-2/+50
| | | | | | | | | | | Since Wayland is using libxkbcommon, it inherits X unfortunate real/virtual modifier distinction, so we have to do the same gymnastics we do for X to map between the two. This should fix matching of accelerators using virtual modifiers (modulo gnome-shell bugs regarding the handling of Super). https://bugzilla.gnome.org/show_bug.cgi?id=764424
* Clarify docs a bitMatthias Clasen2016-04-191-1/+1
| | | | | The wording here was just awkward: TRUE is returned if... Note that FALSE is also returned if...
* recent-manager: Emit ::changed on file deletionEmmanuele Bassi2016-04-191-3/+1
| | | | | | | This will clear out the list of recently used files, and will allow GVFS to handle this case. https://bugzilla.gnome.org/show_bug.cgi?id=693077
* Assign a recent manager if one is setEmmanuele Bassi2016-04-191-3/+3
| | | | | | | The GtkRecentAction implementation ignored a GtkRecentManager passed to its :manager property. https://bugzilla.gnome.org/show_bug.cgi?id=620065
* app: minor code improvementsSébastien Wilmet2016-04-191-2/+2
| | | | | | | | - use GDK_EVENT_PROPAGATE - pass better zero-values to gtk_init(), since the parameters are pointers. https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: improve code of extract_accels_from_menu()Sébastien Wilmet2016-04-191-6/+6
| | | | | | | sub_model is clearer than "m". And we don't use the key, so we can pass NULL instead. https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: use g_set_object()Sébastien Wilmet2016-04-191-18/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: don't use deprecated functionSébastien Wilmet2016-04-191-3/+8
| | | | | | | gtk_application_add_accelerator() is deprecated, but was still used inside IGNORE_DEPRECATIONS's. https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: improve doc of gtk_application_get_window_by_id()Sébastien Wilmet2016-04-191-0/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: improve doc of gtk_application_set_accels_for_action()Sébastien Wilmet2016-04-191-0/+3
| | | | | | | When reading the API for the first time I didn't know what was the "detailed" action name. https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: avoid code duplication for setting accelsSébastien Wilmet2016-04-191-12/+9
| | | | | | | The implementation of the deprecated functions is now based on the non-deprecated gtk_application_set_accels_for_action(). https://bugzilla.gnome.org/show_bug.cgi?id=764846
* app: fix indentationSébastien Wilmet2016-04-191-7/+9
| | | | And add missing curly braces.
* docs: trivial fixes in GtkApplication-related documentationSébastien Wilmet2016-04-194-8/+8
|
* wayland: do not update shadows for child windowsOlivier Fourdan2016-04-191-2/+4
| | | | | | | | | | | glade-previewer places a gtkwindow inside another toplevel gtkwindow, updating the shadow width for the client induces a busy loop where the parent will grow continuously until it crashes gnome-shell/mutter. To avoid the loop, do not update the shadow width if not dealing with a toplevel window. Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=761651
* Clarify that one cannot use the same variableWouter Verhelst2016-04-191-0/+3
| | | | | | | | | | | | | | | | | | | A naive way to perform an action on all parent nodes of a given node could be to do: while(gtk_tree_model_iter_parent(model, &iter, &iter)) { /* perform some action on iter here */ } However, since gtk_tree_model_iter_parent() will initialize the iterator pointed to by the second parameter before performing the lookup, this will not work. Explicitly document this behaviour. Signed-off-by: Wouter Verhelst <w@uter.be> https://bugzilla.gnome.org/show_bug.cgi?id=573380
* Add a comment to explain numbers hereMatthias Clasen2016-04-191-0/+1
| | | | This explains the change in the previous commit.