Commit Graph

17112 Commits

Author SHA1 Message Date
Matthias Clasen
f7683b05b1 GtkApplication: Fix unsetting menu models
Pointed out by Zachary Dovel in
http://bugzilla.gnome.org/show_bug.cgi?id=679705
2012-07-10 21:25:58 -04:00
Matthias Clasen
b90f40544f Silence the build
Hide gdbus-codegen behind $(AM_V_GEN) for silence and cleanliness.
2012-07-09 22:12:45 -04:00
Antoine Jacoutot
974212ec82 OpenBSD: use G_N_ELEMENTS instead of nitems
nitems is never guaranteed to be defined in sys/params.h as it is meant
to be defined within a protected ifdef __KERNEL conditional.
Use G_N_ELEMENTS from GLib which is the proper way of doing this.
2012-07-09 18:20:34 +02:00
Benjamin Otte
b900016a05 a11y: Make lockbutton notify about state changes
In particular, ensure that the name of the lockbutton gets updated as
the displayed text of the lockbutton changes.

https://bugzilla.gnome.org/show_bug.cgi?id=677347
2012-07-09 03:12:13 +02:00
Benjamin Otte
58cf6dfaaf a11y: Get lockbutton text directly
Instead of letting the generic button code attempt to find the currently
displayed text, just return the text directly.

https://bugzilla.gnome.org/show_bug.cgi?id=677347
2012-07-09 02:58:22 +02:00
Benjamin Otte
fb1b025cbf a11y: Add separate accessible for GtkLockButton
The accessible doesn't do anything yet, this is just infrastructure
work.
2012-07-09 02:29:16 +02:00
Benjamin Otte
0dbf5db0e1 a11y: Don't mess up if column gets hidden
We were using a function that insisted on visible columns for computing
the potential ID of an invisible column. Not good.

https://bugzilla.gnome.org/show_bug.cgi?id=675990
2012-07-09 01:28:26 +02:00
Cosimo Cecchi
f30eab099b entry: guard for != NULL before unreffing the pixbuf
In gtk_entry_get_icon_pixbuf() we unreference the pixbuf that
_gtk_icon_helper_ensure_pixbuf() gives us back, since the function
doesn't return a reference, and by doing so we're able to return the
reference owned by the cached icon helper.
Since the icon helper method can return NULL though, if no icon
properties have been set on it, guard for != NULL before unreffing the
pixbuf, as that would cause a critical warning.

https://bugzilla.gnome.org/show_bug.cgi?id=679537
2012-07-08 00:34:33 -04:00
Cosimo Cecchi
5dbf3a576a modelmenu: listen for toplevel changes on the attach widget
Right now, when we create a GtkModelMenu for a GMenuModel, we listen to
changes to the menu's attach-widget to detect when a toplevel
GtkApplicationWindow becomes available to fetch actions from it.

This unfortunately breaks this simple code:

  GtkWidget *application_window = gtk_application_window_new();
  GtkWidget *menu_button = gtk_menu_button_new();
  GMenuModel *menu_model = get_menu_model();

  gtk_menu_button_set_menu_model(menu_button, menu_model);
  gtk_container_add(GTK_CONTAINER(application_window), menu_button);

Since GtkMenuButton creates a GtkModelMenu and sets itself as its attach
widget before it's added to a hierarchy containing a
GtkApplicationWindow.

Fix the bug by simply listening for changes in the window hierarchy, and
creating the menu model when the attach widget is added to an
application window.

https://bugzilla.gnome.org/show_bug.cgi?id=679454
2012-07-06 11:14:15 -04:00
Cosimo Cecchi
f81bd6c52d menu: notify attach-widget property when menu is detached
When the menu is detached, the attach-widget property changes value to
NULL, so we should notify a property change, like
gtk_menu_attach_to_widget() does.

https://bugzilla.gnome.org/show_bug.cgi?id=679454
2012-07-06 11:14:15 -04:00
Cosimo Cecchi
f22226b3c9 application: fix double free of app_id
This is fallout from commit 257b42e2f9 -
those fields were already getting freed in
gtk_application_shutdown_x11() and my commit caused crashes on quit
instead.

Thanks to Rico Tzschichholz for reporting the bug and testing this fix.
2012-07-05 16:40:23 -04:00
Cosimo Cecchi
06c8739de4 modelmenu: set the accel group on the GtkMenu
Or the accelerators added for actions in the menu won't be displayed in
the menu items.

https://bugzilla.gnome.org/show_bug.cgi?id=679166
2012-07-05 10:21:55 -04:00
Cosimo Cecchi
598163e526 menubutton: set DROPDOWN_MENU hint on the menu toplevel
So the WM can render the menu shadows correctly, omitting the top side,
in the common case the menu is rendered down from a toolbar.

https://bugzilla.gnome.org/show_bug.cgi?id=679449
2012-07-05 10:16:42 -04:00
Cosimo Cecchi
5a5c33097f gtkstyle: add a gtkstyle-fallback style class for RC colors
As an addition to 1042372670, themes might
want to avoid using the hardcoded GTK defaults for legacy GtkStyle
values. Add a gtkstyle-fallback style class that can be used by themes
to tweak the legacy GtkStyle defaults.

