Commit Graph

259 Commits

Author SHA1 Message Date
Cosimo Cecchi
5f45878133 statusicon: plug memory leak 2015-12-09 10:45:26 -08:00
Benjamin Otte
ccfc4d3f12 iconhelper: Remove the context argument
Instead, use the widget's context.
2015-12-09 13:30:40 +01:00
Benjamin Otte
c9d1a45d30 iconhelper: Require a widget as construction argument
Note that the caller needs to ensure the widget lives as long as the
iconhelper as the iconhelper will not ref the widget.
2015-12-09 13:30:40 +01:00
Benjamin Otte
ee5758a4e1 statusicon: Port from iconhelper to imagedefinition 2015-12-09 13:30:40 +01:00
Benjamin Otte
cf77c1695d iconhelper: Pass only the CssStyle when loading iconsets 2015-12-09 13:30:40 +01:00
Benjamin Otte
88a490fe58 iconfactory: Move private functions into private header 2015-12-09 13:30:40 +01:00
Benjamin Otte
1b835fc7ce css: Leftover renaming gtk-image-effect => icon-effect
The previous renaming commit was incomplete, so here we go again.
2015-12-04 17:44:51 +01:00
Benjamin Otte
b8dd24b4fb iconfactory: Drop caching infrastructure
- icon sets are essentially unused
- the icon theme does caching
- this code complicates the restructuring I'm about to do

=> Delete it!
2015-12-04 17:44:51 +01:00
Benjamin Otte
bc1b53a34c css: Query icon theme from style, not from settings
No need to look at the settings when the CSS has a property for the icon
theme.
2015-12-02 03:18:26 +01:00
Benjamin Otte
2396265523 css: Rename -gtk-image-effect to -gtk-icon-effect
This is a property for icons, so we should name it as such.
2015-12-02 00:29:31 +01:00
Benjamin Otte
7f93858ccc Stop using gtk_icon_size_lookup_for_settings()
Use the equivalent gtk_icon_size_lookup() instead.
2015-12-02 00:29:31 +01:00
Benjamin Otte
6d65b7d772 iconfactory: Make state depend on image-effect
This removes the dependency on state, which should be used for selection
CSS styles, not for actually applying them.

And image-effect does exactly what we want already, so we can start
using it.
2015-12-02 00:29:30 +01:00
Benjamin Otte
b411c31832 statusicon: Use gtk_icon_helper_load_surface()
This is in preparation for the next commit.
2015-12-02 00:29:30 +01:00
Benjamin Otte
415030d25f dnd: Split GtkDragSourceSite into its own file 2015-11-25 20:31:27 +01:00
Matthias Clasen
a863b06576 Don't use g_slist_next in gtkstock.c
We generally use ->next directly.
2015-10-20 06:14:57 -04:00
Matthias Clasen
9727a4c4bf Don't use g_slist_next in gtkiconfactory.c
We generally use ->next directly.
2015-10-20 06:14:57 -04:00
Alexander Larsson
d5f1754981 gtk: Stop setting GDK_EXPOSURE_MASK on random widgets
These days exposure happens only on the native windows (generally the
toplevel window) and is propagated down recursively. The expose event
is only useful for backwards compat, and in fact, for double buffered
widgets we totally ignore the event (and non-double buffering breaks
on wayland).

So, by not setting the mask we avoid emitting these events and then
later ignoring them.

