Commit Graph

157 Commits

Author SHA1 Message Date
Christian Persch
cc3c737088 infobar: Fix visibility when enable-animations=false
When enable-animations is false, the revealer's child-revealed property is
notified immediately, so make sure to connect to it before toggling the
revealer.

https://bugzilla.gnome.org/show_bug.cgi?id=719510
2013-12-01 23:17:28 +01:00
Matthias Clasen
aace5a8946 Add a revealer to GtkInfoBar
Make GtkInfoBar slide in and out as it is shown or hidden.

https://bugzilla.gnome.org/show_bug.cgi?id=704334
2013-08-03 09:04:47 +02:00
Matthias Clasen
e63bfabb07 Revert "Add a revealer to GtkInfoBar"
This reverts commit 1198ffb0bc.

This change needs more work, to avoid breaking existing
ui files.
2013-08-02 17:57:11 +02:00
Matthias Clasen
1198ffb0bc Add a revealer to GtkInfoBar
Make GtkInfoBar slide in and out as it is shown or hidden.

https://bugzilla.gnome.org/show_bug.cgi?id=704334
2013-08-01 10:55:49 +02:00
Matthias Clasen
cda60c3c40 Another round of template binding api changes
We rename the gtk_widget_class_bind_template_child{_internal}
macros by appending a _private to their name. Otherwise, it
would be too magic to pass the 'public' names as arguments,
but affect a member of the Private struct. At the same time,

Add two new macros with the old names,
gtk_widget_class_bind_template_child{_internal} that operate
on members of the instance struct.
2013-07-26 16:29:12 -04:00
Emmanuele Bassi
89ae3524a3 Rename the widget template API
The macros and functions are inconsistently named, and are not tied to
the "template" concept - to the point that it seems plausible to use
them without setting the template.

The new naming scheme is as follows:

  gtk_widget_class_bind_template_child_full
  gtk_widget_class_bind_template_callback_full

With the convenience macros:

  gtk_widget_class_bind_template_child
  gtk_widget_class_bind_template_child_internal
  gtk_widget_class_bind_template_callback

https://bugzilla.gnome.org/show_bug.cgi?id=700898
https://bugzilla.gnome.org/show_bug.cgi?id=700896
2013-07-26 13:52:15 -04:00
Alexander Larsson
a8e84545d1 widget: Use a real offset in gtk_widget_class_automate_child
Using an offset from the struct means you can have children in
both the public and private (via G_PRIVATE_OFFSET) parts of the
instance. It also matches the new private macros nicer.

https://bugzilla.gnome.org/show_bug.cgi?id=702563

Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
2013-07-26 08:41:09 -04:00
William Jon McCann
88771f7b1b Add an optional close button to the info bar
This adds gtk_info_bar_{get,set}_show_close_button.
Similar to the one for the search bar. This can replace Cancel
buttons.

https://bugzilla.gnome.org/show_bug.cgi?id=704274
2013-07-24 17:01:42 -04:00
Matthias Clasen
0aa57d26b5 Move wholly deprecated classes to gtk/deprecated/
We've recently a number of classes wholly. For these cases,
move the headers and sources to gtk/deprecated/ and adjust
Makefiles and includes accordingly.

