Commit Graph

95 Commits

Author SHA1 Message Date
Tor Lillqvist
0cc4738b0c Bug 510000 - GtkStatusIcon doesn't reshow after explorer.exe crash
2008-03-12  Tor Lillqvist  <tml@novell.com>

	Bug 510000 - GtkStatusIcon doesn't reshow after explorer.exe crash

	* gtk/gtkstatusicon.c [Win32]: Keep a list of status icons. Check
	for the TaskbarCreated message in the window procedure for the
	dummy "tray observer" window we create. When we get a
	TaskbarCreated message, iterate over the status icons and re-add
	them to the task bar, and update them by calling
	gtk_status_icon_update_image().

	Move some ifdefs around to avoid unused functions.


svn path=/trunk/; revision=19792
2008-03-12 19:34:38 +00:00
Michael Natterer
697a50929e #include "gtkmain.h" for gtk_get_current_event_time().
2008-02-12  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkstatusicon.c: #include "gtkmain.h" for
	gtk_get_current_event_time().


svn path=/trunk/; revision=19522
2008-02-12 10:26:42 +00:00
Matthias Clasen
3b4ad6af97 Fix the build
svn path=/trunk/; revision=19517
2008-02-12 03:48:09 +00:00
Matthias Clasen
7cc251c016 Support keynav in status icons. (#473786, Li Yuan)
2008-02-11  Matthias Clasen  <mclasen@redhat.com>

        Support keynav in status icons.  (#473786, Li Yuan)

        * gtk/gtkstatusicon.c: Handle keynav, make the tray icon focusable.

        * gtk/gtktrayicon-x11.c: Draw a focus rectangle when focused.



svn path=/trunk/; revision=19515
2008-02-12 03:24:03 +00:00
Matthias Clasen
b2ad97dd38 Stylistic fixes
svn path=/trunk/; revision=18974
2007-11-09 16:56:17 +00:00
Jaap Haitsma
5c327ecbe5 Remove usage of deprecated GtkTooltips API. Use
2007-07-09  Jaap Haitsma  <jaap@haitsma.org>

	* gtk/gtkstatusicon.c: Remove usage of deprecated GtkTooltips API. Use
	gtk_widget_set_tooltip_text instead

svn path=/trunk/; revision=18411
2007-07-09 17:48:06 +00:00
Tor Lillqvist
314f5f93fc On Win32 call gtk_status_icon_button_press() in an idle callback and not
2007-07-04  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkstatusicon.c: On Win32 call
	gtk_status_icon_button_press() in an idle callback and not
	directly from the window procedure to avoid "g_main_loop_run():
	called recursively from within a source's check() or prepare()
	member, iteration not possible" warnings.


svn path=/trunk/; revision=18377
2007-07-04 08:20:18 +00:00
Tim Janik
c7e4f38dbb fixed push_in description.
Wed Jun 27 11:57:41 2007  Tim Janik  <timj@imendio.com>

        * gtk/gtkstatusicon.c (gtk_status_icon_position_menu): fixed push_in description.



svn path=/trunk/; revision=18258
2007-06-27 09:58:59 +00:00
Matthias Clasen
cdac32d374 More doc fixes
svn path=/trunk/; revision=17936
2007-05-26 20:24:25 +00:00
Matthias Clasen
6573ed5f12 Fix some compiler warnings. (#433642, Kjartan Maraas)
2007-04-30  Matthias Clasen  <mclasen@redhat.com>

        Fix some compiler warnings.  (#433642, Kjartan Maraas)

        * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_get_info):
        (gtk_file_system_win32_create_folder):
        * gtk/gtkaction.c (gtk_action_create_menu): Fix NULL/FALSE confusion.

        * gtk/gtklinkbutton.c (gtk_link_button_clicked): Pass
        the right type to uri_func.

        * gtk/gtktext.c (gtk_text_key_press):
        * gtk/gtkstatusicon.c (gtk_status_icon_get_property):
        * gtk/gtkxembed.c (_gtk_xembed_send_message): Add casts.

        * gtk/gtktrayicon-x11.c (gtk_tray_icon_manager_window_destroyed):
        (gtk_tray_icon_delete):
        * gtk/gtkprintunixdialog.c (create_main_page):
        * gtk/gtkhsv.c (gtk_hsv_motion): Remove unused variables.

        * gtk/gtkliststore.c: Adapt callbacks to GSequence types.


svn path=/trunk/; revision=17739
2007-04-30 16:18:54 +00:00
Matthias Clasen
7af6e12b47 Add a note about being embedded. (#340107, Christian Persch)
2007-04-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkstatusicon.c (gtk_status_icon_get_size): Add
        a note about being embedded.  (#340107, Christian Persch)



svn path=/trunk/; revision=17677
2007-04-28 15:52:25 +00:00
Matthias Clasen
0030448e26 Fix GtkStatusIcon to not take up space on the panel if it is invisible.
2007-01-27  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkstatusicon.c:
        * gtk/gtktrayicon-x11.c: Fix GtkStatusIcon to not
        take up space on the panel if it is invisible.  (340110, Christian
        Persch)

        * tests/teststatusicon.c:
        * tests/Makefile.am: Updates



svn path=/trunk/; revision=17224
2007-01-27 05:51:19 +00:00
Tor Lillqvist
046642509d Don't leak HICONs on Win32. (#364868, Hiroyuki Yamamoto)
2006-12-28  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_finalize)
	(gtk_status_icon_update_image): Don't leak HICONs on
	Win32. (#364868, Hiroyuki Yamamoto)
2006-12-28 16:50:35 +00:00
Tor Lillqvist
cc89cf541f Add gtk_status_icon_get_screen and gtk_status_icon_set_screen.
2006-12-27  Tor Lillqvist  <tml@novell.com>

	* gtk/gtk.symbols: Add gtk_status_icon_get_screen and
	gtk_status_icon_set_screen.

	* gtk/gtkstatusicon.c: Implement gtk_status_icon_position_menu()
	on Windows. Keep track of where the last button click on the
	taskbar icon took place, and return that. Obviously not correct if
	no button has ever been clicked on the icon, or if the geometry of
	the taskbar has changed since. But for most use cases where a menu
	is going to be displayed as a direct result of a button click on
	the status icon, works fine. (#377349)

	Implement getting the orientation property on Windows.

	(gtk_status_icon_embedded_changed)
	(gtk_status_icon_orientation_changed): Ifdefify these functions
	that are used only on X11.
2006-12-27 18:20:10 +00:00
Matthias Clasen
721c3bc101 Replace a lot of idle and timeout calls by the new gdk_threads api.
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * *.c: Replace a lot of idle and timeout calls by
        the new gdk_threads api.
2006-12-22 19:10:43 +00:00
Matthias Clasen
d9a6a829ce Make it possible to track the embeddedness of statusicon (#387215, Martyn
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        Make it possible to track the embeddedness of
        statusicon (#387215, Martyn Russell, patch by Christian
        Persch)

        * gtk/gtkstatusicon.c: Add orientation and embedded properties.
        * gtk/gtkplug.c:
        * gtk/gtkplug-x11.c: Add an embedded property.
        * tests/teststatusicon.c: Test the new properties.
2006-12-22 07:18:21 +00:00
Mikael Hallendal
e3655ec688 Fixed a last minute change in the quartz backend.
2006-12-20  Mikael Hallendal  <micke@imendio.com>

	* gtk/gtkstatusicon.c: (gtk_status_icon_init): Fixed a last minute
	change in the quartz backend.
2006-12-20 14:02:43 +00:00
Mikael Hallendal
f18b0d4b7a Added gtkstatusicon-quartz.c Implements the quartz backend for the status
2006-12-20  Mikael Hallendal  <micke@imendio.com>

	* gtk/Makefile.am: Added gtkstatusicon-quartz.c
	* gtk/gtkstatusicon-quartz.c: Implements the quartz backend for the
	status icon.
	* gtk/gtkstatusicon.c: Hooked in the new quartz backend. Bug #387874.
2006-12-20 13:24:05 +00:00
Christian Persch
6282e799d8 Notify when the screen changes. Bug #379793.
2006-11-27  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkstatusicon.c: Notify when the screen changes. Bug #379793.
2006-11-27 21:17:19 +00:00
Mark McLoughlin
8241b0b7dd Fixes bug #376502 - multi-screen support for GtkStatusIcon
2006-11-19  Mark McLoughlin  <mark@skynet.ie>

        Fixes bug #376502 - multi-screen support for GtkStatusIcon

        * gtk/gtkstatusicon.[ch]:
        (gtk_status_icon_set_screen),
        (gtk_status_icon_get_screen): add multi-screen API. Allows
        an app to display an icon on a non-default screen
        (gtk_status_icon_class_init),
        (gtk_status_icon_set_property),
        (gtk_status_icon_get_property): add a "screen" property

        * tests/teststatusicon.c: update to test on multiple screens
2006-11-19 16:22:23 +00:00
Matthias Clasen
07e7719441 Apply a cleanup patch by Kjartan Maraas (#341812)
2006-10-08  Matthias Clasen  <mclasen@redhat.com>

	* Apply a cleanup patch by Kjartan Maraas  (#341812)
2006-10-08 05:07:55 +00:00
Matthias Clasen
f45a35921a Commit a patch by Behdad to fix typos, omissions and other errors in the
2006-09-10  Matthias Clasen  <mclasen@redhat.com>

        * Commit a patch by Behdad to fix typos, omissions and other
        errors in the symbol aliasing, and add checks for local PLT
        entries.  (#354687, Behdad Esfahbod)
2006-09-10 06:39:16 +00:00
Matthias Clasen
3fb5819e11 Don't leak pixbufs. (#352264, Ross Burton)
2006-08-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_reset_image_data):
	Don't leak pixbufs.  (#352264, Ross Burton)
2006-08-26 06:26:35 +00:00
Matthias Clasen
6aa85bbffb Add some caveats to the documentation. (#348971)
2006-08-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_get_geometry): Add some
	caveats to the documentation.  (#348971)
2006-08-17 14:35:29 +00:00
Matthias Clasen
f8794cccca Improve consistency of signal and property names 2006-07-06 05:14:03 +00:00
Matthias Clasen
125893d77a allow returning partial information 2006-06-02 17:56:37 +00:00
Matthias Clasen
bbca88c99c allow positioning bubbles 2006-05-25 05:53:42 +00:00
Matthias Clasen
113f364a37 More of the same 2006-05-14 04:25:34 +00:00
Matthias Clasen
fc7320d5bb Some cleanups.
2006-05-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon.c: Some cleanups.

	* gtk/gtkstatusicon.c (gtk_status_icon_get_property): Silently return
	NULL if the storage type of the image does not match.  (#340516, Christian
	Persch)
2006-05-08 18:57:06 +00:00
Matthias Clasen
1c8e249822 fix the build 2006-04-30 05:08:06 +00:00
Matthias Clasen
9e3a16029e Fix the definition of the ::size-changed signal, and improve its
2006-04-30  Matthias Clasen  <mclasen@localhost.localdomain>

	* gtk/gtkstatusicon.c (gtk_status_icon_class_init): Fix the definition
	of the ::size-changed signal, and improve its documentation.
	(#340112, Christian Persch)
2006-04-30 04:53:40 +00:00
Matthias Clasen
10583204d9 Add a menu position function for use with popups on status icons.
2006-04-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkstatusicon.h:
	* gtk/gtkstatusicon.c (gtk_status_icon_position_menu): Add a menu
	position function for use with popups on status icons.  (#334573,
	Christian Persch)
2006-04-29 06:34:14 +00:00
Matthias Clasen
96d37bc2ee Add docs.
2006-04-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkprintunixdialog.c: Add docs.

	* gtk/gtkstatusicon.c (gtk_status_icon_get_visible): Typo fix.
2006-04-24 17:51:51 +00:00
Matthias Clasen
0d10969b9f Match parameter names with the headers.
2006-04-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkclipboard.h:
	* gtk/gtkprinter.c:
	* gtk/gtkprintsettings.h:
	* gtk/gtkprintsettings.c: Match parameter names with the headers.

	* gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog):
	Add docs.

	* gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize):
	* gtk/gtkstatusicon.c (gtk_status_icon_get_storage_type):
	* gtk/gtktreeview.c (gtk_tree_view_set_search_position_func):
	* gtk/gtktreeview.c (gtk_tree_view_get_headers_clickable):
	* gtk/gtkcellrendererspin.c (gtk_cell_renderer_spin_new):
	* gtk/gtkmenu.c (gtk_menu_get_for_attach_widget): Fix the docs.
2006-04-24 05:42:12 +00:00
Matthias Clasen
89e079e10b Make it compile 2005-12-12 17:32:36 +00:00
Matthias Clasen
a3ff3e112b Register the size-changed signal correctly. (#323848, Murray Cumming)
2005-12-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
	the size-changed signal correctly.  (#323848, Murray Cumming)
2005-12-12 17:14:45 +00:00
Tim Janik
fbb2e3f4f5 deprecated floating/sink API and implemented it in terms of the GObject
Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>

        * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
        in terms of the GObject floating/sink API.

        * gtk/gtkaboutdialog.c:
        * gtk/gtkaction.c:
        * gtk/gtkcellview.c:
        * gtk/gtkclist.c:
        * gtk/gtkcolorsel.c:
        * gtk/gtkcombobox.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtkiconview.c:
        * gtk/gtkinvisible.c:
        * gtk/gtkitemfactory.c:
        * gtk/gtklayout.c:
        * gtk/gtkmenu.c:
        * gtk/gtkmenutoolbutton.c:
        * gtk/gtknotebook.c:
        * gtk/gtkprogress.c:
        * gtk/gtkrange.c:
        * gtk/gtkspinbutton.c:
        * gtk/gtkstatusicon.c:
        * gtk/gtktext.c:
        * gtk/gtktextview.c:
        * gtk/gtktoolbar.c:
        * gtk/gtktoolbutton.c:
        * gtk/gtktoolitem.c:
        * gtk/gtktreeitem.c:
        * gtk/gtktreeview.c:
        * gtk/gtktreeviewcolumn.c:
        * gtk/gtkuimanager.c:
        * gtk/gtkviewport.c:
        * gtk/gtkwidget.c:
        * gtk/gtkwindow.c:
        ported to use GObject's g_object_ref_sink().

        * gtk/gtkcolorsel.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtkaboutdialog.c:
        fixed compiler warnings.
2005-11-23 18:06:58 +00:00
Tor Lillqvist
36e1f67ac2 Plug memory leak on Win32.
2005-11-04  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
	leak on Win32.
2005-11-04 00:37:31 +00:00
Tor Lillqvist
3d18823ae1 Include gtkstatusicon.c on all platforms.
2005-11-03  Tor Lillqvist  <tml@novell.com>

	* gtk/Makefile.am: Include gtkstatusicon.c on all platforms.

	* gtk/gtkstatusicon.c: Implement for Win32. Use code from
	gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
	necessary and can be removed from CVS. It has never been mentioned
	in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
	are used on Win32. One label widget is used (but never shown) as
	gtk_widget_render_icon() needs a widget.

	Ifdefs used as necessary in several places. It might be cleaner to
	split out the backend-specific parts to separate files, or at
	least collect them into separate blocks in the file.

	(wndproc): New function. Window procedure to monitor mouse events
	in the system tray icon. Call gtk_status_icon_button_press() as
	needed.
	(create_tray_observer): New function. Creates a hidden window that
	only serves as a tray icon message observer.
2005-11-03 13:17:01 +00:00
Matthias Clasen
80b528bfeb Activate status icons on single click 2005-10-26 03:18:09 +00:00
Matthias Clasen
94eec04267 Intern some more strings.
2005-09-01  Matthias Clasen  <mclasen@redhat.com>

        * gdk/*.c: Intern some more strings.
        * gtk/gtkintl.h:
        * gtk/*.c: Define an I_() macro and use it instead of the
        bulky g_intern_static_string().
2005-09-01 05:11:46 +00:00
Matthias Clasen
5b59e80fcc Fix typos 2005-08-29 23:48:49 +00:00
Matthias Clasen
9a9d081dad Don't refer to nonexisting stock ids.
2005-08-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock):
	* gtk/gtkimage.c (gtk_image_new_from_stock): Don't
	refer to nonexisting stock ids.
2005-08-29 20:06:16 +00:00
Matthias Clasen
b17a4ae336 Add docs.
2005-08-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon-x11.c: Add docs.

	* gtk/gtkstatusicon.h: Fix a typo.
2005-08-29 19:01:42 +00:00
Matthias Clasen
60182d34db Add a cross-platform "tray icon" API, by porting EggStatusIcon/EggTrayIcon
2005-08-29  Matthias Clasen  <mclasen@redhat.com>

	Add a cross-platform "tray icon" API, by
	porting EggStatusIcon/EggTrayIcon (#105101)

	* gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
	displays an icon in a notification area.

	* gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
	X11, using GtkTrayIcon.

	* gtk/gtktrayicon.h:
	* gtk/gtktrayicon.c: An implementation of the freedesktop.org
	system tray specification, not public API.

	* gtk/gtk.symbols: Add new exported functions.

	* gtk/gtk.h: Include gtkstatusicon.h.

	* gtk/Makefile.am: Add new files.

	* tests/Makefile.am:
	* tests/teststatusicon.c: Test for GtkStatusIcon.
2005-08-29 17:47:10 +00:00