https://bugzilla.gnome.org/show_bug.cgi?id=679092
2012-07-02 10:44:40 -04:00
Cosimo Cecchi
257b42e2f9 application: plug some memory leaks 2012-07-02 10:41:29 -04:00
Cosimo Cecchi
f70fc49ebc docs: fix a number of typos and obsolete references 2012-07-02 10:41:11 -04:00
Cosimo Cecchi
d22624b18e menubutton: don't dereference NULL GdkEvent
Since we explictly call popup_menu with NULL when it's
keyboard-activated, we need to be careful and not access event->device
without checking for event != NULL before.
2012-06-29 18:30:53 -04:00
Ryan Lortie
6e11c3106a GActionMuxer: disconnect group signals on finalize
The signals for the action group were being disconnected when the action
group was explicitly removed from the GActionMuxer but the same was not
being done when it was finalized.

This means that a change in the state of an action group that used to be
associated with a finalized GActionMuxer would result in a crash.  This
would happen for stateful application actions after closing a window.
2012-06-28 23:57:57 -04:00
Alexander Larsson
1042372670 Handle transparent colors better in GtkStyle emulation
We can't expose colors with alpha in the GtkStyle colors, since
GdkColor has no alpha. Currently we throw away alpha completely,
which fails very badly for completely transparent backgrounds,
which now is the default for most widgets, as it typically
end up with black-on-black.

We handle this by falling back on the default/previous colors for
transparent colors. This is is simple and avoids complete failure.

https://bugzilla.gnome.org/show_bug.cgi?id=671437
2012-06-28 21:48:14 +02:00
Alejandro Piñeiro
4cfe2a38bf a11y: remove implementation for [add/remove]_global_event_listener
Since release 2.5.3, ATK provides an implementation for those
methods, so toolkits doesn't need to implement them.
2012-06-28 12:38:11 +02:00
Colin Walters
ed8203e700 build: Drop --without-atk-bridge option
Instead, always build it if and only if X11.  This reduces the set of
supported configurations.

https://bugzilla.gnome.org/show_bug.cgi?id=677491
2012-06-26 13:50:39 -04:00
Matthias Clasen
bcdbfa1a9b Don't export private GtkMountOperationHandler api 2012-06-25 16:26:41 -04:00
Cosimo Cecchi
261d2d96e3 radiobutton: add missing (element-type) annotation for radio groups
The GSLists should specify their element-type in every annotation. We
are missing some.

https://bugzilla.gnome.org/show_bug.cgi?id=677127
2012-06-25 14:49:11 -04:00
Cosimo Cecchi
66a2870bfd menu: add missing (scope async) annotation to gtk_menu_popup()
Or the g-i scanner will emit a warning.

https://bugzilla.gnome.org/show_bug.cgi?id=677127
2012-06-25 14:49:11 -04:00
Cosimo Cecchi
8ff9770c7f widget: silence g-i scanner warning
The parameter should be named the same in the definition and the
declararion.

https://bugzilla.gnome.org/show_bug.cgi?id=677127
2012-06-25 14:49:11 -04:00
Cosimo Cecchi
ec1904c779 fontchooser: silence g-i scanner warning
These parameters should be named the same in the definition and the
declaration.

https://bugzilla.gnome.org/show_bug.cgi?id=677127
2012-06-25 14:49:11 -04:00
Cosimo Cecchi
37bb0ce884 actionable: silence g-i scanner warning
The parameter should be named the same in the definition and the
declararion.

https://bugzilla.gnome.org/show_bug.cgi?id=677127
2012-06-25 14:49:11 -04:00
Cosimo Cecchi
9992026ca6 application: fix a typo in introspection annotation
https://bugzilla.gnome.org/show_bug.cgi?id=677127
2012-06-25 14:49:11 -04:00
Alexander Larsson
6c04296f03 Rename gtk_icon_view_get_cell_area to gtk_icon_view_get_cell_rect
get_cell_area was "conflicting" with the property named "cell-area"
which is something different.
2012-06-25 15:07:13 +02:00
Matthias Clasen
a84effadc2 Cosmetics 2012-06-23 13:08:03 -04:00
Matthias Clasen
cea4b80096 Fix a compiler warning
This was introduced in the previous commit.
2012-06-23 13:07:47 -04:00
Matthias Clasen
3056324570 GtkNotebook: Fix reverse tab order
When using Shift-Tab to move the focus out of page content onto
the tab label, we end up in a situation where both Tab and Shift-Tab
move focus back into the page, which is not really what is expected
when the notebook is part of a dialog.

Instead, arrange things so that using Shift-Tab with focus on a
tab label moves the focus out of the notebook.