Affected classes:
GtkAction
GtkActionGroup
GtkActivatable
GtkIconFactory
GtkImageMenuItem
GtkRadioAction
GtkRecentAction
GtkStock
GtkToggleAction
GtkUIManager
2013-07-19 21:39:47 -04:00
William Jon McCann
31a2cea4b1 Fix infobar docs to not mention type colors
The theme may not use colors to distinguish the info bar
message types.
2013-07-15 13:19:55 -04:00
William Jon McCann
75c8be6b66 Make info bar action area horizontal
A vertical action area causes the info bar to be imposingly large.
This defeats the whole point of the info bar which is to be
unobtrusive. Not to mention it is impossible to make it look
and feel good.
2013-07-15 13:19:55 -04:00
Emmanuele Bassi
0899ef7cc9 gtk: Use new macros for defining private data
https://bugzilla.gnome.org/show_bug.cgi?id=702996
2013-07-09 09:30:02 +01:00
William Jon McCann
d741b7b873 Deprecate the gtk stock functions 2013-06-27 17:51:38 -04:00
William Jon McCann
424e1d0059 Start deprecating some GtkStock API 2013-06-25 19:05:32 -04:00
William Jon McCann
02c793f24a Start migrating internals away from GtkStock 2013-06-24 22:20:49 -04:00
Tristan Van Berkom
56167944e5 GtkInfoBar: Define children with a GtkBuilder template 2013-04-08 21:19:28 +09:00
Juan Pablo Ugarte
a893e3ce1d Chain up custom_tag_start() propertly.
Fixes bug #675899 "Infobar not loadable by GTKBuilder (using python gi introspection)"
2012-05-18 18:09:36 -03:00
Cosimo Cecchi
a4d76439e6 infobar: set default border/spacing on action/content areas
Commit cdf473ec10 deprecated the style
properties associated with the container border width and box spacing of
the action and content areas, in favour of using
gtk_container_set_border_width() and gtk_box_set_spacing() on the
widgets themselves, but failed to initialize those values to the
defaults.
2012-05-07 18:06:32 -04:00
Cosimo Cecchi
cdf473ec10 infobar: deprecate broken GtkInfoBar style properties
The way we use these style properties to set regular properties on
containers accessible from the public API is really just broken, and
could lead to undefined values for the spacing and border-width
container properties (since they could be set from public API and then
changed from under in a style_update handler from GTK).

Take this as an occasion to deprecate these style properties, which do
not make a lot of sense anyway, now that GtkInfoBar supports regular CSS
padding and border.
2012-04-30 17:14:44 -04:00
Paolo Borelli
2f81a58573 Fix info-bar reftest
InfoBar must take into account the border and padding when requesting
its allocation, since it is then drawing them. Besides, the border and
background should always be drawn, even when the message type is OTHER.
2012-04-30 21:53:17 +02:00
Javier Jardón
9d0febc9a6 Change FSF Address 2012-02-27 17:06:11 +00:00
Paolo Borelli
4a6658b0fa Set infobar css classes permanently
The message-type css classes must be in the widget context all the time,
not only when drawing, otherwise they are not propagated to the
children, for instance a label in the InfoBar must inherit the
color. Add a corresponding reftest.

https://bugzilla.gnome.org/show_bug.cgi?id=670555
2012-02-24 08:16:55 +01:00
Paolo Borelli
86ffa06f01 Init the InfoBar message_type to GTK_MESSAGE_OTHER
In this way the the code executed when the message_type property is set
to its default value (which is 0) gets actually run.
2012-02-24 08:13:47 +01:00
Benjamin Otte
80462c7cfd docs: Make infobar code example use GtkGrid instead of GtkTable 2011-09-29 01:51:46 +02:00
Matthias Clasen
04ce0467ab Silence a warning 2011-06-16 23:18:03 -04:00
José Aliste
1da07caaed info_bar: call style_updated at the end of info_bar_init
This fix a render bug where the infobar would not add borders
arount its content. Fix proposed by Benjamin Otte.
2011-06-16 14:34:14 -04:00
Matthias Clasen
41952fd767 More include cleanups 2011-06-07 21:25:20 -04:00
Matthias Clasen
876cbb7517 GtkInfoBar: derive from GtkBox, not GtkHBox 2011-06-07 19:55:03 -04:00
Matthias Clasen
beb8c290d1 Always chain up in ::style-updated
This was not handled consistently, but the default handler
does useful things, so we should always chain up.
2011-02-07 07:30:37 -05:00
Christian Dywan
205ee834ec State that _add_button functions return a "#GtkButton widget"
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=586635
2011-01-26 10:33:49 +01:00
Matthias Clasen
d9fcc4c630 Silence new gcc warnings
gcc 4.6.0 has started to warn about set-but-unused variables.
So don't do that, then.
2011-01-23 21:51:38 -05:00
Matthias Clasen
98440ad031 Remove gtktypeutils altogether
Based on patches by Javier Jardón.

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2011-01-04 14:51:19 -05:00
Matthias Clasen
b5c6904c2f Drop explicit includes of gdkkeysyms.h
These are no longer needed. At the same time, port gtkimcontextsimpleseqs.h
to use the new GDK_KEY_ symbols.
2011-01-04 12:21:41 -05:00
Carlos Garnacho
ee31a016ec Make GtkInfoBar use GtkStyleContext
All colors are defined now in the default css, and classes have
been added so the bars are fully themeable (as opposed to
gtk_widget_override_*, which require changing the color map itself)
2010-12-14 02:29:57 +01:00
Benjamin Otte
3070d6e3d5 Revert "docs: Reinstate pixbufs section in GDK docs"
I committed my whole working tee instead of just one file. Ooops.
This reverts commit ded14b2562.
2010-12-09 23:55:33 +01:00
Benjamin Otte
ded14b2562 docs: Reinstate pixbufs section in GDK docs
It was accidentally removed in 0775b0a858
2010-12-09 11:14:21 +01:00
Matthias Clasen
8b6112b6e0 Rewrite GtkInfoBar color handling to bypass GtkStyle
This avoids a segfault that was happening due to the recursion
detection not working anymore with the old way of doing things.
2010-12-04 15:39:33 +01:00
Michael Natterer
3a0afce509 gtk: remove "gboolean homogeneous" from gtk_box_new()
Because it's FALSE in virtually all use cases.
2010-10-31 19:22:28 +01:00
Javier Jardón
a9894d4cf4 Use gtk_box_new() instead gtk_[v|h]box_new() 2010-10-30 05:22:58 +02:00
Javier Jardón
e31304fb7b Use gtk_button_box_new() instead gtk_[v|h]_button_box_new() 2010-10-30 02:26:23 +02:00
Benjamin Otte
1d3f6b30b0 API: Rename gtk_cairo_paint_*() to gtk_paint_*()
Large patch, but just renaming.
Indentation should still mostly be correct because I took care of
keeping the indentation for this function name.
2010-09-26 15:11:42 +02:00
Benjamin Otte
f2d7e6c8d4 infobar: Port to draw vfunc 2010-09-26 15:11:37 +02:00
Matthias Clasen
e0aa12eb0a Tons of transfer annotations 2010-09-21 00:18:11 -04:00
Colin Walters
913cdf3be7 GDK: Prefix key names with KEY_
The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.

