Commit Graph

319 Commits

Author SHA1 Message Date
Soeren Sandmann
1a5e92dd61 Bug 143330, support update counter spec.
Sun Jul 11 15:24:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	Bug 143330, support update counter spec.

	* configure.in: Add check for the Sync extension

	* gdk/gdkwindow.h: gdk_window_enable_synchronized_configure() and
	gdk_window_configure_finished()

	* gtk/gtkwindow.c (gtk_window_move_resize): Call gdk_window_finish_configure().
	* gtk/gtkwindow.c (gtk_window_realize): Automatically enable
	synchronized configures.

	* gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store current
	and pending counter values.

	* gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): New function.
	* gdk/x11/gdkwindow-x11.c
	(gdk_window_enable_synchronized_configure): New function.
	* gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents):
	Delete update counter.
	* gdk/x11/gdkwindow-x11.c (set_wm_protocols): Advertise
	_NET_WM_SYNC_REQUEST when Sync is available

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Handle
	_NET_WM_SYNC_REQUEST messages
	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Save counter
	value for use by gdk_window_configure_finished() when receiving
	ConfigureNotifies.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add use_sync flag
	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Check if the XSync
	extension is available
	* gdk/x11/gdkdisplay-x11.c: Add _NET_WM_SYNC_REQUEST and
	_NET_WM_SYNC_REQUEST_COUNTER to list of supported atoms.

	* gdk/linux-fb/gdkwindow-fb.c, gdk/win32/gdkwindow-win32.c: Add
	stubs for enable_synchronized_configure() and configure_finished()
2004-07-11 13:26:57 +00:00
Matthias Clasen
e3fbe3c14f Fix links to www.freedesktop.org. (#145210, Billy Biggs)
Sat Jul  3 23:43:23 2004  Matthias Clasen  <maclas@gmx.de>

	* docs/faq/gtk-faq.sgml:
	* gtk/gtkwindow.c: Fix links to www.freedesktop.org.  (#145210,
	Billy Biggs)
2004-07-04 03:46:24 +00:00
Matthias Clasen
684ce0c68b Make detached handleboxes work when their parent is minimized, porting the
Mon May 31 02:16:37 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkhandlebox.c: Make detached handleboxes work when their
	parent is minimized, porting the fix from 1.2.  (#1923, #57182)

Mon May 31 02:03:17 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_show): Make moving realized,
	unmapped windows work.
2004-05-31 06:29:07 +00:00
Matthias Clasen
8f74f43f3b Make static.
2004-05-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkwindow.c (get_screen_icon_info):
	Make static.
2004-05-10 21:13:41 +00:00
Elijah Newren
5502f77eaf Changes to support do-not-focus-on-map hint in conjunction with
2004-05-05  Elijah Newren  <newren@math.utah.edu>

	Changes to support do-not-focus-on-map hint in conjunction with
	_NET_WM_USER_TIME (#115650):

	* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
	field focus_on_map

	* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
	set it.

	* gtk/gtkwindow.[hc]: Add a boolean property "focus_on_map"
	and gtk_window_get_focus_on_map() and gtk_window_set_focus_on_map().

	* gdk/win32/gdkwindow-win32.c (gdk_window_new):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	* gdk/x11/gdkwindow-x11.c (gdk_window_new):
	Initialize the focus_on_map field to TRUE.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_focus_on_map):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_focus_on_map):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_focus_on_map):
	* gdk/x11/gdkwindow-x11.c (setup_toplevel_window):
	Implementations for the various backends. The Win32 and linux-fb
	implementations set the focus_on_map field, but don't use it yet
	to actually implement noinput windows. The X implementation sets
	_NET_WM_USER_TIME to 0 if focus_on_map is FALSE (see the EWMH).

	* gdk/x11/gdkwindow-x11.h:
	* gdk/x11/gdkevents-x11.c (set_user_time):
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
	* gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time):
	s/_gdk_x11_window_set_user_time/gdk_x11_window_set_user_time/,
	since we want that function to be part of the public API.