http://bugzilla.gnome.org/show_bug.cgi?id=669986
2012-06-23 12:37:20 -04:00
Colin Walters
376783f64f gtkdbusinterfaces: Fix srcdir != builddir 2012-06-23 12:19:06 -04:00
Rico Tzschichholz
e28021b3c1 gtk: add gtkdbusinterfaces.xml to EXTRA_DIST 2012-06-23 17:48:27 +02:00
Matthias Clasen
325cf071d1 GtkNotebook: Maintain invariants during tab dnd
It turns out that we can end up removing a notebook child while
the tab is still 'detached'. Child removal causes
gtk_notebook_remove_tab_label() to be called on the tab label,
but that function did not deal with the eventuality that the tab
label may be a child of the dnd window.

http://bugzilla.gnome.org/show_bug.cgi?id=677943
2012-06-23 10:04:14 -04:00
Chun-wei Fan
887f13cf9f gtk/gtkcsseasevalue.c: Remove C99ism 2012-06-23 12:48:32 +08:00
Chun-wei Fan
1eceadbc25 gtk/Makefile.am: Fix Visual C++ disthook rules
gtkdbusgenerated.c needs to be included in the projects as well.
2012-06-23 12:15:59 +08:00
Colin Walters
71e0e72c69 build: Add --without-atk-bridge, only check for it on X11 platforms
Some builders using gtk3 outside of the GNOME cycle want an option to
avoid linking to atk-bridge-2.0.  Provide that, and at the same time
ensure we're only looking for it on X11 platforms.

https://bugzilla.gnome.org/show_bug.cgi?id=677491
2012-06-22 23:49:24 -04:00
Cosimo Cecchi
44fd03eb47 mountoperation: use the Shell DBus proxy if available
Make GMountOperation look for an owner of org.Gtk.MountOperationHandler
if possible, and use it instead of the GTK-based dialogs.
This allows applications to use the implementation offered by the
desktop shell, if available, through a DBus private interface:
org.Gtk.MountOperationHandler.

https://bugzilla.gnome.org/show_bug.cgi?id=674963
2012-06-22 16:49:05 -04:00
Alexander Larsson
fb91fa2fbd Add gtk_icon_view_get_cell_area
This gets the current cell area of a particular item. Its similar
to gtk_tree_view_get_cell_area().

The code is extracted from gtk_icon_view_set_tooltip_cell which now
just calls the old code.

https://bugzilla.gnome.org/show_bug.cgi?id=678418
2012-06-22 13:50:33 -04:00
Dan Vrátil
4243c3a1e2 Fix a memory leak in GtkImage
https://bugzilla.gnome.org/show_bug.cgi?id=678175
2012-06-20 08:27:01 +02:00
Pavel Holejsovsky
7572325efb GtkImage: fix get_property('stock')
The code was trying to get icon's name instead of icon's stock-id.

https://bugzilla.gnome.org/show_bug.cgi?id=678407
2012-06-19 15:58:11 +02:00
Benjamin Otte
9b47bc5c95 widget: don't call gtk_style_context_set_background if app_paintable
When a widget is app_paintable, its background should not be drawn by
the theme, thus we should not try to override its background again when
style-updated is fired.
This is a bit of a hack, but it fixes gray surfaces observed for DnD
windows with recent GTK+.
2012-06-18 10:33:42 -04:00
Bastien Nocera
50cd57020c gtkmenutoolbutton: Use GtkMenuButton
To implement the drop-down menu.

https://bugzilla.gnome.org/show_bug.cgi?id=668013
2012-06-15 17:24:42 +01:00
Bastien Nocera
9fef2dc0d1 gtkmenubutton: Add menu button widget
As used in Totem and gnome-contacts. The widget
takes either a GtkMenu or a GMenuModel to construct
its menu, and can be given a parent widget to use to
position the drop-down (as used in GtkMenuToolButton).

https://bugzilla.gnome.org/show_bug.cgi?id=668013
2012-06-15 17:24:42 +01:00
Bastien Nocera
ffe1e31a2c gtk: Always load the atk-bridge
Slightly modified by Alejandro Piñeiro

https://bugzilla.gnome.org/show_bug.cgi?id=677491
2012-06-15 17:09:19 +01:00
Benjamin Otte
49c618c59c image: Don't add border twice
Failed to delete these lines in d40c496e6e
2012-06-15 03:30:52 +02:00
Benjamin Otte
5c46f81e7b iconview: Special case the empty iconview
If the icon view is empty, we cannot get a reasonable size request from
the cell renderers. So all values we would compute are pretty much
useless.
So we special case it.

This also gets rid of a bunch of crashers from div-by-0 in corner cases.

https://bugzilla.gnome.org/show_bug.cgi?id=677809
2012-06-15 02:44:45 +02:00
Benjamin Otte
d40c496e6e image: background and border should be drawn around the widget
... not around the contents. If you want the widget to not be larger
than the contents, don't use ALIGN_FILL.
2012-06-14 20:06:39 +02:00
Benjamin Otte
c187386fe1 iconview: Add a descriptive function
I want to special-case empty icon views in the sizing code to avoid
various bugs, and having such a function is nice.
2012-06-14 18:52:09 +02:00
Benjamin Otte
fd4c330500 iconview: Ensure icons are at least 1x1 pixels
This is useful for 2 reasons:
(1) Items actually exist and are clickable
(2) Size computations don't divide by 0

