Commit Graph

389 Commits

Author SHA1 Message Date
Matthias Clasen
779d3d58ea Some improvements to the auto-mnemonics code 2010-04-03 20:53:36 -04:00
Matthias Clasen
d68d78de81 Only show the mnemonic underline when pressing Alt
...and show them in menus when navigating the menu with the keyboard.
This is similar to what other platforms do, and reduces visual clutter.
There is a setting to control this. Most of the work on this patch was
done by Thomas Wood. See bug 588554.
2010-04-03 20:53:35 -04:00
Matthias Clasen
b68bbbb892 Fix doc typos
Reported in bug 604902.
2010-04-03 20:51:56 -04:00
Torsten Schoenfeld
600ae2db92 [docs] Add some 'Since: 2.4' tags
This patch adds Since: 2.4 tags to gtk_bindings_activate_event,
gtk_window_propagate_key_event and gtk_window_activate_key.

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

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-04-03 20:51:55 -04:00
Colin Walters
fcbbd763cd [introspection] Merge in Gtk-custom.c annotations
The Gtk-custom.c file in gir-repository contained a number of
introspection annotations.  Merge those into the GTK source files.

Some documentation was moved from the tmpl/ files to accomodate
the addition of annotations.
2010-04-03 20:51:53 -04:00
Christian Dywan
00d87c2563 [gtk/gtkwindow] Added accessor for GTK_WINDOW ()->type
There already is the "type" property, but an accessor
function for it would be intuitive: gtk_window_get_window_type()

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=595498
2009-11-11 20:07:39 +01:00
Javier Jardón
e8e82802a4 Fix compilation warning: Use GDK_GPOINTER_TO_NATIVE_WINDOW() macro 2009-11-10 20:26:59 +01:00
Tor Lillqvist
0e87c90539 Revert "Fix compilation warning: Use G_POINTER_TO_UINT"
GPOINTER_TO_UINT() *does* drop the upper 32 bits on 64-bit
Windows. After all, it by definition produces a (32-bit) unsigned int.

The GLib commit mentioned in the reverted commit's log message just
means that it does this without any compiler warning about casting
from pointer to integer of smaller size, as it first casts to a 64-bit
integer, then casts that to a (32-bit) int.

We must use the GdkNativeWindow cast here so that on 64-bit Windows
the gpointer data in embedded_list is converted to a (64-bit) native
window handle without going through 32-bit truncation. If ifdefs are
required to avoid compiler warnings on X11, so be it then. Probably it
would be best to introduce a GDK_GPOINTER_TO_NATIVE_WINDOW() macro in
gdktypes.h.

This reverts commit 78151dc7d4.
2009-11-10 16:17:33 +02:00
Javier Jardón
78151dc7d4 Fix compilation warning: Use G_POINTER_TO_UINT
GPOINTER_TO_UINT() doesn't drops the upper 32 bits on Win64 anymore.
The Glib commit e4194cb055e44f8a1bd2ab666ead9fa040bcdb89 solved this
problem.
2009-11-09 21:18:22 +01:00
Matthias Clasen
0f78a6c89a Allow setting type hints on unmapped windows
We set the hint on map, so it makes sense to check for GTK_WIDGET_MAPPED,
not GTK_WIDGET_VISIBLE as the code currently does.
2009-10-28 12:13:58 -04:00
Javier Jardón
42aebf51a2 Use G_STRFUNC instead __FUNCTION__ 2009-10-26 18:46:14 +01:00
Alexander Larsson
c5d0861179 Don't request window sizes with zero width or height
Zero width/height is unsupported and will magically be turned into one.
For instance, gtk_widget_size_allocate() will eventually do this magic
on the value stored in widget->allocation.

However, if we don't do this magic conversion early, then the value
returned from gtk_window_compute_configure_request() will not be
comparable with whats stored in widget->allocation. (I.E. they will
differ if width or height are zero).

This is dangerous, as we do such a comparison in gtk_window_move_resize().
Currently a change from e.g. 10x1 (current allocation) to 10x0 (new size)
will be expected to produce a ConfigureNotify, when it actually won't,
thus never thawing the frozen toplevel.