We still keep it on eventbox, fixed and layout as these are used
in weird ways that want backwards compat.
2015-09-14 11:01:13 +02:00
Matthias Clasen
29c799a1e7 Use g_object_get_qdata instead of g_object_get_data
This is less expensive.
2015-09-12 12:50:39 -04:00
Matthias Clasen
fd682a58de toggle action: Remove an unused variable 2015-09-06 17:11:33 -04:00
Matthias Clasen
9f24b54786 Code cleanup
Use g_slist_free_full more consistently. This commit just converts
the obvious cases where g_slist_forall is directly followed by
g_slist_free.
2015-07-31 22:23:35 -04:00
Stefan Sauer
6f4518ab4b gtkimagemenuitem: improve the replacement docs even more
Since the stock strings usually have menmosics suggest
gtk_menu_item_new_with_mnemonic().
2015-07-20 21:04:28 +02:00
Stefan Sauer
8a6bad7faf gtkimagemenuitem: fix suggestion for replacement
gtk_menu_item_new(9 would create an empty menu item. While the stock deprecation
aims to unclutter the menus, I feel this goes too far.
2015-07-20 20:54:52 +02:00
Eric Williams
6038474060 Added an additional explanation and code snippet for GtkImageMenuItem.c
https://bugzilla.gnome.org/show_bug.cgi?id=752093
2015-07-08 13:53:07 -04:00
Eric Williams
a74a3da745 Added a more meaningful description for /deprecated/gtkimagemenuitem.c
https://bugzilla.gnome.org/show_bug.cgi?id=752088
2015-07-08 06:10:00 -04:00
Emmanuele Bassi
d2569a3860 docs: Drop deprecated symbolic icon names
Do not suggest using icons that do not exist.
2015-07-04 19:34:23 +01:00
Matthias Clasen
3c711cc98a Fix a typo
gtk-doc complained about a multi-line Since: tag, but the
real culprit was a typo in the Deprecated: tag.
2015-06-20 10:52:01 -04:00
Matthias Clasen
047ad11353 Drop an unused variable 2015-06-13 21:10:26 -04:00
Emmanuele Bassi
b493bf091a docs: Improve deprecation notices for GtkMisc
Point to the replacement properties and functions.

https://bugzilla.gnome.org/show_bug.cgi?id=750718
2015-06-11 11:45:03 +01:00
Emmanuele Bassi
5a61246946 docs: Improve deprecation notices for GtkImageMenuItem properties
Should help porting code away from the deprecated GtkImageMenuItem
class.

https://bugzilla.gnome.org/show_bug.cgi?id=750718
2015-06-11 11:45:03 +01:00
Emmanuele Bassi
715777154b docs: Add deprecation notices for GtkAlignment properties
We want people to port their code away from deprecated classes, and this
helps finding a replacement.

https://bugzilla.gnome.org/show_bug.cgi?id=750718
2015-06-11 11:45:03 +01:00
Matthias Clasen
00236c0d21 Fix compiler warnings
Fix warnings due to -Wdeclaration-after-statement and -Wshadow.
2015-06-02 09:08:14 -04:00
Emmanuele Bassi
dc41c59006 Amend deprecation warnings for GtkStyle API
Not everything has a replacement in the API, as the drawing model
changed considerably; nevertheless, this should help out developers
porting from the deprecated GtkStyle API.
2015-05-14 17:00:14 +01:00
Matthias Clasen
543eae0d76 Avoid some clang compiler warnings
Avoid some compiler warnings from clang in deprecated code.
Most of these are around our habit of using -1 as an 'unset'
value for enumerations.
2015-03-22 15:13:32 -04:00
Benjamin Otte
da25771e58 cssvalue: Remove GtkCssDependencies
They are not used anymore.
2015-03-18 15:23:31 +01:00
Matthias Clasen
7fbbf850c3 Improve some GtkStock deprecation notes
Point at edit-delete and edit-paste as available icons.
2015-03-05 16:07:30 -05:00
Murray Cumming
bc77408e3c gtk_misc_set_alignment(): Improve the deprecation documenation.
To link to GtkWidget.halign/valign and to mention
GtkLabel.xalign/yalign.
2015-03-02 09:46:49 +01:00
Ignacio Casal Quinteiro
486b56e179 statusicon: missed setting one uID 2015-02-21 16:00:31 +01:00
Arnav Singh
f07677c105 statusicon: fix crash storing pointer in UINT
https://bugzilla.gnome.org/show_bug.cgi?id=696505
2015-02-21 15:49:15 +01:00
Matthias Clasen
b15193943a GtkStatusIcon: Expand deprecation docs
https://bugzilla.gnome.org/show_bug.cgi?id=743975
2015-02-05 10:42:57 +01:00
Benjamin Otte
717877dff2 render: Rename gtkborderimage.[ch]
I want the gtkrender prefix for all filenames about rendering.
2015-01-20 06:30:18 +01:00
Lars Uebernickel
931a479da9 gtkimagemenuitem: create widget for action icons lazily
GtkImageMenuItem always packs a GtkImage when it is synced with a
related action. This is unnecessary when the action doesn't have an icon
set and results in excess padding when a GtkImageMenuItem is put in a
menu bar (GtkUIManager does this).

Fix this by not creating the GtkImage for icon-less actions.

https://bugzilla.gnome.org/show_bug.cgi?id=742181
2015-01-18 19:45:13 -05:00
Christoph Reiter
500bd60873 Adjust gtk_status_icon_position_menu() annotation to match GtkMenuPositionFunc again
https://bugzilla.gnome.org/show_bug.cgi?id=674537

https://bugzilla.gnome.org/show_bug.cgi?id=742940
2015-01-17 16:31:26 -05:00
Emmanuele Bassi
9a38fb79e5 docs: Add missing quote
The missing " breaks the syntax highlighting of the GtkImageMenuItem
example.
2015-01-09 16:42:55 +00:00
Emmanuele Bassi
79f806fdab Point to copy/cut/delete named icons in the stock item deprecations
We still use symbolic icons for Copy, Cut, and Delete operations inside
toolbars and some menus, so it's worth pointing to the symbolic icon
names in the deprecation notices.

https://bugzilla.gnome.org/show_bug.cgi?id=741969
2015-01-08 23:50:22 -05:00
Benjamin Otte
572f46067f cssstyle: Rename GtkCssComputedValues => GtkCssStyle
This is literally just renaming of the object (and the associated source
files). No other changes are in there.
2015-01-07 14:26:46 +01:00
Lars Uebernickel
b44df22895 Menu items: force loading 16x16 icons
GtkIconTheme doesn't scale icons beyond the size specified in the theme
anymore. This can result in arbitrarily large menu items when a theme
only provides large icons.

Force icons to always be 16x16 to ensure that menu items always have the
same height.

https://bugzilla.gnome.org/show_bug.cgi?id=741259
2014-12-17 17:52:03 +01:00
Benjamin Otte
b49c7c3421 styleprovider: Fold get_change() vfunc into lookup() 2014-12-10 03:49:40 +01:00
Matthias Clasen
25d9412c7e Split subdirectory file lists off
This moves a little closer to a proper nonrecursive setup, and
makes the gtk Makefile.am less monstrous.
2014-11-30 16:11:56 -05:00
Jasper St. Pierre
90f94de615 deprecated/gtkstyle: Optimize GtkStyleContext usage
Even though this is deprecated, it's still initialized for every
screen at startup, so let's minimize the cost.
2014-11-25 11:05:04 -08:00
Benjamin Otte
2002613012 styleproperties: Move into deprecated directory 2014-10-24 21:31:40 +02:00
Chun-wei Fan
1c099ec784 gtk/deprecated/gtkstatusicon.c: Fix Build on C89 Compilers
Declare variable at the top of the block, which is needed from the change
in commit 1bad7865.
2014-10-24 12:23:31 +08:00
Emmanuele Bassi
183257f9e1 docs: Add replacement example for ImageMenuItem
Otherwise we will be doomed to answer the question of how to replace
GtkImageMenuItem for all eternity.
2014-10-23 17:42:19 +01:00
Brion Vibber
1bad7865d3 Fix to gtkstatusicon.c to allow building both X11 and Quartz backends
https://bugzilla.gnome.org/show_bug.cgi?id=739005
2014-10-22 22:56:51 -04:00
Matthias Clasen
4f2feb97c2 Avoid deprecation warnings
We don't really care if we use deprecated API inside deprecated
code, so just ignore the warning.
2014-10-15 14:43:19 -04:00
Matthias Clasen
15af0e789b Revert "gtktrayicon-x11: Stop using set_double_buffered"
This reverts commit 4a72563c7b.

It turns out that this commit broke statusicons under Xfce when
not using a compositor.

https://bugzilla.gnome.org/show_bug.cgi?id=737986
2014-10-15 14:43:19 -04:00
Benjamin Otte
a0bf0a0f70 themingengine: Call real API render functions
No need to call the private versions anymore now that the real ones
don't call into the theming engine.
2014-10-03 06:18:05 +02:00
Benjamin Otte
23948d6a3a themingengine: Move actual render functions to gtkrender.c
GtkThemingEngine just always calls
  gtk_do_render_foo(engine->priv->context, ...)
now. Other than that, the code is unchanged.
2014-10-03 06:18:05 +02:00
Benjamin Otte
d3c147a62d stylecontext: Split render functions out into gtkrender.[ch] 2014-10-03 06:18:05 +02:00
Marek Kasik
8b5d30d439 Remove redundant checks for NULL
Remove checks for NULL before g_free() and g_clear_object().
Merge check for NULL, freeing of pointer and its setting
to NULL by g_clear_pointer().

https://bugzilla.gnome.org/show_bug.cgi?id=733157
2014-10-02 19:06:03 +02:00
Matthias Clasen
059e33ecea Keep GtkMisc:xalign working for labels
Set the new label properties when gtk_misc_set_alignment is used,
to keep things working.
2014-09-29 23:56:20 -04:00
Matthias Clasen
a43e0177cf Revert "Undreprecate GtkMisc::x/yalign for now"
This reverts commit 29eae57be4.

We have GtkLabel:xalign now, so deprecate the GtkMisc property again.
2014-09-29 23:56:20 -04:00
Matthias Clasen
c7930417b4 GtkColorSelection: Better typography
Use U+201C/U+201D for quoting, and use U+2019 instead of apostrophe.

https://bugzilla.gnome.org/show_bug.cgi?id=735192
2014-09-29 23:05:21 -04:00
Sébastien Wilmet
c104c64436 Better mark GtkAlignment as deprecated
- Move the class to the Deprecated section.
- Warning at the bottom of the class description.
- A missing property was not marked as deprecated.
- Update doc of gtk_container_set_border_width() to not mention
  GtkAlignment.

https://bugzilla.gnome.org/show_bug.cgi?id=736622
2014-09-17 15:02:50 +02:00
Sébastien Wilmet
21e0a114e0 docs: GtkStatusIcon is deprecated since 3.14, not 3.16 2014-09-17 15:02:50 +02:00
Matthias Clasen
29eae57be4 Undreprecate GtkMisc::x/yalign for now
These can't quite be replaced by h/valign, so keep the properties
undeprecated for 3.14.
2014-09-15 23:22:54 -04:00
Matthias Clasen
e014b89310 Move gtkthemingengine to deprecated directory
This is the place for wholly-deprecated sources.
2014-08-29 16:35:37 -04:00
Rico Tzschichholz
0ef0b9872e gtk: Fix broken docs of GtkTranslateFunc 2014-08-18 14:38:04 +02:00
Matthias Clasen
c9da8bf2b3 Revert "docs: Fix broken gtk-doc formatting"
This reverts commit a7562dd38f.

I prefer to not confuse gtk-doc with doc comments for private
functions.
2014-08-18 08:18:02 -04:00
Rico Tzschichholz
a7562dd38f docs: Fix broken gtk-doc formatting
Fixes broken introspection of GtkTranslateFunc
2014-08-18 13:27:05 +02:00
Benjamin Otte
6c06bd55da gtk: Don't use gtk_render_activity()
... in places where we draw a background. This was changed for GTK 3.0.0
to allow animations, but these days it doesn't make sense anymore to use
gtk_render_activity() for backgrounds.
2014-08-16 16:34:14 +02:00
Matthias Clasen
cab7dcde1b Deprecate GtkStatusIcon
GtkStatusIcon is using a problematic, XEmbed-based protocol under X,
and we want to get rid of it eventually. Document our intentions by
marking GtkStatusIcon as deprecated.

https://bugzilla.gnome.org/show_bug.cgi?id=734826
2014-08-15 13:02:31 -04:00
Matthias Clasen
66492678b5 Flip GTK_STOCK_CLEAR icon in rtl locales
Adwaita now includes an edit-clear-rtl variant, so lets use it.
2014-06-26 18:02:05 -04:00
Michael Catanzaro
d9d0ba83ac docs: add missing apostrophe 2014-06-21 12:16:29 -05:00
Matthias Clasen
ef30b8c051 docs: Drop image references for stock items
Most of those images are no longer in our tree, so just
say which ones have icons and rtl variants, instead of
showing it.
2014-06-20 10:55:48 -04:00
Matthias Clasen
36be12578c Drop the builtin icon cache
We don't need it anymore, now that the non-standard stock icons
are using resources.
2014-06-20 01:17:44 -04:00
Matthias Clasen
a4b0d35649 Don't mention no longer existing widgets in the docs
GtkText, GtkList and GtkCList don't exist anymore.
2014-06-11 00:04:04 -04:00
Benjamin Otte
4a6957f50d stylecontext: Remove state from _peek_style_property()
It evaluates to "current state" in all cases, so no need to special case
it.
2014-06-11 01:18:04 +02:00
Matthias Clasen
f6e5f88454 GtkRecentChooser: Use G_PARAM_EXPLICIT_NOTIFY 2014-06-09 13:31:03 -04:00
Chun-wei Fan
bbed824320 gtk/deprecated/gtkcolorsel.c: Include gtkwindowgroup.h
Since commit 872fbfac the GtkWindowGroup was split out from the GtkWindow
sources, so include gtkwindowgroup.h to avoid C4013 warnings/errors
(implicit declaration of ...) on gtk_window_group_add_window().
2014-06-05 14:45:35 +08:00
Evan Nemerson
54ec42f035 gtk: port many nullability annotation fixes from Vala bindings
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-30 13:24:20 -07:00
Matthias Clasen
489b59867c Revert "GtkMisc: Keep gtk_misc_set_alignment working"
This reverts commit aabc356b80.

Labels are back to looking at x/yalign (for now).
2014-05-29 10:32:46 -04:00
Evan Nemerson
9db729f5a6 gtk: fix several out argument annotations
These mostly just switch from allow-none to optional, nullable, or
both, as necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:33 -07:00
Evan Nemerson
bda145b19f gtk: fix annotation syntax and missing some missing annotations
These changes clean up various errors and omissions resulting from
either slightly incorrect G-I/gtk-doc syntax or missing documentation
blocks.

https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Evan Nemerson
e596e58c51 gtk: port missing array annotations from Vala bindings
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Evan Nemerson
e568903360 gtk: fix many callback annotations to include closure information
Without this information introspection-based consumers don't realize
they can include context information, but instead think that they
receive an extra gpointer argument (which they don't know how to
handle).

https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Matthias Clasen
aabc356b80 GtkMisc: Keep gtk_misc_set_alignment working
Now that labels and images no longer use x/yalign in their code,
we need to make gtk_misc_set_alignment set the h/valign for these
widgets, to keep it stumbling along until its final demise.

https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:48:12 -04:00
Matthias Clasen
04703689b8 Deprecate GtkAligment
This has been dangling ever since 3.0.

https://bugzilla.gnome.org/show_bug.cgi?id=645781
2014-05-23 20:31:25 -04:00
Matthias Clasen
edd6c4d487 docs: enum cleanup
Move GtkExpanderStyle over to the deprecated GtkStyle.
2014-05-20 09:54:01 -04:00
Matthias Clasen
04192d04a2 docs: enum cleanup
Move types that are only used in binding parsing to
gtkrc, together with the deprecated api.
2014-05-20 09:54:01 -04:00
Matthias Clasen
cf1c8c8c69 docs: enum cleanup
Move GtkAttachOptions to the only place its used: GtkTable
2014-05-20 09:54:01 -04:00
Matthias Clasen
8b0b024385 More deprecation docs for GtkArrow 2014-05-13 23:52:47 -04:00
Matthias Clasen
a600718846 Deprecate GtkArrow
https://bugzilla.gnome.org/show_bug.cgi?id=729564
2014-05-13 23:50:13 -04:00
Matthias Clasen
ec0a60a248 Deprecate GtkMisc
This has been dangling ever since 3.0.
2014-05-13 08:45:00 -04:00
Matthias Clasen
7b17060654 GtkIconFactory: Remove outdated information from the docs
The stock browser was removed from gtk3-demo.
2014-05-11 22:02:45 -04:00
Matthias Clasen
49733154a6 Deprecate GtkNumerableIcon
It was a failed experiment, it is basically unused, and it complicates
code in GtkIconTheme that we want to rework.
2014-05-11 22:02:32 -04:00
Matthias Clasen
bf8a169cb9 docs: Another round of markup removal 2014-03-29 00:24:15 -04:00
Bastien Nocera
f71f7215ab all: Name more idles and timeouts
Following up from 438cd857c4,
name more timeouts and idles.

The original grep was missing checking for gdk_threads_add_*()
functions (at least for some of the files).

https://bugzilla.gnome.org/show_bug.cgi?id=726870
2014-03-26 20:09:30 -04:00
William Jon McCann
469d333aa2 docs: use Returns: consistently
Instead of Return value:
2014-02-19 18:56:05 -05:00
Matthias Clasen
c779b42476 Docs: use // for comments in examples
Without sgml mode, we can't escape /* as /* anymore,
so just switch to // for comments in examples.
2014-02-14 23:34:22 -05:00
Matthias Clasen
7f6a964c47 Docs: Remove all entities and turn off sgml mode
With all element markup gone, it is time to turn off
sgml mode, and get rid of entities as well.
2014-02-09 17:58:07 -05:00