I've not seen problems with this in the wild (mostly because
item-padding defaults to non-0), but noticed this while fixing other
bugs.
2012-06-14 18:44:44 +02:00
Benjamin Otte
62292dc247 iconview: Don't add item-padding
... to item sizes when there are no items.
2012-06-14 07:41:40 +02:00
Benjamin Otte
6d9d87806a iconview: clamp item size to be in [minimum, natural]
Minimum size is necessary so you can see the item. If we can't get that
we need to scroll.
Natural as the maximum is used so that the spacing between items doesn't
increase when resizing the iconview, but empty space is added to the
right/bottom instead.

https://bugzilla.gnome.org/show_bug.cgi?id=677809
2012-06-14 07:41:40 +02:00
Benjamin Otte
7c1b561194 iconview: Include column spacing in calculation
The function is probably almost never used, so nobody has ever seen this
bug, but we should still get it right.

https://bugzilla.gnome.org/show_bug.cgi?id=677809
2012-06-14 07:41:40 +02:00
Benjamin Otte
4b83be0e26 iconview: Add documentation abour different sizes
Did I mention I hate code that has different kinds of "boxes" or
coordinate systems but no clear way to distinguish them?
It's all ints here...

https://bugzilla.gnome.org/show_bug.cgi?id=677809
2012-06-14 07:41:40 +02:00
Hans de Goede
c32a5a80b7 iconview: gtk_icon_view_compute_n_items_for_size bugfix
While working on the "iconview: Don't shrink items" patch I noticed that
gtk_icon_view_compute_n_items_for_size modifies the natural and minimum
item sizes it got from gtk_icon_view_get_preferred_item_size when
calculating the max number of items which will fit, but later on it
checks against these sizes when calculating the item_size, and these
checks expect these values to be unmodified.

This patch fixes this by modifying the natural and minimum values in
advance and doing all computations with modified values.

https://bugzilla.gnome.org/show_bug.cgi?id=677809
2012-06-14 07:41:39 +02:00
Benjamin Otte
ec755541ab iconview: Don't shrink items
The previous code assumed that the width was always enough for more than
one column, which is obviously not correct when a number of columns is
hardcoded.

With this patch, it will now always check that the width is enough and
otherwise cause scrolling.

https://bugzilla.gnome.org/show_bug.cgi?id=677809
2012-06-14 07:41:39 +02:00
Cosimo Cecchi
ad63d1b59e toolbar: don't call gtk_style_context_set_background()
GtkToolbar doesn't have its own GdkWindow to draw on (it calls
gtk_widget_set_has_window(FALSE) in _init), but only an event window
(input-only).
Since gtk_widget_get_window() in that case will return the GdkWindow of
the parent container, by calling gtk_style_context_set_background() here
we're overriding the base background of the container instead of our.
While in most cases this doesn't have any noticeable effect, since
the toplevel GtkWindow will paint its background on top of it at the
beginning of the draw cycle, when the classic window hierarchy is
broken, such as when widgets are rendered through a clutter-gtk
offscreen embedding, the background will become visible, which is
undesirable.
Fix this by having GtkToolbar not call gtk_style_context_set_background
in its style_updated handler.
2012-06-13 20:10:41 -04:00
Matthias Clasen
7e37b45787 Fix up the deprecation annotation for gtk_widget_get_pointer
When I added the versioned annotation, I accidentally backdated
it, so the Deprecated: tag in the docs said 3.4, but the annotation
said 3.0. Fix it so we say 3.4 in both places.
2012-06-13 18:25:17 -04:00
Jasper St. Pierre
bbe0784865 assistant: Set the proper stock images on the proper buttons
Copy/paste typo.
2012-06-13 17:39:08 -04:00
Cosimo Cecchi
3851a1cf90 entry-completion: don't move to leftmost character with inline-selection
When inline-selection is set, and the completion popup is showing,
pressing left abruptly jumps to the beginning of the entry text.
This is not expected, since the cursor is at the end of the text before
the left key is pressed, and this behavior is completely inconsistent
with how an entry would normally behave.
The behavior can be observed in Epiphany by selecting a completion match
and pressing left.

This patch changes the code so that it just runs the default entry key
press keybindings in such a case.

https://bugzilla.gnome.org/show_bug.cgi?id=677915
2012-06-13 17:09:09 -04:00
Cosimo Cecchi
b80d935b95 stylecontext: pass down the requested change type to invalidation
<Company>: cosimoc: yes, that totally makes sense
<Company>: looks like a copy/paste error from when i factored out that
           function
2012-06-13 17:04:47 -04:00
Matthias Clasen
b5d18b3e59 fix a typo 2012-06-13 16:33:47 -04:00
Martin Pitt
0e37d2a98b liststore: Make gtk_list_store_reorder() introspectable
Mark the new_order argument as zero-terminated array, even though it does not
need to be zero terminated (it has an implicit length not given by a constant
or another method argument). It does not hurt if bindings append an extra zero
to the array as long as it has enough elements, and this makes the method
introspectable.