2004-05-06 02:57:01 +00:00
Owen Taylor
38bb62c43d Remove the window from the toplevel_list here rather in destroy. While
Sat Mar 13 15:19:17 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_destroy): Remove
        the window from the toplevel_list here rather in destroy.
        While this is theoretically speaking wrong, it fits
        in better with the current reality that destroyed
        widgets are not reusable. (#126808, Michael Natterer)
2004-03-13 20:45:15 +00:00
Federico Mena Quintero
edf8e6f580 Don't ignore the return value of gtk_widget_activate().
2004-03-12  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkwindow.c (gtk_window_activate_focus): Don't ignore the
	return value of gtk_widget_activate().
	(gtk_window_activate_default): Likewise.  Fixes #137008.

	* gtk/gtkfilechooserdialog.c (response_cb): Act on positive
	response IDs we recognize, rather than bailing out on cancellation
	ones.  Fixes #136237; patch by Olivier Andrieu
	<oliv__a@users.sourceforge.net>.
	(file_chooser_widget_file_activated): If the dialog doesn't have a
	default widget, try to find a suitable response widget on our own.
	People should *really* be using gtk_dialog_set_default_response(),
	but this is to help lazy programmers.

	* gtk/gtkdialog.c (_gtk_dialog_get_response_for_widget): New
	internal function.
	(get_response_data): Add a "create" argument so that we don't
	unconditionally create the response data.
2004-03-12 20:38:54 +00:00
Federico Mena Quintero
80581c3011 Fixes #136082 and #135265, patch by Morten Welinder.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

	Fixes #136082 and #135265, patch by Morten Welinder.

	* configure.in: Use AC_SYS_LARGEFILE.

	* */*.c: #include <config.h>
2004-03-06 03:38:59 +00:00
Owen Taylor
2ddeb7cd1c Check whether widgets are viewable, not just if they are mapped. (#122912,
Wed Mar  3 17:30:18 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_mnemonic_activate): Check
        whether widgets are viewable, not just if they are
        mapped. (#122912, reported by Tim Evans)
2004-03-03 22:36:02 +00:00
Tim Janik
c454880a0c expose gtk_bindings_activate_event(), changed callers.
Mon Mar  1 23:52:15 2004  Tim Janik  <timj@gtk.org>

        * gtk/gtkbindings.[hc]: expose gtk_bindings_activate_event(), changed
        callers.

        * gtk/gtkwindow.[hc]: added gtk_window_propagate_key_event() to expose
        the key event propagation mechanism used for focus widgets.
        (gtk_window_key_release_event): use the same key event propagation logic
        as gtk_window_key_press_event().
2004-03-02 00:04:36 +00:00
Owen Taylor
6062e54945 export gtk_window_activate_key() (Request from Tim Janik)
Sun Feb 29 20:34:06 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.[ch] gtk/gtkmenushell.c: export
        gtk_window_activate_key() (Request from Tim Janik)
2004-03-01 01:41:17 +00:00
Owen Taylor
3588aeb4af Various reentrancy fixes for widgets being destroyed out of
Thu Feb 12 21:58:20 2004  Owen Taylor  <otaylor@redhat.com>

        Various reentrancy fixes for widgets being destroyed
        out of focus-out-event. (#128821, Grant Gayed)

        * gtk/gtkwindow.c (_gtk_window_unset_focus_and_default):
        Ref window and widget over callbacks.

        * gtk/gtkwidget.c (gtk_widget_hide)
          gtk/gtkwidget.c (gtk_widget_set_child_visible):
        Ref the widget before calling _gtk_window_unset_focus_and_default(),
        since that can call user callbacks.

        * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
        Do nothing if the widget isn't realized.
2004-02-13 03:03:21 +00:00
Matthias Clasen
07d4d314b6 The first part of the fix for #114351 (see also gdk-pixbuf/ChangeLog and
Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>

	The first part of the fix for #114351 (see also
	gdk-pixbuf/ChangeLog and po/ChangeLog):

	* gtk/gtkintl.h:
	* gdk-pixbuf/gdk-pixbuf-i18n.h:
	* gdk/gdkintl.h: Define P_() for property blurbs and nicks.

	* gdk/gdkdisplaymanager.c:
	* gdk-pixbuf/gdk-pixbuf.c:
	* modules/input/gtkimcontextxim.c:
	* gtk/*.c:  Mark property blurbs and nicks with P_().

	* po/Makefile.in.in: Add --keyword=P_ to the xgettext
	invocation, since property blurbs and nicks are
	now marked with P_().
2004-01-16 23:10:05 +00:00
Matthias Clasen
5fb61f3075 Changes to allow "no input" windows (#64613):
Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>

	Changes to allow "no input" windows (#64613):

	* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
	field accept_focus.

	* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
	set it.

	* gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
	and gtk_window_get_focus() and gtk_window_set_focus().

	* gdk/win32/gdkwindow-win32.c (gdk_window_new):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
	Initialize the accept_focus field to TRUE.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus):
	Implementations for the various backends. The Win32 and linux-fb
	implementations set the accept_focus field, but don't use it yet
	to actually implement noinput windows. The X implementation updates
	the WM_HINTS to select the globally active input model (see the
	ICCCM) if accept_focus is FALSE.

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
	WM_TAKE_FOCUS message if accept_focus is FALSE.
2003-12-10 23:58:23 +00:00
Matthias Clasen
96fb3e8832 Make string setters safe for self-assignment. (#122745, Soeren Sandmann)
Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_set_role):
	* gtk/gtkwindow.c (gtk_window_set_title):
	* gtk/gtkwidget.c (gtk_widget_set_name):
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title):
	* gtk/gtkbutton.c (gtk_button_set_label): Make string setters
	safe for self-assignment.  (#122745, Soeren Sandmann)
2003-11-07 21:57:20 +00:00
Owen Taylor
9af0e7b6b6 Fix a residual call to gtk_window_get_private().
Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
        residual call to gtk_window_get_private().
2003-11-03 19:41:03 +00:00
Owen Taylor
077eee4dfb Remove some accidentally committed duplicate code.
Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
        some accidentally committed duplicate code.
2003-10-28 17:30:03 +00:00
Owen Taylor
097c3fe625 Add getters corresponding to the is_active and has_toplevel_focus
Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.[ch] (gtk_window_is_active,
        gtk_has_toplevel_focus): Add getters corresponding to
        the is_active and has_toplevel_focus properties.
        (#122531)
2003-10-28 15:43:43 +00:00
Owen Taylor
b3bafcf180 Protect against reentrancy from ::focus-out handlers. (#118129, Felipe
Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
        against reentrancy from ::focus-out handlers.
        (#118129, Felipe Heidrich)
2003-08-12 19:16:06 +00:00
Matthias Clasen
424433f1a4 Add support for EWMH "Above" and "Below" window states. (105100, Manuel Clos) 2003-08-10 23:37:37 +00:00
Matthias Clasen
5e79f817bd Rename parameter pixbuf to icon, to pacify gtk-doc.
2003-07-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf to icon, to
	pacify gtk-doc.
2003-07-31 18:58:15 +00:00
Soeren Sandmann
0c8511d269 Fix C99 declaration
Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
	declaration

	* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
	(gtk_widget_real_focus_{in|out}_event): queue shallow draws
	instead of full draws.
2003-07-18 22:12:51 +00:00
Matthias Clasen
7fa902f60b Add properties decorated and gravity. (#80234)
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234)
2003-07-18 22:00:20 +00:00
Matthias Clasen
eaae0a6b61 Add a new keybinding signal, move_viewport. (gtk_text_view_move_viewport):
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding signal, move_viewport.
	(gtk_text_view_move_viewport): New function which implements the move_viewport functionality.
	(gtk_text_view_move_cursor_internal): If the cursor is not visible, move the viewport. (#78669)

	* gtk/gtkenums.h (GtkScrollStep): New enumeration, used for move_viewport argument.

	* gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip property.  (#111779)

	* gtk/gtkwindow.h:
	* gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)

	* gtk/gtkmessagedialog.h:
	* gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
	(#65501, Sebastian Rittau)
2003-07-18 18:52:03 +00:00
Owen Taylor
d4ed293db4 Handle gtk_window_get_geometry_info() returning NULL. (#107311, John
Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
        gtk_window_get_geometry_info() returning NULL.
        (#107311, John Finlay)
2003-06-06 00:17:48 +00:00
Matthias Clasen
eed0e982f5 Add some hints and an example to the docs. (#98427)
2003-06-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
	an example to the docs.  (#98427)
2003-05-31 23:33:09 +00:00
Owen Taylor
e1fb536724 We need to pass the unmasked state to
Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need
        to pass the unmasked state to gdk_keymap_translate_keyboard_state()
        to handle the case where a modifier not in the mask
        (like Num_Lock) changes the key value, so replace
        the masked state with a state/mask pair. (#106913,
        Olivier Ripoll)

        * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
        in state/mask pair to _gtk_key_hash_lookup()
2003-05-21 17:49:49 +00:00
Owen Taylor
12ebd97fc2 Fix height/width confusion (#113370, Xan Lopez)
Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_compute_hints): Fix
        height/width confusion (#113370, Xan Lopez)
2003-05-20 21:14:29 +00:00
Soeren Sandmann
b5d8a668bd add property focus_on_click
Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkbutton.[ch] (gtk_button_class_init): add property
	focus_on_click

	* gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
	navigation not wrap around.
2003-04-02 21:50:45 +00:00
Matthias Clasen
60ea9cad6f Add a new property, role, corresponding to gtk_window_[gs]et_role().
2003-03-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c: Add a new property, role, corresponding to
	gtk_window_[gs]et_role().  (#93904)
2003-03-31 18:07:00 +00:00
Matthias Clasen
b414adc897 Replace uses of gtk_timeout_* and gtk_idle_* by their non-deprecated
GLib counterparts. Fully deprecate gtk_timeout_* and gtk_idle_*.
2003-02-05 23:48:11 +00:00
Matthias Clasen
59c27f2b0e Document that it may return NULL. (#102069)
2003-01-02  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
	return NULL.  (#102069)
2003-01-02 21:56:08 +00:00
Owen Taylor
6669d0c581 Some fixes for modal hint setting based on a patch from Arvind Samptur
Sun Dec 15 18:47:30 2002  Owen Taylor  <otaylor@redhat.com>

	Some fixes for modal hint setting based on a patch
	from Arvind Samptur (#100416)

	* gtk/gtkdialog.c (gtk_dialog_run): Call gtk_window_set_modal
	before showing the window for efficiency.

	* gtk/gtkwindow.c (gtk_window_realize): Ignore the EWMH
	constraint that the transient-for hint must always be
	set on windows with the modal hint and just always set
	the modal hint.

	* gtk/gtkwindow.c (gtk_window_set_modal): Update the
	modal hint on the GdkWindow when the window is realized.
2002-12-16 00:05:26 +00:00
Matthias Clasen
d745218d72 Add docs.
* gtk/gtkcontainer.c (gtk_container_class_install_child_property):
	(gtk_container_child_get_valist):
	(gtk_container_child_get_property):
	(gtk_container_child_set_valist):
	(gtk_container_child_set_property):
	(gtk_container_add_with_properties):
	(gtk_container_child_set):
	(gtk_container_child_get): Add docs.

	* gtk/gtkwindow.c (gtk_window_activate_default):
	(gtk_window_activate_focus): Add docs.
2002-12-15 01:15:52 +00:00
Owen Taylor
5b3964b91e Remove a couple of places if (widget->window), this function will only
Mon Dec  9 19:49:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_move_resize): Remove
        a couple of places if (widget->window), this function
        will only ever be called on a realized window.
        (#80225)
2002-12-10 00:53:47 +00:00
Matthias Clasen
7cb3f99fc7 Document 2.2 API additions. 2002-11-28 00:33:17 +00:00
Owen Taylor
ff9c2c5669 Add _gtk_window_unset_focus_and_default(), use to clear the focus and
Tue Nov 12 15:13:58 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c gtk/gtkwindow.[ch]: Add
        _gtk_window_unset_focus_and_default(), use to clear
        the focus and default out of parts of the widget
        heirarchy that we are hiding.

        * gtk/gtkwidget.c (gtk_widget_propagate_screen_changed_recurse):
        Fix typo that was resulting in missed screen-change
        notifies.

        * gtk/gtkwindow.c (do_focus_change): Allow for
        widget->window == NULL.

        * gtk/gtklabel.c (gtk_label_screen_changed): Clear the
        layout here not in hierarchy changed to handle the case
        where the toplevel was moved between screens.
2002-11-12 21:08:29 +00:00
Owen Taylor
2ae4c6ec3a Access window->screen through a function so we can provide an informative
Fri Nov  8 17:49:54 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_check_screen): Access
        window->screen through a function so we can provide
        an informative warning window window->screen is NULL.
        (#85703)
2002-11-08 23:03:36 +00:00
Owen Taylor
100286ac57 Add ::screen-changed signal.
Thu Nov  7 12:53:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.[ch] gtk/gtkwindow.c gtk/gtkinvisible.c:
        Add ::screen-changed signal.

        * gtk/gtkfontsel.c gtk/gtktoolbar.c: Use ::screen-changed
        signal to simplify logic.
2002-11-07 17:59:04 +00:00
Owen Taylor
accc3a3365 Add startup notification hooks - mostly based on patch by Havoc Pennington
Sat Nov  2 00:22:33 2002  Owen Taylor  <otaylor@redhat.com>

        Add startup notification hooks - mostly based on patch
        by Havoc Pennington in #96772.

        * gdk/gdk.h gdk/x11/gdkdisplay-x11.c
        gdk/{win32,linux-fb}/gdkmain-*.c: (gdk_notify_startup_complete):
        new function that indicates an application has finished starting
        up.

        * gdk/x11/gdkmain-x11.c gdk/x11/gdkdisplay-x11.c
        (_gdk_windowing_set_default_display): store value of
        DESKTOP_STARTUP_ID on the default screen, and clear it from the
        environment.

        * gdk/x11/gdkdisplay-x11.c:
        Set _NET_STARTUP_ID hint on display's group leader window.

        * gtk/gtkwindow.c (gtk_window_set_auto_startup_notification):
        function to toggle whether we automatically broadcast that we've
        started up, after mapping the first toplevel window.
        (gtk_window_map): call gdk_screen_notify_startup_complete() by
        default, unless enabled by above.

        * gtk/gtkmain.c gtk/gtkcombo.c gtk/gtktoolbar.c:
        Couple of warning fixes.
2002-11-02 05:37:04 +00:00
Matthias Clasen
ec84d8d14d small doc fixes. 2002-10-29 19:55:44 +00:00
Owen Taylor
745f20a6d7 Actively monitor the screen of the parent. (#80281)
Tue Oct 22 15:32:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c: Actively monitor the screen of the
        parent. (#80281)

        * gtk/gtkentry.c: Fix missing prototype from the
        last commit.
2002-10-22 19:54:40 +00:00
Havoc Pennington
74e51bc109 fix compiler warnings
2002-10-17  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (gtk_window_compute_configure_request): fix
	compiler warnings
2002-10-17 21:48:30 +00:00
Soeren Sandmann
fc2b515ef9 fix typo to make it compile
Thu Oct 17 22:37:57 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkwindow.c (get_center_monitor_of_window): fix typo to make
	it compile
2002-10-17 20:39:31 +00:00
Havoc Pennington
727eb8afbd add g_return_if_fail for monitor number <= 0
2002-10-16  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkscreen-x11.c (gdk_screen_get_monitor_geometry): add
	g_return_if_fail for monitor number <= 0

	* gtk/gtkmenu.c (gtk_menu_position): handle case where pointer
	is outside the screen.

	* gtk/gtkwindow.c (get_monitor_center): factor out
	the code to position a window in center
	(gtk_window_compute_configure_request): use here
	(gtk_window_constrain_position): use here, the
	code here wasn't multihead-aware

	* gdk/x11/gdkevents-x11.c (get_real_window): function to
	return the window the event describes, rather than the window
	that received the event.
	(gdk_event_translate): use result of that function for
	filling in GdkEvent::window, which only matters for
	MapNotify/UnmapNotify and ConfigureNotify, in practice.

	Unbreaks various things using SubstructureNotifyMask.
2002-10-17 20:24:03 +00:00
Soeren Sandmann
a130f089ca Documentation fixes.
Sun Oct 13 18:50:14 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtkmenu.c, gtkmenu.sgml, gtkitemfactory.c, gdkwindow.c,
	gtkwindow.c, gtkpaned.sgml, gtkdialog.c, gtkbox.h, gtkbutton.sgml,
	gtktreemodel.sgml,gtktable.sgml, gtktable.c:

	Documentation fixes.

	#85719, #90759, #95169, Owen Taylor;
	#89221, Yao Zhang, Matthias Clasen;
	#95592, Joost Faassen;
	#92637, Vitaly Tishkov;
	#94616, Ben Martin;
	#94772, sbaillie@bigpond.net.au;
2002-10-13 17:17:14 +00:00
Matthias Clasen
d8d0bf7ce9 Documentation improvements. 2002-10-10 23:42:57 +00:00
Manish Singh
cb7c950af0 Deprecation cleanup
Tue Oct  8 17:34:26 2002  Manish Singh  <yosh@gimp.org>

        * gtk/gtkmain.c gtk/gtkscrolledwindow.[ch] gtk/gtksettings.c
        gtk/gtkstatusbar.[ch] gtk/gtkstyle.c gtk/gtktoolbar.[ch]
        gtk/gtkviewport.[ch] gtk/gtkwindow.[ch]: Deprecation cleanup
2002-10-09 00:38:22 +00:00
Owen Taylor
203d7f660f Clean up the handling of clearing transient state settings, fixing bug
Mon Oct  7 12:40:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_move_resize): Clean
        up the handling of clearing transient state
        settings, fixing bug #95026, reported by Jami
        Pekannen.
2002-10-07 16:51:50 +00:00
Owen Taylor
ef33adff83 Add a 'type' parameter, make public.
Thu Oct  3 14:13:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.c (gdk_event_new): Add a 'type'
        parameter, make public.

        * gdk/gdkevents.c (gdk_event_copy): Copy the screen.

        * gdk/gdkevents.c gdk/linux-fb/gdkmain-fb.c
        gdk/x11/gdkevents-x11.c gdk/win32/gdkevents-win32.c:
        _gdk_event_new() => gdk_event_new().

        * gdk/win32/gdkevents-win32.c (real_window_procedure):
        Fix event_private->screen breakage that results from evil
        encapsulation breakage here.

        * gtk/gtkclist.c gtk/gtkcombo.c gtk/gtkcontainer.c
        gtk/gtkdialog.c gtk/gtkdnd.c gtk/gtkdrawingarea.c
        gtk/gtkimcontextsimple.c gtk/gtklist.c gtk/gtkmenu.c
        gtk/gtknotebook.c gtk/gtkplug.c gtk/gtkselection.c
        gtk/gtktext.c gtk/gtktreeitem.c gtk/gtktreeview.c
        gtk/gtkviewport.c gtk/gtkwindow-decorate.c gtk/gtkwindow.c
        tests/testgtk.c: Remove most usage of stack-allocated
        GdkEvent structures.

        * gtk/gtktreeview.c: Use a cut-and-paste of the full
        send_focus_event() from gtkwindow.c that does the necessary
        notification of the ::has-focus property and setting of
        the HAS_FOCUS flag.x

        * gtk/gtkdnd.c: Clean up some mess/duplicated code; removing
        an extraneous use of a GdkEvent.
2002-10-03 20:53:30 +00:00
Manish Singh
2eb145c26f Deprecation cleanup
Tue Oct  1 12:53:44 2002  Manish Singh  <yosh@gimp.org>

        * gtk/gtkwindow-decorate.c gtkwindow.[ch]: Deprecation cleanup
2002-10-01 19:55:08 +00:00
Owen Taylor
41030b43c6 Add gtk_window_set_icon_from_file(),
Mon Sep 30 14:28:58 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.[ch]: Add gtk_window_set_icon_from_file(),
        gtk_window_set_default_icon_from_file() convenience
        functions (#75178, suggestion from Havoc Pennington)
2002-09-30 18:58:27 +00:00
Owen Taylor
da4c14de47 Clear initial_pos_set even if it only causes a move, not a resize as well.
Sun Sep 29 20:15:59 2002  Owen Taylor  <otaylor@redhat.com>

       * gtk/gtkwindow.c (gtk_window_move_resize): Clear
        initial_pos_set even if it only causes a move, not
        a resize as well. (Missed merge from stable,
        may fix #89562)
2002-09-30 00:29:47 +00:00
Havoc Pennington
1689117cf7 fix GtkWindowMnemonic to have a separate typedef
2002-09-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c: fix GtkWindowMnemonic to have a separate
	typedef

	* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): monitor
	FULLSCREEN state

	* tests/testgtk.c (get_state_controls): add
	fullscreen/unfullscreen test

	* gdk/gdkdisplay.c (gdk_display_finalize): fix unused variable

	* gdk/x11/gdkscreen-x11.c (init_xinerama_support): fix unused
	variable

	* gdk/x11/gdkevents-x11.c (gdk_xsettings_watch_cb): mop up unused
	variable

	* gdk/x11/gdkscreen-x11.c
	(_gdk_x11_screen_window_manager_changed): emit
	window_manager_changed signal

	* gdk/x11/gdkscreen-x11.h (struct _GdkScreenX11Class): add
	window_manager_changed signal

	* gdk/x11/gdkevents-x11.c
	(gdk_x11_screen_get_window_manager_name): new function

	* gtk/gtkwindow.c (gtk_window_class_init): add type_hint,
	skip_taskbar_hint, skip_pager_hint properties
	(gtk_window_set_skip_taskbar_hint):
	(gtk_window_get_skip_taskbar_hint):
	(gtk_window_set_skip_pager_hint):
	(gtk_window_get_skip_pager_hint):
	(gtk_window_fullscreen):
	(gtk_window_unfullscreen): new functions

	* gdk/gdkevents.h (GdkWindowState): add FULLSCREEN state

	* gdk/gdkwindow.h (GdkWindowTypeHint): add missing type hint
	values

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_skip_taskbar_hint):
	(gdk_window_set_skip_pager_hint):
	(gdk_window_fullscreen):
	(gdk_window_unfullscreen): new functions
	(set_initial_hints): set fullscreen here if appropriate
2002-09-25 19:16:46 +00:00
Soren Sandmann
77eee887f3 Minor documentation fixes
2002-08-10  Soren Sandmann  <sandmann@daimi.au.dk>

	* docs/reference/gtk/tree_widget.sgml,
	docs/reference/gtk/tmpl/gtkdialog.sgml,
	docs/reference/gtk/tmpl/gtkentry.sgml,
	docs/reference/gtk/tmpl/gtkfilesel.sgml,
	docs/reference/gtk/tmpl/gtkfontsel.sgml,
	docs/reference/gtk/tmpl/gtkfontseldlg.sgml,
	docs/reference/gtk/tmpl/gtktreemodel.sgml,
	docs/reference/gtk/tmpl/gtkwidget.sgml, gdk/x11/gdkdisplay-x11.c,
	gtk/gtkbbox.c, gtk/gtkbox.c, gtk/gtkbutton.c, gtk/gtkcellrenderer.c,
	gtk/gtkcellrendererpixbuf.c, gtk/gtkcellrenderertext.c,
	gtk/gtkcheckmenuitem.c, gtk/gtkcontainer.c, gtk/gtkcurve.c,
	gtk/gtkdialog.h, gtk/gtkentry.c, gtk/gtkfilesel.c, gtk/gtkfontsel.c,
	gtk/gtkframe.c, gtk/gtkhandlebox.c, gtk/gtkiconfactory.c,
	gtk/gtkimage.c, gtk/gtkinvisible.c, gtk/gtkitemfactory.c,
	gtk/gtklabel.c, gtk/gtklayout.c, gtk/gtkmenu.c, gtk/gtkprogress.c,
	gtk/gtkprogressbar.c, gtk/gtkscrolledwindow.c, gtk/gtksizegroup.c,
	gtk/gtktable.c, gtk/gtktextiter.c, gtk/gtktexttag.c,
	gtk/gtktexttag.h, gtk/gtktextview.c, gtk/gtktogglebutton.c,
	gtk/gtktoolbar.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c,
	gtk/gtktreestore.c, gtk/gtktreeview.c, gtk/gtktreeviewcolumn.c,
	gtk/gtkviewport.c, gtk/gtkwidget.c, gtk/gtkwidget.h,
	gtk/gtkwindow.c:

	Minor documentation fixes

	(#89254, patch from Brett Nash;
	 #85809, patch from daten@dnetc.org;
	 #76391, patch from Ross Burton;
	 #74559, Manuel Clos;
	 #73569, #72005, Alexey A. Malyshev;
	 #70061, patch from Dennis Bj"orklund;
	 #64566, #63388, #58328, #57499, #81007, #77349, Vitaly Tishkov;
	 #78932, Vitaly Tishkov, patch from Ross Burton;
	 #73306)
2002-08-10 09:55:41 +00:00
Owen Taylor
28c2b0a31f Renames:
Thu Jun 20 19:41:09 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.h gdk/gdkscreen.h gdk/**.c gtk/*.c
        tests/*.c: Renames:

         gdk_get_default_display => gdk_display_get_default
         gdk_get_default_screen  => gdk_screen_get_default
         gdk_open_display        => gdk_display_open
2002-06-20 23:59:27 +00:00
Owen Taylor
f67241c53b Fix bug where if CENTER_ON_PARENT was set, but there was no parent,
Wed Jun 12 17:13:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_move_resize): Fix bug
        where if CENTER_ON_PARENT was set, but there was
        no parent, GDK_HINT_POS would be set, resulting
        in a dialog at 0,0. (#83479, Havoc Pennington)
2002-06-12 21:19:05 +00:00
Hans Breuer
6539a7d34c added gdkdisplay and gdkscreen
2002-06-10  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc : added gdkdisplay and gdkscreen

	* gdk/win32/gdkdisplay-win32.c (gdk_open_display) :
	need to gdk_screen_set_default_colormap(). Also un-static
	some exported gdk_display_*() functions

	* gdk/win32/gdkdrawable-win32.c : added "gdkscreen.h"

	* gdk/win32/gdkscreen-win32.c : implement
	gdk_screen_get_number, fixed typo, added rewuired headers

	[merge from 2.0.x branch, should we really manifest
	 GtkPlug as being an X11 only thing this way? See #58541]
	* gtk/gtkwindow.c (gtk_window_show): Conditionalize
	GTK_IS_PLUG() check on GDK_WINDOWING_X11. (Problem
	reported by Sven Neumann)
2002-06-10 21:58:00 +00:00
Mark McLoughlin
4c547ec4e3 use the RootWindow of this screen for gdk_window_get_pointer.
2002-06-07  Mark McLoughlin  <mark@skynet.ie>

        * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use
        the RootWindow of this screen for gdk_window_get_pointer.
2002-06-07 02:05:01 +00:00
Owen Taylor
c0f78ae00e Add a "is_focus" property indicating whether a widget is the focus widget
Fri May 17 17:27:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c gtk/gtkwidget.c: Add a "is_focus"
        property indicating whether a widget is the focus
        widget within the toplevel.

        * gtk/gtkwindow.[ch]: Add "is_active" "has_toplevel_focus"
        properties to indicate (separately) the idea of
        being the part of the toplevel with the input focus
        and being the active widget. (Needed for full XEMBED
        compliance.)

        * gtk/gtkplug.c gtk/gtksocket.c: Update to work
        in terms of is_active/has_toplevel_focus, and thus
        handle the active/focused XEMBED distinction
        correctly.

        * gtk/gtkplug.c (gtk_plug_realize): Remove
        FOCUS_CHANGE_MASK, since we don't need it.

Fri May 17 18:07:34 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtksocket.c (gtk_socket_add_window): Send
        XEMBED_EMBEDDED_NOTIFY.

        * gtk/gtksocket.c: Assume windows without _XEMBED_INFO
        property want to be mapped, for better
        current-Qt compatibility.
2002-06-06 15:38:39 +00:00
Matthias Clasen
2aaf3c0e19 Markup fixes
* gtk/gtkwindow.c (gtk_window_move): Markup fixes

	* gtk/gtkrc.c (gtk_rc_get_module_dir): Markup fixes.

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_for_screen): Update docs
	for Docbook XML.

	* gtk/*, gdk/*, gdk-pixbuf/*: Create XML, not SGML.

	* gtk/tmpl/*: Remove property documentation which comes from the
	source now.

	* gtk/building.sgml: Remove traces of gxi.
2002-05-28 22:23:55 +00:00
Owen Taylor
2bf6824ffa Only optimize out the full configure handling if we got a gratuitous
Thu May 16 19:49:24 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkwindow.c (gtk_window_configure_event): Only
        optimize out the full configure handling if we got
        a gratuitous configure event(configure_request_count == 0)
        and the size didn't change.

        * gtk/gtkwindow.c (gtk_window_move_resize): Use
        g_message(), not g_print() for debug spew.b

        * gtk/gtkwindow.c (gtk_window_real_set_focus): Ref
        the old and new focus widgets for the scope of
        the function.

        * gtk/gtksocket.c gtkplug.c: Remove various #if 0'd
        bits of old code.
2002-05-16 23:59:23 +00:00
Owen Taylor
20be61eef6 Thu May 16 18:47:29 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkwindow.c (gtk_window_show): Disable the focus-some-widget code for GtkPlug descendants. * gtk/gtkplug.c (gtk_plug_focus_event): Eat focus-in/out events since they can be generated by keyboard grabs, but are spurious for an embeddded widget. (#79196, Padraig O'Briain) * gtk/gtksocket.c (gtk_socket_size_request): Only pay attention to the minimum size hints, and changes to that ... ignore the default size. * gtk/gtksocket.c (gtk_socket_send_configure_event): Pass in root-window relative coordinates as per the ICCCM. * gtk/gtksocket.c (gtk_socket_size_allocate): Send as many synthetic configures as necessary to make up for ConfigureRequest events we got. (#78799, Dave Camp.) 2002-05-16 23:38:01 +00:00
Owen Taylor
7359bb9df8 Fix frame_right/frame_top screwup. (Detlef Reichl, #78111)
Tue May 14 18:02:37 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_realize): Fix
        frame_right/frame_top screwup. (Detlef Reichl,
        #78111)

        * gtk/Makefile.am (install-data-local): Use
        $(INSTALL_DATA) not $(INSTALL) when installing
        theme files. (#77094, Ben Liblit)
2002-05-14 22:04:45 +00:00
Vitaly Tishkov
f3630587a2 gtk/gtkfilesel.c gtk/gtkplug.c gtk/gtkwidget.c gtk/gtkwindow.c a few typos
2002-05-13 Vitaly Tishkov <tvv@sparc.spb.su>

        * gtk/gtkfilesel.c
        * gtk/gtkplug.c
        * gtk/gtkwidget.c
        * gtk/gtkwindow.c
        a few typos in docs were fixed
2002-05-13 14:16:03 +00:00
Erwann Chenede -
2325caf979 remove virtualization and made it cross platform. fix #79961 fixed
2002-05-01 Erwann Chenede - <erwann.chenede@sun.com>

  * gdk/gdkscreen.[hc] (gdk_screen_x11_get_monitor_at_window):
    remove virtualization and made it cross platform. fix #79961
  * gdk/x11/gdkdisplay-x11.c (check_solaris_xinerama):
    fixed initialization bugs.
  * gdk/x11/gdkscreen-x11.[hc] (gdk_screen_get_monitor_geometry):
  * tests/testxinerama.c:
  * gtk/gtkwindow.c (gtk_window_compute_configure_request):
  * gtk/gtkmenu.c (gtk_menu_position):
    take a GdkRectangle argument instead of returning
    a GdkRectangle * and propagated the changes. fix #79974
2002-05-01 17:22:54 +00:00
Owen Taylor
087fd22c50 Make it work, even if the window is already realized or mapped.
Tue Apr 30 18:42:25 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_set_screen): Make it
        work, even if the window is already realized or
        mapped.

        * tests/testgtk.c: Erwann's multihead changes, slightly
        dumbed down. (Removed logic for pulling windows onto
        the current screen, people can click twice on the demo
        to destroy and create again.)

        * tests/prop-editor.c: Set the screen on the property
        editor if the edited object is a widget.
2002-04-30 23:44:14 +00:00
Alex Larsson
4632fb81c7 Integrate Erwann Chenede's multihead changes for the gtk/ directory.
Mon Apr 29 18:28:00 2002  Owen Taylor  <otaylor@redhat.com>

	Integrate Erwann Chenede's multihead changes for the gtk/ directory.

	* gtk/gtkclipboard.[ch]: Add gtk_clipboard_get_for_display(),
	make internals multihead aware.

	* gtk/gtkcolorsel.[ch]: Add
	gtk_color_selection_set_change_palette_with_screen_hook () [ugh!]
	make up for non-multihead safety of
	gtk_color_selection_set_change_palette_hook()

	* gtk/gtkinvisible.[ch] gtk/gtkmenu.[ch] gtkwindow.[ch]: Add
	gtk_{invisible,menu,window}_set_screen(); add "screen" properties
	for GtkWindow and GtkMenu.

	* gtk/gtkplug.[ch]: Add gtk_plug_construct_for_display(),
	gtk_plug_new_for_display(). Multihead fixes.

	* gtk/gtkselection.[ch]: Add gtk_selection_owner_set_for_display(),
	make internals multihead aware.

	* gtk/gtksettings.[ch]: Add gtk_settings_get_for_screen(), get
	rid of now-useless gtk_settings_constructor().

	* gtk/gtkstyle.[ch]: Add gtk_style_get_font_for_display(), fix
	check/radio button indicators bitmap handling to be multihead
	safe.

	* gtk/gtkwidget.[ch]: Add gtk_widget_get_screen(), gtk_widget_has_screen(),
	gtk_widget_get_display(), gtk_widget_get_clipboard(),
	gtk_widget_get_root_window().

	* gtk/gtkbindings.c gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkcombo.c
	gtk/gtkctree.c gtk/gtkdnd.c gtk/gtkfilesel.c gtk/gtkgamma.c
	gtk/gtkhandlebox.c gtk/gtkhsv.c gtk/gtkimcontext.c gtk/gtklabel.c
	gtk/gtklist.c gtk/gtkmain.c gtk/gtkmenuitem.c gtk/gtkmenushell.c
	gtk/gtknotebook.c gtk/gtkoldeditable.c gtk/gtkoptionmenu.c
	gtk/gtkpaned.c gtk/gtkpreview.c gtk/gtksocket.c gtk/gtktext.c
	gtk/gtktextbuffer.c gtk/gtktextview.c gtk/gtktipsquery.c
	gtk/gtktooltips.c gtk/gtktreeview.c gtk/gtktreeviewcolumn.c:
	misc mechanical multihead-safety fixes.

	* gtk/gtkclipboard.c: Use a GtkImage rather than a pixmap for
	the dropper, look up the color palette only at realization time,
	other multihead fixes.

	* gtk/gtkcombo.c (gtk_combo_unrealize): Popdown the list when
	unrealizing.

	* gtk/gtkentry.c: Only claim ownership of the primary selection
	when realized, misc multihead fixes.

	* gtk/gtkfontsel.c: Only fill in fonts when attached to a screen,
	fix gtk_font_selection_get_font() for multihead.

	* gtk/gtkgc.c: make the depth => drawable hash per-screen.

	* gtk/gtkinvisible.c: Add a constructor that realizes the
	widget, so we get a realized widget with g_object_new() as
	well gtk_invisible_new() as before.

	* gtk/gtkmain.c: Get rid of unused gtk_visual/gtk_colormap
	variables.

	* gtk/gtktextdisplay.c: Add warnings if stipple bitmaps
	are used on the wrong screen.

	* gtk/gtktoolbar.c: Make handling of GtkSettings-based layout
	read properties and connect to settings when the screen is changed,
	rather than on init/finalize.

	* gtk/gtkwindow.c: Fix icon handing to be multihead safe ...
	default icon pixmaps/mask are only shared between windows on the
	same screen. Misc multihead fixes.

Sat Apr 27 13:49:53 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclipboard.c (gtk_clipboard_get_for_display):
	Update docs to reference GDK_SELECTION_CLIPBOARD rather GDK_NONE.

2002-04-29  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkproperty-fb.c (gdk_property_get):
	Fix silly bug, noticed by Sven Neumann.

Sun Apr 28 22:43:55 2002  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): Fix
	so that you can set a new sort func.
2002-04-29 22:53:45 +00:00
Havoc Pennington
8d3df4d9a1 add more explanatory text to the error message about missing charsets, and
2002-03-22  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkfont-x11.c (gdk_fontset_load): add more explanatory
	text to the error message about missing charsets, and use
	g_printerr() not g_warning() since this is typically not a
	programming error (we do not export any API to ask whether
	a font set will have missing charsets so apps realistically can't
	do anything other than try the gdk_fontset_load())

	* gtk/gtktextview.c (gtk_text_view_key_press_event): return FALSE
	if the text view isn't editable and the user presses Return,
	so default buttons and such can be activated, #74937

	* gtk/gtktextbuffer.c (paste_from_buffer): don't insert
	if the insertion point is not editable and the paste
	is interactive, #74125

	* gtk/gtkwindow.c (gtk_window_move_resize): enhance the #if 0
	debug spew

	* gtk/gtktextbuffer.c (cut_or_copy): only remove the previous
	cut/copied data right before replacing it, when we know we are
	going to replace it. Fixes #74049
2002-03-23 04:37:53 +00:00
Owen Taylor
8acfd1e9de Patch from Erwann Chenede, #73900 fixing a lot of warnings with Forte CC,
Wed Mar 20 16:36:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.c: Patch from Erwann Chenede, #73900 fixing
        a lot of warnings with Forte CC, mostly implicit
        casts between void * and function pointers.

        * gdk/gdkevents.c (gdk_event_get_state): GdkEventVisibility's
        state field is not a GdkModifierType. (Also #73900)
2002-03-20 21:47:01 +00:00
Owen Taylor
2096715583 When setting the focus to NULL, clear the existing focus chain so that
Tue Mar  5 19:19:19 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_set_focus): When setting
        the focus to NULL, clear the existing focus chain so
        that when we focus into the window again, we start
        at the beginning. (Pointed out by Tim Janik.)
2002-03-06 00:30:52 +00:00
Matthias Clasen
981574a9be Fix docs.
* gtk/gtktreemodel.c (gtk_tree_row_reference_deleted): Fix docs.

	* gtk/gtkwindow.c (gtk_window_remove_mnemonic):
	(gtk_window_add_mnemonic):
	(gtk_window_mnemonic_activate): Add docs.

	* gtk/gtktreeview.c (gtk_tree_view_get_search_equal_func): Fix
	typo in docs.

	* test-loaders.c, test-images.h: More random tests.

	* io-bmp.c (DecodeHeader): Fail gracefully on OOM here.

	* gtk/gtk-sections.txt: Remove gtk_win32_get_installation_directory.
2002-03-05 22:44:27 +00:00
Owen Taylor
d3a43f73b3 Fix to properly take the default window into account by setting a flag and
Sun Mar  3 18:47:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_parse_geometry): Fix
        to properly take the default window into account by
        setting a flag and in gtk_window_compute_configure_request_size ()
        multiplying by the increments and adding in the base
        size. (#72393)

        * tests/testgtk.c (create_gridded_geometry): Add a
        test for gridded geometry and for gtk_window_parse_geometry().
2002-03-04 00:11:25 +00:00
Owen Taylor
386f8d1f62 Append mnemonics rather than prepending them so that the order is
Tue Feb 26 18:47:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_add_mnemonic): Append
        mnemonics rather than prepending them so that the
        order is typically forward rather than typically
        backward. (Partial fix for #52395)
2002-02-26 23:56:26 +00:00
Owen Taylor
23a249a043 Sanity check default font family name and size.
Sat Feb 23 22:37:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.c (gtk_style_init): Sanity check default
        font family name and size.

        * gtk/gtkwindow.c (gtk_window_set_default_size): Remove
        incorrect comment about the geometry widget.

        * gtk/gtkwindow.c (gtk_window_move_resize): Unset the
        gtk_window_resize)() information once we've set the size
        once, to avoid it coming back next time we queue a resize.
        (#72359)

        * gtk/gtkwindow.c (gtk_window_move_resize): Remove
        setthing of ->need_default_size from here, Havoc
        says that it should correspond more or less exactly
        to GTK_WIDGET_MAPPED (window).
2002-02-24 05:05:15 +00:00
Owen Taylor
6a802b24b3 Implement accelerator propagation using a custom XEMBED_GTK_KEY_GRAB
Sat Feb 23 20:33:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/xembed.h: Implement
        accelerator propagation using a custom XEMBED_GTK_KEY_GRAB
        XEMBED_GTK_KEY_UNGRAB pair of messages.

        * gtk/gtkwindow.[ch]: private export _gtk_window_keys_foreach().

        * gtk/gtkplug.c (gtk_plug_set_is_child): Clear focus and default
        widgets.
2002-02-24 01:52:14 +00:00
Owen Taylor
53171867b5 Patch from Matthias Clasen (#54488)
Fri Feb 22 19:17:46 2002  Owen Taylor  <otaylor@redhat.com>

        Patch from Matthias Clasen (#54488)

        * gtk/gtkwindow.c: Set/unset HAS_FOCUS flags here,
        and do ::has-focus notifications.

        * gtk/gtkclist.c gtk/gtkentry.c gtk/gtksocket.c
        gtk/gtktext.c gtk/gtktextview.c gtk/gtkwidget.c:
        Remove unecessary focus_in/out handles and unecessary
        flag setting.

        * gtk/gtkwidget.c: Adda missing notification on ::parent.
2002-02-23 00:36:49 +00:00
Owen Taylor
e5e5a52112 Add GDK_ISO_Next_Group/Prev_Group/Level3_Shift/ First_Group/Last_Group to
Thu Feb 21 16:51:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelgroup.c (gtk_accelerator_valid): Add
        GDK_ISO_Next_Group/Prev_Group/Level3_Shift/
        First_Group/Last_Group to list of invalid accelerators.
        (A lot more that should be added, but probably would
        want a range mechanism. These are the ones found in
        the standard XFree86 config files.)

        * gtk/gtkbindings.c (gtk_bindings_activate): Fix problem
        that broke bindings for menus.

        * gtk/gtkwindow.[ch]: Export _gtk_window_activate_key()
        privately.

        * gtk/gtkmenushell.c (gtk_menu_shell_key_press): Use
        _gtk_window_activate_key(), gtk_bindings_activate_event().
2002-02-21 22:03:09 +00:00
Owen Taylor
708e1a9574 Implement "fuzzy" key binding lookups; allow matches on key and level but
Wed Feb 20 14:26:47 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.[ch]: Implement "fuzzy" key binding lookups;
        allow matches on key and level but not group. Also, implement
        ignoring "consumed modifiers correctly."

        * gtk/gtkaccelgroup.c gtk/gtkbindings.c: Convert to using
        GtkKeyHash.

        * gtk/gtkdebug.h gtk/gtkmain.c: Support GTK_DEBUG=keybindings

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fill in
        the group for key release events as well as key press events.

        * gdk/gdkkeys.h gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Rename unused_modifiers to consumed_modifiers, make the docs and
        non-Xkb implementation match the Xkb implementation.

        * gdk/linux-fb/gdkkeyboard-fb.c gdk/win32/gdkkeys-win32.c: Propagate
        doc and parameter name changes.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        XkbTranslateKeyCode doesn't handle LockMask, we need to handle
        it ourselves.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Force
        <Shift>Tab to give GDK_ISO_Left_Tab, since we need consistency
        to allow dealing with ISO_Left_Tab.

        * gtk/gtkwindow.c gtk/gtktextview.c gtk/gtkscrolledwindow.c
        gtk/gtkpaned.c gtk/gtkcombo.c  gtk/gtknotebook.c:
        Remove inappropriate uses of GDK_ISO_Left_Tab. (GDK_ISO_Left_Tab
        or <Shift>Tab both are equivalent as a binding specifier.)

        * gtk/gtkbutton.c (gtk_button_class_init): Make ::activate
        GTK_RUN_ACTION, so you can bind an accelerator to it.

        * gtk/gtklabel.c (gtk_label_set_uline_text_internal): Call
        gdk_unicode_to_keyval on the mnemonic character.

        * tests/testgtk.c: Add a test for the new fuzzy key binding matching.
2002-02-21 17:14:10 +00:00
Havoc Pennington
e672dd6112 take GDK_HINT_RESIZE_INC into account, and handle negative coordinates
2002-02-16  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c (gtk_window_parse_geometry): take
	GDK_HINT_RESIZE_INC into account, and handle negative coordinates
	correctly. (Can't email Owen - hope this is OK.)
2002-02-16 14:41:15 +00:00
Owen Taylor
aa88182321 Convert to using binding set for doing key bindings. (#62622, Requested by
Thu Feb  7 19:00:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkspinbutton.c (gtk_spin_button_key_release): Convert
        to using  binding set for doing key bindings. (#62622,
        Requested by Skip Montaro)

        * gtk/gtkwindow.c (gtk_window_class_init): Add control-arrow
        bindings as overrides along with control-tab bindings.

        * gtk/gtknotebook.c (gtk_notebook_class_init): Fix return
        type for ::focus_tab signal.
2002-02-08 00:02:52 +00:00
Manish Singh
2cfa52b1ee remove unused variable.
2002-01-30  Manish Singh  <yosh@gimp.org>

        * gtk/gtkhandlebox.c (gtk_handle_box_destroy): remove unused
        variable.

        * gtk/gtkwindow.c (gtk_window_get_icon): function returns a value,
        so return NULL with g_return_val_if_fail instead of g_return_if_fail.
2002-01-30 23:35:08 +00:00
Matthias Clasen
4dddfb2dc6 Remove excess calls to g_return_if_fail from static and virtual functions. 2002-01-30 22:29:03 +00:00
Owen Taylor
2a9af2ff42 Try to make sure that we have some focused widget on map. (#50339)
Wed Jan 30 13:55:59 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_show): Try to make
	sure that we have some focused widget on map. (#50339)

	* gtk/gtkdialog.c (gtk_dialog_map): Handling picking
	a focus widget here differently so that if a
	response button gets picked, it's the default one.

	* tests/testgtk.c (make_message_dialog): Set the
	default response for the dialogs.
2002-01-30 18:58:31 +00:00
Owen Taylor
854372b9be Add <Control>Tab bindings for "move-focus" so that Control-Tab to escape
Tue Jan 29 14:24:49 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_class_init): Add <Control>Tab
        bindings for "move-focus" so that Control-Tab to escape from
        something that eats Tab just works if not otherwise overriden.

        * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range)
        * gtk/gtkvscale.c (gtk_vscale_new_with_range)
        * gtk/gtkhscale.c (gtk_hscale_new_with_range): Use a page_size
        of zero for the adjustment, since at times we think that the range
        is lower to upper - page_size. A page size equally to the
        step_increment is, in any case, not meaningful.
2002-01-29 19:44:49 +00:00
Matthias Clasen
e2b730ac43 General property notification cleanup. 2002-01-28 18:52:49 +00:00
Sven Neumann
54b6e6f76b changed the comment so that gtk-doc doesn't get confused.
2002-01-25  Sven Neumann  <sven@gimp.org>

	* gtk/gtkwindow.c (gtk_window_get_size): changed the comment so
	that gtk-doc doesn't get confused.
2002-01-25 14:34:20 +00:00
Havoc Pennington
31283d57ca link to new X11 section in a lot of places when mentioning the window
2002-01-19  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c: link to new X11 section in a lot of places when
	mentioning the window manager.

	* gtk/gtkwidget.c (gtk_widget_hide_on_delete): don't mention
	window manager since we're portable.

2002-01-19  Havoc Pennington  <hp@pobox.com>

	* gtk/x11.sgml: add a mostly-empty X11 section

	* gtk/framebuffer.sgml: make title consistent with windows section

	* gtk/tmpl/gtkdrawingarea.sgml: couple of fixes
2002-01-19 18:51:48 +00:00
Owen Taylor
6dc3eb34c2 Unset initial_pos_set after the first configure request.
Mon Jan 14 16:35:58 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkwindow.c (gtk_window_move_resize): Unset
        initial_pos_set after the first configure request.
2002-01-14 21:52:15 +00:00
Owen Taylor
a4d411eeeb Fix problem where widget->requisition was being used instead of
Sun Jan 13 23:23:22 2002  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where
	widget->requisition was being used instead of
	gtk_widget_get_child_requisition (), causing geometry widgets
	with usizes to misbehave.
2002-01-14 08:20:22 +00:00
Vitaly Tishkov
f74dd2386a gtk/gtkimage.c gtk/gtkimcontext.c gtk/gtktreemodel.c
2002-01-10            Vitaly Tishkov       <tvv@sparc.spb.su>
        * gtk/gtkimage.c
	* gtk/gtkimcontext.c
	* gtk/gtktreemodel.c
	* gtk/gtktreemodelsort.c
	* gtk/gtkwindow.c
	* docs/reference/gtk/tmpl/gtkselection.sgml
	fix docs
2002-01-10 16:36:25 +00:00
Matthias Clasen
c1808baa01 Doc typo fix. (#68172)
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)

        * gtk/gtktreemodel.c (gtk_tree_path_is_descendant): Fix docs.

        * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Document.

        * gtk/gtkwindow.c (gtk_window_remove_accel_group): Fix docs.

        * gtk/gtkrc.c (gtk_rc_get_style_by_paths),
        gtk/gtkwidget.c (gtk_widget_get_toplevel,
        gtk_widget_push_composite_child), gtk/gtkdialog.c
        (gtk_dialog_new_with_buttons, gtk_dialog_run): Keep gtk-doc
        from messing up the indentation of inline examples.

        * gtk/gtkmain.c, gtk/gtkrc.c: Consistently call g_getenv()
        instead of getenv().

        * gtk/gtktreemodel.c, gtk/gtkaccelgroup.c, gtk/gtkclipboard.c,
        gtk/gtkdnd.c, gtk/gtkiconfactory.c, gtk/gtkrc.c,
        gtk/gtkstyle.c, gtk/gtkselection.c: Doc fixes.

        * gtk/gtkaccelmap.c (gtk_accel_map_add_filter,
        gtk_accel_map_foreach_unfiltered, gtk_accel_map_load_scanner):
        Document.

        * gtk/tmpl/gtksocket.sgml: Mention gtk_socket_get_id()
        instead of GTK_WINDOW_XWINDOW().  (#68172)

        * gtk/gtk-sections.txt: Move functions which are documented
        as "private" or "internal" into Private subsections.

        * gtk/tmpl/gtkdnd.sgml, gtk/tmpl/gtkobject.sgml,
        gtk/tmpl/gtkrc.sgml, gtk/tmpl/gtktooltips.sgml,
        gtk/tmpl/gtkwidget.sgml, gtk/tmpl/gtkclipboard.sgml,
        gtk/tmpl/gtkstyle.sgml, gtk/tmpl/gtkselection.sgml,
        gtk/tmpl/gtkfeatures.sgml: Minor markup fixes.

        * gtk/tmpl/gtksignal.sgml: Add link to GLib signal docs.

        * gtk/tmpl/gtkpreview.sgml, gtk/tmpl/gtktext.sgml,
        gtk/tmpl/gtktree.sgml: Remove "deprecated" from short desc.

        * gtk/tmpl/gtkrc.sgml: Correct names of default RC files.
2002-01-08 00:04:57 +00:00
Matthias Clasen
d925a72d34 Additions.
* gtk/tmpl/gtkpixmap.sgml, gtk/tmpl/gtkscale.sgml,
        gtk/tmpl/gtkmain.sgml, gtk/tmpl/gtkimcontextsimple.sgml: Additions.

        * gtk/gtkwindow.c, gtk/gtkimcontextsimple.c: Minor documentation tweaks.
2001-12-30 22:56:05 +00:00
Owen Taylor
cd6070461e 1.3.12, interface, binary age 0.
Sat Dec 22 12:38:03 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: 1.3.12, interface, binary age 0.

        * configure.in: Require new versions of Glib, Pango, ATK.

        * NEWS: Updated.

        * configure.in: Make explicit what libtool we are executing.
        (Tomas Ogren)

        * gdk/gdkcolor.c gdk/gdkgc.c gdk/gdkwindow.c: Doc fixes.

        * gtk/gtkwidget.c (gtk_widget_[class]path) gtkrc.h : Fix
        parameter names for docs.

Sat Dec 22 22:35:29 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_realize)
          gtk/gtkplug.c (gtk_plug_realize): Include GDK_KEY_RELEASE_MASK.

        * gtk/gtkentry.c (gtk_entry_key_release)
          gtk/gtktextview.c (gtk_text_view_key_release_event): Pass
        key release events to the input method.

        * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
        Handle release of Control/Shift to end hex sequence.

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress):         Handle key releases as well as presses.
2001-12-23 22:59:30 +00:00
Matthias Clasen
43851fe034 Typo fixes Typo fix. (#66746)
* gtk/gtktextlayout.c: Typo fixes
        * gtk/gtkwindow.c (gtk_window_set_position): Typo fix. (#66746)

        * gtk/gtkwidget.c (gtk_widget_send_expose, gtk_widget_get_toplevel,
        gtk_widget_get_default_direction): Doc fixes. (#66727, #66737, #66744)

        * gtk/gtkstyle.h (GTK_STYLE_NUM_STYLECOLORS): Remove. (#66467)

        * gtk/tmpl/gtklist.sgml: Markup fixes.

        * gdk/tmpl/selections.sgml, gtk/tmpl/gtksocket.sgml: s/succesful/successful/g.

        * gtk/gtk-sections.txt, gtk/tmpl/gtkstyle.sgml: Remove
        GTK_STYLE_NUM_STYLECOLORS. (#66467)
2001-12-12 22:29:53 +00:00
Matthias Clasen
a7bab735ad Deprecate. (#65851)
* gdk/gdkcolor.h (gdk_colormap_change): Deprecate. (#65851)

        * gdk/gdktypes.h (GdkKeyInfo): Remove. (#66025)

        * gtk/gtkwindow.c, gtk/gtkwidget.c: Add docs, markup fixes.

        * gtk/tmpl/gtkwidget.sgml: Updates.
        * gtk/Makefile.am (IGNORE_HFILES): Remove gtktextchild.h.
2001-12-05 00:06:40 +00:00
Alex Larsson
c7cd3421f7 Return FALSE from expose handlers.
2001-12-03  Alex Larsson  <alexl@redhat.com>

	* gtk/gtkaccellabel.c:
	* gtk/gtkarrow.c:
	* gtk/gtkcolorsel.c:
	* gtk/gtkcontainer.c:
	* gtk/gtklabel.c:
	* gtk/gtktextview.c:
	* gtk/gtktogglebutton.c:
	* gtk/gtktreeview.c:
	* gtk/gtkwindow.c:
	Return FALSE from expose handlers.
2001-12-03 22:11:40 +00:00
Matthias Clasen
a381648faa Typo fixes. (#65607)
* gtk/gtkaccelmap.c: Typo fixes. (#65607)

        * gtk/gtkfixed.c (gtk_fixed_set_has_window, gtk_fixed_get_has_window):
        Fix docs. (#65505)

        * gtk/gtkwindow.c (gtk_window_set_mnemnonic_modifier): Document.

        * gtk/tmpl/gtkwindow.sgml: Document gtk_window_position.

        * gdk/tmpl/dnd.sgml: Document GdkDragProtocol and GdkDragContext.

        * gdk/tmpl/events.sgml: Document gdk_setting_get.

        * gdk/tmpl/fonts.sgml: Document gdk_font_full_name_get and
        gdk_font_full_name_free.

        * gdk/tmpl/windows.sgml: Document gdk_window_register_dnd.
2001-11-28 23:41:12 +00:00
Matthias Clasen
fa7f30239b Add markup to docs.
* gtk/gtkwindow.c (gtk_window_move): Add markup to docs.
2001-11-28 19:08:36 +00:00
Tim Janik
9800f731e0 applied patch from owen to get rid of accel map notifiers. changed things
Tue Nov 20 21:25:08 2001  Tim Janik  <timj@gtk.org>

	* applied patch from owen to get rid of accel map notifiers.
	changed things to fix reentrancy and API as discussed on gtk-devel.

	* gtk/gtkaccelgroup.[hc]:
	(gtk_accel_group_finalize): unregister this accel group from all
	accel map paths.
	(accel_closure_invalidate): handle invalidation of closures by
	disconnecting their accelerators.
	(quick_accel_add): move closure connection and changed notification
	into this function to reduce code duplication. don't emit change
	notification on closurers without accelerators.
	(quick_accel_remove): rewrite, do the exact opposite of quick_accel_add
	for a GtkAccelGroupEntry.
	(gtk_accel_group_connect): get rid of the accel_path_quark argument.
	(gtk_accel_group_connect_by_path): new function to add accelerators
	with an accel path.
	(gtk_accel_group_disconnect_closure): new function, disconnect a
	closure from of an accel group.
	(gtk_accel_group_disconnect): loop over all closure for a accel_ley,
	accel_mods pair and remove them.
	(_gtk_accel_group_reconnect): new function that basically does
	gtk_accel_group_disconnect_closure() and
	gtk_accel_group_connect_by_path() once an accel path changed.
	(gtk_accel_groups_disconnect_closure): remove this, there's
	gtk_accel_group_disconnect_closure().

	* gtk/gtkaccelmap.[hc]: keep list of accel groups per entry now,
	nuke notifiers.
	(_gtk_accel_path_is_valid): make this non-static for
	gtkwidget.c and gtkaccelgroup.c assertions.
	(gtk_accel_map_add_notifer): removed this function.
	(gtk_accel_map_remove_notifer): same.
	(_gtk_accel_map_add_group):
	(_gtk_accel_map_remove_group): (un-)register accel groups, with
	accel paths for correct propagation.
	(gtk_accel_map_add_entry): return void.
	(gtk_accel_map_lookup): return gboolean instead of GQuark.

	* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): always
	set accel_path on widgets.

	* gtk/gtkwidget.[hc]:
	(accel_path_changed): got rid of this, changes are handled by
	accel maps internally now.
	(_gtk_widget_set_accel_path): get things to work without notifiers.
	(gtk_widget_list_accel_closures): list accel closures of a widget.

	* gtk/gtkwindow.[hc]: rename ::accels_changed, to ::keys_changed.
2001-11-20 23:43:03 +00:00