1 Fri Jan 21 16:16:29 2000 Owen Taylor <otaylor@redhat.com>
3 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
4 take a const string argument like GtkTranslateFunc. This will
5 require changes in use code.
7 2000-01-19 Tor Lillqvist <tml@iki.fi>
9 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10 semantics (to mimic the X11 backend, which just calls XClearArea)
11 is to check for zero width (and height), and in that case use the
12 window's width minus x (height minus y). This fixes for instance
13 some redraw problems with gtkclist, which were easily noticeable
14 in the gtk file selection widget.
16 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
19 2000-01-13 Tor Lillqvist <tml@iki.fi>
24 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
26 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
29 2000-01-09 Tor Lillqvist <tml@iki.fi>
31 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
32 WM_MOVE for iconified or invisible windows. This fixes various
33 problems when minimising windows. Thanks to Bernd Herd.
35 2000-01-05 Tor Lillqvist <tml@iki.fi>
37 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
38 backend's draw_lines method, not draw_points.
40 2000-01-02 Tor Lillqvist <tml@iki.fi>
42 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
43 before Owen's reorganisation: Don't have queued_events and
44 queued_tail statics in this file, but use gdk_queued_events and
45 gdk_queued_tail. This makes exposure event compression work again.
47 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
50 1999-12-30 Tor Lillqvist <tml@iki.fi>
52 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
53 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
54 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
57 * gdk/gdk.def: Add gdk_xid_table_insert.
59 * gdk/win32/gdkprivate-win32.h
60 * gdk/win32/gdkevents-win32.c
61 * gdk/win32/gdkinput-win32.c
63 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
64 extension_events field in the GdkWindowWin32Data struct. Use only
65 the extension_events field in GdkWindowPrivate. Previously one was
66 set, and the other one tested, which broke tablet
67 functionality. Thanks to Keishi Suenaga for pointing this out.
69 1999-12-18 Tor Lillqvist <tml@iki.fi>
71 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
72 When handling a single character (text length == 1), don't handle
73 it as if it was UTF-8.
75 1999-12-11 Tor Lillqvist <tml@iki.fi>
77 * Makefile.am: Distribute README.win32.
80 * gdk/win32/Makefile.am: Distribute Win32 files.
82 * gdk/makefile.msc: New file.
84 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
87 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
88 gdk_error_code as GDKVAR, as they are referred outside GDK.
90 * gdk/win32/makefile.msc: Update.
92 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
93 tweaks. Check only if at least one of those Unicode subrange bits
94 we care for is set. If no code page bits are set, guess (wildly)
97 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
99 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
107 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
108 appropriate. There must be a cleaner way to handle this?
110 * gtk/gtkrc.c: Must include windows.h on Win32.
112 * gtk/testgtk.c: No need to include gdkx.h.
114 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
116 1999-12-07 Tor Lillqvist <tml@iki.fi>
118 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
119 the rbearing is set to the same as the width, but this should be
122 1999-12-06 Tor Lillqvist <tml@iki.fi>
124 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
125 function. If Windows doesn't tell us what Unicode subranges a font
126 covers, guesstimate based on the codepages it covers. This will
127 hopefully help those Windows versions or fonts that don't give us
128 any useful Unicode subrange information with GetTextCharsetInfo.
129 Call this function in gdk_font_load_internal.
131 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
134 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
136 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
137 New function, long needed.
139 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
141 * gdk/gdkproperty.h x11/gdkproperty.c: Change
142 only_if_exists argument of gdk_atom_intern to
145 1999-11-25 Tor Lillqvist <tml@iki.fi>
147 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
148 Fix two copy&paste errors.
150 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
153 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
154 GdkWin32SingleFont struct.
156 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
157 subranges of loaded fonts. Clear font signature first, in case
158 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
159 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
161 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
162 Unoffset clip region.
164 1999-11-23 Tor Lillqvist <tml@iki.fi>
166 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
167 event->any.window before calling filter functions.
169 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
171 * gtk/gtkgamma.h: Adapt cast macros to standard.
175 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
177 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
178 If translation does not include a '/', use entire
179 translation instead of crashing.
181 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
184 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
186 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
188 * gtk/gtkselection.c (gtk_target_list_remove): Use
189 g_list_remove_link, not g_list_remove.
191 [ From Geert Bevin <gbevin@thunderstorms.org> ]
193 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
195 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
196 statement upon unselection (how the heck did that slip in?).
198 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
200 * gtk/gtktext.c (gtk_text_freeze):
201 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
202 in frozen state (and aparently crashes). patch provided by Anders
203 Melchiorsen <and@kampsax.dtu.dk>.
205 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
207 * fix insensitive default/focus widget activation,
208 reported by Matt Goodall <mgg@isotek.co.uk>.
210 * gtk/gtkwindow.c (gtk_window_key_press_event):
211 (gtk_window_activate_default):
212 (gtk_window_activate_focus):
213 return handled=FALSE for actiavtion of insensitive default
214 widgets. return handled=TRUE for activation of insensitive
215 focus widgets. don't activate in either case.
217 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
219 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
220 and $glib_cflags to match library order and in the
221 theory that an old version of GLib is more likely to
222 be in the include directory for X then vice-versa.
225 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
227 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
228 to determine the locale for fontsets, not LC_MESSAGES;
229 the user may want English messages with a handling
230 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
231 will still be broken) (Bug #2891)
233 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
235 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
237 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
239 * gtk/gtkrc.ko: Changed the Korean default fontset.
241 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
243 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
244 where when scrolling to the left or top double exposes
245 were done, causing major slowdowns.
247 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
249 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
250 names to lowercase and alphanumeric, before looking
253 * gtk/Makefile.am: Install codeset variant gtkrc files
254 with normalized names.
256 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
258 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
259 popup menus when the menu is already visible, but its parent
260 is still hidden, (happens after tornoff window got hidden).
262 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
264 * gtk/Makefile.am (install-data-local): Fix
265 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
266 deleted, causing error messages on install.
268 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
270 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
271 the handle as well, since we now sometimes ignore
272 exposes on the handle while resizing.
274 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
276 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
277 extra g_free introduced in one of the last one or two
280 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
282 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
283 consistent, put each style that a gtkrc.* file creates
284 in a unique namespace, remove old files before installing.
286 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
288 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
289 gtk_rc_init is called multiple times. (Yes, people who
290 do that have bugs in their code.)
292 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
294 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
295 Remove it since it's generated by the Makefile anyway
297 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
299 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
300 device->info.axes for core pointer.
302 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
304 * gtk/testgtk.c (destroy_idle_test): Rename idle to
305 idle_id, to deal with obsolete, broken C libraries.
307 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
309 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
310 allocation->x/y twice!
312 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
313 consistent with gtk_vscale_pos_trough().
315 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
317 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
318 be queueing a resize on a toplevel container between
319 the time we show it and when we map it. So, we need
320 to test GTK_WIDGET_VISIBLE() for toplevels, and only
321 use GTK_WIDGET_DRAWABLE() for child windows.
323 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
325 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
328 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
330 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
331 container DRAWABLE (instead of VISIBLE), so we don't queue
332 resizes on non-toplevel containers.
334 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
336 * gtk/gtkselection.[ch]: Make the data argument
339 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
341 * gtk/gtkwindow.c: Try to behave sensibly if
342 the focus widget is the window itself. (Should
343 we allow this at all?)
345 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
347 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
348 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
349 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
350 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
351 in prototypes and implementations consistent (Tomas Ogren).
353 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
354 before the widget is unparented (reported by damon).
356 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
357 since we provide unsigned data anyways.
359 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
361 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
362 the call to gtk_tooltips_layout_text() until later.
364 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
365 Call gtk_widget_ensure_style() before using the style.
367 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
369 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
370 for old widgets that don't propagate draws to all
371 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
373 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
375 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
376 for a redraw but just the widget that requested the resize.
378 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
380 * gtk/gtkcontainer.c: added new widget level method
381 gtk_container_set_reallocate_redraws() and a GtkContainer flag
382 reallocate_redraws : 1 to reflect the setting, exported this through
383 the argument system as a boolean ::reallocate_redraws.
385 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
386 on the widget because the allocation changes, do so as well for
387 widget->parent if the parent has reallocate_redraws set to TRUE.
388 with that containers requesting reallocation redraws get automatically
389 redrawn if their children changed allocation (this unfortunately
390 affects also other children that didn't change allocation, but we
391 cannot work around that before 1.3).
393 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
395 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
396 _and_ height are >0 (not _or_).
398 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
399 instead of gtk_container_queue_resize(), which is a core gtk internal
400 function (must have been on crack when i queued that).
402 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
403 we can check more reliably if we want to discard expose events.
404 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
407 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
408 we simply trust these events. for deciding whether to discard exposes,
409 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
411 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
413 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
414 queues of areas that are completely off screen.
416 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
417 logic for handleboxes.
419 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
420 check on width/height.
422 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
424 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
425 we are fine with using $@ the way we do (if we actually encounter
426 brokeness with $@ in VPATH builds because of additional path prefixes,
427 we need to use $(@F) actually).
429 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
431 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
432 short lived bugs, that would allow language bindings to do surgeries
435 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
437 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
438 where comparison was being done against an uninitialized
439 value causing intermittant results depending on
440 compiler flags. Also make it clearer that we aren't
441 ever initializing the child as 0x0 (though this will
442 be caught in gtk_widget_size_allocate())
444 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
446 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
447 gtk_window_unset_transient_for() call after we do checks
448 involving the old transient parent.
449 [ From Lance Capser <lmc@cyberhighway.net> ]
451 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
453 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
456 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
458 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
459 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
461 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
463 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
464 `$@' is valid only in the build dir, not after we've done
465 `cd $srcdir'. Also use `test -f' instead of less portable
468 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
470 * gtk/gtktext.c (correct_cache_insert): Rewrite
471 for simplicity, and hopefully correctness.
472 (Fixes bug #1322, which was a segfault when
473 on some insertions with the properties around
474 the insertion set up just wrong.)
476 * gtk/gtktext.c (gtk_text_adjustment): When we receive
477 a "changed" signal, clamp the new value to the adjustment
478 bounds to avoid segfaulting if someone tries to change
479 the adjustment to a bogus value. (Bug #1795)
481 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
483 * gtk/gtkmain.c: Ignore unexpected destroy notifies
484 for children, for toplevel windows handle them
487 * gtk/gtkplug.c: Add an unrealize handler so that
488 we unref plug->socket_window when we are done
491 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
493 * gtk/gtktext.c (clear_area): Fix stupid signedness
494 problem that was causing background to sometimes
497 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
499 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
501 * gtk/gtkmenu.c (gtk_menu_position): Make
502 sure we never position menus with negative x, y,
503 since gtk_widget_set_uposition() can't handle that.
505 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
506 Modify the positioning code a bit so that we always
507 put the top-left corner onscreen. (This is for
508 UI reasons, gtk_menu_position() now takes care of
509 gtk_widet_set_uposition() brokeness.)
511 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
513 * gtk/Makefile.am: fixed up things for -jx, x > 1.
515 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
517 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
518 RC style that is passed in. The lack of the ref
519 before was a bug. If people worked around this
520 bug, this will introduce a slight memory leak
521 in their code. The code should typically look like:
523 rc_style = gtk_rc_style_new ();
525 gtk_widget_modify_style (widget, rc_style);
526 gtk_rc_style_unref (rc_style);
528 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
529 the style if it was already set.
531 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
532 style if it was set before.
534 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
536 * gtk/testgtk.c (main): Add a check to see if we
537 are being run from the correct directory and
538 to quit nicely if we are not.
540 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
543 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
545 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
548 queue resizes unconditionally (gtk_widget_queue_resize will figure
549 what to do if the window is not realized).
550 (gtk_window_move_resize): only recenter the window
551 for GTK_WIN_POS_CENTER_ALWAYS.
552 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
553 the same way as GTK_WIN_POS_CENTER.
555 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
557 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
558 with (!(info->last_flags & GDK_HINT_POS)) instead of
559 (!info->last_flags & GDK_HINT_POS).
561 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
562 new_height unconditionally, because we use these values even if
563 !default_size_changed && !hints_changed.
564 comented the (default_size_changed || hints_changed) case with
565 respect to resize rejects from the window manager.
567 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
568 in the zvt condition hack, since this includes the window hints, set
569 the hints after the handling_resize case.
571 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
572 window is initially shown with to the geometry.
574 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
576 * gtk/gtkwindow.c (gtk_window_move_resize):
577 s/size_changed/default_size_changed/g so i know what's
578 really going on (frying brain on smaller flame now).
580 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
582 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
583 we have size_changed upon handling_resize. this is a gross
584 workaround for the broken zvt widget and should be removed in
585 1.3 again (search for FIXME).
586 Owen provided an accurate comment for this:
588 /* We could be here for two reasons
589 * 1) We coincidentally got a resize while handling
591 * 2) Our computation of size_changed was completely
592 * screwed up, probably because one of our children
593 * is broken. It's probably a zvt widget.
595 * For 1), we could just go ahead and ask for the
596 * new size right now, but doing that for 2)
597 * might well be fighting the user (and can even
598 * trigger a loop). Since we really don't want to
599 * do that, we requeue a resize in hopes that
600 * by the time it gets handled, the child has seen
601 * the light and is willing to go along with the
602 * new size. (this happens for the zvt widget, since
603 * the size_allocate() above will have stored the
604 * requisition corresponding to the new size in the
607 * This doesn't buy us anything for 1), but it shouldn't
608 * hurt us too badly, since it is what would have
609 * happened if we had gotten the configure event before
610 * the new size had been set.
613 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
615 * gtk/gtkrc.c: deal properly with the fact that RC
616 style lists may include rc styles more than once.
618 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
619 unused static function.
621 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
622 stack of directories of RC files currently being
623 parsed and implicitely add them to pixmap path.
625 This fixes a bug where the directory would get
626 appended then overwritten by pixmap_path declarations.
628 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
630 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
631 theme's exit function. (Patch from Peter Wainwright,
634 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
635 Add a destroy() handler to take care of removing
636 group for menu item. (Fixes bug #1197)
638 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
641 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
643 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
644 roundtrip to figure window's width and height, since we know that
645 anyways from widget->allocation.
647 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
649 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
650 the hints after we request the new size.
652 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
654 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
655 GTK_WIDGET_REALIZED() assertion - we can compute the
656 hints before we are realized.
658 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
659 hint changing so that we have a value of hints_changed
660 when we decide whether to constrain the window size.
662 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
664 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
665 change back to G_MAXINT.
667 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
669 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
670 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
671 contain uncluttered values.
672 (gtk_window_compute_hints): simply assert that window is realized
673 and that geometry_info is valid, since we rely on this anyways.
674 (gtk_window_constrain_size): major cleanups to the code.
675 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
676 for the base size, instead of the minimums. use 32767 as max width
677 and height (like in gtkwindow.c) instead of G_MAXINT.
679 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
681 * cleaned up the GtkContainer.need_resize flag handling mess, we
682 only need to force resize requests when we were prematurely
683 realized, or our widget tree was modified when we were temporarily
684 hidden. handling these cases directly upon showing the window (i.e.
685 while the GdkWindow is still unmapped) avoids the need to wait for
686 a configure event response and therefore makes the GUI more snappier
687 and avoids blank windows during the roundtrip.
691 (gtk_widget_show): don't queue resizes on toplevels, they know how
692 to deal with matters.
694 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
695 flag directly for not visible resize containers and spare us unecessary
699 (gtk_window_realize): if we need to enforce premature size allocation,
700 queue a container resize so we are correctly resized later on.
702 (gtk_window_size_request):
703 don't freak around with the ->need_resize flag,
704 gtk_container_queue_resize() will care about that.
706 handle initial resizing issues here, we can handle matters better in
707 this place, especially since we know that our GdkWindow is still
709 (gtk_window_move_resize):
710 don't care about ->need_resize at all.
711 handle size changes properly that occoured while we waited for a
714 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
716 * gtk/gtkwidget.c (gtk_widget_set_uposition):
717 * gtk/gtkwindow.[hc] (gtk_window_reposition):
718 Move the hint setting code from gtk_widget_set_uposition
719 to here; set the hints so that we respect any previously
722 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
723 change the window hints here or move the window here,
724 let that happen in gtk_window_move_resize().
726 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
728 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
729 to already queued resizes (and therefore redraws) on a widget, check
730 its anchestry as well.
732 * gtk/gtkcontainer.c:
733 (gtk_container_queue_resize): clear resize widgets for resize
734 containers before aborting prematurely. this is especially important
735 for toplevels which may need imemdiate processing or their resize
736 handler to be queued.
737 (gtk_container_dequeue_resize_handler): added new internal function for
740 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
741 configure event, take possible changes in window position into account
743 if we request a new window size, queue up a resize handler that will
744 last until the configure event response arrives.
745 combined the ->need_resize case (initial show) with the general size
746 (hints) changed case and added even more comments.
747 if !auto_shrink, only revert to the old allocation if the new size
748 is smaller than the current allocation.
750 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
752 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
753 gtk_window_set_geometry_hints
754 gtk_window_set_default_size):
755 When hints are set, queue a resize so that the hints will
756 be eventually reset on the toplevel.
758 * gtk/gtkwindow.c (gtk_window_show): Use
759 gtk_window_compute_default_size(). Clear the need_resize flag
760 on the initail map so that we don't unnecessarily trigger the
763 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
764 into separate functions. Compare the hints we are setting
765 with what we set last time so that we can accurately
766 tell when we need to reset the hints.
768 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
769 function to figure out the size from requisition
772 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
773 from fvwm to constrain a size to the geometry hints.
775 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
776 to compare two sets of geometry hints.
778 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
779 from gtk_window_set_hints(), just compute the hints,
782 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
783 code from gtk_window_move_resize() to separate function,
786 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
788 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
789 structure into a new private structure.
791 * gtkrc.c: Split GtkRcStyle into public/private.
792 In the private part, add a list of pointers to the
793 RcStyle lists this RcStyle participates in.
795 * gtkrc.c: When a RcStyle is free, remove all
796 lists referencing it from the
797 realized_style_ht hash, and free those lists.
799 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
800 gtk_rc_init(), since that adds the default styles
801 to the list of parsed RC files again.
803 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
805 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
807 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
808 checks that ensure that a widget's allocation is at least 1 in width
809 and height. (GNOME note: this doesn't affect old panel code anymore,
810 because GtkSocket will request width and height of at least 1 since
813 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
814 allocated yet (happens if the user realizes the window prematurely),
815 size request and allocate it.
816 (gtk_window_size_allocate): guard against guint underflows.
818 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
820 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
821 in gtk_built_sources, so gtk.defs gets built prior to all other
824 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
827 invoke indent on gtkmarshal.*.
828 rewrote source generation rules, use COPYING as oldest source tag for
829 a piggyback rule to generate all sources from (don't touch it ;).
830 major cleanups, strip spaces on build rules for GNU Make.
832 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
833 source and target files from commandline arguments. don't invoke indent.
835 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
837 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
838 notebook after switch to avoid drawing problems.
839 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
841 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
843 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
845 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
847 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
848 notebook after switch to avoid drawing problems.
849 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
851 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
853 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
855 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
858 we use window->need_resize from configure_event now, to indicate that
859 the gtkwindow should keep its allocation (e.g. because the user resized
860 the window through window manager handles). resize_count is now reliably
861 used to figure whether we got the allocation we requested from the
863 configure events get queued as resizes now, the real stuff (size
864 computation and allocation) now only goes on in gtk_window_move_resize().
865 GtkWindow's requisition now contains its *real* requisition (like all
866 other widgets), *not* taking usize into account.
867 geometry_info->last_{width|height} is now updated from set_hints() only
868 so it always contains the last hints we set for the window manager.
869 made some event handlers return TRUE instead of FALSE.
870 the overall code should be much more straight forward now, and the
871 significant code portions are accompanied by comments now.
872 (gtk_window_set_hints):
873 removed requisition argument and made it
874 fetch the requisition through gtk_widget_get_child_requisition.
875 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
878 ensure that the widget is realized before calling
879 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
880 ensure that we got properly size requested and allocated before
882 (gtk_window_configure_event):
883 ignore plain window moves, or reallocate the widget tree through the
884 resize queue otherwise.
885 (gtk_window_move_resize):
886 mostly rewrote this function to figure window manager hints more
887 reliably, coalesce window moves and resizes to reduce configure events
888 and do actuall size allocations.
890 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
892 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
893 that have a resize pending, because a redraw is already queued for them.
895 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
896 hack to clear resize_widgets.
898 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
899 for resize containers prior to size allocation. (this is also a bit
900 ugly, but avoids side effects for stopped emissions and is thus more
902 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
904 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
905 function from gtk_tooltips_expose, as we connect to ::expose_event
908 1999-08-18 Federico Mena Quintero <federico@redhat.com>
910 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
912 (gtk_target_list_unref): Likewise.
914 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
916 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
918 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
919 guard against division by zero. (Fixes bug #1339)
921 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
923 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
924 Prevent the trivial leak of information of allowing
925 word motion when the entry is not visible.
927 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
929 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
930 modality to error dialog as well as confirmation dialogs.
931 (Bug #1803, reported by Rosanna Wing Sze Yuen)
933 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
935 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
937 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
939 * gtk/Makefile.am (install-data-local): Solaris apparently
940 has various troubles with ln -f; use rm first instead.
941 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
943 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
945 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
946 use `cp' followed by `rm' (the `rm' was already there).
948 July 30, 1999 Elliot Lee <sopwith@redhat.com>
950 * configure.in: Fix autoconf warnings about cross compilation by
951 trying to provide sane defaults for AC_TRY_RUN.
952 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
953 put them into $(srcdir) when generated. Also add a dependency of
954 gtksignal.h on gtkmarshal.h for -j builds.
955 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
957 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
959 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
960 GDK_THREADS_{LEAVE,ENTER} pair.
961 (From Paul Fisher <pnfisher@redhat.com>)
963 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
965 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
966 width and height are always >0 (owen).
968 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
970 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
971 change that assured that a widget's allocated with and height are
972 always >1, since this breaks *buggy* panel code. unfortunately this
973 back-breaks the gimp's color selector.
975 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
976 allocation is always >0 in width and height, before sending the
977 configure event; this is a *gross* hack to get the gimp back to work.
979 * marked both cases with TODO-1.3
981 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
983 * gtk/gtktext.c: Don't display wrap indicators when
984 text is not editable and word wrap is on.
986 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
988 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
989 option menus here as they are not derived from menu shell, assure that
990 the option menu has a menu we can add items to.
992 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
994 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
995 width/height to (gint) before calculations and check against < 0 to
996 avoid guint wraparounds.
998 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
1000 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
1001 width and height is never zero. sanity check both dimensions against
1002 32767 and issue a warning if the allocation is greater than that.
1004 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
1006 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
1007 to g_main_pending() as well.
1009 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
1011 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
1012 call to g_main_iteration() - since that will regrab
1013 GTK+ lock to process events.
1015 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
1018 - Regularize with the rest of GTK+ by making widget->requisition
1019 not reflect the set_usize()
1020 - Always recompute geometry hints, then check if they
1021 changed before sending them to the X server. The
1022 previous checks for changes would fail in a number
1025 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
1027 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
1029 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
1033 - Instantaneously update on modifier key presses
1034 - Allow cancellation of the drag with Escape.
1036 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
1038 * gtk/testgtk.c (create_handle_box): Set the policy
1039 to auto_shrink - otherwise the appearance is rather
1040 strange when flipping between horizontal and vertical.
1042 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
1044 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
1045 (gtk_window_set_default_size): don't change a value if it's < 0.
1048 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
1050 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
1052 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
1054 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
1055 add an extra "/" when concating "/" + filename.
1056 (From Matt Grossman <mattg@oz.net>)
1058 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
1060 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
1061 for fg_gc if we set it for drawing pixmap.
1063 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
1065 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
1067 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
1068 already set, call old engine's destroy function and
1069 unref the old engine.
1071 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
1073 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
1075 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
1077 * gtk/gtkaccelgroup.h: mark certain functions as internal.
1079 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
1081 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
1082 expand behaviour changed.
1084 * gtk/gtklabel.c (gtk_label_set_pattern):
1085 (gtk_label_set_justify):
1086 (gtk_label_set_line_wrap):
1087 don't bother invoking queue_clear, the reallocation does
1088 that for us, always free_words so the upcoming resize will
1089 relayout the label's contents.
1091 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
1093 * applied argument implementation patches from Elena Devdariani
1096 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
1097 ::space_style, ::relief
1098 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
1099 * gtk/gtkpreview.c: ::expand
1100 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
1101 * gtk/gtknotebook.c: ::homogeneous
1102 * gtk/gtklabel.c: ::wrap
1103 * gtk/gtklist.c: ::selection_mode
1104 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
1105 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
1106 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
1107 * gtk/gtkclist.c: ::sort_type
1108 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
1109 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
1111 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
1113 * gtk/gtkstyle.c: Removed ill-thought-out part of last
1116 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
1118 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
1119 counting right when we have to attach a new style
1120 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
1122 * gtk/gtkstyle.c: Documented the refcounting
1123 peculularities of gtk_style_attach.
1125 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
1127 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
1130 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
1131 of GTK_TOPLEVEL for creating the window.
1133 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
1135 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
1136 the last argument (reported by Per Winkvist).
1138 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
1140 Fixes for invisible XOR lines (Frank Loemker
1141 <floemker@TechFak.Uni-Bielefeld.DE>)
1143 * gtk/gtkclist.c (gtk_clist_realize): Always use
1144 a non-zero pixel for GDK_XOR.
1146 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
1147 Use GDK_INVERT instead of GDK_XOR.
1149 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
1151 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
1152 signals if h/voffsets differ from adjustment values.
1153 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
1155 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
1157 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
1158 ::selection-done emissions up to the topmost menu shell.
1160 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
1162 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
1163 the user data on the window before destroying it.
1165 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
1166 unrealize handler to take care of destroying
1167 notebook->panel properly.
1168 (Bug #1198 - Morten Welinder <terra@diku.dk>)
1170 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
1171 of g_new and g_realloc to stop memory leak. (Actually,
1172 we could just use g_realloc(), but I'm not 100% sure
1174 (Bug #1196 - Morten Welinder <terra@diku.dk>)
1176 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
1178 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
1180 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
1183 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
1184 with bin/button confusion.
1186 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
1188 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
1189 and show how preselection of radio items is done.
1191 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
1193 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
1194 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
1195 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
1196 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
1197 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
1198 * gtk/gtktable.c (gtk_table_attach):
1199 * gtk/gtklist.c (gtk_list_insert_items):
1200 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
1201 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
1202 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
1203 * gtk/gtkbin.c (gtk_bin_add):
1204 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
1205 * gtk/gtkfixed.c (gtk_fixed_put):
1206 * gtk/gtklayout.c (gtk_layout_put):
1207 general fixups to container_add logic. always realize child if
1208 child->parent is realized, only map the child and queue a resize
1209 if child and child->parent are both visible.
1211 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
1213 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
1214 instead of gtk_container_foreach to walk and unrealize children, so
1215 composite children get also unrealized.
1216 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
1217 (gtk_widget_map): assert that the widget is visible (basic constrain).
1218 (gtk_widget_real_map): assert that the widget is realized (basic
1221 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
1223 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
1225 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
1227 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
1228 file for iso-8859-2 locales.
1230 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
1232 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
1234 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
1235 (Pointed out by andy@rz.uni-karlsruhe.de and others).
1236 Remove some suspicious and useless lines.
1238 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
1240 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
1241 width,height = 0, 0 to mean - here to edge of window,
1242 instead of -1, -1, since the former is all we support.
1244 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
1246 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
1247 when removing from quit_functions list.
1249 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
1251 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
1253 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
1255 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1256 When redrawing characters on non-visible entry, use appropriate
1257 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
1259 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
1261 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
1262 from drag coordinates.
1263 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
1266 * gtk/gtktree (drag_dest_cell)
1267 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
1270 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
1272 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
1274 (gtk_item_factory_finalize): invoke translate_notify independant from
1276 (gtk_item_factory_set_translate_func): likewise.
1277 (gtk_item_factory_destroy): only remove ifactory pointer from those
1278 widgets that belong to us (stupid me).
1280 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
1282 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
1283 rc_style list when lookup succeeeds.
1285 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
1287 * gtk/gtkctree.c (resync_selection):
1288 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
1289 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
1292 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
1294 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
1295 Add some missing GDK_THREADS_ENTER()/LEAVE around
1296 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
1298 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
1300 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
1301 rather than emit_by_name.
1303 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
1304 on the widget across multiple signal emissions.
1305 (gtk_editable_delete_text): same here.
1306 (gtk_editable_class_init): set widget_class->activate_signal after
1307 editable_signals[ACTIVATE] has been created.
1309 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
1311 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
1312 position here prematurely -- we might not have the
1313 right ->min_position and ->max_position yet.
1315 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
1317 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
1318 Add error traps so if the other end of the connection
1321 * gtk/gtkselection.c (gtk_selection_notify): Clean
1322 up properly when selection property retrieval fails.
1324 * gtk/gtkselection.c (gtk_selection_request): Correctly
1325 reject SelectionRequest notifies where the handler
1328 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
1330 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
1331 when we've previously highlighted.
1333 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
1334 emit two "drag_leave" signals for Motif drops.
1336 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
1337 back the correct status messages when dropping from
1338 Motif onto a proxy window that is rejecting the
1341 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
1343 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
1344 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
1345 to compare two argument values. added gtk_arg_to_valueloc() to set a
1346 variable from an arg through its location (pointer).
1348 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
1349 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
1350 as gfloat*, uchars are collected as guchar*, ints are collected as
1353 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
1355 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
1356 Include <string.h> instead of <strings.h>.
1358 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
1359 (actually, a lot more duplicate includes occur if
1360 you trace through the sequence of #include's)
1361 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
1363 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
1365 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
1366 gtk-a-higuti-990322-[0-3]
1368 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
1369 that was causing -DX_LOCALE not to work.
1371 * gtk/gtkrc.c (gtk_rc_init):
1372 X_LOCALE will never have LC_MESSAGES defined
1374 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
1376 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
1377 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
1379 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
1380 left/right as well (gtk-michael-980726-0.patch.gz).
1382 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
1383 for pointer values, use gchar instead of char. fixed uline allocation
1384 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
1385 chunks instead of G_ALLOC_ONLY.
1386 (gtk_label_size_request): always alter requisition as passed and leave
1387 widget->requisition alone.
1388 (gtk_label_set_text): allow NULL strings.
1389 (gtk_label_new): likewise.
1391 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
1393 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
1395 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
1397 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
1398 *and* mapped (i.e. drawable).
1399 (gtk_bin_expose): only send exposes to drawable children.
1401 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
1402 (gtk_box_expose): only send exposes to drawable children.
1404 * gtk/gtkhscale.c (gtk_hscale_draw):
1405 * gtk/gtkvscale.c (gtk_vscale_draw):
1406 hm, this is an ugly one. we first compute the size of our trough area
1407 here (window relative) and then check intersection with the draw_area
1408 which is parent relative because we're a NO_WINDOW widget, so we need
1409 to offset the trough area by allocation.x and allocation.y before the
1410 check. (this must not be done for the background area though, since
1411 that's already computed parent relative).
1413 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
1415 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
1416 unrealize title buttons.
1418 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
1420 * gtk/gtkclist.c (gtk_clist_column_title_passive)
1421 (gtk_clist_column_title_active):
1422 only connect/disconnect to GtkWidgetClass::event to block mouse events.
1424 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
1425 zero initialize event, removed superfluous gdk_window_get_pointer call
1427 * gtk/gtklist.c (gtk_list_vertical_timeout)
1428 (gtk_list_horizontal_timeout): removed superfluous
1429 gdk_window_get_pointer call
1431 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
1433 * plugging problems reported by "Bruce Mitchener, Jr."
1434 <bruce@puremagic.com> due to a purify session.
1438 (gtk_style_unref): assert ref_count to be > 0.
1440 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
1442 (gtk_clist_set_shift): likewise.
1444 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
1447 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
1448 event before sending it and set send_event to TRUE (which needs to
1449 be done for *all* synthesized events).
1450 (gtk_list_vertical_timeout): likewise.
1452 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
1455 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
1456 to TRUE when synthesizing events.
1458 [ *** end of merges from 1.2 *** ]
1460 1999-11-21 Tor Lillqvist <tml@iki.fi>
1462 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
1463 (or copied from gdkconfig.h.win32 on Win32, sigh).
1465 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
1467 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
1469 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
1471 * gdk/gdkconfig.h.win32: New file.
1473 * gdk/win32/makefile.cygwin: Build just a static archive here.
1475 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
1476 for the DLL from the static archive built above.
1478 * gdk/gdk.def: Moved here from the win32 subdirectory.
1480 * gdk/win32/*: Adapt for the changed private struct organisation.
1482 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
1484 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
1486 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
1487 for wheel mice (buttons 4 and 5).
1489 1999-11-18 Tor Lillqvist <tml@iki.fi>
1491 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
1492 drawables use just the pixel field in the foreground and
1493 background GdkColor of the GdkGC.
1495 gdk_gc_set_{fore,back}ground() are called in the GIMP with
1496 GdkColors containing uninitialized (red,green,blue) fields, and
1497 just the pixel field filled in, and furthermore in the
1498 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
1499 It thus turns out that we really don't need to have the full
1500 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
1501 it later to have just the pixel values.
1503 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
1505 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
1507 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
1509 * docs/gtkfaq.sgml: threads example from Erik Mouw.
1510 New question on GtkLabel background colors.
1512 * docs/gtk_tut.sgml:
1513 - Correct the example code callback
1514 function definitions.
1515 - Update the gtkdial example code, from Frans van Schaik.
1516 - Update setselection.c to current API.
1518 * examples/Makefile examples/*/*.c: Update to code
1521 1999-11-10 Tor Lillqvist <tml@iki.fi>
1523 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
1524 subrange table (from the "Developing International Software for
1525 WIndows 95 and Windows NT" book) was missing the Hangul syllable
1526 block... Get the loaded font's charset correctly.
1528 (Note that this, and the other *-win32.c files, still really are
1529 the old ones, the win32 subdirectory is not ready for compilation
1530 yet after the reorg.)
1532 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
1534 * gtk/gtkclist.c: Fix off-by-one bug in parameter
1537 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
1539 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
1540 on results of XQueryDeviceState().
1542 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
1544 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
1545 we need to accesss only ->children. We need an accessor
1548 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
1549 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
1550 to get rid of gdkx.h include.
1552 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
1553 and random references to 'None'.
1555 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
1556 Get rid of unused #include <gdk/gdkx.h>
1558 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
1559 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
1562 1999-11-08 Tor Lillqvist <tml@iki.fi>
1564 * gdk/win32/gdkdraw.c
1565 * gdk/win32/gdkfont.c
1566 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
1567 following yesterday's changes. (Unrelated to Owen's reorg.)
1569 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
1571 * gdk/x11/gdkinput-gxi.c: Add missing include,
1572 fix GdkWindowPrivate => GdkDrawablePrivate.
1574 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
1576 * gdk/x11/Makefile.am (xinput_sources): Add missing
1577 backslash to fix building with --with-xinput=none
1579 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
1581 Move all X specific code into the x11/ directory.
1582 Aside from shuffling things around, did the following:
1584 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
1585 gdk_arg_context_* - a simple argument parsing system
1586 in the style of popt.
1588 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
1589 gdk/x11/gdkprivate-x11.h:
1590 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
1591 add ->klass and ->klass_data fields. The klass_data
1592 field points to an auxilliary structure that is
1593 windowing system dependent.
1595 * gdk/gdkfont.c: Make most of the measurement functions
1596 simply wrappers around gdk_text_extents().
1598 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
1599 _gdk_font_strlen() function that hides the weird
1600 behavior in gtk+-1.[02] where a string is interpreted
1601 differently for 8-bit and 16-bit fonts.
1603 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
1604 to store common code for synthesizing double/triple
1607 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
1608 Make all the function that modify an existing GC
1609 simply wrappers around gdk_gc_set_values().
1611 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
1612 for throwing out later.
1614 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
1615 GdkImagePrivate and GdkColormapPrivate to have a
1616 windowing system dependent part (GdkFontPrivateX etc.)
1617 that "derives" from the system-independent part.
1619 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
1620 Got rid of the included-source-files for XInput in
1621 favor of automake conditionals. (Which didn't exist
1622 when XInput support was originally added.)
1624 * gdk/gdkrgb.c: Remove the visual id from the debugging
1625 statements since that is X11 specific; print out
1626 type/depth info instead.
1629 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
1631 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
1632 loading duplicates of hashed fonts.
1634 * gdk/gdk.c (gdk_keysym_convert_case): rename
1635 gdk_XConvertCase to gdk_keysym_convert_case, allow
1636 results to be NULL in the GTK+ style.
1638 * gdk/gdkcompat.h: Started compatibility header
1641 1999-11-07 Tor Lillqvist <tml@iki.fi>
1643 * gdk/win32/gdkprivate.h: New font private structures, related to
1646 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
1647 gdk_font_list_free(). On X11, will just be wrappers to
1648 XListFonts() and XFreeFontNames(). On Win32, the code previously
1649 in gtkfontsel.c is now here.
1651 New function gdk_font_xlfd_create(). On X11 will get the FONT
1652 property of the font (for GDK_FONT_FONTs), or call
1653 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
1654 builds a XLFD style name from the font information in the LOGFONT
1657 New function gdk_font_xlfd_free(), which correspondingly frees the
1658 string returned by gdk_font_xlfd_create().
1660 Implement fontsets on Win32. Add a function that iterates over a
1661 wide char string and calls a callback function for each substring
1662 of wide chars from the same Unicode subrange (and thus probably
1663 available in the same real font).
1665 Improve the XLFD emulation a bit.
1667 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
1669 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
1670 Beta3, WM_IME_CHAR messages don't seem to contain the composed
1671 multi-byte char as with the Active IMM on Win9x. Oh well, handle
1672 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
1673 ImmGetCompositionStringW() to get the composed Unicode chars.
1676 * gdk/win32/gdkdraw.c: Changes needed because of the font private
1679 * gdk/win32/gdk.def: Add the new functions.
1681 1999-11-04 Tor Lillqvist <tml@iki.fi>
1683 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
1684 get the Platform SDK to get <dimm.h>.
1686 * gdk/win32/gdkevents.c: More event handling fixes and
1687 simplification. Never generate motion events with is_hint true. We
1688 used to do that on bogus grounds earlier. Windows sends
1689 WM_MOUSEMOVE messages on button events even if the mouse hasn't
1690 moved, ignore these.
1692 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
1694 * gdk/win32/gdkglobals.c
1695 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
1696 the TrackMouseEvent function, and use it.
1698 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
1699 char before calling WideCharToMultiByte in order to get a string
1700 for the window title.
1702 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
1704 * gdk/win32/gdk.def: Remove obsolete functions.
1706 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
1707 /nodefaultlib and /defaultlib switches.
1709 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
1711 1999-10-31 Tor Lillqvist <tml@iki.fi>
1713 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
1716 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
1717 same type as GdkWChar, especially on Win32.
1719 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
1721 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
1722 before passing to Windows GDI for drawing etc. Convert to the
1723 system default codepage before passing to Windows as window
1726 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
1727 support changing input locale on the fly.
1729 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
1730 on-the-fly changes. Convert incoming characters from the current
1731 codepage to Unicode (and then to a UTF-8 multi-byte string) based
1732 on the current input language. Use keysym<->Unicode mapping tables
1733 and functions borrowed from xterm sources.
1735 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
1736 editions of Win9x, use the ActiveX-based Active IMM (Input Method
1737 Manager) if available. IMEs and the Active IMM are available under
1738 the disguise of Chinese, Korean and Japanese support for IE and
1739 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
1740 support is present in all editions (as long as you install it).
1742 Call DispatchMessage from gdk_events_queue() (and thus
1743 gdk_WindowProc()), instead of duplicating the code in
1746 Reworked the grab handling and propagation code, factored out
1747 duplicated code snippets into separate functions. Other cleanups,
1750 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
1751 the <dimm.h> header describing the Active IMM.
1753 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
1754 just do the same as for "single" fonts.
1756 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
1757 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
1758 the new keysyms from gdkkeysyms.h.
1760 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
1761 fontset, so that gtkentry uses wide characters.
1763 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
1764 GTk+'s system directory "gtk+", not "gtk".
1766 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
1768 * docs/gtkfaq.sgml: FAQ update
1770 1999-10-21 Tor Lillqvist <tml@iki.fi>
1772 * gdk/win32/gdkprivate.h: Add more font private data.
1774 * gdk/win32/gdkfont.c
1775 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
1776 fonts and strings. Now works much better. You still have to
1777 have a correct font selected, though. No fontset emulation yet.
1779 1999-10-19 Tor Lillqvist <tml@iki.fi>
1781 * gtk/maketypes.awk: Use G_OS_WIN32.
1783 * gtk/gtk.def: Add some missing entry points. Also some non-public
1784 ones, but PyGTK porter claims to need them.
1786 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
1787 built-in type generation.
1789 1999-10-14 Tor Lillqvist <tml@iki.fi>
1791 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
1792 GDK_FONT_FONT fonts (which is all we have for now, we don't
1793 emulate fontsets). The X11 version uses plain XDrawString in that
1794 case, too. The string passed to gdk_draw_text_wc seems to be in
1795 fact (at least, when used by gtkentry and gtktext) either in a
1796 single-byte charset, or a DBCS. Not Unicode.
1798 This fixes the problem in gtkfontsel, where even if you had
1799 selected a font with a non-Latin1 charset (windows-greek, for
1800 instance), the preview still used Latin-1 glyphs.
1802 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
1803 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
1804 (gdk_font_load): Recognize the demibold etc weights, even if we
1805 don't have the corresponding constants in the headers.
1806 (gdk_font_hash_insert): Use same hash mechanism as in the X11
1807 version. Should save font resources a bit, when we don't have
1808 multiple HFONTs for the same font.
1810 * gdk/win32/gdkprivate.h: Add the names field as in the X11
1813 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
1815 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
1818 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
1820 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
1821 layout support (as mentioned on
1822 http://www.jcinteractive.com/gnome-ui/software/widgets/)
1824 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
1827 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
1829 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
1831 * configure.in (ALL_LINGUAS): Added Galician (gl)
1833 1999-10-05 Tor Lillqvist <tml@iki.fi>
1835 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
1837 * gdk/win32/gdkcompat.c: New file, actually provide an
1838 implementation for the deprecated functions. (Just temporarily.)
1840 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
1842 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
1844 * gdk/win32/gdk.def gtk/gtk.def: Updates.
1846 1999-10-05 Kjartan Maraas <kmaraas@online.no>
1848 * configure.in: Added "uk" to ALL_LINGUAS.
1850 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
1852 * configure.in: correct checking for BeOS check
1857 * gtk/gtkitemfactory.c
1859 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
1861 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
1863 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
1864 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
1865 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
1868 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
1870 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
1871 Fix a reference to window_private->destroyed.
1873 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
1874 (ugly) setting of an internal GdkWindow member to use
1875 a _slightly_ cleaner macro.
1877 * gdk/gdkprivate.h: Split GdkWindowPrivate into
1878 GdkDrawablePrivate and GdkWindowPrivate.
1879 Add extra macros for accessing GDK_DRAWABLE_ components.
1881 * *.[ch]: Massive adjustments for the above, use the
1882 new macros in a lot of places.
1884 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
1886 * gdk/gdktypes.h: Make GdkDrawable the base type,
1889 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
1891 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
1893 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
1895 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
1897 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
1899 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
1900 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
1902 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
1904 * docs/gtk-config.1: Now autogenerated.
1905 * docs/Changes-1.4.txt: started
1907 1999-10-03 Tor Lillqvist <tml@iki.fi>
1909 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
1910 to #ifdef also here.
1912 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
1913 Owen did to the X11 backend.
1915 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
1916 ScrollWindowEx when blitting inside a window, it can't be correct
1917 in the general case.
1919 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
1920 WM_GETMINMAXINFO is easier.
1922 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
1923 depth equal to the bitspixel value, not the visual's depth.
1925 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
1926 to 24 even if the bitspixel value is 32.
1928 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
1929 need to check for depth==32 when bpp==32, depth will always be 24.
1931 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
1933 * docs/Changes-1.4.txt: Started
1935 * gtk/Makefile.am (gdk_headers): Include all the new headers.
1937 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
1939 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
1942 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
1943 header to gdkinputprivate.h.
1945 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
1946 unused since before 1.2.
1948 1999-09-30 Tor Lillqvist <tml@iki.fi>
1950 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
1951 expand possible hex escapes in the font family (put there by
1952 logfont_to_xlfd if the font name isn't a legal XLFD font family,
1953 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
1954 On Win32, add hex escapes here, too.
1956 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
1958 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
1959 to #ifdef GDK_WINDOWING_X11.
1961 [ Merges from gtk-1-2 ]
1963 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
1965 * configure.in: fixed "GNU Make" check to pass with new make version
1968 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
1970 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
1971 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
1972 AM_PATH_GTK() macros don't get confused by the -pre1.
1974 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
1976 * configure.in (REBUILD): Change check for perl5
1977 to check explicitely for v >= 5.002. (5.001
1978 does not work with our scripts.)
1980 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
1982 * configure.in: evaluate $PERL for the perl version check. added
1983 --disable-rebuilds to give the user an option to completely disable
1984 any source autogeneration rules.
1986 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
1988 * configure.in: evaluate $ac_make when checking for GNU Make.
1990 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
1992 * docs/Makefile.am: added generation.txt.
1994 * Makefile.am: require automake 1.4, build README from README.in and
1995 INSTALL from INSTALL.in in dist-hook.
1998 * INSTALL.in: new files to autogenerate README and INSTALL from.
2000 * configure.in: figure whether we have GNU Make
2002 * docs/generation.txt: minor additions/corrections.
2004 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
2006 * docs/gtkfaq.sgml: FAQ Update
2008 July 30, 1999 Elliot Lee <sopwith@redhat.com>
2010 * configure.in: Fix autoconf warnings about cross compilation by
2011 trying to provide sane defaults for AC_TRY_RUN.
2013 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
2016 * ltmain.sh: upgrade to libtool 1.3.3
2018 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
2020 * INSTALL: Indicate that the --with-glib= configure
2021 time flag is unsupported.
2023 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
2025 * docs/generation.txt: Added a file that gives
2026 documenation about the autogeneration process for
2027 various autogenerated files.
2029 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
2031 * configure.in (LIBS): Look for libgmodule in the
2034 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
2036 * docs/gtk_tut.sgml: Removed references to
2037 code examples in my directory on gtk.org as
2038 they should all be in the tutorial now.
2040 * docs/gtk_tut.sgml: Added sources for dial-test
2041 and scribble-xinput programs that were previously
2044 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
2046 * TODO: Added entry about menu keyboard navigation, removed
2047 some finished items.
2049 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
2051 * acinclude.m4: Standardize on func_dgettext
2052 not func_gettext, so that the checks for dgettext
2053 actually are paid attention to.
2055 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
2057 * configure.in (LIBS): Add $INTLLIBS into $LIBS
2058 directly, rather than repeating the checks for
2061 * INSTALL: Added information about gettext and
2064 * acinclude.m4 (LIBM): Check for dgettext, not
2065 just gettext. This should hopefully fix things wrt
2066 systems with old versions of GNU gettext installed.
2068 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
2070 * configure.in (LIBS): Look for libgmodule in the
2073 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
2075 * autogen.sh: add --enable-maintainer-mode
2077 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
2079 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
2081 * docs/gtk-config.1.in:
2083 configure.in: gtk-config is now generated.
2085 * docs/gtk-config.1: Removed, now generated.
2087 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
2089 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
2090 handle CreateNotify itself, still put out a debuging message for
2091 --gdk-debug=events. made the ReparentNotify debugging message more
2093 wrap xcoords translation for ConfigureEvents into an error trap,
2094 a destroy event may already be pending, and in that case, the
2095 actuall coordinate values are not at all critical.
2097 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
2099 * gdk/gdkcc.c: Stop leaking the color_hash all over
2100 the place. Simplify and improve the logic.
2102 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
2104 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
2105 for prototypes and function implementations consistent (reported
2108 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
2110 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
2111 send_event set in debugging output.
2112 (gdk_compress_exposures): default initialize the event so we don't
2113 operate on bogus values (namely send_event).
2115 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
2117 * gdk/gdkwindow.c: When we receive an unexpected
2118 destroy notify on one of our windows, don't just
2119 warn about it, also mark our windows as destroyed.
2121 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
2123 * gdk/gdkfont.c (gdk_font_hash_insert): Add
2124 name => font and name => fontset hashes. The
2125 name => fontset hash is a _big_ win since we
2126 weren't previously caching fontsets at all and loading
2127 fontsets is expensive. The name => font hash
2128 is less of a win, but it does save us from doing
2129 repeated XQueryFont calls on the same font.
2131 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
2132 list so we can remove font/fontset from hash.
2134 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
2136 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
2137 and slightly confusing test. [ XInternAtom (,,TRUE)
2138 will never return None ].
2140 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
2142 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
2143 gdk/gdkwindow.c (gdk_window_set_hints):
2145 Don't omit setting the properties if flags == 0 -
2146 there may be an existing set of properties there
2147 already. (Very old bug. Would it be better to
2148 delete the property instead?)
2150 * gdk/gdkselection.c (gdk_selection_property_get): Fix
2151 spelling error in comment.
2153 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
2155 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
2156 to avoid stomping over gdk_error_warnings.
2158 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
2159 as (bits_per_pixel + 7) / 8. This gives the same
2160 result as before for multiples of 8, but actually
2161 a "reasonable" value for 1bit or 4bit displays.
2163 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
2165 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
2168 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
2170 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
2171 discarding configure events.
2173 1999-08-18 Federico Mena Quintero <federico@redhat.com>
2175 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
2176 refcount is greater than zero.
2178 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
2180 * gdk/gdkfont.c (gdk_font_unref): Likewise.
2182 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
2184 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
2186 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
2188 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
2189 that format 32 => sizeof(item) == 4. It really is
2192 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
2194 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
2195 core dump at all on X IO errors, only core dump
2196 if --enable-debug for X errors.
2198 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
2200 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
2201 unknown window:" message. disabled ConfigureNotify discarding code,
2202 because it led to events being processed out of order.
2204 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
2206 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
2208 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
2209 we export this function, supress error warnings and don't reset the
2210 error code in the first half of this function.
2212 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
2213 code (instead of just -1) so gdk_error_trap_pop() reveals something
2214 actually informative about the error that happened.
2217 don't rely on gdk_error_code being -1 if an error occoured, but just
2218 gdk_error_code != 0.
2220 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
2222 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
2223 pointer *before* invoking the filter function, so we at least don't
2224 crash if a filter is removed that is currently executed. window filters
2225 *really* need to be made truely reentrant at some point.
2227 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
2229 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
2230 PropertyNotify debug messages.
2232 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
2234 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
2236 * gdk/gdkim.c: Fix cut-and-paste errors for
2237 x/y and PreeditAttributes/StatusAttributes.
2239 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
2241 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
2242 G_MAXINT to 2^16 to alleviate overflow problems in
2243 various window managers.
2245 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
2247 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
2250 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
2252 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
2253 Initialize size_hints.x and size_hints.y because kwm
2254 brokenly pays attention to them.
2255 (Bug #1181 - Lars Heete <hel@admin.de>)
2257 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
2259 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
2260 return value of gdk_list_visuals().
2261 (Bug #1193 - Morten Welinder <terra@diku.dk>)
2263 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
2265 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
2266 XSetIMValues to (void *) when comparing to NULL, to workaround
2267 the problem of some compilers barfing since older X headers don't
2268 have the prototype for it.
2270 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
2272 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
2273 for pseudocolor where colormap->colors was double
2276 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
2277 color value in the hash table with the pixel filled
2278 in so when we do later hash table lookups, the color
2281 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
2283 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
2286 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
2288 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
2289 pointed out by Morten Welinder <terra@diku.dk>.
2291 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
2293 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
2294 default filter from the list
2296 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
2298 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
2299 default filter from the list
2301 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
2303 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
2305 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
2306 g_strdup_printf instead of calcing the length separately
2308 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
2310 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
2311 that we don't do in many other places. (Fixing duplicate
2312 #include of config.h)
2314 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
2315 Otherwise, #ifndef XINPUT_NONE check in the latter
2316 doesn't work. (Bug #546)
2318 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
2320 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
2321 "None" case insensitive.
2323 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
2325 * gdk/gdkselection.c:
2326 Add error traps so if the other end of the connection
2329 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
2331 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
2332 dest_xid field into two fields - one for the window
2333 to send in messages, one to indicate the last looked
2334 up window for caching purposes. This is needed, so
2335 that Leave messages get the correct window.
2337 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
2339 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
2340 Fix warning created by people mucking around
2341 with the gsource API.
2343 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
2344 Change mapping between GIOCondition and GdkInputCondition
2345 to match the way the Linux kernel does it. This should
2346 fix problems where closed pipes were no longer signalling
2347 GDK_INPUT_READ on systems with a native poll().
2349 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
2351 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
2352 explicitly for the string "None" - it is in the XPM
2353 spec and some servers treat unknown colors in odd ways
2354 (like asking the user!)
2356 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
2358 * gdk/gdkevents.c: made "->" into a "." of previous change so
2361 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
2363 * gdk/gdkevents.c (gdk_compress_exposures): Set the
2364 window field of the event structure before calling
2367 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
2369 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
2370 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
2372 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
2374 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
2375 intermediate text property - prevents major memory
2376 leak when gdk_use_mb.
2377 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
2379 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
2381 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
2382 gtk-a-higuti-990322-[0-3]
2384 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
2385 sizeof(wchar_t) != sizeof (GdkWChar)
2387 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
2388 that was causing -DX_LOCALE not to work.
2390 * gtk/gtkrc.c (gtk_rc_init):
2391 X_LOCALE will never have LC_MESSAGES defined
2393 * gdk/gdk.c (gdk_init_check):
2394 Remove --xim-preedit and --xim-status from argv properly.
2396 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
2397 that the client window is present on the X server
2398 before we pass it to the input method.
2400 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
2402 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
2403 if --display is specified on the command line, than
2404 the drag window will not be created on that display.
2406 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
2408 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
2409 lookups with only_if_exists == TRUE were inserting
2410 bogus values into the atom cache.
2412 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
2414 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
2415 then reset it to NULL.
2419 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
2420 key for g_hash_table_remove() in both functions, this prevents us
2421 from accessing possibly uninitialized portions of a GdkColor structure
2422 where we are only interested in its pixel value.
2424 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
2426 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
2427 font hash table, if we have a GdkFontPrivate entry for this font
2428 already, simply increment its reference count, provided by Olaf Dietsche
2429 <olaf.dietsche+list.gtk@netcologne.de>.
2431 1999-09-21 Tor Lillqvist <tml@iki.fi>
2433 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
2436 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
2437 unused variables, leftovers from the X11 version.
2439 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
2441 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
2442 downcase fields on X11.
2444 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
2446 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
2447 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
2449 1999-09-17 Tor Lillqvist <tml@iki.fi>
2451 * gdk/win32/gdk.def: Add gdk_threads_mutex.
2453 * gtk/makefile.msc: Correct path to libintl.
2455 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
2456 use of gint vs. int, and gint vs. gboolean in headers and
2457 definitions. Use GtkType for the *_get_type functions. Note that
2458 these changes preserve binary compatibility.
2462 * gdk/gdk.h: Fix inconsistencies: gint vs int.
2466 * gtk/gtkmenufactory.c
2468 * gtk/gtkwidget.c: Fix inconsistencies, also gint
2471 * gtk/gtkcolorsel.[ch]
2473 * gtk/gtkdrawingarea.[ch]
2475 * gtk/gtkhandlebox.[ch]
2476 * gtk/gtkhpaned.[ch]
2477 * gtk/gtkhruler.[ch]
2479 * gtk/gtkpreview.[ch]
2481 * gtk/gtksocket.[ch]
2482 * gtk/gtkstatusbar.[ch]
2483 * gtk/gtktoolbar.[ch]
2485 * gtk/gtkvpaned.[ch]
2486 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
2489 * gtk/gtkgamma.h: Fix bug, missing () in call of
2490 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
2492 1999-09-14 Tor Lillqvist <tml@iki.fi>
2494 * gdk/gdkcolor.c (gdk_colormap_new)
2495 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
2496 colormap->colors was allocated twice.
2498 * gdk/win32/gdk.c: Remove some unused stuff.
2500 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
2503 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
2504 * gtk/gtklabel.h (gtk_label_get_type)
2505 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
2506 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
2507 in a couple of places, not guint.
2509 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
2511 * configure.in,po/et.po: added Estonian language file
2513 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
2515 * configure.in,po/da.po: added Danish file
2517 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
2519 * docs/gtkfaq.sgml: Minor FAQ Update
2521 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
2523 * docs/gtkfaq.sgml: FAQ update
2525 1999-08-27 Tor Lillqvist <tml@iki.fi>
2527 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
2528 way to get window contents continually refreshed while resizing. I
2529 didn't like the effects myself, so it's not on by default.
2531 * gdk/win32/gdkprivate.h: New flag variable
2532 gdk_event_func_from_window_proc, FALSE by default.
2534 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
2535 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
2536 are passed --gdk-event-func-from-window-proc.
2538 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
2539 and we have am event_func, call it instead of enqueing the event.
2541 1999-08-23 Tor Lillqvist <tml@iki.fi>
2543 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
2544 Kelley: Set expose_count in GdkEventExposes correctly.
2546 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
2547 MULTIPLE_WINDOW_CLASSES).
2549 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
2550 for bug in NT, apparently NT *does* draw the end pixel, too, in
2551 LineTo with a one-pixel pen, so we don't have to do it ourselves.
2553 1999-08-21 Tor Lillqvist <tml@iki.fi>
2555 Improvements by Hans Breuer:
2557 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
2559 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
2560 CS_?REDRAW flags as they cause lots of (late) redraws when "show
2561 window contents while dragging" is turned on. Allocate at least
2562 one unique class for every GdkWindowType. If support for single
2563 window-specific icons is ever needed (eg. Dialog specific), every
2564 such window should get its own class.
2566 1999-08-19 Tor Lillqvist <tml@iki.fi>
2568 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
2569 error that caused crashes.
2571 1999-08-17 Tor Lillqvist <tml@iki.fi>
2573 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
2574 window, use ScrollWindowEx, and call UpdateWindow. This prevents
2575 bugs when for instance part of the window was outside the
2576 display. Thanks to Philippe Colantoni for finding and fixing this.
2578 1999-08-16 Tor Lillqvist <tml@iki.fi>
2580 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
2581 endpoint calculations which were totally wrong. (A little RTFMing
2584 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
2585 from a separate directory, not from gettext, because of licensing
2586 issues (we want to use the LGPL version).
2588 * README.win32: Mention the intl from glibc vs from gettext issue.
2590 1999-08-13 Tor Lillqvist <tml@iki.fi>
2592 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
2593 in the key event handling: Now AltGr chars work again. Also,
2594 now Alt-digits are passed up as well as Control-digits.
2595 Pass keypad plus and minus as normal plus and minus.
2597 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
2599 * docs/gtkfaq.sgml: FAQ Update
2601 1999-07-25 Tor Lillqvist <tml@iki.fi>
2604 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
2607 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
2608 OK, but getting closer. Guard against bogus tilt data from Wacom
2609 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
2610 enable easier building without Wintab.
2612 * gdk/win32/gdkinput.h
2613 * gdk/win32/gdkevents.c
2614 * gdk/win32/gdkwindow.c: Minor changes related related to above.
2616 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
2617 code. As we have just one visual on Win32, no sense to have it in a
2618 table, and no need for the hash table.
2620 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
2621 better on white background.
2623 1999-07-21 Tor Lillqvist <tml@iki.fi>
2625 * README.win32: Update gcc build instructions. Mention gettext is
2628 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
2629 supported cursor size with GetSystemMetrics.
2631 * gdk/win32/gdkfont.c
2632 * gtk/gtkfontsel.c: Guard against some font weight and charset
2633 symbols being undefined (in mingw32 headers).
2635 * gdk/win32/makefile.cygwin
2636 * gtk/makefile.cygwin
2637 * gtk/gtkthemes.c: No longer need to have differently named
2638 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
2640 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
2642 * docs/gtkfaq.sgml: Long awaited FAQ update.
2644 1999-07-15 Tor Lillqvist <tml@iki.fi>
2646 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
2647 it. Obscure bit manipulation needed.
2649 * gdk/win32/gdkevents.c: Logging.
2651 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
2652 style (file name include compiler name) for theme engines.
2654 1999-07-13 Tor Lillqvist <tml@iki.fi>
2656 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
2658 * gdk/win32/gdkevents.c: Fix long-standing bug in key
2659 events. The key.string wasn't zero-terminated, still we strdup'ed
2660 it in gdk_event_copy(). Synthesize crossing events for button
2661 events before possible propagation.
2663 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
2665 * gdk/win32/makefile.cygwin
2666 * gtk/makefile.cygwin: Use new DLL naming style for the
2669 * gdk/win32/makefile.msc
2670 * gtk/makefile.msc: Cosmetics mostly.
2672 * gtk/gtk.def: Add missing entry points.
2674 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
2676 1999-07-09 Tor Lillqvist <tml@iki.fi>
2678 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
2679 or height is zero. Don't print a warning if Pie or Arc fails, they
2680 always fail (?) for very narrow ellipses.
2682 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
2683 the part or the destination window corresponding to source area
2684 outside of the source drawable's boundary.
2686 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
2687 anything if less than two points.
2689 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
2690 return NULL. Gtk cut-and-paste inside a single program works
2691 better this way. (It always gets the clipboard contents from
2692 Windows, not from its own copy, which is cleared anyway. I can't
2693 say I fully understand what happens... Emulating the X selection
2694 and property stuff is a bit of a mess.)
2696 * gdk/win32/gdkevents.c
2697 * gdk/win32/gdkproperty.c: A bit more verbose logging.
2699 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
2700 that never got deleted). Revamp gdk_region_shrink.
2702 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
2705 * gtk/gtk.def: Add some missing entry points.
2707 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
2710 1999-07-04 Tor Lillqvist <tml@iki.fi>
2712 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
2713 Control-digits specially.
2715 1999-07-03 Tor Lillqvist <tml@iki.fi>
2717 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
2719 1999-06-28 Tor Lillqvist <tml@iki.fi>
2721 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
2722 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
2725 1999-06-01 Jose H Mercado <jmercado@mit.edu>
2727 * gtk+.spec.in: Corrected some typos in files section.
2729 1999-06-15 Tor Lillqvist <tml@iki.fi>
2731 * README.win32: Mention using GNU gettext.
2732 * config.h.win32: Enable NLS stuff.
2733 * gtk/makefile.msc: Use GNU gettext.
2734 * gdk/win32/gdkdnd.c: Minor header reorg.
2735 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
2737 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
2738 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
2740 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
2746 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
2748 1999-05-30 Tor Lillqvist <tml@iki.fi>
2750 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
2751 SafeAdjustWindowRectEx. Don't override all calls to
2752 AdjustWindowRectEx by it, but use it only in two places: When
2753 creating a new top-level window and when moving a top-level
2756 Use screen coordinate rectangle, not client rectangle, in
2757 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
2758 when we try to place a window so that the decoration (mainly,
2759 title bar) isn't visible.
2761 These changes fix the bug that showed up for instance as the
2762 GIMP's saved top-level windows moving right and down (by an amount
2763 equal to the window decoration) for each session. This bug showed
2764 up also in testgtk's "Saved Position".
2766 gdk_window_resize also redone a bit.
2768 1999-05-25 Tor Lillqvist <tml@iki.fi>
2770 * gtk/testgtkrc: Add (commented out) Windows-style theme
2773 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
2775 1999-05-18 Tor Lillqvist <tml@iki.fi>
2777 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
2778 gdkx.h to a gdk subdirectory, so that applications can include
2779 these with <gdk/*.h> without trouble.
2781 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
2782 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
2783 have their bitmap destroyed.
2785 * gdk/win32/gdk.def: Add gdk_root_parent.
2787 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2793 gtk/Makefile.am: changes to compile nicely (with xlib)
2796 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
2802 * ltmain.sh: upgrade to libtool 1.3
2804 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
2807 * gtk/gtkctree.c: merges from gtk-1-2
2809 1999-04-25 Tor Lillqvist <tml@iki.fi>
2811 Support added for building using a GNU toolchain on Win32,
2812 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
2814 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
2815 * config.h.win32: Changes for gcc.
2816 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
2817 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
2818 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
2819 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
2820 Protect shl stuff unavaiilable with mingw32 headers.
2821 * gdk/win32/gdkevents.c: Fix typo.
2822 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
2823 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
2824 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
2825 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
2826 the mingw32 headers.
2827 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
2828 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
2829 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
2830 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
2831 Test for NATIVE_WIN32, not _MSC_VER.
2832 * gtk/gtkmain.c: No use warning about developer version on Win32,
2833 there aren't any non-developer versions anyhow.
2834 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
2835 * gtk/makefile.msc: Use pthread from another directory. Minor other
2838 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
2840 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
2841 default filter from the list
2843 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
2845 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
2846 when gtk_widget_grab_default() is called for a widget that
2847 is not within a GtkWindow.
2849 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
2851 * docs/gtk_tut.sgml, examples/clist.c: use a
2852 scrolled window in the clist example. Minor
2855 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
2857 * docs/gtk_tut.sgml: Style check from David King
2858 <dking@youvegotmail.net>
2860 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
2862 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
2863 compile with unknown value of GDK_WINDOWING
2865 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
2867 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
2868 after the rule is fired.
2869 (install-exec-local): Install gdkconfig.h only if the contents are
2870 different from the currently installed gdkconfig.h.
2872 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
2874 * gdk/Makefile.am (configexecincludedir): Rename from
2875 configincludedir so that gdkconfig.h will be installed
2876 as part of `make install-exec'.
2878 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
2884 * ltmain.sh: upgrade to libtool 1.2f
2886 * autogen.sh: libtool is not required to autogen gtk+
2888 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
2891 1999-03-18 Tor Lillqvist <tml@iki.fi>
2893 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
2894 declaring gdk variables exported/imported from the DLL. New image
2895 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
2896 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
2897 GDK_DRAG_PROTO_OLE2.
2899 * gdk/gdk.h: Merge in Win32 version: Two new functions,
2900 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
2901 declared only for the Win32 version, but could be in the X11
2902 version as well. (Needed for a Xlib-less gdk_imlib.)
2903 gdk_color_hash should have only one parameter. Declare
2904 gdk_threads_mutex with GDKVAR.
2906 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
2909 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
2910 per pixel, not bits.
2912 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
2913 Fetch bpp (which means bits-per-pixel here) from another place on
2914 Win32. Accept also depth==32 (which we might get on Win32) with
2917 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
2918 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
2919 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
2920 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
2921 in the backend-dependent directory, not in the common gdk
2924 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
2927 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
2929 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
2930 want to use the Gtk+ devel version (which is true, and yes - even i am
2931 currently working with the 1.2.x branch). so everyone reading this, you
2932 probably want to issue
2933 cvs checkout -r glib-1-2 glib
2935 cvs checkout -r gtk-1-2 gtk+
2936 as your next two comands.
2938 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
2940 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
2941 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
2943 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
2944 file. strongly deprecated the GTK_HAVE_* macros, we provide
2945 GTK_CHECK_VERSION() for people that need to check for certain
2948 * gtk/gtkcompat.h: removed this from CVS.
2949 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
2950 idea right from the start, it just didn't seem like that back then.
2952 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
2954 * merges from gtk-1-2:
2956 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
2958 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
2959 item factory class has been created.
2960 (gtk_item_factory_parse_rc): likewise.
2963 keep proper references for old_active_menu_item.
2964 (gtk_menu_reparent): unset the usize of the new parent,
2965 so the menu can sanely be size requested and we don't get nasty screen
2966 artefacts upon next reparentation.
2967 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
2968 enter notify. only synthesize enter notifies if the pointer really is
2969 inside the event window.
2970 (gtk_menu_popdown): use gtk_menu_shell_deselect().
2971 (gtk_menu_popup): move the background setting stuff into
2972 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
2974 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
2975 gtk_menu_shell_select_item() to select the new item.
2976 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
2977 do the right thing for deselection as well.
2979 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
2981 * gtk/gtkwidget.[hc]:
2982 (gtk_widget_accelerators_locked): return whether a widget's accelerators
2985 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
2986 existing accelerators if the widget's accelerators are locked.
2988 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
2990 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
2992 * gtk/gtkmenu.c: truely forward key press and key release events to
2993 the menu widget from the toplevel or tearoff window. we can't simply
2994 connect to that, we need to stop further processing of the events as
2997 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
3000 (gtk_menu_key_press): pass event->keyval, event->state to
3001 gtk_accelerator_valid, instead of event->keyval twice.
3002 refuse to install single letter accelerators for menus that use
3003 single letter shortcuts.
3005 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
3006 gtk_menu_ensure_uline_accel_group().
3008 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
3009 which will always return an uline accel group, made
3010 gtk_menu_get_uline_accel_group() return NULL if the group isn't
3013 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
3015 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
3017 * gtk/gtkclist.c (gtk_clist_column_title_passive):
3018 Leave button sensitive, trap button_press, button_release,
3019 motion_notify, enter_notify and leave_notify events instead.
3020 (gtk_clist_column_title_active): disconnect event handler.
3021 (gtk_clist_drag_data_get): fixed memory leak. Reported by
3022 Guillaume Laurent <glaurent@worldnet.fr>
3024 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
3026 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
3027 width/height mixups.
3029 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
3032 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
3034 * gtk/testgtk.c (create_item_factory): unref the item factory after
3035 window's destruction.
3037 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
3038 count on the menu shell around the menu item's activation, since the
3039 signal emission may cause menu shell destruction.
3041 * gtk/gtkitemfactory.c:
3042 the previous code leaked one accel group per menu. we use
3043 gtk_menu_get_uline_accel_group() now to fix that, and with that
3044 also create the underline accelerator group of the menus only if
3045 required (i.e. an underline accelerator has been specified).
3046 (gtk_item_factory_construct):
3047 (gtk_item_factory_create_item): removed code that would create an
3048 extra accel group for the menu (and leak references).
3049 (gtk_item_factory_create_item): adapted the underline accelerator
3050 installation code to properly feature gtk_menu_get_uline_accel_group().
3052 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
3053 menu->accel_group, this may return NULL if the accelerator group
3054 hasn't been set yet.
3055 added gtk_menu_get_uline_accel_group() to retrive the underline
3056 accelerator group of the menu, this will be created on demand
3057 and proper care is taken about its reference count.
3059 * gtk/gtkitemfactory.h:
3060 * gtk/gtkitemfactory.c:
3061 dumped the approach of keeping a widgets by action list on the
3062 factory since the factory<->widget destroy negotiation didn't work
3063 and would be hard to get going at all. instead we keep a list of
3064 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
3065 persistant throughout a program's life time).
3066 also, i removed the static const gchar *key_* variables, and made
3067 them inline strings (they weren't actually used anyways).
3068 (gtk_item_factory_add_item): update ifactory->items.
3069 (gtk_item_factory_destroy): destroy ifactory->items (and remove
3070 the item factory pointer from the remaining ifactory widgets).
3071 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
3072 list to find the widget.
3073 (gtk_item_factory_get_item): new function that works around
3074 gtk_item_factory_get_widget() limitations, this function will only
3075 return menu items, even for <Branch> entries.
3077 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
3079 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
3080 font hash table, if we have a GdkFontPrivate entry for this font
3081 already, simply increment its reference count, provided by Olaf Dietsche
3082 <olaf.dietsche+list.gtk@netcologne.de>.
3084 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
3085 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
3087 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
3089 * gtk/gtkcontainer.c:
3090 (gtk_container_add_with_args):
3091 (gtk_container_addv):
3092 (gtk_container_add): before adding a child to a conatiner, make sure
3093 it is (default) constructed, this is neccessary because under certain
3094 circumstances the child will get relized and mapped immediatedly, in
3095 which case it has to be constructed already.
3097 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
3099 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
3100 values > 1 as TRUE also.
3102 1999-03-16 Tor Lillqvist <tml@iki.fi>
3104 * README.win32: New file.
3106 * configure.in: Check for lstat.
3108 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
3111 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
3113 * gtk/gtk.def: Removed CRs.
3115 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
3118 * gdk/win32/makefile.msc: Correct upwards relative paths.
3120 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
3122 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
3123 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
3124 it was connecting a void function to expose_event and the int
3125 returning function to the draw signal
3127 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
3130 Use correct path to libgmodule.la when ref'ing uninstalled copy
3131 of glib. (Already in stable branch, Bug #417)
3133 1999-03-15 Tor Lillqvist <tml@iki.fi>
3135 Win32 merge and general portability stuff:
3137 * acconfig.h,configure.in: Check for <sys/time.h>.
3139 * gdk/win32: New directory (actually, been there for a while).
3141 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
3142 NATIVE_WIN32, and use these. Always case fold on Win32. No
3143 backslashed escapes on native Win32.
3145 * gtk/{gtk.def,makefile.msc}: New files.
3147 * gtk/Makefile.am: Add above new files.
3149 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
3150 instead of <strings.h>.
3152 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
3153 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
3154 <unistd.h> appropriately.
3156 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
3157 Use ABS() (from <glib.h>) instead of abs().
3159 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
3160 of gtk (and thus glib) headers, so that WIN32 will be
3161 defined. With MS C, include <direct.h> for mkdir prototype.
3163 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
3164 some casts, needed by MS C.
3166 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
3169 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
3170 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
3171 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
3173 * gtk/gtkmain.h: Mark variables for export/import on Win32.
3175 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
3176 the event is not a hint, or its window is not the slider. Needed
3179 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
3180 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
3181 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
3182 a subdirectory of the Windows directory as gtk system
3183 configuration directory.
3185 * gtk/gtkselection.c: No chunks on Win32.
3187 * gtk/gtksocket.c: Not implemented on Win32.
3189 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
3191 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
3193 * gtk/maketypes.awk: Declare variables with a macro that expands to
3194 necessary export/import magic in the case of Win32.
3196 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
3198 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
3200 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
3201 since those were meant only for gdki18n.h.
3202 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
3204 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
3206 1999-03-13 Tor Lillqvist <tml@iki.fi>
3208 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
3209 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
3211 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
3212 installed) to CFLAGS.
3214 * gdk/Makefile.am: Add rules for gdkconfig.h.
3216 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
3219 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
3220 gdkx.h anyway when compiling for X11.
3221 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
3222 general): Merge in Win32 version.
3224 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
3225 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
3226 expansion (if we don't have HAVE_PWD_H), allow for drive
3227 letters. UNC paths (\\server\share\...) are not handled yet. Also,
3228 included code from Craig Setera's port to Win32 (the one that uses
3229 X11, and the cygwin dll), even if it probably will be abandoned.
3231 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
3232 the user entered one herself. This way one can complete *.h and
3233 don't get matches on any .help files, for instance.
3235 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
3237 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
3238 font hash table, if we have a GdkFontPrivate entry for this font
3239 already, simply increment its reference count, provided by Olaf Dietsche
3240 <olaf.dietsche+list.gtk@netcologne.de>.
3242 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
3243 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
3245 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
3247 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
3248 the number of calls to gdk_draw_point() (and thus to X) by
3249 clipping the points by hand.
3251 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
3253 (gtk_handle_box_paint): Only paint the handle if the expose area
3256 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
3258 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
3260 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
3262 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
3263 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
3265 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
3267 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
3268 textmode (O_TEXT) for OS/2 version.
3270 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
3272 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
3273 GtkSpinButton, "input" and "output", to make the output more flexible.
3274 The user has to provide a mapping between adjustment->value and the
3275 output string (and vice versa, if the spin button is editable).
3276 See testgtk for examples.
3278 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
3280 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
3283 * configure.in: set gtk+ version to 1.3.0.