https://bugzilla.gnome.org/show_bug.cgi?id=677941
2012-06-12 17:18:55 +02:00
Christian Persch
75331c0ac2 application: Really allow NULL application-id
While the docs were adjusted to claim that NULL application-id is allowed,
the code actually segfaulted on it.
2012-06-12 16:15:12 +02:00
Cosimo Cecchi
1cbd84633d spinbutton: fix a typo
GTK_STATE_* -> GTK_STATE_FLAG_*
2012-06-12 09:37:17 -04:00
Matthias Clasen
89b4c15e59 Use GtkSearchEntry 2012-06-11 22:45:31 -04:00
Matthias Clasen
4a25bac0e7 Update docs for GtkEntry::activate
Remove the 'you shall not connect' message from this signal.
While it is a keybinding signal, using it from applications is
fine and, in fact, expected.
2012-06-11 19:27:25 -04:00
Bastien Nocera
d704f2bd2e gtk: Add GtkSearchEntry
Add a search entry widget with the recommended behaviour implemented.
As used in gnome-control-center, Totem, gnome-documents and many others.

https://bugzilla.gnome.org/show_bug.cgi?id=652809
2012-06-11 19:02:55 +01:00
Cosimo Cecchi
3473577386 a11y: fix a typo leading to a crash
text can't be NULL here, or we would have failed way earlier.
The original code from gail returned if the renderer text was NULL, and
we have to do that, or we'll end up calling e.g.
g_utf8_offset_to_pointer() on a NULL pointer.

https://bugzilla.redhat.com/show_bug.cgi?id=827930

https://bugzilla.gnome.org/show_bug.cgi?id=677551
2012-06-07 16:51:02 -04:00
Cosimo Cecchi
61001bc501 tests: add an unit test for the previous commits
https://bugzilla.gnome.org/show_bug.cgi?id=677649
2012-06-07 16:47:11 -04:00
Cosimo Cecchi
a24f7564b5 treestore: fix transformation of GValues on set
There are three bugs here:
- we should check if the value type is transformable instead of being
  compatible, since that's all we care about in order to call
  g_value_transform()
- the check is only meaningful in the direction
  passed-in-type->column-type and not viceversa
- we should init the destination GValue to the column type before
  calling g_value_transform on it, or the destination type information
  will be missing and the method will fail

Thanks to Jasper St. Pierre and Colin Walters for all the help in
tracking this down.

https://bugzilla.gnome.org/show_bug.cgi?id=677649
2012-06-07 16:47:11 -04:00
Cosimo Cecchi
e92e767246 liststore: fix transformation of GValues on set
There are three bugs here:
- we should check if the value type is transformable instead of being
  compatible, since that's all we care about in order to call
  g_value_transform()
- the check is only meaningful in the direction
  passed-in-type->column-type and not viceversa
- we should init the destination GValue to the column type before
  calling g_value_transform on it, or the destination type information
  will be missing and the method will fail

Thanks to Jasper St. Pierre and Colin Walters for all the help in
tracking this down.

https://bugzilla.gnome.org/show_bug.cgi?id=677649
2012-06-07 16:47:11 -04:00
Marc-Antoine Perennou
4aab1ea6e9 build: Fix MKDIR_P for recent automake
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2012-06-07 16:35:12 +02:00
Matthias Clasen
90b6725ffd Fix the infobar builder test 2012-06-03 13:55:49 -04:00
Bastian Winkler
b0ea45863d grid: Fix access to grid->priv member
The priv member should be accessed after the g_return_if_fail test

https://bugzilla.gnome.org/show_bug.cgi?id=677363
2012-06-03 01:51:26 +02:00
Bastian Winkler
4fee1aa22b grid: Add missing guard to gtk_grid_get_child_at()
Add missing guard to make sure it's called with a GtkGrid argument.

https://bugzilla.gnome.org/show_bug.cgi?id=677363
2012-06-03 01:50:28 +02:00
Matthias Clasen
eeb5299573 GtkFontSel: Don't try to set the cursor on invalid iters
This causes a lot of warnings.
https://bugzilla.gnome.org/show_bug.cgi?id=677293
2012-06-01 16:58:36 -04:00
Matthias Clasen
1b1c7288d9 GtkFontSelection: Populate list models atomically
This is just a cosmetic fix.
2012-06-01 16:57:45 -04:00
Matthias Clasen
f8a7810397 Deal with non-multiple-of-100 font weights
We should not run into an assertion so easily.
2012-06-01 16:15:16 -04:00
Jasper St. Pierre
d9a602f590 icon-theme: Allow symbolic GFileIcons
gtk_icon_info_load_symbolic checks for the existance of a filename parameter
so it can include it along with the stylesheet. We don't set the filename
parameter when creating the info for a GFileIcon, for some reason.