Fixes bug #588059
2009-10-05 22:07:06 +02:00
Matthias Clasen
0ea5787fca Fix a typo 2009-09-09 00:03:15 -04:00
Christian Persch
2105d946cf Plug a mem leak
GtkWindow was leaking the startup_id, reported in bug 593317.
2009-08-29 21:19:44 -04:00
Matthias Clasen
d6afa6eff2 Fix a typo in the startup-id property definition
As well as some new GtkPrintOperation properties, which were not
correctly set up. This was noticed in bug 588958.
2009-07-19 23:52:58 -04:00
Alexander Larsson
5e0bd0c9be Set user_time from startup_id if window realized
For non-realized windows we set the user_time from the startup id on
realization. However, if the window is already realized when the
startup_id is not set we currently don't, but we should. (#573922)
2009-04-07 15:39:00 +02:00
Alexander Larsson
bb093cf44c Set errno to 0 before calling strtoul
We check errno for failure, so ensure its cleared first. (#573922)
2009-04-07 15:32:16 +02:00
Matthias Clasen
b25cfb78fc fix slist/list confusion
Don't use g_list_find on a GSList in _gtk_window_set_is_toplevel
(rh#492767).
2009-04-02 10:21:15 -04:00
Matthias Clasen
632a4f6a7e Add a function to get the default window icon name
svn path=/trunk/; revision=22387
2009-02-20 05:54:53 +00:00
Matthias Clasen
4569b49bed Keep GtkPlug in sync with the global list of toplevels.
Patch by Federico Mena Quintero

        * gtk/gtkwindow.h:
        * gtk/gtkwindow.c (_gtk_window_set_is_toplevel): New internal
        function used when a GtkPlug parents/unparents itself by an
        in-process GtkSocket.  This keeps the plug's GTK_TOPLEVEL flag in
        sync with the global toplevel_list.

        * gtk/gtkplug.c (gtk_plug_set_is_child): Call
        _gtk_window_set_is_toplevel() to keep the toplevel list updated,
        instead of just setting/unsetting the GTK_TOPLEVEL flag.


svn path=/trunk/; revision=22191
2009-01-23 05:57:36 +00:00
Matthias Clasen
60523a7b8e Don't cause lots of X traffic when the icon name doesn't actually change.
* gtk/gtkwindow.c (gtk_window_set_icon_name): Don't cause lots
        of X traffic when the icon name doesn't actually change. Some
        apps like to reset their window icon frequently, without actually
        changing the icon name...


svn path=/trunk/; revision=22103
2009-01-13 03:04:52 +00:00
Matthias Clasen
a69b549408 Doc additions
svn path=/trunk/; revision=21998
2008-12-29 07:39:34 +00:00
Tristan Van Berkom
4858ae47e2 Made buildable and added support for adding children of type "submenu"
* gtk/gtkmenuitem.c: Made buildable and added support for adding children
	of type "submenu"

	* gtk/gtkwindow.c: Added support for custom tag "accel-groups" to add GtkAccelGroups
	to the window.

	* gtk/gtkcontainer.c: Added builder contextual warnings in buildable_add_child()

	* gtk/tests/builder.c: Added tests for buildable menus (test that accelerators are
	properly connected on stock items, test the menu hierarchy, test permission to
	add alien/custom menuitem children).

	* docs/reference/gtk/tmpl/gtkbuilder.sgml, docs/reference/gtk/tmpl/gtkwindow.sgml,
	docs/reference/gtk/tmpl/gtkmenuitem.sgml: Updated docs for buildable submenus
	and accel groups.


svn path=/trunk/; revision=21767
2008-11-06 17:34:30 +00:00
Matthias Clasen
784896ae1e Bug 552318 – menubar mnemonics consumed even when
2008-10-13  Matthias Clasen  <mclasen@redhat.com>

        Bug 552318 – menubar mnemonics consumed even when
        gtk-enable-mnemonics=false

        * gtk/gtkwindow.c (gtk_window_activate_key): Don't let mnemonic
        entries block accelerator activation when gtk-enable-mnemonics is
        FALSE. Problem reported by Andreas Moog.


svn path=/trunk/; revision=21648
2008-10-14 02:00:11 +00:00
Sven Neumann
b699ac5853 gtk/gtkaccellabel.c gtk/gtkaction.c gtk/gtkclist.c gtk/gtkcolorbutton.c
2008-08-12  Sven Neumann  <sven@gimp.org>

	* gtk/gtkaccellabel.c
	* gtk/gtkaction.c
	* gtk/gtkclist.c
	* gtk/gtkcolorbutton.c
	* gtk/gtkctree.c
	* gtk/gtkdialog.c
	* gtk/gtkdnd-quartz.c
	* gtk/gtkdnd.c
	* gtk/gtkentry.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkfilesel.c
	* gtk/gtkgamma.c
	* gtk/gtkiconview.c
	* gtk/gtkkeyhash.c
	* gtk/gtklabel.c
	* gtk/gtkmenu.c
	* gtk/gtkmenubar.c
	* gtk/gtkpaned.c
	* gtk/gtkrecentchooserdialog.c
	* gtk/gtkrecentchooserutils.c
	* gtk/gtkselection.c
	* gtk/gtksizegroup.c
	* gtk/gtktextbtree.c
	* gtk/gtktextbuffer.c
	* gtk/gtktextview.c
	* gtk/gtktoolbar.c
	* gtk/gtktreemodel.c
	* gtk/gtkuimanager.c
	* gtk/gtkwindow-decorate.c
	* gtk/gtkwindow.c: use canonical signal names in some more places
	that I missed earlier. Also changed this in the documentation and
	comments.


svn path=/trunk/; revision=21094
2008-08-12 14:37:03 +00:00
Michael Natterer
e18d3c6fd3 consistently chain up using GTK_FOO_CLASS(parent_class)->bar(instance)
2008-08-12  Michael Natterer  <mitch@imendio.com>

	* gtk/*.c: consistently chain up using
	GTK_FOO_CLASS(parent_class)->bar(instance) instead of
	(*GTK_FOO_CLASS(parent_class))->bar(instance).


svn path=/trunk/; revision=21085
2008-08-12 09:06:34 +00:00
Sven Neumann
5de626f17d use canonical signal names.
2008-08-08  Sven Neumann  <sven@gimp.org>

	* gtk/gtkwidget.c:
	* gtk/gtkwindow.c: use canonical signal names.


svn path=/trunk/; revision=21042
2008-08-08 13:44:46 +00:00
Tor Lillqvist
729524185b gtk/gtk.symbols gtk/makegtkalias.pl gtk/gtkaccelmap.c gtk/gtkfilechooser.c
2008-08-08  Tor Lillqvist  <tml@novell.com>

	* gtk/gtk.symbols
	* gtk/makegtkalias.pl
	* gtk/gtkaccelmap.c
	* gtk/gtkfilechooser.c
	* gtk/gtkfilesel.c
	* gtk/gtkiconfactory.c
	* gtk/gtkicontheme.c
	* gtk/gtkimage.c
	* gtk/gtkrc.c
	* gtk/gtkuimanager.c
	* gtk/gtkwindow.c: No need for the DLL ABI backward compatibility
	functions on Win64.


svn path=/trunk/; revision=21040
2008-08-08 03:49:18 +00:00
Tor Lillqvist
eff4be5c8d Bug 544684 - Win64 issue, window handles are assumed to be 32-bit
2008-08-05  Tor Lillqvist  <tml@novell.com>

	Bug 544684 - Win64 issue, window handles are assumed to be 32-bit

	* gtk/gtkwindow.h
	* gtk/gtkwindow.c: Change the type of the xid parameter of the
	internal gtk_window_remove_embedded_xid() and
	gtk_window_add_embedded_xid() functions from guint to
	GdkNativeWindow.

	* gtk/gtkwindow.c (send_client_message_to_embedded_windows):
	Instead of GPOINTER_TO_UINT(), just cast the gpointer to
	GdkNativeWindow. GPOINTER_TO_UINT() drops the upper 32 bits on
	Win64.


svn path=/trunk/; revision=20992
2008-08-04 22:57:36 +00:00
Michael Natterer
d132b616e2 move the code of the deprecated gtk_window_set_policy() to a new private
2008-08-04  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkwindow.c: move the code of the deprecated
	gtk_window_set_policy() to a new private function
	gtk_window_set_policy_internal() and call it from
	gtk_window_set_policy().

	(gtk_window_set_resizable): use the new internal function in order
	to avoid our own deprecated public API.


svn path=/trunk/; revision=20965
2008-08-04 13:52:56 +00:00
Matthias Clasen
5478721aba Bug 65818 – rename gtk_window_set_default() and add getter for it
svn path=/trunk/; revision=20931
2008-08-02 04:29:47 +00:00
Cody Russell
4e3c97b3f2 Bug 56070 – Can't click button after setting it sensitive.
2008-07-31  Cody Russell  <bratsche@gnome.org>

        Bug 56070 – Can't click button after setting it sensitive.

        * gtk/gtkwidget.[ch] 
        * gtk/gtkwindow.c
        * gtk/gtkmain.c
        * gtk/gtkbutton.c
        * gtk/gtkprivate.h
        * gdk/gdkevents.h: Synthesize crossing events events where necessary.

        * gtk/tests/crossingevents.c: Add unit tests for crossing events.

        Big thanks to Ed Catmur, Matthias Clasen, and everyone else who
        has worked on and helped out with this.


svn path=/trunk/; revision=20924
2008-08-01 03:30:50 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Matthias Clasen
ab019f3ade Avoid unnecessary redraws when resizing. Patch by Owen Taylor
* gtk/gtkwindow.c: Avoid unnecessary redraws when resizing.
        Patch by Owen Taylor


svn path=/trunk/; revision=20705
2008-06-30 05:17:02 +00:00
Johan Dahlin
d97cdbdf53 Include "config.h" instead of <config.h> Command used: find -name
2008-06-21  Johan Dahlin  <jdahlin@async.com.br>

    * *.[ch]: Include "config.h" instead of <config.h>
    Command used:
    find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
    Rubberstamped by Mitch and Tim


svn path=/trunk/; revision=20669
2008-06-22 14:28:52 +00:00
Johan Dahlin
e46eeab2a9 Add missing Since: gtk-doc markup for newly added GSEAL API. Change all
2008-06-20  Johan Dahlin  <jdahlin@async.com.br>

    * gtk/gtkaccelgroup.c:
    * gtk/gtkcolorseldialog.c:
    * gtk/gtkcontainer.c:
    * gtk/gtkdialog.c:
    * gtk/gtkentry.c (gtk_entry_class_init):
    * gtk/gtkfontsel.c:
    * gtk/gtkhandlebox.c:
    * gtk/gtklayout.c:
    * gtk/gtkmenu.c (gtk_menu_class_init):
    * gtk/gtkmenuitem.c (gtk_menu_item_class_init):
    * gtk/gtkplug.c (gtk_plug_class_init):
    * gtk/gtkselection.c:
    * gtk/gtksocket.c:
    * gtk/gtktreeselection.c:
    * gtk/gtkwidget.c (gtk_widget_class_init):
    * gtk/gtkwindow.c:
    Add missing Since: gtk-doc markup for newly added GSEAL API.
    Change all Since: GSEAL-branch to Since: 2.14.


svn path=/trunk/; revision=20639
2008-06-20 13:54:31 +00:00
Michael Natterer
a44c258282 gtk/gtkwindow.[ch] rename gtk_window_group_get_windows() to
2008-06-20  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkwindow.[ch]
	* gtk/gtk.symbols: rename gtk_window_group_get_windows() to
	gtk_window_group_list_windows().


svn path=/trunk/; revision=20635
2008-06-20 11:51:44 +00:00
Tim Janik
870b9c868c Add gtk_window_group_get_windows().
* gtk/gtk.symbols:
* gtk/gtkwindow.[ch] (gtk_window_group_get_windows): New function.

svn path=/trunk/; revision=20632
2008-06-20 11:10:55 +00:00
Tim Janik
26153af8af Add gtk_window_get_default()
* gtk/gtkwindow.[ch]: Add gtk_window_get_default().
* gtk/gtk.symbols: same here.

svn path=/trunk/; revision=20536
2008-06-20 11:02:08 +00:00
Ross Burton
be7eacbf3f Fix trivial typo in documentation.
2008-06-06  Ross Burton  <ross@burtonini.com>

	* gtk/gtkwindow.c:
	Fix trivial typo in documentation.

svn path=/trunk/; revision=20323
2008-06-06 09:55:06 +00:00
Tristan Van Berkom
b1542fe913 Chain up in buildable_finish()
* gtk/gtkwindow.c: Chain up in buildable_finish()

	* gtk/gtkbuilder.c: _gtk_builder_get_absolute_filename() handle
	cases where g_path_get_dirname() returns "."

	* docs/reference/gtk/tmpl/gtklabel.sgml, 
	docs/reference/gtk/tmpl/gtkbuilder.sgml: Added documentation
	for the <attributes> tags on GtkLabel


svn path=/trunk/; revision=20008
2008-04-16 16:35:17 +00:00
Tor Lillqvist
aae6c90fdf Bug 314084 - GTK+ dialogs should not be placed partially offscreen
2008-03-20  Tor Lillqvist  <tml@novell.com>

	Bug 314084 - GTK+ dialogs should not be placed partially offscreen

	* gtk/gtkwindow.c (clamp): New function. Clamps a window position
	in one dimension, or centered in case it doesn't fit.
	(clamp_window_to_rectangle): Simplify. Call clamp() for x and y
	dimensions.


svn path=/trunk/; revision=19907
2008-03-20 03:00:45 +00:00
Matthias Clasen
0509519d35 Unify the handling of various "Enter" keysyms all over the place.
2008-02-12  Matthias Clasen  <mclasen@redhat.com>

        * gtk/*.c: Unify the handling of various "Enter" keysyms
        all over the place.  (#515047, Christian Persch)



svn path=/trunk/; revision=19528
2008-02-12 15:51:09 +00:00
Michael Natterer
c3c1fb9822 simply use gtk_window_get_key_hash() to get the hash instead of manually
2008-02-12  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkwindow.c (gtk_window_activate_key): simply use
	gtk_window_get_key_hash() to get the hash instead of manually
	fiddling with quarks and gtk_window_keys_changed(). Also add
	g_return_if_fail() to this public function.


svn path=/trunk/; revision=19521
2008-02-12 10:02:46 +00:00
Johan Dahlin
71e9be7e6d Use G_OBJECT_WARN_INVALID_PROPERTY_ID consistently. Fixes #5075
2008-01-06  Johan Dahlin  <johan@gnome.org>

	* gtk/gtkcellrenderercombo.c:
	(gtk_cell_renderer_combo_get_property),
	(gtk_cell_renderer_combo_set_property):
	* gtk/gtkcombobox.c: (gtk_combo_box_set_property):
	* gtk/gtkcomboboxentry.c: (gtk_combo_box_entry_set_property):
	* gtk/gtknotebook.c: (gtk_notebook_set_property):
	* gtk/gtkspinbutton.c: (gtk_spin_button_set_property):
	* gtk/gtktextbuffer.c: (gtk_text_buffer_set_property),
	(gtk_text_buffer_get_property):
	* gtk/gtktextview.c: (gtk_text_view_set_property):
	* gtk/gtktogglebutton.c: (gtk_toggle_button_set_property):
	* gtk/gtktoolbutton.c: (gtk_tool_button_set_property),
	(gtk_tool_button_get_property):
	* gtk/gtktoolitem.c: (gtk_tool_item_set_property),
	(gtk_tool_item_get_property):
	* gtk/gtktreeview.c: (gtk_tree_view_set_property):
	* gtk/gtkwidget.c: (gtk_widget_set_property):
	* gtk/gtkwindow.c: (gtk_window_set_property):
	Use G_OBJECT_WARN_INVALID_PROPERTY_ID consistently.
	Fixes #5075

svn path=/trunk/; revision=19311
2008-01-06 03:28:40 +00:00
Matthias Clasen
cd2d87b471 Zero some variables to silence valgrind. (#495124, Morten Welinder)
2007-11-27  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkwindow.c (gtk_window_move_resize): Zero some
        variables to silence valgrind.  (#495124, Morten Welinder)


svn path=/trunk/; revision=19077
2007-11-27 18:15:28 +00:00
Matthias Clasen
4896e24bb1 Require gtk-doc 1.8
2007-11-25  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Require gtk-doc 1.8

        * */*.c: Use gtk-doc abbreviations for examples in docs.


svn path=/trunk/; revision=19041
2007-11-25 06:51:19 +00:00
Kristian Rietveld
eab3ef3145 Fixes #426246.
2007-09-12  Kristian Rietveld  <kris@imendio.com>

	Fixes #426246.

	* gdk/gdk.symbols:
	* gdk/gdkwindow.[ch]
	(gdk_window_freeze_toplevel_updates_libgtk_only),
	(gdk_window_thaw_toplevel_updates_libgtk_only): new functions
	to freeze a toplevel window and all its descendants.  To be made
	public in 2.14,
	(gdk_window_schedule_update): return if toplevel is frozen,
	(gdk_window_process_all_updates): defer processing updates if toplevel
	is frozen.

	* gtk/gtkwindow.c (gtk_window_configure_event): directly size
	allocate for override redirect windows, freeze toplevel and
	descendants otherwise and wait until resizing is done.


svn path=/trunk/; revision=18802
2007-09-12 17:13:24 +00:00
Stefan Kost
bf4b559a31 Update menu accelerators, when adding/removing AccelGroups dynamically.
* gtk/gtkwindow.c: Update menu accelerators, when adding/removing
	AccelGroups dynamically. (#469374)


svn path=/trunk/; revision=18691
2007-08-27 17:46:53 +00:00