| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
The previous change was not quite using the right coding style.
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This case is causing problems in firefox. Lets at least make
sure that it doesn't crash in GTK+.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=749405
|
|
|
|
|
| |
Avoiding this sort of visual debugging in the inspector
is the main reason we have per-display debug flags now.
|
|
|
|
| |
We were not using the baseline that we're computing.
|
|
|
|
| |
This avoids some overhead.
|
|
|
|
|
| |
This got more expensive now that we store them per-display,
so don't get them twice in the same function.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
This makes us take the fast path in signal emission.
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
adding an additional background layer as a parameter.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
This was previously causing trouble in checkbuttons where the check node
didn't have an icon shadow set, e.g. in Raleigh.
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
Ignore virtual modifiers that are mapped to Mod1 (as Meta
often is), to avoid interfering with our fix interpretation
of Mod1 as Alt.
|
|
|
|
|
|
| |
We were not stripping real modifiers out, and thus always
thought there's a conflict when the passed in modifiers
included any real modifiers.
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
The wording here was just awkward: TRUE is returned if... Note that
FALSE is also returned if...
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
The GtkRecentAction implementation ignored a GtkRecentManager passed to
its :manager property.
https://bugzilla.gnome.org/show_bug.cgi?id=620065
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=764846
|
|
|
|
|
|
|
| |
gtk_application_add_accelerator() is deprecated, but was still used
inside IGNORE_DEPRECATIONS's.
https://bugzilla.gnome.org/show_bug.cgi?id=764846
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=764846
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
And add missing curly braces.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
This explains the change in the previous commit.
|