Timm Bäder
4dd8d37191
widgetfocus: Use the same function to compare widgets
...
... in horizontal/vertical direction.
2017-03-31 09:50:40 +02:00
Timm Bäder
c9fc201f77
Implement tab/up-down/left-right focus sorting for widgets
...
basically do what GtkContainer already did.
2017-03-31 09:50:40 +02:00
Timm Bäder
6e9d857714
Widget: Shuffle focus code around
2017-03-31 09:50:40 +02:00
Timm Bäder
9b70d9897d
tests: Add widget focus test case
...
Shows an example of a widget that directly inherits from GtkWidget and
has multiple focusable children.
2017-03-31 09:50:40 +02:00
Timm Bäder
1a7cbddbd4
statusbar: Remove margins in ui file
...
Widgets themselves shouldn't have margins assigned.
2017-03-31 09:50:40 +02:00
Timm Bäder
0153147ca2
widget: Allow focusing widgets with non-container parent
...
Especially if said parent also has can-focus set to FALSE, which is a
special-case we had before for GtkContainer instances.
2017-03-31 09:50:40 +02:00
Timm Bäder
0b48bb23b2
label: Fix focus implementation
...
Don't return TRUE if we didn't actually focus anything.
2017-03-31 09:50:39 +02:00
Timm Bäder
1affd425a1
window: Simplify _set_focus
2017-03-31 09:50:39 +02:00
Timm Bäder
cc05fc574c
window: Remove _gtk_window_set_is_toplevel
...
All GtkWindow instances are toplevels.
2017-03-31 09:50:39 +02:00
Timm Bäder
270d957380
window: Fold update_has_focus in to set_is_active
...
We're now only ever setting has_focus to the same value we set is_active
to, so also remove that field from the private struct.
2017-03-31 09:50:39 +02:00
Timm Bäder
0ce9f26dc5
window: Remove has-toplevel-focus property
...
Since embedded toplevels don't exist anymore, :has-toplevel-focus is
equivalent to :active.
2017-03-31 09:50:39 +02:00
Timm Bäder
ebdbb6873a
window: Remove check_resize special case for embedded toplevels
...
Those don't exist anymore.
2017-03-31 09:50:39 +02:00
Timm Bäder
49bbf67195
window: Remove gtk_quark_embedded
...
Unused.
2017-03-31 09:50:39 +02:00
Timm Bäder
0d0cb6e192
widget: Emit ::focus regardless of container-ness and can-focus
2017-03-31 09:50:39 +02:00
Timm Bäder
885bcd9fe4
container: Remove focus_child pointer
...
Use GtkWidget's instead.
2017-03-31 09:50:39 +02:00
Timm Bäder
64544968e9
widget: Also reset focus on non-container widgets
2017-03-31 09:50:39 +02:00
Timm Bäder
6353433f0e
Make gtk_container_set_focus_child private
2017-03-31 09:50:39 +02:00
Timm Bäder
0d480a3eb0
Remove gtk_container_get_focus_child
2017-03-31 09:50:39 +02:00
Timm Bäder
43cdeee3c4
widget: Save pointer to focus child
...
Do the same thing GtkContainer does.
2017-03-31 09:50:39 +02:00
Timm Bäder
2bab2048f9
cssimageicontheme: Cache size + texture
2017-03-31 09:50:39 +02:00
Timm Bäder
d8f78d3a32
glrenderer: Reuse the GArray for render items
2017-03-31 09:50:39 +02:00
Timm Bäder
67e7f44654
glrenderer: Add render items for child nodes
2017-03-31 09:50:39 +02:00
Timm Bäder
fbada8e758
glrenderer: Handle color nodes
2017-03-31 09:50:39 +02:00
Timm Bäder
a33e90a029
glrenderer: Store uniform locations per program
2017-03-31 09:50:39 +02:00
Timm Bäder
8f2d0bc5a3
widget: Fix checks in gtk_widget_snapshot()
...
If the widget isn't drawable anyway, just return;
If the widget needs an allocate, print a warning, since it indicates a
problem in the widget workflow (e.g. forgot to size_allocate a child
widget).
This maches the previous checks in gtk_widget_draw (with the same
problems).
2017-03-31 09:50:39 +02:00
Timm Bäder
aa9da1fe1f
filechooserbutton: Hide the combobox by default
2017-03-31 09:50:39 +02:00
Timm Bäder
0fa2fee01a
recentchooserwidget: Inherit from GtkWidget
2017-03-31 09:50:39 +02:00
Timm Bäder
cf80a03f91
appchooserwidget: Inherit from GtkWidget
2017-03-31 09:50:39 +02:00
Timm Bäder
fc22543b41
fontchooserwidget: Inherit from GtkWidget
2017-03-31 09:50:39 +02:00
Timm Bäder
11c599a1b5
fontchooserwidget: Remove unused defines
2017-03-31 09:50:39 +02:00
Timm Bäder
806c4f7d2f
filechooserwidget: Inherit from GtkWidget
2017-03-31 09:50:38 +02:00
Timm Bäder
3c0da77849
Remove the Raleigh theme
...
It's been broken for ages.
2017-03-31 09:50:38 +02:00
Timm Bäder
653b766e30
widget: Add a GtkBuildable::add_child implementation
...
Just call gtk_widget_set_parent in there.
2017-03-31 09:50:38 +02:00
Timm Bäder
cc5696b710
progressbar: Remove unused defines
2017-03-31 09:50:38 +02:00
Ernestas Kulik
fe1e53ad87
flowbox: don’t select when rubberbanding over nothing
...
When rubberbanding over an empty area, everything is selected on gesture
end, which is a bit counter-intuitive.
https://bugzilla.gnome.org/show_bug.cgi?id=780735
2017-03-31 07:24:15 +03:00
Christoph Reiter
1202082b9d
osx: fix build
...
https://bugzilla.gnome.org/show_bug.cgi?id=734946
2017-03-30 09:54:38 -04:00
Olivier Fourdan
19ce6a8bc5
gdkwindow: subsurface in gdk_window_get_parent()
...
When the GtkWidget hierarchy does not match the GdkWindow hierarchy, the
GtkWidget code may find a common ancestor that cannot be found while
traversing the GdkWindow tree using gdk_window_get_parent().
This happens with for example on Wayland, a GtkPopover has another
GtkPopover as parent, in this case, the GdkWindow parent is the root
window, whereas the GtkWidget parent is the other GtkPopover.
That confuses the gtk_widget_translate_coordinates() logic which will
bail out in this case and won't return the translated coordinates.
Make gdk_window_get_effective_parent() aware of subsurfaces and use the
transient_for which represents the actual parent (whereas the parent
might be pointing to the root window).
Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=774148
2017-03-30 15:46:25 +02:00
Matthias Clasen
2761fae728
Work around a wayland crash
...
For some reason, we are seeing damage being NULL here.
While that should never be the case, crashing on it is
unkind and makes the Wayland experience unusable.
2017-03-30 09:15:29 -04:00
Matthias Clasen
e70380a4dd
Document GTK_INSPECTOR_RENDERER
...
Also add GTK_INSPECTOR_DISPLAY to the docs at the same time.
2017-03-30 09:15:22 -04:00
Christoph Reiter
e4b0bedb5d
gtk_widget_intersect: fix annotations
...
https://bugzilla.gnome.org/show_bug.cgi?id=773228
2017-03-30 11:19:32 +02:00
Daniel Boles
d33878c5fe
gskrendernodeimpl: Fix documentation argument type
2017-03-27 22:16:56 +01:00
Daniel Boles
3d11edf1bc
GSK: Fix a bunch of warnings from the GIR scanner
...
arising from conflicting argument names, missing annotations, etc.
2017-03-27 20:22:07 +01:00
Daniel Boles
b00b7c3b0e
TextView: Be const-correct when passing a pointer
...
The TextIter is passed by pointer for efficiency. We neither need to
modify it, nor should we leave it possible to accidentally do so. So,
it should be passed as a pointer-to-const.
2017-03-27 19:14:38 +01:00
Daniel Boles
c78f6c804e
TextView: Get line direction in more efficient way
...
We do not need to go through the heavyweight process of constructing a
TextLineDisplay just to get the direction out of it, when we can simply
use TextIter API to get the text and then get its direction using Pango.
Adapted from a patch by Mehdi Sadeghi for GtkSourceView:
https://bugzilla.gnome.org/show_bug.cgi?id=779081#c20
2017-03-26 16:14:10 +01:00
Daniel Boles
7be01e84c4
TextBuffer: Add missing transfer full annotations
2017-03-26 16:14:10 +01:00
Piotr Drąg
adf4fa5d3f
Update Polish translation
2017-03-25 23:17:18 +01:00
Kjell Ahlstedt
876e99df36
printjob: Clarify array ownership in gtk_print_job_set_page_ranges()
...
Add a documentation annotation saying that set_page_ranges transfers
ownership of the GtkPageRange array.
Add a g_free() call to fix a memory leak when set_page_ranges is
used repeatedly.
https://bugzilla.gnome.org/show_bug.cgi?id=780234
2017-03-24 16:41:47 +01:00
Matthias Clasen
147e0512c5
Avoid more compiler warnings
2017-03-23 16:15:26 +00:00
Matthias Clasen
6963d9e2ee
Avoid unused variable warnings
2017-03-23 16:15:00 +00:00
Matthias Clasen
e171f4930b
Avoid redefining GNU_SOURCE
...
Gives a compiler warning with the wrong flags.
2017-03-23 15:15:12 +00:00