| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Children tend to call back into the scrolled window while being removed
and that doesn't work too well if the scrolled window is destroyed
already as Christian Hergert found out.
|
|
|
|
| |
... below 7px of size.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Depending of float rounding during target calculation, the size of the
GtkRevealer can be set to zero will the animation is not finished.
If the GtkRevealer is in a GtkPaned, it will be hidden and so the animation
will be stopped before it is finished.
In this case, force the emission of the child-revealed signal to let
client code know the animation is finished.
https://bugzilla.gnome.org/show_bug.cgi?id=765973
|
|
|
|
| |
Style class names are prefixed with a '.'
|
|
|
|
|
|
| |
rely on toplevel styleclass for scale with marks.
See https://bugzilla.gnome.org/show_bug.cgi?id=766440
|
|
|
|
| |
sync the alpha scale styleclass too.
|
|
|
|
|
| |
We should use the same style classes here, to avoid theme
confusion.
|
|
|
|
| |
This seems to make some issue with the gtk# scanner.
|
|
|
|
|
|
|
|
|
| |
Use .marks-before/after to indicate the presence of marks.
As Lapo points out, compatibility with the previous names
is not really that important, since everything else changed
around it.
https://bugzilla.gnome.org/show_bug.cgi?id=766440
|
|
|
|
|
|
|
|
|
|
| |
It turns out that it is too hard (and in some cases, impossible)
to get this information from node positioning, so bring back the
.scale-has-marks-above/below style classes on the main node.
This should allow us to fix the 'pointy sliders'.
https://bugzilla.gnome.org/show_bug.cgi?id=766440
|
|
|
|
|
|
|
| |
gtk_gesture_get_last_event() wasn't very clear about how long
it is safe to use the returned pointer.
(cherry picked from commit c891ceb31df1fb16c7727be46cee4d8a9fc0b447)
|
|
|
|
|
|
|
|
| |
Cancelling the gesture causes the last_event pointer to become
invalid. Make a copy of the event so we can keep using it
regardless of the gesture state.
(cherry picked from commit 358eec297204b438809692a24cc3649658dbab5a)
|
|
|
|
|
|
| |
The selector for matching GtkEntry has changed to `entry` after 3.20.
https://bugzilla.gnome.org/show_bug.cgi?id=766166
|
|
|
|
|
| |
relocate treview acceleditor > label in the treeview section and
add a comment for a testcase.
|
|
|
|
| |
...removing a double definition in the process.
|
|
|
|
|
|
|
| |
We were failing to take the widget allocation.x/y into account
when deciding whether we need to push in the mark.
https://bugzilla.gnome.org/show_bug.cgi?id=765922
|
|
|
|
|
|
|
| |
FTS5 has a complex enough syntax that it makes not much sense to wrap
in simple search boxes.
https://bugzilla.gnome.org/show_bug.cgi?id=765981
|
|
|
|
|
| |
No need to check for it, we set the css name on GtkWidgetClass
ourselves.
|
|
|
|
|
| |
As the documentation states, neither the switch nor the slider gadget
should be using any style classes.
|
|
|
|
|
|
| |
Instead of creating 2 pango layouts in every draw() and on in
_get_content_size (and calling into gettext twice in both cases), just
keep the layouts around and create them in only one place.
|
|
|
|
|
| |
So gtk_label_get_text returns the default value of "". Broke the
GtkModelButton default value test.
|
|
|
|
|
| |
It would just set up lots of things with the default values, but a
common case is that a few gtk_label_set_* calls follow.
|
|
|
|
| |
Stop comparing them to NULL.
|
|
|
|
|
| |
We set them later again when we calculate the vertical size, so just
move the general assignment to -1 into the horizontal branch.
|
|
|
|
|
| |
We are checking for allocation != NULL at the beginning of the function
already. This also means that the allocation parameter is not nullable.
|
| |
|
| |
|
|
|
|
|
|
|
| |
The fallback code for rendering builtin checks, radios
and expanders was using border parameters. With the generic
gadget borders using the same parameters, this was giving
double borders.
|
| |
|
|
|
|
|
| |
As pointed out in https://bugzilla.gnome.org/show_bug.cgi?id=765676,
we were failing to set position_set if the position did not change.
|
|
|
|
|
|
|
|
| |
Specifically, this URI is not supported on Windows, but GFile will
do its "best" and turn it into GLocalFile("$pwd/network"), with
spectacularly bad results.
https://bugzilla.gnome.org/show_bug.cgi?id=765858
|
|
|
|
| |
I am not sure if this happens in practice, but better to be safe.
|
|
|
|
| |
These events were never freed.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We only keep one align flag per child, so it seems odd to
keep separate h/v expand flags. Just keep one expand flag
and interpret it according to orientation. Allow setting
the expand flag for child widgets too, though, so we can
make widget expand without interfering with the recursive
widget expand flag.
Update all callers.
Use the new possibility of expanding child widgets to make
the label of check and radio buttons expand. This fixes
unexpected behavior of these widgets in RTL in some places.
https://bugzilla.gnome.org/show_bug.cgi?id=765742
|
|
|
|
| |
Flip alignments of the title gadget children.
|
|
|
|
| |
Flip alignments for the box gadget children.
|
|
|
|
|
|
|
| |
In RTL, we want to interpret GTK_ALIGN_START and _END
in the opposite way. Since we don't give gadgets a text
direction, just allow setting an align_reverse flag
to the box gadget.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If there was a piece of text in the cell, then when the edit
entry is shown for that cell, it should have a piece of text
in it roughly at the same location.
Therefore, when child widget is enlarged (child preferred
size exceeds cell size), extra width should be added by
extending either left or right edge depending on text direction.
If after that the child sticks outside of the treeivew visible region,
try to push it back inside (breaking its alignment with the
cell), again, giving preference (i.e. adjusting it last)
to either left or right edge depending on text direction.
https://bugzilla.gnome.org/show_bug.cgi?id=765471
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids the g_source_remove(), g_source_destroy(),
g_timer_source_new(), and g_source_set_name_by_id() in the common case.
Instead, we reuse our previous source and update the ready time to our
new deadline. We lose the coalescing with g_timeout_add_seconds(), but
that is not going to help in the common case anyway (unless you have
three hands and can scroll multiple pixelcached backed widgets at once).
https://bugzilla.gnome.org/show_bug.cgi?id=765640
|
|
|
|
|
|
|
|
| |
In non-composited environments, we were ending up with all-black
drag icons, because nothing was drawing the background of our new
toplevel. Fix this by drawing background when we are not composited.
We don't do this when composited, since we want to allow transparent
icons.
|
|
|
|
| |
There is nothing textview-specific here.
|
|
|
|
|
|
|
| |
When measuring gadgets, minimum must come out <= natural.
Make sure we don't fail this when measuring progressbar text.
https://bugzilla.gnome.org/show_bug.cgi?id=765644
|
|
|
|
|
|
|
|
|
| |
The documentation clearly says that the widget is not destroyed,
but we were in fact failing to keep it alive, since it was still
a child or the icon_window when we destroy that. Fix this by
reparenting the icon_widget out before. Also, deal with the
possibility that the application might destroy the widget
halfway through, for whatever reason.
|
|
|
|
|
| |
The default value should come out of regular translations, not
property translations.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=765496
|
|
|
|
|
|
|
|
| |
There are various functions to access links based on their index for
a11y. We can spare quite a few lines of code by just using
g_list_nth_data instead of iterating over the list ourselves.
https://bugzilla.gnome.org/show_bug.cgi?id=765496
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We perform lots of gadget allocations that require allocating a
GtkBuiltinIcon. One notable example is the scrollbar for a scrolled
window.
In the process of doing this, we often calculate baseline information that
isn't necessary. With how much this code path gets exercised, its worth
catching the result for the common case, which is that the font-description
has not changed and we are using the default language the application
was started with.
This simply caches the previous result and verifies that we can reuse it
with pango_font_description_hash() and a simple language check.
Numbers below are scrolling through a textview with GDK_KEY_Down.
Before:
SELF CUMULATIVE FUNCTION
[ 0.08%] [ 9.26%] gtk_builtin_icon_get_preferred_size
[ 0.01%] [ 8.82%] pango_context_get_metrics
[ 0.02%] [ 0.16%] gtk_widget_get_pango_context
[ 0.06%] [ 0.06%] pango_context_get_language
[ 0.01%] [ 0.02%] g_type_check_instance_cast
[ 0.02%] [ 0.02%] strlen
[ 0.02%] [ 0.02%] pango_context_get_font_description
[ 0.02%] [ 0.02%] g_list_foreach
[ 0.01%] [ 0.01%] gtk_css_style_get_value
[ 0.01%] [ 0.01%] itemize_with_font
[ 0.01%] [ 0.01%] pango_context_get_type
[ 0.01%] [ 0.01%] get_base_metrics
[ 0.00%] [ 0.01%] pango_font_metrics_unref
[ 0.01%] [ 0.01%] g_list_free
[ 0.01%] [ 0.01%] gtk_builtin_icon_get_type
After:
SELF CUMULATIVE FUNCTION
[ 0.08%] [ 0.18%] gtk_builtin_icon_get_preferred_size
[ 0.02%] [ 0.02%] pango_font_description_hash
[ 0.00%] [ 0.02%] gtk_widget_get_pango_context
[ 0.00%] [ 0.02%] g_object_get_qdata
[ 0.00%] [ 0.02%] g_datalist_id_get_data
[ 0.02%] [ 0.02%] gtk_builtin_icon_get_type
[ 0.01%] [ 0.01%] pango_context_get_font_description
[ 0.00%] [ 0.01%] - - kernel - -
[ 0.01%] [ 0.01%] pango_context_get_language
[ 0.00%] [ 0.01%] gtk_css_style_get_value
[ 0.00%] [ 0.01%] gtk_css_gadget_get_style
https://bugzilla.gnome.org/show_bug.cgi?id=765486
|