https://bugzilla.gnome.org/show_bug.cgi?id=676356
2012-06-01 09:17:00 -04:00
Cosimo Cecchi
10a4771ae3 notebook: fix size requisition for the initial_gap style property
This is probably going to be replaced by something different soon, but
in the meantime, fix this annoying bug, visible e.g. in widget-factory
for left/right tab examples.
2012-05-30 18:02:42 -04:00
Matthias Clasen
2baba250b8 Revert "gtkmenubutton: Add menu button widget"
This reverts commit 9d35f7e512.
2012-05-30 14:45:24 -04:00
Matthias Clasen
dbf44fdf2a Revert "gtkmenutoolbutton: Use GtkMenuButton"
This reverts commit 1519a1e8c2.
2012-05-30 14:45:15 -04:00
Bastien Nocera
9d35f7e512 gtkmenubutton: Add menu button widget
As used in Totem and gnome-contacts. The widget
takes either a GtkMenu or a GMenuModel to construct
its menu, and can be given a parent widget to use to
position the drop-down (as used in GtkMenuToolButton).

https://bugzilla.gnome.org/show_bug.cgi?id=668013
2012-05-30 13:46:40 -04:00
Bastien Nocera
1519a1e8c2 gtkmenutoolbutton: Use GtkMenuButton
To implement the drop-down menu.

https://bugzilla.gnome.org/show_bug.cgi?id=668013
2012-05-30 13:46:39 -04:00
Matthias Clasen
644d62e2ce Trivial: remove a bit of obfuscation 2012-05-30 13:46:39 -04:00
Bastien Nocera
d708d43a31 gtkmenutoolbutton: Fix show-menu API docs
It's "set" not "get" that one needs to call to set the menu.

https://bugzilla.gnome.org/show_bug.cgi?id=677055
2012-05-30 17:49:25 +01:00
Bastien Nocera
cbc541d779 gtkmenutoolbutton: Remove unused variable
Set but unused.

https://bugzilla.gnome.org/show_bug.cgi?id=677055
2012-05-30 17:49:25 +01:00
Cosimo Cecchi
65166c36b9 themingbackground: fix drawing for repeating positioned images
When we determine the fill rectangle for an image layer, and the image
is not repeating, we should also position the rectangle according to the
values of background-position, or we will always fill a tiny slice at
the top/left of the clip box.

https://bugzilla.gnome.org/show_bug.cgi?id=677109
2012-05-30 12:16:11 -04:00
Murray Cumming
b3f2583a46 gtk_application_new(): Docs: application_id may now be null.
https://bugzilla.gnome.org/show_bug.cgi?id=671249
2012-05-28 16:16:56 +02:00
Matthias Clasen
2f015698db Remove gtk_accel_group_query from the docs
It is marked as "internal" in the headers, and the struct it
returns is not documented either.
2012-05-26 15:16:04 -04:00
Matthias Clasen
667a270fc6 Document "set" properties a bit
Both GtkTextTag and GtkCellRenderer make use of "set" properties
which are a bit special. Document this.

https://bugzilla.gnome.org/show_bug.cgi?id=531319
2012-05-26 15:06:00 -04:00
Matthias Clasen
9cca320a7f Reword lockbutton docs
https://bugzilla.gnome.org/show_bug.cgi?id=659613
2012-05-26 13:29:48 -04:00
Matthias Clasen
8742f6f09c Clarify the gtk_style_context_add_provider docs
https://bugzilla.gnome.org/show_bug.cgi?id=643490
2012-05-26 12:24:13 -04:00
Matthias Clasen
c7e7d32c68 Change the stock help accel to F1
https://bugzilla.gnome.org/show_bug.cgi?id=162865
2012-05-26 12:09:13 -04:00
Matthias Clasen
2cecc1f922 GtkToolbar: Prevent accidental drag starts
We don't want to start drags on double- or triple clicks, and
doing so causes problems for embedded range widgets.

https://bugzilla.gnome.org/show_bug.cgi?id=675535
2012-05-25 23:17:43 -04:00
Matthias Clasen
33d2af0036 fix the build 2012-05-25 23:14:02 -04:00
Matthias Clasen
1bb7e28c90 Fix the build on Solaris
http://bugzilla.gnome.org/show_bug.cgi?id=663991
2012-05-25 23:13:42 -04:00
Matthias Clasen
d1b5d0567b Fix doc comment
The introspection annotation for gtk_im_context_get_surrounding
was missing a :.
2012-05-25 22:58:55 -04:00
Cosimo Cecchi
403025f229 themingbackground: don't clear the window bg cairo surface
This is not needed anymore now that windows are transparent by default.
2012-05-24 15:10:19 -04:00
Cosimo Cecchi
385a2398ce button: fix variable name in function declaration
Or gtk-doc/introspection scanners will complain.
2012-05-21 17:26:43 -04:00
William Jon McCann
346b933a85 Provide a way to force showing icons in buttons
https://bugzilla.gnome.org/show_bug.cgi?id=676429
2012-05-21 13:57:18 -04: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
John Ralls
f2f26c2232 Don't include gtkplug.h in gtkdnd-quartz.c
Gtkplug is X11-only.
2012-05-18 14:00:28 -07:00
Holger Berndt
479c02a43b Document removing of accelerators
https://bugzilla.gnome.org/show_bug.cgi?id=676243
2012-05-18 15:41:31 +02:00
Cosimo Cecchi
e32da246a8 range: read and use CSS margin values for the trough component
Many themes want to render the trough background/stroke thinner than the
full height/width (which is constructed around the value of the
'slider-width' style property).
Read and apply the CSS margin from the theme on the trough component, so
that themes can make it smaller at their will without the need to
override the render_background, render_frame and render_activity methods
of GtkThemingEngine.

