Timm Bäder
f65af48d51
button: Fix icon-name implementation
2016-10-20 20:12:05 +02:00
Timm Bäder
f989281b38
button: Remove grab_time
...
Unused.
2016-10-20 20:12:05 +02:00
Timm Bäder
0f6235752e
container: Remove composite_name
2016-10-20 20:12:05 +02:00
Timm Bäder
00e7c69044
frame: Remove unused constants
2016-10-20 20:12:05 +02:00
Timm Bäder
de65f87816
container: Remove reallocate_redraws
2016-10-20 20:12:05 +02:00
Timm Bäder
18f0b80e2e
widget: Remove in_reparent flag
...
gtk_widget_reparent is gone so we don't need this anymore.
2016-10-20 20:12:05 +02:00
Timm Bäder
6150ce4484
menuitem: Stop looking at nonexistant child properties
2016-10-20 20:12:05 +02:00
Timm Bäder
2e32655ccd
checkbutton: Remove unused constants
2016-10-20 20:12:05 +02:00
Timm Bäder
2437e97da1
builder: Stop parsing GdkColor values
2016-10-20 20:12:04 +02:00
Timm Bäder
8dd549850c
shortcutswindow: Remove unneeded deprecation guards
...
Leftovers from when it was still using a GtkArrow
2016-10-20 17:09:47 +02:00
Timm Bäder
e772c2b622
container: Don't queue resize on non-toplevel widgets
2016-10-20 17:09:06 +02:00
Lapo Calamandrei
24cb9d4ba6
Adwaita: make circular button border looking nice
...
the darker bottom border used on buttons looks bad on circular ones
so now a gradient clipped on the border-box and a transparent
border is used in that partcular case.
See https://bugzilla.gnome.org/show_bug.cgi?id=771205 for details.
2016-10-19 16:07:52 +02:00
Lapo Calamandrei
1f8b146410
Adwaita: sass, make button mixin export a global $button_fill var
...
$button_fill contains the background-image property value of
buttons, having it readable outside the drawing mixin allows, for
example, stacking background images in an easier way.
2016-10-19 16:07:34 +02:00
Lapo Calamandrei
a1b7f36afa
Adwaita: sass cleanup
...
aggregate circular button style to the main button structure.
2016-10-19 16:07:12 +02:00
Emmanuele Bassi
a9bcd05a14
icontheme: Simplify lookup_size()
...
No need to use an internal function, and no need to store the icon size
id, since we're using the id as the offset.
2016-10-19 14:04:00 +01:00
Chun-wei Fan
8b8f378050
Visual Studio builds: Update from [gdk|gtk]-3 to [gdk|gtk]-4
...
This updates all the projects files to be be named appropriately as we move from GTK-3.x to 4.x,
and updates the autotools files so that things are distributed and generated properly.
Also remove deprecated/gtkstatusicon-quartz.c from gtk/Makefile.am, as that was causing 'make dist'
to fail as that file has been removed.
This fixes 'make dist' with the updated existing project files in proper order.
Note that this does not include the new GSK, which will be added later, so the project files do
not yet build the whole stack on Visual Studio at this point.
2016-10-19 18:39:36 +08:00
Emmanuele Bassi
976a4f6b12
build: Fix variable name for gtk4-update-icon-cache target
2016-10-18 15:51:05 +01:00
Matthias Clasen
46187f8a22
Rename all binaries to be versioned
...
This is just easier to avoid parallel installation problems.
2016-10-18 10:27:45 -04:00
Matthias Clasen
e4e6cb87b2
Rename gtk-query-immodules to follow our binary naming scheme
...
Instead of gtk-query-immodules-4.0, lets call it gtk4-query-immodules,
to use the same prefix as all the other versioned binaries.
2016-10-18 09:59:42 -04:00
Emmanuele Bassi
dace0791a9
gsk: Add the ability to create fallback renderers
...
While porting GTK to GskRenderer we noticed that the current fallback
code for widgets using Cairo to draw is not enough to cover all the
possible cases.
For instance, if a container widget still uses GtkWidget::draw to render
its children, and at least one of them has been ported to using render
nodes instead, the container won't know how to draw it.
For this reason we want to provide to layers above GSK the ability to
create a "fallback" renderer instance, created using a "parent"
GskRenderer instance, but using a Cairo context as the rendering target
instead of a GdkDrawingContext.
GTK will use this inside the gtk_widget_draw() implementation, if a
widget implements GtkWidgetClass.get_render_node().
2016-10-18 11:49:16 +01:00
Matthias Clasen
c5a2ae2f95
Convert GtkSpinner to indirect rendering
2016-10-18 11:49:15 +01:00
Matthias Clasen
8f5db4bc32
Convert GtkImage to indirect rendering
2016-10-18 11:49:15 +01:00
Matthias Clasen
bed5e6fb16
Convert GtkAccelLabel to indirect rendering
2016-10-18 11:49:15 +01:00
Matthias Clasen
be0de54237
Convert GtkLabel to indirect rendering
...
Warning! This breaks GtkAccelLabel. It will be fixed in the next
commit.
2016-10-18 11:49:15 +01:00
Matthias Clasen
f101ef7cd1
Convert GtkFlowBox to indirect rendering
2016-10-18 11:49:15 +01:00
Matthias Clasen
58b38d59c5
container: Prepare to prune render nodes
...
Add a should_propagate function for render nodes. Eventually,
this is meant to avoid creating render nodes for child widgets
that are outside the parents clip area. Since we don't have
that information available right now, just filter out nondrawable
children for now.
2016-10-18 11:49:15 +01:00
Matthias Clasen
39c1aa5e27
Split css background into individual render nodes
...
Use separate render nodes for each layer in a multi-image
background. WARNING: blend modes don't work right yet.
2016-10-18 11:49:15 +01:00
Matthias Clasen
b660361fb7
Don't create render nodes for empty backgrounds
2016-10-18 11:49:14 +01:00
Matthias Clasen
cffb8ae4b5
Break out the css background render node in a function
...
This is in preparation for creating separate render nodes
for individual backgrounds.
2016-10-18 11:49:14 +01:00
Matthias Clasen
f74dd416d6
Make outer shadows work again
...
Change get_render_node to return nodes that are sized to the clip
area and expect to be placed at the clip position; change
gtk_container_propagate_render_node to place child render nodes
accordingly, and change gtk_css_gadget_get_render_node to return
nodes that are sized accordingly as well.
2016-10-18 11:49:14 +01:00
Emmanuele Bassi
f764d03cfd
gsk: Remove :use-alpha from GskRenderer
...
It's unused, and we always assume we render with an alpha channel
enabled because it's 2016.
2016-10-18 11:49:14 +01:00
Emmanuele Bassi
ce67336577
gsk: Drop modelview/projection from GskRenderer API
...
The details of the modelview and projection matrices are only useful for
the GL renderer; there's really no point in having those details
available in the generic API — especially as the Cairo fallback renderer
cannot really set up a complex modelview or a projection matrix.
2016-10-18 11:49:14 +01:00
Emmanuele Bassi
23a009a408
gtk: Sort children by window depth when rendering
...
This makes popovers pop over instead of under.
2016-10-18 11:49:14 +01:00
Emmanuele Bassi
b2f5a69742
gtk: Add a box render node for gadgets
...
Instead of using the background as the gadget's node, we add a
non-drawing node that can be used to apply offsets; all other nodes are
children of the "box" node.
2016-10-18 11:49:13 +01:00
Matthias Clasen
fd4a1cdad6
Covert GtkOverlay to indirect rendering
...
There is no gadget, so we use the gtk_widget_create_render_node
function for the first time here.
2016-10-18 11:49:13 +01:00
Matthias Clasen
579b43b8e8
Convert GtkComboBox to indirect rendering
...
The removal of the draw method in GtkComboBox reveals another
instance of parent-child invariant violation in GtkComboBoxText.
2016-10-18 11:49:13 +01:00
Matthias Clasen
b8acd23a86
GtkButtonBox: Convert to indirect rendering
2016-10-18 11:49:13 +01:00
Matthias Clasen
ea549a3ce4
GtkListBox: Convert to indirect rendering
...
Note that there is a problem with the pixel cache that causes
listboxes to come out black when in a scrolled window.
2016-10-18 11:49:13 +01:00
Matthias Clasen
1046262048
gadget: Fix handling of custom content
...
The transformations here were wrong, causing content to go nowhere.
This patch fixes check and radio buttons to appear as expected.
2016-10-18 11:49:13 +01:00
Matthias Clasen
6a1edb0960
GtkCheckButton: Convert to indirect rendering
...
This is another example of indirect rendering with a box gadget.
There is currently still some positioning problem with the
checkmark.
2016-10-18 11:49:13 +01:00
Matthias Clasen
f68eaae581
Prevent box gadget content from being drawn twice
...
Now that we split out box gadget children into separate
render nodes, we must not draw them onto the box gadgets
node anymore.
2016-10-18 11:49:12 +01:00
Matthias Clasen
ac52abcedc
GtkExpander: Convert to indirect rendering
...
This is the first example of indirect rendering involving
a box gadget. For now, we iterate the child gadgets manually,
and rely on gtk_container_propagate_render_node for the
child widgets. Eventually, we may want a better solution
here.
2016-10-18 11:49:12 +01:00
Matthias Clasen
62eb900b83
gadget: Add a has_content vfunc
...
...and implement it for GtkCssGadget and GtkCssCustomGadget.
This allows us to decide on a per-object basis if a custom
gadget needs a render node for content or not.
2016-10-18 11:49:12 +01:00
Matthias Clasen
9d06ee637b
button: Restore focus
...
The custom gadget draw function has the side effect of informing
the gadget machinery wether to draw focus or not. Bring the
draw function back, just for its boolean return value. We may
want to find a better solution for this.
2016-10-18 11:49:12 +01:00
Matthias Clasen
02187371a2
Add details to css render nodes
...
Give all nodes the same detail about the owner widget.
This reveals that every GtkCssCustomGadget gets a
DrawGadgetContents node, even if their draw_func is NULL.
We may want to come up with a better solution for that.
2016-10-18 11:49:12 +01:00
Matthias Clasen
b371b5da42
Drop an unused variable
2016-10-18 11:49:12 +01:00
Emmanuele Bassi
9fe18f6561
gtk: Clean up render fallback node creation in GtkWidget
2016-10-18 11:49:12 +01:00
Emmanuele Bassi
e58965a3cc
gtk: Port GtkHeaderBar to render nodes
2016-10-18 11:49:12 +01:00
Emmanuele Bassi
2e0d3ef866
gtk: Port GtkActionBar to render nodes
2016-10-18 11:49:12 +01:00
Emmanuele Bassi
abe19f1826
gtk: Attempt at handling CSS coordinates
...
When creating the GskRenderNodes for the gadgets we should not translate
the coordinates inside the Cairo context, but we should tweak the
coordinates of the anchor point.
This is still not enough to get an appropriate rendering, as the result
is still slightly offset to the left.
2016-10-18 11:49:12 +01:00
Matthias Clasen
a0b2b3745f
GtkFrame: Convert to indirect rendering
...
Create a GskRenderNode for the contents of the frame.
2016-10-18 11:49:11 +01:00
Emmanuele Bassi
354d4435b1
gtk: Add convenience function for creating render nodes
...
GtkWidget.create_render_node() sets up a GskRenderNode appropriate for
rendering the contents of a widget, including its bounds,
transformation, and anchor point.
2016-10-18 11:49:11 +01:00
Emmanuele Bassi
a146618de0
gsk: Rename set_offset() to set_anchor_point()
...
The naming is consistent with other scene graph libraries, as it
represents an additional translation transformation applied on top of
the provided transformation matrices.
We can also simplify the implementation by applying the translation when
we compute the world matrix.
2016-10-18 11:49:11 +01:00
Matthias Clasen
e7c7932d72
Fix fallback render nodes
...
We were allocating a surface thats big enough for the clip, and
we were setting the transform for that, but then GtkContainer
was overriding the transform with the one for the allocation.
Also, we were drawing at the clip position, not the allocation
position.
2016-10-18 11:49:11 +01:00
Matthias Clasen
1d5e05b0d1
button: Convert to indirect rendering
...
WARNING! This commit breaks GtkButton subclasses.
2016-10-18 11:49:11 +01:00
Matthias Clasen
72ccb39f66
Convert GtkGrid to indirect rendering
...
Following the example of GtkBox.
2016-10-18 11:49:11 +01:00
Emmanuele Bassi
137ff8ede7
box: Port from immediate to deferred rendering
...
Drop the ::draw() vfunc implementation in favour of the
::get_render_node() vfunc.
2016-10-18 11:49:10 +01:00
Emmanuele Bassi
e5dace2d51
Integrate CSS gadget with GSK render nodes
...
First stab at an internal API that generates render nodes when drawing a
CSS gadget.
2016-10-18 11:49:10 +01:00
Emmanuele Bassi
bfad9fe4ee
gtk: Update the coordinates when propagating render nodes
...
Just like gtk_container_propagate_draw() does for the immediate mode
rendering.
2016-10-18 11:49:10 +01:00
Emmanuele Bassi
1ab1fd4391
Use the projection to flip around the content
...
Since we use an FBO to render the contents of the render node tree, the
coordinate space is going to be flipped in GL. We can undo the flip by
using an appropriate projection matrix, instead of changing the sampling
coordinates in the shaders and updating all our coordinates at render
time.
2016-10-18 11:49:10 +01:00
Emmanuele Bassi
6c92846936
widget: Fix compatibility fallbacks
2016-10-18 11:49:10 +01:00
Emmanuele Bassi
3d90a070d5
gsk: Tie render nodes to renderers
...
Render nodes need access to rendering information like scaling factors.
If we keep render nodes separate from renderers until we submit a nodes
tree for rendering we're going to have to duplicate all that information
in a way that makes the API more complicated and fuzzier on its
semantics.
By having GskRenderer create GskRenderNode instances we can tie nodes
and renderers together; since higher layers will also have access to
the renderer instance, this does not add any burden to callers.
Additionally, if memory measurements indicate that we are spending too
much time in the allocation of new render nodes, we can now easily
implement a free-list or a renderer-specific allocator without breaking
the API.
2016-10-18 11:49:10 +01:00
Emmanuele Bassi
f0c04cdd09
gtk: Port GtkWindow to render nodes
...
WARNING: BROKEN COMMIT
2016-10-18 11:49:09 +01:00
Emmanuele Bassi
cd0de3f87c
gtk: Add GtkContainer API to gather render nodes
...
We cannot implement GtkWidgetClass.get_render_node() in GtkContainer
without breaking the fallback path that renders a widget to a single
render node rasterization. For GtkContainer subclasses we should provide
a simple API, similar to gtk_container_propagate_draw(), that gathers
all the render nodes for each child.
2016-10-18 11:49:09 +01:00
Emmanuele Bassi
43904892bc
gtk: Name GSK render nodes
...
For debugging purposes it's helpful to name the nodes.
2016-10-18 11:49:09 +01:00
Emmanuele Bassi
dc3b240c20
Ensure that render nodes are translated
...
The clip rectangle may have non-zero offsets, so we need to ensure that
the GskRenderNode associated to the rendered area is translated by those
same offsets.
2016-10-18 11:49:08 +01:00
Emmanuele Bassi
b997f4c575
gtk: Use GskRenderNode to render widgets
...
We need a virtual function to retrieve the GskRenderNode for each
widget, which is supposed to attach its own children's GskRenderNodes.
Additionally, we want to maintain the existing GtkWidget::draw mechanism
for widgets that do not implement get_render_node() — as well as widgets
that have handlers connected to the ::draw signal.
2016-10-18 11:49:06 +01:00
Emmanuele Bassi
258af60c18
gtk: Add a GskRenderer to GtkWindow
...
Each top-level should have its own GskRenderer, to be used when drawing
the render node tree.
2016-10-18 11:49:06 +01:00
Emmanuele Bassi
0e2a87a4bc
build: Add GSK deps to GTK
2016-10-18 11:29:34 +01:00
Emmanuele Bassi
3fb413beea
label: Avoid shadowing variables
2016-10-18 11:29:34 +01:00
Timm Bäder
4384628afb
Remove GtkAction
2016-10-18 00:34:41 +02:00
Timm Bäder
ead36206a3
Remove GtkActionGroup
2016-10-18 00:34:41 +02:00
Timm Bäder
a864f4d474
widget: Not all toplevels are also containers
2016-10-18 00:34:41 +02:00
Timm Bäder
f7d22fec7b
Remove GtkRecentAction
2016-10-18 00:34:41 +02:00
Timm Bäder
d963ede668
Remove GtkUIManager
2016-10-18 00:34:41 +02:00
Timm Bäder
62b2949fa2
Remove GtkActivatable
2016-10-18 00:34:41 +02:00
Timm Bäder
a8a2588cab
recentchooser: Stop implementing GtkActivatable
2016-10-18 00:34:41 +02:00
Timm Bäder
d0c087be37
recentchooserdefault: Stop implementing GtkActivatable
2016-10-18 00:34:40 +02:00
Timm Bäder
0c7d091651
toolitem: Stop implementing GtkActivatable
2016-10-18 00:34:40 +02:00
Timm Bäder
41f5d3b14c
Remove GtkToggleAction
2016-10-18 00:34:40 +02:00
Timm Bäder
53ab8eb46d
Remove GtkRadioAction
2016-10-18 00:34:40 +02:00
Timm Bäder
bc7206d70f
Remove GtkStock
2016-10-18 00:29:20 +02:00
Timm Bäder
cf56decbb4
infobar: Stop looking at stock items
...
GtkButton doesn't have a use-stock property anymore anyway.
2016-10-18 00:29:20 +02:00
Timm Bäder
301e1a4d55
window: Remove decoration-button-layout style property
...
GtkSettings has a gtk-decoration-layout property for this.
2016-10-18 00:29:20 +02:00
Timm Bäder
7823406db4
window: Remove decoration-resize-handle style property
2016-10-18 00:29:20 +02:00
Timm Bäder
4bf1e4ebe6
toolbar: Remove max-child-expand child property
2016-10-18 00:29:20 +02:00
Timm Bäder
dece018994
Remove GtkAlignment
2016-10-18 00:29:19 +02:00
Timm Bäder
e0d50233f6
gtkapplication: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
700300eb81
treeview: Remove deprecated adjustment API
2016-10-18 00:29:19 +02:00
Timm Bäder
d5e3897052
combobox: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
3ad624d6c0
adjustment: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
b65908da3e
menutoolbutton: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
3573cdc0cd
popover: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
d9a3afb059
range: Remove unused class struct members
2016-10-18 00:29:19 +02:00
Timm Bäder
2a07ee2dac
filechooserbutton: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
1b2f291c1d
messagedialog: Remove deprecated API
2016-10-18 00:29:19 +02:00
Timm Bäder
be2f19663b
button: Add icon-name property
...
Remove the old-style button construction that allowed to show both an
icon and a label and change visibility based on a GtkSetting.
2016-10-18 00:29:19 +02:00
Timm Bäder
e9a974f4f6
buttonaccessible: Stop looking at the button's image
2016-10-18 00:29:19 +02:00
Timm Bäder
24866c5d12
radiomenuitem: Remove GtkActivatable code
2016-10-18 00:29:18 +02:00
Timm Bäder
efe4a36746
toolbutton: Stop implementing GtkActivatable
2016-10-18 00:29:18 +02:00
Timm Bäder
dd03372eac
switch: Stop implementing GtkActivatable
2016-10-18 00:29:18 +02:00
Timm Bäder
8cafd3c5a7
menuitem: Stop implementing GtkActivatable
2016-10-18 00:29:18 +02:00
Timm Bäder
d844abe066
Remove GtkTable
2016-10-18 00:29:18 +02:00
Timm Bäder
b082fb598d
gtkwindow: Stop checking gtk-menu-bar-accel
2016-10-18 00:29:18 +02:00
Timm Bäder
7e16396cc5
button: Stop implementing GtkActivatable
2016-10-18 00:29:18 +02:00
Timm Bäder
05211d200f
button: Stop checking for GtkSettings:gtk-button-images setting
2016-10-18 00:29:18 +02:00
Timm Bäder
a9367b705e
Stop checking GtkSettings:gtk-enable-mnemonics
2016-10-18 00:29:18 +02:00
Timm Bäder
dd3c3b683f
widget: Remove push/pop_composite_child
...
as well as the composite-child property
2016-10-18 00:29:18 +02:00
Timm Bäder
2ae996e242
widget: Remove gtk_widget_get_pointer
2016-10-18 00:29:18 +02:00
Timm Bäder
5da7a824ff
widget: Remove docs for style-set
2016-10-18 00:29:18 +02:00
Timm Bäder
a4368a73a5
widget: Remove gtk_widget_reparent
2016-10-18 00:29:17 +02:00
Timm Bäder
296db5ab52
scrollbar: Remove style property
2016-10-18 00:29:17 +02:00
Timm Bäder
0a6ed12d56
builtinicon: remove unused struct member
2016-10-18 00:29:17 +02:00
Timm Bäder
ac72d96a8a
menuitem: Remove right-justify
2016-10-18 00:29:17 +02:00
Timm Bäder
203cf0d120
label: Stop using GdkColor
2016-10-18 00:29:17 +02:00
Timm Bäder
57f4fead98
cellrenderer: Remove cell-background-gdk
2016-10-18 00:29:17 +02:00
Timm Bäder
31cf2e3bf5
gtksettings: Remove Deprecated API
2016-10-18 00:29:17 +02:00
Timm Bäder
77f50ec5d7
window: Remove reshow_with_initial_size
2016-10-18 00:29:17 +02:00
Timm Bäder
019960f131
viewport: remove deprecated api
2016-10-18 00:29:17 +02:00
Timm Bäder
09214e4974
gtkdnd: Remove gtk_drag_begin
2016-10-18 00:29:17 +02:00
Timm Bäder
feb8975a4b
gtkmain: Remove deprecated key snooper API
2016-10-18 00:29:17 +02:00
Timm Bäder
7b22037613
treeview: Remove unused style properties
2016-10-18 00:29:16 +02:00
Timm Bäder
7d47d8023e
bbox: Remove style properties
2016-10-18 00:29:16 +02:00
Timm Bäder
84649f57c5
gtkdialog: Remove style properties
2016-10-18 00:29:16 +02:00
Timm Bäder
99f112f58d
colorbutton: Remove deprecated API
2016-10-18 00:29:16 +02:00
Timm Bäder
7d84f744c2
menu: Remove vertical/horizontal-offset style properties
2016-10-18 00:29:16 +02:00
Timm Bäder
b88a0bb682
notebook: Remove deprecated public API
2016-10-18 00:29:16 +02:00
Timm Bäder
4f9bcaf3c6
toolbar: Remove button-relief style property
...
And in turn also public API to set the button relief on the toolbar as
well as the vfunc from GtkToolShell.
2016-10-18 00:29:16 +02:00
Timm Bäder
d56962740d
textview: Remove error-underline-color style property
2016-10-18 00:29:16 +02:00
Timm Bäder
33a857decf
toolbutton: Remove icon-spacing style property
2016-10-18 00:29:16 +02:00
Benjamin Otte
cd90b56627
separatortoolitem: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
4ab85723c8
spinbutton: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
cd8b08f98f
switch: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
e5b67ff7d8
pathbar: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
978684cf29
paned: Use gdk_window_new_child() and gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
c78568b4dd
notebook: Use gdk_window_new_child() and gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
c599f6b9cb
menu: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
5d3f6367cb
layout: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
3fc32511b5
iconview: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
9127e49f45
toolitemgroup: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
ac79aed338
toolitem: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
5e8c719e34
toolbar: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
6a399ebd15
popover: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
a839e195a8
menushell: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
360301a774
label: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
6117f042a8
menuitem: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
c3274eff6e
overlay: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
f8a48507a6
listbox: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
1c6a879e1c
flowbox: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
a2a23ee337
fixed: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
e54a76aee7
scrolledwindow: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
73ef9e1438
revealer: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
edc9a08b7c
stack: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
210e1665de
textview: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
3cf7b21256
viewport: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
d6eedf19dc
toolpalette: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
7dceaf5931
glarea: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
46b10ca419
expander: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
a8d7b0d32e
window: Use gdk_window_new_child() and gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
8417ecd602
treeviewcolumn: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
b17bdbdf97
treeview: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
1952b57328
eventbox: Use gdk_window_new_input() and gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
c61e669e56
entry: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
9d2309cc39
drawingarea: Use gdk_window_new_child()
2016-10-18 00:22:35 +02:00
Benjamin Otte
0f2d983ea9
colorswatch: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
4b92c0bb88
calendar: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Benjamin Otte
31b5ba5bad
button: Use gdk_window_new_input()
2016-10-18 00:22:35 +02:00
Timm Bäder
6b01940194
colorscale: Avoid invalid write
2016-10-17 18:47:16 +02:00
Benjamin Otte
4322b69528
cssprovider: Return void, not TRUE
...
Parsing a css file always succeeds as CSS can recover from parsing
errors.
2016-10-17 17:41:03 +02:00
Benjamin Otte
dbeeaf7de6
cssprovider: Remove GError out argument from load functions
...
People should use the GtkCssProvider::parsing-error signal instead.
2016-10-17 16:52:05 +02:00
Ben Iofel
55e599c561
textbufferserialize: declare set_error as G_GNUC_PRINTF
...
And fix a missing format argument
2016-10-17 10:36:26 -04:00
Ben Iofel
84739239ce
colorscale: modify loop variables in loop body
2016-10-17 15:17:28 +01:00
Garrett Regier
7173df1dd1
gtk+: Fix GI warnings about missing parameters
...
These were removed for GTK+ 4.
2016-10-17 07:07:20 -07:00
Emmanuele Bassi
2332ac444c
gtk/utils: Include stdio.h
...
We need it because of the declaration using FILE*.
2016-10-17 14:51:16 +01:00
Ignacio Casal Quinteiro
a12b691b76
gtkicontheme: check if the context quark string is not null
...
On windows you might not have a theme installed by default which
means that when trying to create the context quark it will fail.
If then we try to replace a NULL key in the hash table it will crash.
https://bugzilla.gnome.org/show_bug.cgi?id=769859
2016-10-17 13:04:31 +02:00
Emmanuele Bassi
857d241e22
Remove redundant variable declaration
...
The inner `var` declaration is shadowing the outer one.
2016-10-17 11:52:00 +01:00
Emmanuele Bassi
20b2e479f8
build: Add various compiler warnings and errors
...
Just like GLib, GTK+ would benefit from getting warnings and errors from
the compilers.
We check various, common warnings, especially for a future use of C99;
additionally, we promote some warnings to errors, in order to ensure
that simple mistakes are caught during the development phase, before
they are submitted to the code repository.
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
6a9be60a16
notebook: Remove redundant variable declarations
...
We're already declaring notebook and priv at the top of the function,
and assigning them to the same values.
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
39e848c0eb
icontheme: Drop unnecessary allocation
...
Use a static array for the known icon sizes, now that we don't allow
registering custom icon sizes any more. This allows us to cut a one-off
allocation that makes Valgrind sad.
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
5563ba96bc
Avoid variable shadowing in GtkShortcutsSection
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
fc9826fb41
Remove declarations for getresuid()/getresgid()
...
Back in 2001, their prototypes were missing from system headers, but
since glibc 2.3.2 they are defined in unistd.h if _GNU_SOURCE is
defined.
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
db6f9a8e45
gtk: Add missing function declarations
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
b3adbbe5e7
text: Constify field of GtkTextLineSegmentClass
...
We only use it internally for statically allocated structures, with
static strings, so there's no reason for it to be a `char*`.
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
1f132607f7
gtk: Use appropriate constness for variables
2016-10-17 11:44:11 +01:00
Emmanuele Bassi
590e7e68d8
filechooserwidget: Rename error variable
...
Avoid shadowing an existing error.
2016-10-17 11:44:10 +01:00
Emmanuele Bassi
e75bbafeac
filechooserbutton: Remove unnecessary declaration
2016-10-17 11:44:10 +01:00
Emmanuele Bassi
9557364216
gtk: Mark internal functions as static
...
These functions are only used within their compilation unit.
2016-10-17 11:44:10 +01:00
Emmanuele Bassi
fbf6aa1776
colorscale: Rename variables
...
Avoid shadowing existing variables.
2016-10-17 11:44:10 +01:00
Emmanuele Bassi
4ba169b82e
cellview: Constify argument
2016-10-17 11:44:10 +01:00
Emmanuele Bassi
5880d1b990
gtk: Cast static strings assigned to non-const variables
...
GtkTargetEntry.target is particularly egregious, and it should really be
constified.
2016-10-17 11:44:10 +01:00
Emmanuele Bassi
9bb816f8ee
gtk: Include the appropriate headers
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
3fdbe2ea13
widget: Make gtk_widget_get_parent_muxer() as static
...
It's a private function, used only inside gtkwidget.c and not declared
in any private header.
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
24d59f6c34
inspector: Mark internal function as static
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
44885bcfed
Remove redundant declarations
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
175800f345
Add private header for GtkTextView
...
This allows us to declare the symbols that are currently used inside
gtktextdisplay.c without incurring in the wrath of the compiler.
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
8b9153d109
Remove redundant declarations
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
5e388fc3e4
Fix _gtk_get_slowdown()
...
We need to pass void as the argument type.
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
1db5d7fd8d
Remove redundant declarations
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
81e5996c91
Include the appropriate headers
...
The GtkStackAccessible implementation should include the private header,
and the private header should include the public one.
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
d8892c0fdb
Remove redundant declarations
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
137e1aa988
Use appropriate const declaration for static strings
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
a87bdc47c7
stylecontext: Remove gtk_gradient_resolve_for_context()
...
Just like we remove gtk_gradient_resolve().
2016-10-17 11:10:13 +01:00
Emmanuele Bassi
dae97c3027
textview: Remove commented block
...
It's referencing gdk_cairo_create(), which does not exist any more.
2016-10-17 10:44:27 +01:00
Benjamin Otte
e76ba9a3c3
gdk: Remove gdk_window_set_debug_updates()
...
The update tracking code was ugly and using deprecated drawing APIs. It
was also in the wrong place.
So instead of trying to keep it working, I'll remove it. We need to find
a better way to put it and make it work there.
2016-10-16 18:18:58 +02:00
Benjamin Otte
4a95f8802c
widget: Remove gtk_widget_set_double_buffered()
...
Everything is always double-buffered.
2016-10-16 18:18:58 +02:00
Benjamin Otte
36b7ad0cd2
shortcutswindow: Modernize some code
...
No functional changes, just don't call valist functions anymore.
2016-10-16 18:18:58 +02:00
Benjamin Otte
6c7b6f9654
menu: Modernize code
...
No functional changes, just don't call valist functions anymore.
2016-10-16 18:18:58 +02:00
Benjamin Otte
cda617df4d
API: sizegroup: Remove gtk_size_group_set_ignore_hidden()
2016-10-16 18:18:58 +02:00
Benjamin Otte
1d4f23da8e
API: container: Remove GtkContainer::child property
2016-10-16 18:18:58 +02:00
Benjamin Otte
d4d3374729
container: Remove gtk_container_set_resize_mode()
2016-10-16 18:18:58 +02:00
Benjamin Otte
4df6ddad54
API: container: Remove gtk_container_set_border_width()
2016-10-16 18:18:58 +02:00
Benjamin Otte
1518fe0a8f
API: stylecontext: Remove state argument from getters
...
The argument must always be the current state.
2016-10-16 18:18:58 +02:00
Benjamin Otte
9b9b475f0a
API: stylecontext: Remove regions
2016-10-16 18:17:21 +02:00
Benjamin Otte
95d2f0b831
css: Remove custom properties
...
Those aren't used anymore, now that theming engines are gone.
2016-10-16 18:17:21 +02:00
Benjamin Otte
1a5b842682
API: Remove GtkStyleProperties
2016-10-16 18:17:21 +02:00
Benjamin Otte
dd83f9ca86
API: Remove API to set CSS properties from GValues
...
This API was only used in GtkModifierStyle and GtkStyleProperties and
they are both on their way out.
CSS properties must now be set using strings via the regular parser API.
2016-10-16 18:17:21 +02:00
Benjamin Otte
66dd954290
API: stylecontext: Remove old unused animation functions
2016-10-16 18:17:21 +02:00
Timm Bäder
f2c455fedb
Remove GtkThemingEngine
...
As well as the corresponding GtkCssEngineValue used to parse it in css.
2016-10-16 18:17:21 +02:00
Timm Bäder
9f930c08a6
ui: Don't unnecessarily set GtkEntry:invisible-char
2016-10-16 18:17:21 +02:00
Timm Bäder
f360a69f4c
entry: Remove invisible-char style property
2016-10-16 18:17:21 +02:00
Timm Bäder
58a76b700f
stylecontext: Remove _REGION_ constants
2016-10-16 18:17:21 +02:00
Timm Bäder
ed184b3935
Remove GtkIconFactory
...
Move the icon size lookup API into gtkicontheme.c
2016-10-16 18:17:21 +02:00
Timm Bäder
9fd1a1bbe3
widget: Remove cursor-aspect-ratio/window-dragging style properties
...
And replaces its usages in GtkTextView/GtkStyleContext with a hard-coded
0.04 which was the default value for cursor-aspect-ratio. Also remove
the public gtk_draw_insertion_cursor which used draw_insertion_cursor
which in turn looked up cursor-aspect-ratio
2016-10-16 18:17:21 +02:00
Timm Bäder
ccd3ff7fba
gtkwidget: Remove gtk_widget_class_install_style_property_parser...
...
... from public API
2016-10-16 18:17:21 +02:00
Timm Bäder
281c1e4fe5
widget: Remove cursor-aspect-ratio style property
2016-10-16 18:17:21 +02:00
Timm Bäder
08c1c584b3
Remove GtkModifierStyle
2016-10-16 18:17:21 +02:00
Timm Bäder
9a388690f4
widget: Remove gtk_widget_override* API
2016-10-16 18:17:21 +02:00
Timm Bäder
3c901d6376
Remove a few more unused style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
b1d35a594e
widget: Remove text-handle-width/height style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
9f5baf9130
GtkTextHandle: Use min-width/min-height
...
instead of GtkWidget's text-handle-width/text-handle-height style
properties
2016-10-16 18:17:21 +02:00
Timm Bäder
999d45b4e8
Remove various unused style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
6a6c49369e
Fix a few GtkTextTag:*-gdk references
2016-10-16 18:17:21 +02:00
Timm Bäder
601839c825
Remove various sizing related style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
feac88dc52
switch: Remove deprecated style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
86dbe591d2
entry: Remove deprecated style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
2455bd0857
widget: Remove visibility-notify-event
2016-10-16 18:17:21 +02:00
Timm Bäder
1add02879e
entry: Remove inner-border (style) property
2016-10-16 18:17:21 +02:00
Timm Bäder
878f2e4107
widget: Remove deprecated margin-left/right properties
2016-10-16 18:17:21 +02:00
Timm Bäder
d34b7d98b2
widget: Remove gtk_widget_{s,g}et_composite_name
2016-10-16 18:17:21 +02:00
Timm Bäder
80ab5ea942
widget: Remove gtk_widget_get_requisition
2016-10-16 18:17:21 +02:00
Timm Bäder
16b0906b4a
widget: Remove gtk_widget_send_expose
2016-10-16 18:17:21 +02:00
Timm Bäder
bc0cef27a2
widget: Remove gtk_widget_{s,g}et_state
2016-10-16 18:17:21 +02:00
Timm Bäder
4a2c087a1e
widget: Remove gtk_widget_region_intersect
2016-10-16 18:17:21 +02:00
Timm Bäder
a80a1cf8a6
widget: Remove gtk_widget_get_child_requisition
2016-10-16 18:17:21 +02:00
Timm Bäder
b3bd5fefb1
widget: Remove gtk_widget_size_request
2016-10-16 18:17:21 +02:00
Timm Bäder
4c10807e24
widget: Remove state-changed signal
2016-10-16 18:17:21 +02:00
Timm Bäder
96d9abded8
widget: Remove deprecated style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
040db1efcd
Remove some deprecated GdkColor style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
627a824cab
image: Remove GtkIconSet API
2016-10-16 18:17:21 +02:00
Timm Bäder
efffa3b6bd
range: Remove min slider size setter/getter
2016-10-16 18:17:21 +02:00
Timm Bäder
aca35a14a0
scrollbar: Remove min-slider-length style property
2016-10-16 18:17:21 +02:00
Timm Bäder
116cb9fc0c
label: Remove now unneeded deprecation markers
2016-10-16 18:17:21 +02:00
Timm Bäder
2e96f8ae70
scrolledwindow: Remove window-placement-set property
2016-10-16 18:17:21 +02:00
Timm Bäder
ba9220591f
scrolledwindow: Remove scrollbar-spacing and scrollbars-within-bevel
2016-10-16 18:17:21 +02:00
Timm Bäder
05353ec933
scrolledwindow: Remove _add_with_viewport
...
Replaced by a normal gtk_container_add
2016-10-16 18:17:21 +02:00
Timm Bäder
33ece4e37a
Remove GtkHSV
2016-10-16 18:17:21 +02:00
Timm Bäder
134556435d
Remove various deprecated GtkOrientable subclasses
2016-10-16 18:17:21 +02:00
Timm Bäder
d06d17b81e
Remove gtkcolorsel(dialog).{c,h}
2016-10-16 18:17:21 +02:00
Timm Bäder
9c09669711
window: Remove _set/_get_opacity
2016-10-16 18:17:21 +02:00
Timm Bäder
7fa4ac08ea
window: Remove resize grip API
2016-10-16 18:17:21 +02:00
Timm Bäder
9cfbaf4916
Remove gtkfontsel.{c,h}
2016-10-16 18:17:21 +02:00
Timm Bäder
3b336dda73
dialog: Remove alternative button order API
2016-10-16 18:17:21 +02:00
Timm Bäder
2acc31b46a
Remove GtkHandleBox
2016-10-16 18:17:21 +02:00
Timm Bäder
155fa4664d
Remove GtkImageMenuItem
2016-10-16 18:17:21 +02:00
Timm Bäder
7f79a3fade
Remove GtkMisc
2016-10-16 18:17:21 +02:00
Timm Bäder
367f13a76f
Remove GtkArrow
2016-10-16 18:17:21 +02:00
Timm Bäder
9b5a50bf22
shortcutswindow: Stop using GtkArrow
2016-10-16 18:17:21 +02:00
Timm Bäder
ad155fb26c
Remove GtkStock API from GtkImage
2016-10-16 18:17:21 +02:00
Timm Bäder
eadb49d97f
recentchoosermenu: Stop using GtkImageMenuItem
2016-10-16 18:17:21 +02:00
Timm Bäder
421be38a3c
toolbutton: Stop using GtkImageMenuItem
2016-10-16 18:17:21 +02:00
Timm Bäder
10e24d58c3
button: Remove _{get,set}_focus_click
...
Deprecated for the GtkWidget variant. Also remove some unused fields
from the GtkButtonPrivate struct.
2016-10-16 18:17:21 +02:00
Timm Bäder
10a92a210b
button: Remove deprecated style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
9f2ca684e2
button: Remove deprecated signals from public API
2016-10-16 18:17:21 +02:00
Timm Bäder
590cd6a9f2
button: Remove GtkStock API
2016-10-16 18:17:21 +02:00
Timm Bäder
485d1b9835
Button: Remove alignment API
2016-10-16 18:17:21 +02:00
Timm Bäder
9d43644153
label,image: Remove GtkMisc usage
2016-10-16 18:17:21 +02:00
Timm Bäder
f45dadadd0
box: Remove 'padding' child property
2016-10-16 18:17:21 +02:00
Timm Bäder
c301357627
inspector: Remove object_title from css editor
...
It's unused
2016-10-16 18:17:21 +02:00
Timm Bäder
91f989006c
Don't use GtkBox's center child in a few places
...
We can as well use a normal child and let it hexpand.
2016-10-16 18:17:21 +02:00
Benjamin Otte
eace2cf421
API: Remove gdk_window_set_background()
...
Backgrounds are always transparent black.
2016-10-16 18:17:21 +02:00
Benjamin Otte
0df388051d
API: Remove GtkStyle
...
All the remaining gtkrc.c stuff like GtkRcStyle goes with it.
2016-10-16 18:17:21 +02:00
Benjamin Otte
05763e4875
settings: Pull in the RC parsing code
2016-10-16 18:17:21 +02:00
Benjamin Otte
361d322bfb
immodules: Move path code out of gtkrc
2016-10-16 18:17:21 +02:00
Benjamin Otte
1aa336b500
cellrendererspinner: Draw our own spinner
...
This is the GtkStyle code just moved.
2016-10-16 18:17:21 +02:00
Benjamin Otte
662001b60a
API: Remove ability to set visuals on windows
...
And with it, gtk_widget_get_visual() and gtk_widget_set_visual() are
gone.
We now always use the RGBA visual (if available) and otherwise fall back
to the system visual.
2016-10-16 18:17:21 +02:00
Benjamin Otte
380494c1d7
API: Remove gtk_drag_dest_set_proxy()
...
Proxies were only used by GtkSocket.
2016-10-16 18:17:21 +02:00
Benjamin Otte
021fe010b6
API: Remove GtkPlug, GtkSocket and GtkWin32EmbedWidget
2016-10-16 18:17:21 +02:00
Benjamin Otte
89f2e17f91
API: Remove gdk_window_set_composited()
...
And the related call gdk_display_supports_composite().
2016-10-16 18:17:21 +02:00
Benjamin Otte
ad64402a55
filechooserwidget: Query dpi from CssStyle
2016-10-16 18:17:21 +02:00
Benjamin Otte
77cdbfde97
fontchooserwidget: Query dpi from CssStyle
2016-10-16 18:17:21 +02:00
Benjamin Otte
fec8069e7b
API: screen: Stop storing font options
...
font options are only ever set by the GtkSettings object and only ever
used inside GTK, so just store them there.
2016-10-16 18:17:21 +02:00
Benjamin Otte
fcbd480c76
API: Remove GDK_WA_CURSOR
...
The cursor was set using gdk_window_set_cursor() even in
gdk_window_new().
So instead of having yet another flag, just make the users of that flag
call gdk_window_set_cursor() directly after the window was created.
2016-10-16 18:17:21 +02:00
Benjamin Otte
2fd5048943
API: window: Remove suppport for changing wmclass_name/group
...
X11 was the only backend to support it and people can just override it
using XSetClassHint() directly.
The docs already advertised the function as "Do not use".
Keep the existing call to XSetClassHint() in place, so that we keep
setting the same values as in GTK3.
2016-10-16 18:17:21 +02:00
Timm Bäder
fe24fcbc3e
Delete gtkvbox.{c,h}
2016-10-16 18:17:21 +02:00
Timm Bäder
fb3d9022ad
Remove GtkHBox
2016-10-16 18:17:21 +02:00
Benjamin Otte
9a5de96187
API: Remove GtkNumerableIcon
2016-10-16 18:17:21 +02:00
Benjamin Otte
d09e48cec1
API: Remove -gtk_widget_get_root_window()
2016-10-16 18:17:21 +02:00
Benjamin Otte
c2125e80a3
API: window: Remove geometry support
2016-10-16 18:17:21 +02:00
Benjamin Otte
4ed9452e90
API: menu: Remove tearoff support
2016-10-16 18:17:21 +02:00
Benjamin Otte
d2a8667f83
API: Remove GtkStatusIcon
2016-10-16 18:17:21 +02:00