For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.

Just one user in GTK+ continues to use gdkkeysyms-compat.h, which is
the gtkimcontextsimple.c, since porting that requires porting more
custom Perl code.
2010-09-08 18:51:44 -04:00
Javier Jardón
37d62149bb gtk/gtkinfobar.c: use accessor functions to access GtkWidget 2010-08-22 22:56:10 +02:00
Javier Jardón
75686d04a0 GtkInfoBar: use private pointer instead GET_PRIV() macro 2010-07-13 19:40:48 +02:00
Javier Jardón
0a07e9733b gtk/: fully remove gtkalias hacks
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:51:26 +02:00
Javier Jardón
e8e95d4c5e Don't use GTK_WIDGET_*SET_FLAGS (wid, GTK_CAN_DEFAULT)
Use new API instead: gtk_widget_set_can_default ()
2010-03-02 07:58:05 +01:00
Matthias Clasen
c3f0cdcfcf Clarify the docs for gtk_info_bar_set_default_response
According to bug 610632
2010-02-23 11:13:16 -05:00
Johan Dahlin
fe85272112 [annotations] Add allow-none
This commit was created using a script that searched for all docstrings
containing a parameter and the string 'or %NULL'.
Gdk backends and demos excluded as they are not part of a public API

https://bugzilla.gnome.org/show_bug.cgi?id=610474
2010-02-19 17:57:51 -02:00
Javier Jardón
670e141b3a Fix some compilation warning
Added some default cases and assert if reached
2009-10-21 02:08:18 +02:00
Matthias Clasen
42e7318b62 Fix redraw issues in GtkInfoBar
This was reported in bug 587716. I have no idea why this used
to work just fine for me...
2009-07-06 01:56:05 -04:00
David Zeuthen
a92c9ce9a5 Bug 586691 – Better GtkInfoBar defaults
Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-06-25 15:23:40 -04:00
Vincent Untz
d50cfd192b Use g_return_val_if_fail instead of g_return_if_fail 2009-06-16 18:40:01 +02:00
Matthias Clasen
23fa53f1bc Properly export gtk_info_bar_response
Also fix up its docs.
2009-06-15 20:04:48 -04:00
Matthias Clasen
a01a4df697 Update docs to match actual API
Remove references to gtk_info_bar_set_contents(), and update
the example to use gtk_info_bar_get_content_area().
2009-06-08 10:16:51 -04:00
Matthias Clasen
a85fac7145 Add a message area widget
It is called GtkInfoBar. See bug 555344.
2009-06-05 18:00:26 -04:00