https://bugzilla.gnome.org/show_bug.cgi?id=676196
2012-05-17 09:42:42 -04:00
Cosimo Cecchi
fb968e6e74 range: remove commented out code
We wouldn't need any detail anyway, since we use a progressbar style
class for the progress part of GtkRange.

https://bugzilla.gnome.org/show_bug.cgi?id=676196
2012-05-17 09:42:42 -04:00
Volker Sobek
5346ae5764 doc: Add missing CDATA around a XML programlisting
https://bugzilla.gnome.org/show_bug.cgi?id=675423
2012-05-16 23:57:28 -04:00
Hiroyuki Ito
276dae8ae6 Improve GtkColorButton behaviour
Select the current color of a GtkColorButton should be selected in the
GtkColoroChooserDialog which is shown when the color button is clicked.

https://bugzilla.gnome.org/show_bug.cgi?id=676198
2012-05-16 23:50:58 -04:00
Cosimo Cecchi
f2da5f30c1 themingengine: don't use gtk_theming_engine_get()
This also avoids some useless GdkRGBA heap allocations when drawing a
border.
2012-05-16 21:57:22 -04:00
Cosimo Cecchi
e6660bcfe1 themingengine: add missing deprecation annotation
gtk_theming_engine_state_is_running() is deprecated for 3.6.
2012-05-16 21:57:22 -04:00
Cosimo Cecchi
87a6115df4 themingengine: don't use gtk_theming_engine_state_is_running()
It's deprecated, and always returns FALSE. This allows us to simplify a
bunch of code.
2012-05-16 21:56:54 -04:00
Martin Pitt
ec39974714 grid: add missing transfer annotation
gtk_grid_get_child_at() is missing a transfer annotation for the returned
widget, making it not introspectable.
2012-05-16 18:00:04 +02:00
Matthias Clasen
04b92a799e Be more careful when freeing ui manager nodes
https://bugzilla.redhat.com//show_bug.cgi?id=812035 has
a stacktrace that shows recursion via
free_node -> unref -> dispose -> ui manager api
which ends in a crash, since we run free_node over the entire
tree and it leaves lots of dangling pointers behind.
So, better be careful by setting all pointers to NULL after
freeing them.
2012-05-15 21:54:20 -04:00
Cosimo Cecchi
3f7dd6f653 themingengine: render pane-separator grip only if we have no bg-image
So that it's possible to implement this with an SVG asset if we want.
2012-05-15 13:24:41 -04:00
Cosimo Cecchi
61c7014e3e shorthand: implement multiple backgrounds for the background shorthand 2012-05-15 13:24:40 -04:00
Cosimo Cecchi
3cd6edeba8 csspositionvalue: make empty error value non fatal
If there's just no value to parse (e.g. because we're parsing a
shorthand property), don't error out while trying to parse a number.
2012-05-15 13:24:40 -04:00
Cosimo Cecchi
a17c69cc03 shorthand: add background-position and background-size to bg shorthand 2012-05-15 13:24:40 -04:00
Cosimo Cecchi
cfc5854068 shorthand: use array values for shorthand properties parsing
Right now, just parse the first value in the array.
2012-05-15 13:24:40 -04:00
Cosimo Cecchi
9cdff6ed67 themingbackgorund: render all background layers
Now that background properties are arrays, use them in
GtkThemingBackground when rendering.
2012-05-15 13:24:40 -04:00
Cosimo Cecchi
214809ece2 colorswatch: don't use the clip box directly
We can render our checkboard pattern on the padding box instead. This is
in preparation for GtkThemingBackground supporting multiple layers.
2012-05-15 13:24:40 -04:00
Cosimo Cecchi
580b585fc9 styleproperty: make background-image an array value
This also requires having the GtkCssArrayValue parse func forward the
base GFile from the style property parse implementation.
2012-05-15 13:24:40 -04:00
Cosimo Cecchi
f65970b521 styleproperty: make background-size an array property 2012-05-15 13:24:40 -04:00
Cosimo Cecchi
9b04673392 styleproperty: make background-position an array property 2012-05-15 13:24:40 -04:00
Cosimo Cecchi
ed12be7e81 styleproperty: make background-repeat an array property 2012-05-15 13:24:40 -04:00
Cosimo Cecchi
f8e6e272a7 styleproperty: make background-clip and background-area array properties
Right now just make them arrays, but don't consider values after the
first.
2012-05-15 13:24:40 -04:00
Bastien Nocera
5bf82077f5 statusicon: Fix implicit declaration warning
gtkstatusicon.c:1333:4: warning: implicit declaration of function 'abs' [-Wimplicit-function-declaration]

Added in commit c837809960
2012-05-15 17:55:36 +01:00
Fernando Lemos
c837809960 statusicon: use absolute delta to find the nearest icon size
Otherwise, if we only look at (pixel_size - stock_size), we miss the
case when the pixel size is smaller than any provided stock size.

https://bugzilla.gnome.org/show_bug.cgi?id=673749
2012-05-15 10:34:28 -04:00
Matthias Clasen
1685b2b220 iconview: Bring back rtl flipping
This was lost in the recent layout rewrite.
2012-05-15 01:12:28 -04:00
Timothy Arceri
8d1f32aaaf GTK PrintToFile settings
To make setting output directory and filename simpler in the PrintToFile
dialog two gtkprintsettings have been added GTK_PRINT_SETTINGS_OUTPUT_DIR
 and GTK_PRINT_SETTINGS_OUTPUT_BASENAME.

This will reduce the code needed to implement a better name than "output.pdf"
and actually makes more sense than the existing setting
GTK_PRINT_SETTINGS_OUTPUT_URI which doesn't work seamlessly with
GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT like the new settings do.

https://bugzilla.gnome.org/show_bug.cgi?id=657322
2012-05-14 14:26:53 +02:00
Cosimo Cecchi
f900df6f01 box: set orientation style classes when setting orientation
Since we override the property, we have to call the internal helper
manually.
2012-05-11 11:46:59 -04:00
Benjamin Otte
25695684ad cssprovider: Remove unused members from scanner
Now that the parser takes care of the file, we don't need to keep track
of it ourselves anymore.
2012-05-11 16:42:12 +02:00
Benjamin Otte
0e4670150a csssection: Remove file argument from constructor
The parser has the file available.
2012-05-11 16:42:12 +02:00
Benjamin Otte
a7f238138e styleproperty: Remove base argument
from _gtk_style_property_parse_value(). The GtkCssParser takes care of
that now.
2012-05-11 16:42:12 +02:00
Benjamin Otte
6ee237ea59 cssstyleproperty: Remove base argument
from parse functions.
2012-05-11 16:42:12 +02:00
Benjamin Otte
1367ef7e54 cssstylefuncs: Remove base argument
The GtkCssParser keeps track of the base file now.
2012-05-11 16:42:12 +02:00
Benjamin Otte
cc6c7c5e16 cssshorthand: Don't pass base file anymore
It's part of the parser now.
2012-05-11 16:42:12 +02:00
Benjamin Otte
c9f01ffb43 cssimage: No need to pass base file anymore
The file is now part of the GtkCssParser
2012-05-11 16:42:12 +02:00
Benjamin Otte
e1317268a3 cssparser: Change APIs that work with files
Now that we keep track of the parser's file, we don't require it to be
passed anymore.
2012-05-11 16:42:12 +02:00
Benjamin Otte
a65780902a cssparser: Keep track of the file 2012-05-11 16:42:11 +02:00
Benjamin Otte
a8d8c02ab7 Revert "cssprovider: Remove unused members from scanner"
This reverts commit b501e64a8a.
2012-05-11 16:41:25 +02:00
Benjamin Otte
b501e64a8a cssprovider: Remove unused members from scanner
Now that the parser takes care of the file, we don't need to keep track
of it ourselves anymore.
2012-05-11 16:35:30 +02:00
Bastien Nocera
c6a7a0889c gtk: Fix warnings for some uses of GtkLinkButton
Not setting a URI but catching the activate-link signal is a
valid use of GtkLinkButton, but we shouldn't allow showing a
popup menu which offers to copy the URI if there's none.
2012-05-10 15:22:31 +01:00
Michael Natterer
c1cfcd03a5 quartz: add a special case to GtkIMContextSimply for entering '"'
Turn dead_doubleacute plus space into '"' and not into a double
acute because that's the way to enter double quotes on the
US-International keyboard layout.
(cherry picked from commit 71164e57b9)
2012-05-10 11:06:09 +02:00
Benjamin Otte
cc057d5c4e iconview: Don't draw unallocated items
This is more a workaround for Clutter-GTK than anything else. Most of
all, it makes gnome-boxes start again.
2012-05-09 14:23:10 +02:00
Rico Tzschichholz
73f3263e6c gtk: Add private headers to EXTRA_DIST
This got lost with 985881ffcc
2012-05-08 09:16:51 +02:00
Benjamin Otte
d736d06db8 iconview: Only compute item sizes in one place
Code was using different places to compute the icon size when layouting
and when doing size requests. This resulted in non-matching behavior in
obscure cases. And that lead to iconviews that were too small.
2012-05-08 03:58:23 +02:00
Benjamin Otte
e31fb77c22 iconview: Bring back per-row contexts
Apparently GtkCellAreaContext is broken enough to not allow multiple
allocations...
2012-05-08 03:58:23 +02:00
Benjamin Otte
e8eeb39d98 iconview: Move wrap width adjustment to size request code 2012-05-08 03:58:23 +02:00