1 2000-05-21 Nils Barth <nils_barth@post.harvard.edu>
5 * gtktypeutils.h: Spelling/grammar fixes in comments.
7 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
9 * gdk/nanox/*.h: add missing header files.
11 Fri May 19 11:52:59 2000 Tim Janik <timj@gtk.org>
13 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
15 (gtk_drawing_area_size): queue a resize.
17 Sun Mar 26 03:21:28 2000 Tim Janik <timj@gtk.org>
19 * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
20 the handlers, also invalidate them. bug nailed down by Karl Nelson
21 <kenelson@ece.ucdavis.edu>.
23 Fri May 19 06:49:23 2000 Tim Janik <timj@gtk.org>
25 * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
26 "(nil)" foundries, patch from Grigorios Magklis.
28 * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
29 on non-available fonts, based on a patch by Grigorios Magklis
30 <maglis@cs.rochester.edu>.
32 2000-05-18 Elliot Lee <sopwith@redhat.com>
34 * gdk/x11/gdkregion-generic.c: If a region does not have any
35 rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
36 instead of GDK_OVERLAP_RECTANGLE_IN.
38 2000-05-17 Jonathan Blandford <jrb@redhat.com>
40 * gtk/gtklayout.c (gtk_layout_map): Remove references to
41 OFFSCREEN, as it is no longer necessary.
43 Wed May 17 10:52:12 2000 Owen Taylor <otaylor@redhat.com>
45 * gtk/gtkcolorsel.c: Patch from David Santiago
46 <mrcooger@cyberverse.com> to change things so that the
47 indicator of the active palette entry is done independently,
48 not via the focus, since it should always be visible.
50 2000-05-17 Tor Lillqvist <tml@iki.fi>
52 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
53 refcount leaks as in the X11 backend.
55 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
58 * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
59 backend. Add _gdk_windowing_window_destroy().
61 * gtk/gtkcolorsel.c: Include correct backend-specific header.
62 Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
63 either, but these probably do exist on nanox?)
65 * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
66 which isn't necessarily defined by <math.h>.
68 * gtk/gtkobject.c (gtk_object_init): Don't go up the class
69 ancestry past GtkObject.
71 * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
74 * gtk/gtk.def: Update corresponding to recent changes.
76 * gtk/makefile.{cygwin,msc}: Updates.
78 Fri May 12 18:46:51 2000 Owen Taylor <otaylor@redhat.com>
80 * docs/Changes-1.4.txt: A bit of editing.
82 * gdk/gdkwindow.c (_gdk_window_clear_update_area)
83 * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
84 to clear the update area for the window, and clear it
87 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
90 * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
92 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
93 gdk_window_destroy() to the generic code, since there was a lot of
94 window-system-independent logic it in. Add a function:
98 to the internal API to destroy a window without unreferencing it.
101 _gdk_windowing_window_destroy()
103 That does the windowing-system-dependent part of destroying
106 Fri May 12 11:07:41 2000 Owen Taylor <otaylor@redhat.com>
108 * gtk/testgtk.c: Fix various memory leaks of pixmaps.
110 Fri May 12 11:06:10 2000 Owen Taylor <otaylor@redhat.com>
112 * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
113 Make gtk_widget_shape_combine_mask() keep a reference count on
114 the pixmap since it keeps it around.
116 Fri May 12 10:53:29 2000 Owen Taylor <otaylor@redhat.com>
118 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
121 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
122 leak with event filters.
124 Thu May 11 14:29:44 2000 Owen Taylor <otaylor@redhat.com>
126 * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
127 signal handlers with the right data arguments. (Fixes
128 some warnings when a widget was repeatedly set as a drag
131 * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
132 window so we can avoid avoid setting the DND properties on the
133 toplevel window repeatedly.
135 2000-05-13 Tor Lillqvist <tml@iki.fi>
137 * gdk/win32/gdkwin32.h: Define more message types missing from
140 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
141 call gdk_window_destroy_notify(). It was never called. This
142 probably meant that the GdkWindow was never freed. Thanks Owen for
145 * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
146 window as destroyed before calling DestroyWindow(). DestroyWindow()
147 causes a call to the window procedure (gdk_WindowProc), which
148 calls gdk_event_translate(), which calls
149 gdk_window_destroy_notify(), which gets confused unless the window
152 * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
153 this function to indicate it's win32 only. Put inside #ifdef
156 * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
157 debugging function. (gdk_event_translate:) Add a default branch
158 that uses the above function to print debug messages with all
159 Windows messages symbolically.
161 * gdk/win32/gdkprivate-win32.h: Declare it, and
162 gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
164 Fri May 12 20:07:32 2000 Tim Janik <timj@gtk.org>
166 * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
169 Fri May 12 17:13:32 2000 Tim Janik <timj@gtk.org>
171 * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
173 * gtk/gtktext.c: made the adjustments no-construct args, simply
174 provide default adjustments.
175 (gtk_text_destroy): release adjustments.
177 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
178 adjustment argument non-construct.
180 * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
181 instead of in finalize.
182 (gtk_progress_get_text_from_value):
183 (gtk_progress_get_current_text):
184 (gtk_progress_set_value):
185 (gtk_progress_get_percentage_from_value):
186 (gtk_progress_get_current_percentage):
187 (gtk_progress_set_percentage):
188 (gtk_progress_configure): ensure an adjustment is present.
190 Thu May 11 01:24:08 2000 Tim Janik <timj@gtk.org>
192 * gtk/gtkcolorsel.[hc]:
193 * gtk/gtkcolorseldialog.[hc]:
194 * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
195 their parent implementation, use bit fields for boolean values, don't
196 create unused widgets, usage of glib types, braces go on their own
197 lines, function argument alignment, #include directives etc. etc. etc..
199 * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
201 Wed May 10 23:29:52 2000 Tim Janik <timj@gtk.org>
203 * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
205 * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
208 * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
210 (gtk_combo_destroy): don't keep a pointer to a destroyed window.
212 * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
213 to NULL when the toplevel is getting destroyed.
214 (gtk_menu_set_tearoff_state): same here for the tearoff_window.
216 (gtk_menu_init): store the information of whether we have to
217 readd the initial child ref_count during destruction in a new
218 GtkMenu field needs_destruction_ref_count.
220 * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
221 here, those reading: learn from my mistake! ;)
222 in order for set_?adjustment to support a default adjustemnt if
223 invoked with an adjustment pointer of NULL, the code read (pseudo):
224 if (v->adjustment) unref (v->adjustment);
225 if (!adjustment) adjustment = adjustment_new ();
226 if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
227 now imagine the first unref to actually free the old adjustment and
228 adjustment_new() creating a new adjustment from the very same memory
229 portion. here, the latter comparision will unintendedly fail, and
230 all hell breaks loose.
231 (gtk_viewport_set_hadjustment):
232 (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
233 after unreferencing it.
235 * gtk/gtkcontainer.[hc]: removed toplevel registration
236 functions: gtk_container_register_toplevel(),
237 gtk_container_unregister_toplevel() and
238 gtk_container_get_toplevels() which had wrong semantics
239 anyways: it didn't reference and copy the list.
241 * gtk/gtkwindow.c: we take over the container toplevel registration
242 bussiness now. windows are registered across multiple destructions,
243 untill they are finalized. the initial implicit reference count
244 users are holding on windows is removed with the first destruction
246 (gtk_window_init): ref & sink and set has_user_ref_count, got
247 rid of gtk_container_register_toplevel() call. add window to
249 (gtk_window_destroy): unref the window if has_user_ref_count
250 is still set, got rid of call to
251 gtk_container_unregister_toplevel().
252 (gtk_window_finalize): remove window from toplevel list.
253 (gtk_window_list_toplevels): new function to return a newly
254 created list with referenced toplevels.
255 (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
257 * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
258 adjustment a non-construct arg.
259 * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
260 * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
261 * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
263 * gtk/gtkrange.c: added some realized checks.
264 (gtk_range_destroy): get rid of the h/v adjustments in the
265 destroy handler instead of finalize. remove timer.
266 (gtk_range_get_adjustment): demand create adjustment.
268 * gtk/gtkviewport.c: made h/v adjustment non-construct args.
269 we simply create them on demand now and get rid of them in
271 (gtk_viewport_destroy): get rid of the h/v adjustments in the
272 destroy handler instead of finalize.
273 (gtk_viewport_get_hadjustment):
274 (gtk_viewport_get_vadjustment):
275 (gtk_viewport_size_allocate): demand create h/v adjustment
278 * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
279 gtk_widget_real_destroy () functionality.
280 (gtk_widget_real_destroy): reinitialize with a new style, instead
281 of setting widget->style to NULL.
283 Fri May 5 13:02:09 2000 Tim Janik <timj@gtk.org>
286 * gtk/gtkbutton.c: ported _get_type() implementation over to
287 GType, either to preserve memchunks allocation facilities,
288 or because Gtk+ 1.0 GtkTypeInfo was still being used.
290 * gtk/gtkobject.[hc]: derive from GObject. ported various functions
291 over. prepare for ::destroy to be emitted multiple times.
292 removed reference tracer magic. chain into GObjectClass.shutdown()
293 to emit ::destroy signal.
295 * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
298 * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
305 * gtk/gtkargcollector.c:
306 * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
307 not being a fundamental anymore, and to work with the new
308 type system (nuked fundamental type varargs clutter).
310 * gtk/*.c: install finalize handlers in the GObjectClass
311 part of the class structure.
312 changed direct GTK_OBJECT()->klass accesses to
314 changed direct object_class->type accesses to GTK_CLASS_TYPE().
316 * gtktypeutils.[hc]: use the reserved fundamental ids provided by
317 GType. made most of the GTK_*() type macros and Gtk* typedefs
318 simple wrappers around macros and types provided by GType.
319 most notably, a significant portion of the old API vanished:
322 GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
323 GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
330 gtk_type_set_varargs_type(),
331 gtk_type_get_varargs_type(),
332 gtk_type_check_object_cast(),
333 gtk_type_check_class_cast(),
334 gtk_type_describe_tree(),
335 gtk_type_describe_heritage(),
337 gtk_type_children_types(),
338 gtk_type_set_chunk_alloc(),
339 gtk_type_register_enum(),
340 gtk_type_register_flags(),
341 gtk_type_parent_class().
342 replacements, where available are described in ../docs/Changes-1.4.txt.
343 implemented compatibility functions for the remaining API.
345 * configure.in: depend on glib 1.3.1, use gobject module.
347 Thu May 11 12:39:50 2000 Owen Taylor <otaylor@redhat.com>
349 * TODO.xml: Various updates to current status.
351 Wed May 10 20:25:04 2000 Owen Taylor <otaylor@redhat.com>
353 * gtk.m4: Print out version when test succeeds.
355 Wed May 10 16:38:17 2000 Owen Taylor <otaylor@redhat.com>
357 * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
358 gtk/gtkhsv.[ch]: Color selection dialog rewrite.
360 (Original triangle color selector from Simon Budig
361 <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
362 from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
363 Santiago <mrcooger@cyberverse.com>)
365 * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
366 out into a separate widget.
368 * gtk/testgtk.c: Add some checkbuttons for toggling palette
369 and opacity controls.
371 Wed May 10 16:08:09 2000 Owen Taylor <otaylor@redhat.com>
373 * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
374 snuck in prematurely.
376 2000-05-07 Tor Lillqvist <tml@iki.fi>
378 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
379 had deleted a ! operator by mistake, which caused
380 GDK_SELECTION_CLEAR events never to be generated, which caused
381 only the first copy to the clipboard from an gtkeditable to
382 actually cause a copy to the Windows clipboard.
384 2000-05-06 Tor Lillqvist <tml@iki.fi>
386 * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
387 compilation, too. Current mingw gcc distributions include the
388 necessary headers. Also the necessary IIDs are now in mingw
389 headers/libraries, and own definitions unnecessary.
391 More hacking on OLE2 DND, still doesn't work though, and thus
394 * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
397 Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
399 * gdk/nanox/*: nano-X port work in progress.
400 * gdk/simple.c: simple test for Gdk.
401 * README.nanox: notes about the port: read this first!
402 * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
405 Fri May 5 11:18:47 2000 Owen Taylor <otaylor@redhat.com>
407 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
408 gdk_window_clear() into common code, implement in terms of
409 gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
410 not redirected to the backing rectangle.
412 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
414 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
415 EXTRA_DIST. It does not work well when the file that
416 everything depends on is not in the tarball.
418 Tue Apr 25 22:20:41 2000 Owen Taylor <otaylor@redhat.com>
420 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
421 with recursion where process_updates() is called from
422 an expose handler. (GtkTextView is highly broken in
423 doing this, but it should work, so it is a nice test
426 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
428 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
429 handle the case where updates are queued during processing of
432 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
434 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
435 window is on gdk_display - use that instead of segfaulting.
437 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
439 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
440 broken and require an empty arg, give it to them.
442 Fri Apr 28 19:34:32 2000 Tim Janik <timj@gtk.org>
444 * gtk/gtklabel.h: indentation fixes.
446 2000-05-02 Tor Lillqvist <tml@iki.fi>
448 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
449 draw too narrow or too low arcs, they seem to fail, at least with
450 some display drivers.
452 * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
454 Large changes to the Win32 backend, partially made necessary by
455 the changes to the backend-independent internal
456 structures. Attempts to implement similar backing store stuff as
457 on X11. The current (CVS) version of the Win32 backend is *not* as
458 stable as it was before the no-flicker branch was merged. A
459 zipfile with that version is available from
460 http://www.gimp.org/win32/. That should be use by "production"
461 code until this CVS version is usable. (But note, the Win32
462 backend has never been claimed to be "production quality".)
464 * README.win32: Add the above comment about versions.
466 * gdk/gdkwindow.c: Don't use backing store for now on Win32.
468 * gdk/gdk.def: Update.
470 * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
471 presumably be replaced by some more better mechanism as 1.4 gets
472 closer to release shape.
474 * gdk/makefile.{cygwin,msc}: Update.
476 * gdk/win32/*.c: Correct inclusions of the backend-specific and
477 internal headers. Change code according to changes in these. Use
478 gdk_drawable_*, not gdk_window_* where necessary.
480 * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
483 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
484 to interpret single characters as UTF-8. Thanks to Hans Breuer.
485 Use correct function name in warning messages.
487 * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
488 GSourceFuncs gdk_event_prepare and gdk_event_check.
489 (gdk_event_get_graphics_expose): Do implement, use
490 PeekMessage. Thanks to Hans Breuer.
491 (event_mask_string): Debugging function to print an GdkEventMask.
492 (gdk_pointer_grab): Use it.
494 * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
495 (old) book I used claimed was Hangul actually is CJK Unified
496 Ideographs Extension A. Also, Hangul Syllables were missing.
499 * gdk/win32/gdkgc-win32.c: Largish changes.
501 * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
502 g_win32_getlocale() from GLib, and not setlocale() to get current
505 * gdk/win32/gdkprivate-win32.h
506 * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
507 gdkwin32.h, similarily as in the X11 backend.
509 * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
510 assignment was used instead of equals in if test. Thanks to Hans
513 * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
516 * gdk/win32/makefile.{cygwin,msc}
517 * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
518 path to the Win32 headers that works also with the mingw compiler.
520 * gtk/gtkstyle.c: Include <string.h>.
522 2000-04-26 Havoc Pennington <hp@redhat.com>
524 * gtk/gtklabel.c (gtk_label_get_text): Add this function,
525 replacing the broken gtk_label_get ()
527 2000-04-15 Havoc Pennington <hp@pobox.com>
529 * gdk/gdkdnd.h: clean up enum format, remove extra comma,
530 this keeps scanner scripts from getting confused.
532 * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
533 data, rather than void
535 2000-04-15 Tor Lillqvist <tml@iki.fi>
537 * gtk/gtkclist.c (gtk_clist_motion)
538 * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
539 with is_hint FALSE, get x and y from the event. They used to be
540 used uninitialised. The Win32 backend never sends motion events
541 marked as hints. This for instance fixes the annoying file and
542 font selector behaviour in the Win32 version.
544 2000-04-14 Tor Lillqvist <tml@iki.fi>
546 * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
547 gtk_private_n_signals variables, they are used by some software,
550 * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
551 installation directory from the Registry, where the installer
554 Fri Apr 7 17:19:27 2000 Owen Taylor <otaylor@redhat.com>
556 * gdk/x11/Makefile.am: Fix problem with installation directory for
559 * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
560 <mrcooger@cyberverse.com> so that when selecting menus with the
561 mouse, the first item will not be selected, but when selecting
562 with an accelerator, or navigating left-right on a menubar with
563 the menus popped up, the first item will be selected.
565 2000-04-05 Dan Damian <dand@dnttm.ro>
567 * configure.in: Added "ro" to ALL_LINGUAS.
569 Wed Apr 5 00:08:36 2000 Owen Taylor <otaylor@redhat.com>
571 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
574 * Makefile.am (EXTRA_DIST): Fix typo.
576 * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
579 * gtk/gtkitemfactory.c: Added FIXME.
581 2000-03-30 Jonathan Blandford <jrb@redhat.com>
583 * gtk/gtkpaned.c (gtk_paned_get_position): oops.
584 s/return_if_fail/return_val_if_fail/g and add a return value.
586 Mon Mar 27 20:56:14 2000 Owen Taylor <otaylor@redhat.com>
588 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
591 * gdk/gdkinput.h: Fix missing line from merge.
593 Mon Mar 27 20:39:49 2000 Owen Taylor <otaylor@redhat.com>
595 * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
596 instead of gdkprivate.h.
598 Sun Mar 12 15:19:24 2000 Owen Taylor <otaylor@redhat.com>
600 * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
601 parent class to correctly be GtkDialogClass.
603 Thu Feb 24 23:58:21 2000 Owen Taylor <otaylor@redhat.com>
605 * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
606 toplevel windows and their immediate children by their parents,
607 since the size of toplevel windows is out of our immediate
608 control and we don't get any real benefit from trying to track
609 this size for clipping.
611 * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
612 for input_only windows.
614 * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
615 to fix some hacks and make sure that we don't try to set the
616 background of input only windows.
618 Thu Feb 24 18:11:46 2000 Owen Taylor <otaylor@redhat.com>
620 * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
621 the _really_ internal stuff, and leave gdkprivate.h for the fake private
622 stuff that we've traditionally exposed.
624 * gdk/**.c: Use gdkinternals.h where appropriate.
626 * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
627 not include gdkprivate-x11.h, move all stuff of conceivable public
628 interest into gdkx.h; keep all really private stuff in
629 uninstalled header gdkprivate-x11.h.
631 * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
632 image->image_put on windows through a new function _gdk_window_draw_image()
633 to allow us to do backing store for images. (Sort of ugly)
635 * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
636 contexts locally so that we can offset them properly when drawing
637 onto backing pixmaps.
639 * gdk/gdkinput.h: Reindented
641 * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
642 pixmap or color for the window, so we can properly initialize
643 our double-buffer pixmaps, and also so that we temporarily set
644 a background of None while scrolling.
646 * gdk/gdkregion.h: Revise region boolean operators to have an
647 interface that is actually convenient - switch from creating new
648 regions on every op, to "methods" that modify existing regions
649 (A = A OP B). 3 argument forms which allow dest == src, would also
650 be possible, but the current interfaces seem to map nicely
651 onto what needs to be done. (There is quite a lot of region
654 * gdk/gdkregion.h: Add constructor from rectangle and a copy
657 * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
658 gdkpoly-generic.h: Copy region code from Xlib, switch it over
659 to 32 bit coordinates, modify it to be mostly GTK+ style
660 and to have interfaces that match gdkregion.h.
662 * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
663 double-buffered drawing. gdk_window_begin_paint_{rect,region}()
664 create a backing pixmap and redirect all drawing to
665 that backing pixmap until a matching gdk_window_end_paint().
667 * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
668 Create a special drawable class for GtkWindow's that
669 redirects the drawing to the backing pixmap as necessary
670 and then calls the real operations in _gdk_windowing_window_class.
672 * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
673 Store invalid region for each window. Generate expose events for invalid
674 region in an idle. This replaces both the expose compression
675 and the redrawing queuing in GTK+. It is both more efficient and
676 simpler than either one individually and far more so then the
679 * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
680 Emulate 32 bit coordinates for windows with 16 bit coordinates
681 by offsetting drawing, guffaw scrolling techniques and
682 mapping/unmapping child windows as necessary.
684 * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
685 where, when invalid regions are processed, the region is stored,
686 and if expose events come in that are detectably duplicate
687 the processed exposes (by comparison of event serial numbers),
688 the stored region is subtracted out of those exposes.
690 * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
691 regions newly exposed when scrolling or resizing windows.
692 This, combined with forcing processesing of queued invalidated
693 regions, gives nice flicker-free scrolling.
695 * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
696 invalidated regions after every scroll.
698 * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
699 emulation in GDK. Its, for all practical purposes just a
700 GtkViewport/GtkFixed hybrid now.
702 * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
703 (16-bit) structures as necessary instead of just casting.
705 * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
706 in terms of the structures from gdkregion-generic.c, using appropriate
707 offsets from GDK to X11 coordinates. Cache clip mask and
708 origin and ts origin locally and only flush to the server
709 when drawing, to avoid constantly setting and resetting these
710 values when offsetting GC's for scrolling and backing pixmaps.
712 * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
714 * gtk/gtkcontainer.c: Call process_all_updates at end
715 of resizing to reduce flicker. (Avoids having redraw
716 lag arbitrarily behind resize under some circumstances)
718 * gtk/gtkentry.c: Remove old backing store code, and simply take
719 advantage of the new backing store capabilities of GDK.
721 * gtk/gtkmain.c: Simple implementation of widget backing
722 store - simply push a paint while handling each expose.
723 (Should really be configurable widget for widget.)
725 * gtk/gtkwidget.c: Remove all the old complicated redraw
726 code, and simply invalidate the GDK windows from
727 gdk_window_queue_clear(), etc. (Sigh, so much carefully
728 debugged complexity ... gone to the winds.)
730 Remove all the code for suppressing expose events while
731 resizes are pending; this isn't needed since the invalid
732 areas won't be processed until after the resizes are
733 processed, since they are in a lower priority idle.
735 Thu Feb 24 15:37:41 2000 Owen Taylor <otaylor@redhat.com>
737 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
738 and height of dest rectangle for non-intersecting rectangles.
740 Sun Feb 20 16:47:31 2000 Owen Taylor <otaylor@redhat.com>
742 * gtk/gtkwidget.h: Make GtkAllocation just a typedef
745 Sun Feb 20 11:27:00 2000 Owen Taylor <otaylor@redhat.com>
747 * gdk/gdk{events,image,private,types,window}.h
748 gdk/x11/gdkinputprivate.h: Change all coordinates
749 from int16 to int. Also, Change width and height from
750 unsigned to signed to avoid all the stupid C
753 Sat Feb 19 12:01:53 2000 Owen Taylor <otaylor@redhat.com>
755 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
756 Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
757 Add some more detailed checking.
759 * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
760 New function to retrieve the depth of a drawable.
762 * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
763 field, reorder fields to save memory.
765 Mon Dec 13 14:06:03 1999 Owen Taylor <otaylor@redhat.com>
767 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
768 of the background image instead of scaling the background down to
771 * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
772 which temporarily set slider to wrong size.
774 * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
777 Wed Nov 17 18:36:05 1999 Owen Taylor <otaylor@redhat.com>
779 2000-03-23 Jonathan Blandford <jrb@redhat.com>
781 * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
783 2000-03-17 Tor Lillqvist <tml@iki.fi>
785 * gdk/win32/gdkevents-win32.c: Remove the #ifndef
786 USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
788 * gdk/win32/gdkfont-win32.c
789 * gdk/win32/gdkproperty-win32.c
790 * gdk/win32/gdkselection-win32.c
791 * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
794 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
796 * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
798 Mon Mar 13 18:37:55 2000 Owen Taylor <otaylor@redhat.com>
800 * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
801 is called without trapping X errors.
803 Fri Feb 25 10:48:53 2000 Owen Taylor <otaylor@redhat.com>
805 * gtk/gtkrc.*: Fix problem where stray '"' characters found their
806 way into the fontset lists.
808 Tue Feb 22 08:52:52 2000 Tim Janik <timj@gtk.org>
810 * gtk/gtkthemes.h: add extern "C" scope.
812 Mon Feb 21 20:16:42 2000 Lars Hamann <lars@gtk.org>
814 * gtk/gtkclist.c: applied patch from Guy Harris <guy@netapp.com>
815 to make appends to the list constant. (gtk-guy-990901-0.patch)
817 Mon Feb 14 22:50:10 2000 Tim Janik <timj@gtk.org>
819 * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
820 for the typename hash table.
822 Mon Feb 14 15:01:23 2000 Owen Taylor <otaylor@redhat.com>
824 * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
825 to make sure we never divide by zero.
826 (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
828 Mon Feb 14 12:29:38 2000 Owen Taylor <otaylor@redhat.com>
830 * gtk/gtkfontsel.c: Apply patch from
831 SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
832 better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
834 Also, some cleanups in atom handling.
836 Sun Feb 13 08:02:21 2000 Tim Janik <timj@gtk.org>
838 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
841 Fri Feb 11 02:19:32 2000 Tim Janik <timj@gtk.org>
843 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
844 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
845 * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
846 more guint wrap-around bugs before going to bed.
848 Thu Feb 10 16:16:35 2000 Tim Janik <timj@gtk.org>
850 * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
851 guint wrap arounds in allocation.width.
853 * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
854 process untill we fit the allocation given.
856 Tue Feb 8 09:38:29 2000 Tim Janik <timj@gtk.org>
859 (gtk_widget_unrealize): guard widget access with ref/unref
860 around signal emission.
861 (gtk_widget_hide): same here, but also check its destroyed
862 state before queueing a resize.
864 Tue Feb 8 03:05:55 2000 Tim Janik <timj@gtk.org>
866 * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
867 of gtk_default_insensitive_bg as insensitive base color.
869 * gtk/gtktext.c (gtk_text_style_set): set the background color according
870 to the widget's state.
871 (gtk_text_realize): same here.
872 (gtk_text_state_changed): same here.
873 (draw_bg_rect): compare background color against base[] from
874 GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
876 Mon Feb 7 04:01:55 2000 Tim Janik <timj@gtk.org>
878 * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
879 grabs are active, unless a delete event is send to the toplevel
880 of the currently grab holding widget.
882 Sun Feb 6 10:13:15 2000 Owen Taylor <otaylor@redhat.com>
884 * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
887 Fri Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
889 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
890 ever make the scrolled-window requisition ever depend on the
891 visibility state of the scrollbars for the AUTOMATIC policy.
892 This breaks the GTK+ requisition model, and causes loops.
894 Fri Feb 4 15:09:12 2000 Owen Taylor <otaylor@redhat.com>
896 * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
897 the default font to avoid problems with XFree86-4.0 where the
898 default charset is iso10646-1, not iso8859-1.
900 Thu Feb 3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
906 * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
908 * gtk/Makefile.am: minor cosmetic consistency tweak
910 Thu Feb 3 14:46:01 2000 Owen Taylor <otaylor@redhat.com>
912 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
913 the activate_time to 0, so that we handle a quick
914 press/release press/release properly and don't suppress
915 the second release. (Red Hat bug #7545)
917 Wed Feb 2 22:25:17 2000 Tim Janik <timj@gtk.org>
919 * gtk/gtkctree.c (row_delete):
920 (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
921 bugs with destruction notifier, *always* update internal
922 structures *before* calling user code.
924 Sun Jan 30 20:10:52 2000 Lars Hamann <lars@gtk.org>
926 A few more fixes for bug #5487, #2051, #2677.
928 (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is
929 not GDK_BUTTON_PRESS.
930 (resync_selection): resync only if selection_mode is
931 GTK_SELECTION_EXTENDED
932 * gtk/gtkctree.c (resync_selection): same here
934 Sun Jan 30 12:29:20 2000 Owen Taylor <otaylor@redhat.com>
936 * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
937 gdk_drag_get_selection() and gtk_menu_detach().
939 [ From Jeroen Ruigrok/Asmodai ]
941 Sat Jan 29 10:11:56 2000 Owen Taylor <otaylor@redhat.com>
943 * gtk/gtknotebook.c (gtk_notebook_size_request):
944 page->tab_label can be NULL.
946 2000-01-25 Havoc Pennington <hp@pobox.com>
948 * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
951 * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
953 * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
955 * gdk/gdkproperty.c (gdk_property_get): return boolean
957 * gdk/gdkinput.c (gdk_input_set_mode): return boolean
959 * gdk/gdkim.c (gdk_im_ready): return boolean
961 * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
963 * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
964 glib clash, should fix glib)
966 * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
967 (gdk_get_show_events): return gboolean, and canonicalize
970 * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
972 (gdk_colors_alloc): gboolean whether to be contiguous
973 (gdk_color_equal): return gboolean since we are a predicate
974 and not a qsort() (this looks semi-wrong due to glib breakage,
975 IMO glib should be fixed)
977 * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
978 (gdk_get_use_xshm): return gboolean
979 (gdk_pointer_is_grabbed): return gboolean
981 * gdk/gdk.h: Change prototypes to match all the above changes,
982 and re-run egtk-format-protos as required.
984 Fri Jan 28 12:28:17 2000 Owen Taylor <otaylor@redhat.com>
986 * gtk/gtkctree.c (resync_selection):
987 * gtk/gtkclist.c (resync_selection):
989 Return immediately if clist->drag_pos < 0. This is a workaround
990 for the corrupt state that the clist gets into when a
991 GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
993 Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
995 * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
996 variable from recent commit.
998 Thu Jan 27 15:22:09 2000 Owen Taylor <otaylor@redhat.com>
1000 * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
1002 Thu Jan 27 18:00:55 2000 Tim Janik <timj@gtk.org>
1004 * gtk/Makefile.am: prefix all autogenerated source that get build in
1005 $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
1006 in builddir. since we subsequently cd into srcdir for autogeneration,
1007 the paths have to be stripped from the target file names, thusly we
1008 use $(@F) as target names now.
1009 put a comment about configure.in's --disable-rebuilds option,
1010 which can be used for non-writable source directories, for development
1011 setups though, srcdir has to be *writable*.
1013 hu Jan 27 00:15:03 2000 Owen Taylor <otaylor@redhat.com>
1015 * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
1016 Finish the job of allowing event to be NULL.
1017 (Fixes bug #4283, reported by Chris Blizzard)
1019 * gtk/gtkentry.c (entry_adjust_scroll): When calculating
1020 things so that the cursor appears on screen, properly
1021 take into account INNER_BORDER.
1022 (Fixes bug #4754, reported by Antonio Campos)
1024 Wed Jan 26 23:12:28 2000 Owen Taylor <otaylor@redhat.com>
1026 * gtk/gtknotebook.c (gtk_notebook_map): Don't
1027 show the tab_label unless it itself is visible.
1029 gtk/gtknotebook.c (gtk_notebook_size_request):
1030 Do a better job of making sure that the visibility
1031 of the tab label corresponds to whether it should
1034 Wed Jan 26 21:17:03 2000 Owen Taylor <otaylor@redhat.com>
1036 * gtk/gtkoptionmenu.c (gtk_option_menu_position):
1037 Use the requisition, not the allocation, since the
1038 allocation has not necessarily been computed yet.
1039 (Pointed out by Eugene Osintsev)
1041 Wed Jan 26 19:44:25 2000 Owen Taylor <otaylor@redhat.com>
1043 * gtk/gtkstyle.c (gtk_style_new): Dont' set
1044 style/base[GTK_STATE_INSENSITIVE] both to
1045 gtk_default_insensitive_bg!
1046 (Bug #2187, reported by Jonathan Blandford)
1048 * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
1049 Add Alt_L, Alt_R to list of invalid accelerators.
1050 (Bug #3736, reported by Vlad Harchev)
1052 Wed Jan 26 19:01:56 2000 Owen Taylor <otaylor@redhat.com>
1054 * gtk/gtkfilesel.c (open_ref_dir): Fix several
1055 bugs which occured after an attempt to open
1056 invalid home directory left cmpl_state->reference_dir == NULL.
1058 - completion on files in home directory didn't work
1059 - completion on an empty string caused segfault
1061 (Bug #3768, reported by Steve Ratcliffe)
1063 * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
1064 cut and paste error that was causing scales to
1065 be incorrectly positioned.
1067 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
1069 2000-01-27 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
1071 * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
1072 when checking for dcgettext, if we've found we needed
1075 Wed Jan 26 18:06:07 2000 Owen Taylor <otaylor@redhat.com>
1077 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
1078 queue_clear on NO_WINDOW widgets during a reparent,
1079 since at that point the window and widget heirarchies
1080 are out of sync. This stops crashing in some cases
1081 (the scrolled window reparent test, for instance), and
1082 _probably_ won't cause drawing errors.
1084 * gtk/testgtk.c: Make the reparenting-a-scrolled-window
1085 test do what it was supposed to do and be robust against
1086 window closings, etc. (Bug #2443)
1088 Wed Jan 26 16:56:54 2000 Owen Taylor <otaylor@redhat.com>
1090 * gtk/gtkentry.c: Fix return values on mouse events.
1091 (Bug #2686, Sky <seb_sky@yahoo.com>)
1093 * gtk/genmarshal.pl: Fix up handling of FOREIGN.
1094 (pointed out by George Lebl)
1096 * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
1097 (From Ettore Perazzoli <ettore@helixcode.com>)
1099 Mon Jan 24 10:44:48 2000 Owen Taylor <otaylor@redhat.com>
1101 * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
1102 clicks between rows or outside calender area correctly.
1103 (Patch from Damon Chaplin)
1105 * gtk/gtkclist.c (gtk_clist_set_row_data_full):
1106 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
1107 Call destroy function when overwriting existing data.
1108 (Pointed out by Damon Chaplin)
1110 Tue Jan 25 09:55:41 2000 Owen Taylor <otaylor@redhat.com>
1112 * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
1113 which was causing problems on various systems with Xmu.
1114 This hasn't been needed for a very long time.
1117 Sun Jan 23 22:27:36 2000 Owen Taylor <otaylor@redhat.com>
1119 * gdk/gdki18n.h: Include <ctype.h> when defining
1120 gdk_isw* in terms of is* as a fallback.
1121 (Bug #4106 - Dan Winship <danw@MIT.EDU>)
1123 Sun Jan 23 22:12:36 2000 Owen Taylor <otaylor@redhat.com>
1125 * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
1126 realize the widget when it is size allocated!
1129 * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
1130 Removed unused call to gdk_window_get_size() that
1131 showed up when the above was fixed.
1133 Sat Jan 22 15:44:30 2000 Owen Taylor <otaylor@redhat.com>
1135 * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
1136 fix up widget->window when the widget is a
1137 NO_WINDOW container widget.
1139 Sat Jan 22 12:40:48 2000 Owen Taylor <otaylor@redhat.com>
1141 * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
1142 to account for the fact that feof() does _not_
1143 return TRUE on errors, and thus avoid infinite loops
1144 when trying to use gdk_pixmap_create_from_xpm()
1145 on unreadable values.
1147 Fri Jan 21 18:32:43 2000 Owen Taylor <otaylor@redhat.com>
1149 * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
1151 Fri Jan 21 16:24:08 2000 Owen Taylor <otaylor@redhat.com>
1153 * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
1154 gdk_gc_set_dashes to take gint8 instead of gchar to
1155 make it clearer that it is _not_ a NULL terminated string.
1157 * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
1158 gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
1159 gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
1162 Thu Dec 30 04:51:05 1999 Tim Janik <timj@gtk.org>
1164 * gtk/gtkvscale.c (gtk_vscale_pos_background):
1165 * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
1166 background size relative to our allocation, guard against small
1167 allocations, we may have not yet been size allocated.
1169 Thu Dec 2 10:59:14 1999 Owen Taylor <otaylor@redhat.com>
1171 * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
1172 not just version == 3. We implement all 3 + most of 4 -
1173 (we don't support matching text/plain;charset=iso-8859-1
1174 to a dest that expects text/plain). We'll still advertise
1175 3 to be safe, but any client implementing version >= 3
1176 must interoperate with 3.
1178 Tue Mar 14 11:53:31 2000 Owen Taylor <otaylor@redhat.com>
1180 * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
1181 background and gc members, add a warning in gtk_tooltips_set_color()
1182 indicating that this function is deprecated.
1184 Thu Mar 9 22:10:56 GMT 2000 Tony Gale <gale@gtk.org>
1186 * docs/gtkfaq.sgml: FAQ Update:
1187 - Minor cleanups (Emmanuel, me)
1189 I need to add a new signal to a GTK+ widget. Any idea? (timj)
1190 How can I retrieve the text from a GtkMenuItem? (timj)
1191 How do I validate/limit/filter the input to a GtkEntry? (me)
1192 Memory does not seem to be released when I free the list
1193 nodes I've allocated (timj)
1195 2000-03-07 Tor Lillqvist <tml@iki.fi>
1197 * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
1198 (gdk_win32_gdi_failed) New function for reporting errors from GDI,
1199 for which it is no use to call GetLastError onWin9x.
1200 (gdk_other_api_failed) New function, for general error
1201 reporting without calling GetLastError.
1202 (gdk_win32_api_failed) OTOH, this function always calls
1203 GetLastError. (gdk_win32_last_error_string) Remove this function,
1204 GLib has the equivalent now.
1206 * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
1207 call them with function name, file name and line number in the
1210 * gdk/win32/*.c: Use the new macros for reporting errors from GDI
1213 * gtk/gtk.def: Add some missing entry points.
1215 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
1216 gtk_paned_set_gutter_size, which don't exist any longer, as void.
1218 Fixes by Hans Breuer:
1220 * gdk/makefile.msc: Update for debugging.
1222 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
1223 implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
1224 PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
1227 * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
1230 * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
1232 * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
1234 2000-03-04 Tor Lillqvist <tml@iki.fi>
1236 * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
1237 just pixel value of background colour.
1239 * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
1240 containing code snippet previously duplicated in a couple of
1243 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
1246 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
1247 GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
1248 events for autorepeated Shift, Control and Alt keys. Use
1251 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
1252 pointer is inside the window the cursor of which we are setting,
1253 call SetCursor immediately.
1255 * gdk/win32/makefile.cygwin
1256 * gtk/makefile.cygwin: If we don't have the build number stamp
1259 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
1260 gtk_paned_set_gutter_size as empty.
1262 * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
1264 Tue Feb 29 13:10:00 GMT 2000 Tony Gale <gale@gtk.org>
1266 * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
1267 gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
1268 docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
1269 docs/gtk_tut.sgml docs/gtk.texi TODO:
1271 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
1273 Sat Feb 26 11:46:25 GMT 2000 Tony Gale <gale@gtk.org>
1275 * gtk/gtkcalendar.c: Implement num_marked_dates,
1276 and don't emit mutiple day_selected signals on
1279 2000-02-25 Jonathan Blandford <jrb@redhat.com>
1281 * docs/make-todo (lineno): let title and logo be configurable so
1282 that GNOME can use this script too.
1284 * TODO.xml: added logourl and a title
1286 Fri Feb 25 11:12:00 2000 Owen Taylor <otaylor@redhat.com>
1288 * TODO.xml: Added some UI items, and an explanatory
1289 comment at the top of the file.
1291 Thu Feb 24 09:07:28 2000 Tim Janik <timj@gtk.org>
1293 * TODO.xml: some updates, added abunch of new entries.
1294 a note for those fiddeling with this file, when done
1296 $ ./docs/make-todo TODO.xml >/dev/null
1297 and correct output errors before comitting changes.
1299 Wed Feb 23 22:59:50 2000 Owen Taylor <otaylor@redhat.com>
1301 * TODO.xml: Added XML-structured TODO file.
1302 * docs/make-todo: python script to turn TODO.xml into
1305 2000-02-23 Jonathan Blandford <jrb@redhat.com>
1307 * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
1308 the function to let it draw the seven dots, instead of the old,
1309 much maligned, method.
1310 (draw_dot): New function to draw a dot.
1312 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
1313 to draw the handle inside the border width as opposed to outside.
1314 Use paint function instead of gdk_draw_point.
1316 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
1317 to draw the handle inside the border width as opposed to outside.
1318 Use paint function instead of gdk_draw_point.
1320 * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
1321 Change indenting to be more GTK like.
1323 Wed Feb 23 10:54:14 GMT 2000 Tony Gale <gale@gtk.org>
1325 * docs/gtk_tut.sgml: New section on GtkCalendar
1326 * examples/calendar: Update example code
1328 Tue Feb 22 13:54:12 GMT 2000 Tony Gale <gale@gtk.org>
1330 * docs/gtkfaq.sgml: FAQ Update
1332 2000-02-19 Anders Carlsson <andersca@gnu.org>
1334 * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
1335 to prevent the scroll event to be propagated upwards.
1337 Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
1339 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
1340 OwnerGrabButtonMask from button entries for
1341 GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
1343 * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
1344 to the event mask (which will result in button/press release
1345 being added to the event mask on Unix) so scrolling works
1346 for layouts in scroll windows.
1348 * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
1350 Patch from Anders Carlsson <andersca@gnu.org> to add
1353 * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
1354 scrolling to the "Test Scrolling" part of testgtk.
1356 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
1358 * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
1359 it against GDK_SCROLL.
1361 * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
1362 way of mouse wheel scrolling.
1364 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
1366 * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
1368 * gtk/gtkmain.c: Removed previous mouse wheel hack.
1370 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
1371 gdk_event_mask_table.
1373 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
1374 GdkEventScroll handler.
1376 * gdk/gdkevents.h: Added GdkEventScroll structure.
1378 Thu Feb 17 17:10:12 2000 Owen Taylor <otaylor@redhat.com>
1380 * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
1381 and Anders Carlsson to change the Paned widgets so that they
1382 can be dragged from anywhere along the length. Also change
1383 the way that this is drawn to make this apparent.
1385 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
1386 from George Lebl to check that option_menu->menu is present
1387 before getting history.
1389 2000-02-14 Tor Lillqvist <tml@iki.fi>
1391 * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
1392 before the assertion for non-NULL segment list.
1394 * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
1395 Seems that pattern brushes *must* be 8x8 pixels! At least on my
1396 machine, but it might be display driver dependent. Sigh, so make
1397 sure the stipple is that size. Does Windows suck or what?
1399 * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
1402 2000-02-13 Havoc Pennington <hp@pobox.com>
1404 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
1406 (gdk_cursor_new): init refcount to 1
1408 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
1410 2000-02-13 Tor Lillqvist <tml@iki.fi>
1412 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
1413 so that we don't have to do unnecessary settings to the HDC.
1415 * gdk/win32/gdkdrawable-win32.c
1416 * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
1419 * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
1420 the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
1421 GDI paths, call WidenPath to get the outline of the stroken path,
1422 and then fill the outline (with the brush that was built from the
1425 * gdk/win32/gdkgc-win32.c: Factor out common code from
1426 _gdk_win32_gc_new and gdk_win32_gc_set_values into
1427 gdk_win32_gc_values_to_win32values. Use correct colour for
1428 SetBkColor() (Until now the code actually used a random colour in
1429 the call to SetBkColor()... but that didn't show up as not many
1430 GDI APIs use the background colour. Pattern (opaque stippled)
1433 * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
1434 gdk_win32_api_failed): New functions for error logging.
1436 * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
1437 WIN32_API_FAILED to call them, passing function or file name and
1440 * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
1442 * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
1443 GdkColor for foreground and background in GdkGCWin32Data.
1445 * gdk/makefile.cygwin: Link in the resource object separately.
1447 * gdk/win32/rc/gdk.rc
1448 * gtk/gtk.rc (New file)
1449 * gdk/win32/makefile.cygwin
1450 * gtk/makefile.cygwin: Update build number in DLLs automatically,
1453 Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org>
1455 * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
1456 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
1457 * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
1458 * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
1459 parameters given and cursor->ref_count. coding style fixups.
1461 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
1464 * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
1465 fix up widget macros and add _GET_CLASS() variant.
1467 * gtk/*.c: some GtkType fixups.
1469 2000-02-09 Tor Lillqvist <tml@iki.fi>
1471 * gdk/win32/gdkproperty-win32.c
1472 * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
1475 2000-02-04 Tor Lillqvist <tml@iki.fi>
1477 * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
1478 g_filename_to_utf8 to convert the font names Windows gives us from
1479 whatever is the default codepage to UTF-8.
1480 (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
1481 in the other direction.
1483 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
1484 error in debugging output.
1486 2000-02-02 Tor Lillqvist <tml@iki.fi>
1488 * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
1489 and height parameters to gdk_window_clear_area(). Not minus one.
1491 Wed Feb 2 11:58:05 2000 Owen Taylor <otaylor@redhat.com>
1493 * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
1494 checks if the widget passed to gtk_drag_get_data() was not the
1497 2000-02-01 Tor Lillqvist <tml@iki.fi>
1499 * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
1500 g_filename_from_utf8 functions (which were added a moment ago to
1501 GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
1504 gtk_file_selection_get_filename returns the filename in the C
1505 runtime encoding. It calls g_filename_from_utf8, but copies the
1506 returned string to a static buffer, which is returned. I think
1507 this is better than returning the result from g_filename_from_utf8
1508 directly, which would mean all apps that use it would have to free
1509 the return value. Or should this function care about this issue at
1510 all? Maybe a new function with clearly defined semantics.
1512 * gtk/gtkfilesel.h: Add comment about
1513 gtk_file_selection_get_filename returning the filename in the C
1518 * gdk/makefile.{cygwin,msc}
1519 * gtk/gtk.def: Updates.
1521 * gdk/gdkcursor-win32.c: Initialise refcount.
1523 2000-01-31 Yuan-Chung Cheng <platin@linux.org.tw>
1525 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
1527 2000-01-30 Havoc Pennington <hp@pobox.com>
1529 * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
1532 * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
1534 * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then
1535 implemented in platform-specific code
1537 * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
1539 * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
1542 * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
1543 put an underscore in front
1545 * gdk/gdkcursor.c: new file, implements
1546 gdk_cursor_ref/gdk_cursor_unref
1548 * gdk/gdkcursor.h: Refcount GdkCursor
1550 * gdk/gdkcompat.h (gdk_cursor_destroy): compat
1552 2000-01-29 Tor Lillqvist <tml@iki.fi>
1555 * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
1557 Tue Jan 25 11:43:21 2000 Owen Taylor <otaylor@redhat.com>
1559 * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
1560 structures to properly inherit from GtkWidget not GtkBin.
1562 Sun Jan 23 20:28:24 2000 Owen Taylor <otaylor@redhat.com>
1564 * gtk+.spec.in: Added lib/gtk+/include/* to %files
1565 (bug #5178 - Peter Wainright)
1567 * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
1568 so that it will be installed.
1569 (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
1571 Fri Jan 21 16:29:28 2000 Owen Taylor <otaylor@redhat.com>
1573 * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
1574 for the GtkStyleClass vtable const.
1576 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
1577 take a const string argument like GtkTranslateFunc. This will
1578 require changes in use code.
1580 2000-01-19 Tor Lillqvist <tml@iki.fi>
1582 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
1583 semantics (to mimic the X11 backend, which just calls XClearArea)
1584 is to check for zero width (and height), and in that case use the
1585 window's width minus x (height minus y). This fixes for instance
1586 some redraw problems with gtkclist, which were easily noticeable
1587 in the gtk file selection widget.
1589 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
1592 2000-01-13 Tor Lillqvist <tml@iki.fi>
1596 * gdk/x11/Makefile.am
1597 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
1599 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
1602 2000-01-09 Tor Lillqvist <tml@iki.fi>
1604 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
1605 WM_MOVE for iconified or invisible windows. This fixes various
1606 problems when minimising windows. Thanks to Bernd Herd.
1608 2000-01-05 Tor Lillqvist <tml@iki.fi>
1610 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
1611 backend's draw_lines method, not draw_points.
1613 2000-01-02 Tor Lillqvist <tml@iki.fi>
1615 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
1616 before Owen's reorganisation: Don't have queued_events and
1617 queued_tail statics in this file, but use gdk_queued_events and
1618 gdk_queued_tail. This makes exposure event compression work again.
1620 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
1623 1999-12-30 Tor Lillqvist <tml@iki.fi>
1625 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
1626 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
1627 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
1628 doesn't do anything.
1630 * gdk/gdk.def: Add gdk_xid_table_insert.
1632 * gdk/win32/gdkprivate-win32.h
1633 * gdk/win32/gdkevents-win32.c
1634 * gdk/win32/gdkinput-win32.c
1636 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
1637 extension_events field in the GdkWindowWin32Data struct. Use only
1638 the extension_events field in GdkWindowPrivate. Previously one was
1639 set, and the other one tested, which broke tablet
1640 functionality. Thanks to Keishi Suenaga for pointing this out.
1642 1999-12-18 Tor Lillqvist <tml@iki.fi>
1644 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
1645 When handling a single character (text length == 1), don't handle
1646 it as if it was UTF-8.
1648 1999-12-11 Tor Lillqvist <tml@iki.fi>
1650 * Makefile.am: Distribute README.win32.
1653 * gdk/win32/Makefile.am: Distribute Win32 files.
1655 * gdk/makefile.msc: New file.
1657 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
1660 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
1661 gdk_error_code as GDKVAR, as they are referred outside GDK.
1663 * gdk/win32/makefile.msc: Update.
1665 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
1666 tweaks. Check only if at least one of those Unicode subrange bits
1667 we care for is set. If no code page bits are set, guess (wildly)
1668 based on the charset.
1670 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
1672 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
1678 * gtk/gtkselection.c
1680 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
1681 appropriate. There must be a cleaner way to handle this?
1683 * gtk/gtkrc.c: Must include windows.h on Win32.
1685 * gtk/testgtk.c: No need to include gdkx.h.
1687 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
1689 1999-12-07 Tor Lillqvist <tml@iki.fi>
1691 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
1692 the rbearing is set to the same as the width, but this should be
1695 1999-12-06 Tor Lillqvist <tml@iki.fi>
1697 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
1698 function. If Windows doesn't tell us what Unicode subranges a font
1699 covers, guesstimate based on the codepages it covers. This will
1700 hopefully help those Windows versions or fonts that don't give us
1701 any useful Unicode subrange information with GetTextCharsetInfo.
1702 Call this function in gdk_font_load_internal.
1704 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
1707 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
1709 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
1710 New function, long needed.
1712 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
1714 * gdk/gdkproperty.h x11/gdkproperty.c: Change
1715 only_if_exists argument of gdk_atom_intern to
1718 1999-11-25 Tor Lillqvist <tml@iki.fi>
1720 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
1721 Fix two copy&paste errors.
1723 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
1726 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
1727 GdkWin32SingleFont struct.
1729 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
1730 subranges of loaded fonts. Clear font signature first, in case
1731 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
1732 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
1734 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
1735 Unoffset clip region.
1737 1999-11-23 Tor Lillqvist <tml@iki.fi>
1739 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
1740 event->any.window before calling filter functions.
1742 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
1744 * gtk/gtkgamma.h: Adapt cast macros to standard.
1748 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
1750 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
1751 If translation does not include a '/', use entire
1752 translation instead of crashing.
1754 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
1756 * docs/gtk_tut.sgml:
1757 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
1759 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
1761 * gtk/gtkselection.c (gtk_target_list_remove): Use
1762 g_list_remove_link, not g_list_remove.
1764 [ From Geert Bevin <gbevin@thunderstorms.org> ]
1766 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
1768 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
1769 statement upon unselection (how the heck did that slip in?).
1771 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
1773 * gtk/gtktext.c (gtk_text_freeze):
1774 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
1775 in frozen state (and aparently crashes). patch provided by Anders
1776 Melchiorsen <and@kampsax.dtu.dk>.
1778 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
1780 * fix insensitive default/focus widget activation,
1781 reported by Matt Goodall <mgg@isotek.co.uk>.
1783 * gtk/gtkwindow.c (gtk_window_key_press_event):
1784 (gtk_window_activate_default):
1785 (gtk_window_activate_focus):
1786 return handled=FALSE for actiavtion of insensitive default
1787 widgets. return handled=TRUE for activation of insensitive
1788 focus widgets. don't activate in either case.
1790 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
1792 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
1793 and $glib_cflags to match library order and in the
1794 theory that an old version of GLib is more likely to
1795 be in the include directory for X then vice-versa.
1798 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
1800 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
1801 to determine the locale for fontsets, not LC_MESSAGES;
1802 the user may want English messages with a handling
1803 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
1804 will still be broken) (Bug #2891)
1806 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
1808 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
1810 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
1812 * gtk/gtkrc.ko: Changed the Korean default fontset.
1814 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
1816 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
1817 where when scrolling to the left or top double exposes
1818 were done, causing major slowdowns.
1820 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
1822 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
1823 names to lowercase and alphanumeric, before looking
1826 * gtk/Makefile.am: Install codeset variant gtkrc files
1827 with normalized names.
1829 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
1831 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
1832 popup menus when the menu is already visible, but its parent
1833 is still hidden, (happens after tornoff window got hidden).
1835 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
1837 * gtk/Makefile.am (install-data-local): Fix
1838 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
1839 deleted, causing error messages on install.
1841 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
1843 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
1844 the handle as well, since we now sometimes ignore
1845 exposes on the handle while resizing.
1847 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
1849 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
1850 extra g_free introduced in one of the last one or two
1853 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
1855 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
1856 consistent, put each style that a gtkrc.* file creates
1857 in a unique namespace, remove old files before installing.
1859 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
1861 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
1862 gtk_rc_init is called multiple times. (Yes, people who
1863 do that have bugs in their code.)
1865 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
1867 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
1868 Remove it since it's generated by the Makefile anyway
1870 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
1872 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
1873 device->info.axes for core pointer.
1875 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
1877 * gtk/testgtk.c (destroy_idle_test): Rename idle to
1878 idle_id, to deal with obsolete, broken C libraries.
1880 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
1882 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
1883 allocation->x/y twice!
1885 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
1886 consistent with gtk_vscale_pos_trough().
1888 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
1890 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
1891 be queueing a resize on a toplevel container between
1892 the time we show it and when we map it. So, we need
1893 to test GTK_WIDGET_VISIBLE() for toplevels, and only
1894 use GTK_WIDGET_DRAWABLE() for child windows.
1896 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
1898 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
1901 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
1903 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
1904 container DRAWABLE (instead of VISIBLE), so we don't queue
1905 resizes on non-toplevel containers.
1907 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
1909 * gtk/gtkselection.[ch]: Make the data argument
1912 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
1914 * gtk/gtkwindow.c: Try to behave sensibly if
1915 the focus widget is the window itself. (Should
1916 we allow this at all?)
1918 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
1920 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
1921 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
1922 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
1923 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
1924 in prototypes and implementations consistent (Tomas Ogren).
1926 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
1927 before the widget is unparented (reported by damon).
1929 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
1930 since we provide unsigned data anyways.
1932 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
1934 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
1935 the call to gtk_tooltips_layout_text() until later.
1937 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
1938 Call gtk_widget_ensure_style() before using the style.
1940 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
1942 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
1943 for old widgets that don't propagate draws to all
1944 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
1946 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
1948 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
1949 for a redraw but just the widget that requested the resize.
1951 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
1953 * gtk/gtkcontainer.c: added new widget level method
1954 gtk_container_set_reallocate_redraws() and a GtkContainer flag
1955 reallocate_redraws : 1 to reflect the setting, exported this through
1956 the argument system as a boolean ::reallocate_redraws.
1958 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
1959 on the widget because the allocation changes, do so as well for
1960 widget->parent if the parent has reallocate_redraws set to TRUE.
1961 with that containers requesting reallocation redraws get automatically
1962 redrawn if their children changed allocation (this unfortunately
1963 affects also other children that didn't change allocation, but we
1964 cannot work around that before 1.3).
1966 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
1968 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
1969 _and_ height are >0 (not _or_).
1971 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
1972 instead of gtk_container_queue_resize(), which is a core gtk internal
1973 function (must have been on crack when i queued that).
1975 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
1976 we can check more reliably if we want to discard expose events.
1977 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
1980 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
1981 we simply trust these events. for deciding whether to discard exposes,
1982 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
1984 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
1986 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
1987 queues of areas that are completely off screen.
1989 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
1990 logic for handleboxes.
1992 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
1993 check on width/height.
1995 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
1997 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
1998 we are fine with using $@ the way we do (if we actually encounter
1999 brokeness with $@ in VPATH builds because of additional path prefixes,
2000 we need to use $(@F) actually).
2002 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
2004 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
2005 short lived bugs, that would allow language bindings to do surgeries
2008 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
2010 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
2011 where comparison was being done against an uninitialized
2012 value causing intermittant results depending on
2013 compiler flags. Also make it clearer that we aren't
2014 ever initializing the child as 0x0 (though this will
2015 be caught in gtk_widget_size_allocate())
2017 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
2019 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
2020 gtk_window_unset_transient_for() call after we do checks
2021 involving the old transient parent.
2022 [ From Lance Capser <lmc@cyberhighway.net> ]
2024 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
2026 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
2029 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
2031 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
2032 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
2034 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
2036 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
2037 `$@' is valid only in the build dir, not after we've done
2038 `cd $srcdir'. Also use `test -f' instead of less portable
2041 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
2043 * gtk/gtktext.c (correct_cache_insert): Rewrite
2044 for simplicity, and hopefully correctness.
2045 (Fixes bug #1322, which was a segfault when
2046 on some insertions with the properties around
2047 the insertion set up just wrong.)
2049 * gtk/gtktext.c (gtk_text_adjustment): When we receive
2050 a "changed" signal, clamp the new value to the adjustment
2051 bounds to avoid segfaulting if someone tries to change
2052 the adjustment to a bogus value. (Bug #1795)
2054 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
2056 * gtk/gtkmain.c: Ignore unexpected destroy notifies
2057 for children, for toplevel windows handle them
2060 * gtk/gtkplug.c: Add an unrealize handler so that
2061 we unref plug->socket_window when we are done
2064 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
2066 * gtk/gtktext.c (clear_area): Fix stupid signedness
2067 problem that was causing background to sometimes
2070 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
2072 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
2074 * gtk/gtkmenu.c (gtk_menu_position): Make
2075 sure we never position menus with negative x, y,
2076 since gtk_widget_set_uposition() can't handle that.
2078 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
2079 Modify the positioning code a bit so that we always
2080 put the top-left corner onscreen. (This is for
2081 UI reasons, gtk_menu_position() now takes care of
2082 gtk_widet_set_uposition() brokeness.)
2084 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
2086 * gtk/Makefile.am: fixed up things for -jx, x > 1.
2088 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
2090 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
2091 RC style that is passed in. The lack of the ref
2092 before was a bug. If people worked around this
2093 bug, this will introduce a slight memory leak
2094 in their code. The code should typically look like:
2096 rc_style = gtk_rc_style_new ();
2098 gtk_widget_modify_style (widget, rc_style);
2099 gtk_rc_style_unref (rc_style);
2101 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
2102 the style if it was already set.
2104 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
2105 style if it was set before.
2107 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
2109 * gtk/testgtk.c (main): Add a check to see if we
2110 are being run from the correct directory and
2111 to quit nicely if we are not.
2113 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
2116 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
2118 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
2121 queue resizes unconditionally (gtk_widget_queue_resize will figure
2122 what to do if the window is not realized).
2123 (gtk_window_move_resize): only recenter the window
2124 for GTK_WIN_POS_CENTER_ALWAYS.
2125 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
2126 the same way as GTK_WIN_POS_CENTER.
2128 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
2130 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
2131 with (!(info->last_flags & GDK_HINT_POS)) instead of
2132 (!info->last_flags & GDK_HINT_POS).
2134 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
2135 new_height unconditionally, because we use these values even if
2136 !default_size_changed && !hints_changed.
2137 comented the (default_size_changed || hints_changed) case with
2138 respect to resize rejects from the window manager.
2140 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
2141 in the zvt condition hack, since this includes the window hints, set
2142 the hints after the handling_resize case.
2144 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
2145 window is initially shown with to the geometry.
2147 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
2149 * gtk/gtkwindow.c (gtk_window_move_resize):
2150 s/size_changed/default_size_changed/g so i know what's
2151 really going on (frying brain on smaller flame now).
2153 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
2155 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
2156 we have size_changed upon handling_resize. this is a gross
2157 workaround for the broken zvt widget and should be removed in
2158 1.3 again (search for FIXME).
2159 Owen provided an accurate comment for this:
2161 /* We could be here for two reasons
2162 * 1) We coincidentally got a resize while handling
2164 * 2) Our computation of size_changed was completely
2165 * screwed up, probably because one of our children
2166 * is broken. It's probably a zvt widget.
2168 * For 1), we could just go ahead and ask for the
2169 * new size right now, but doing that for 2)
2170 * might well be fighting the user (and can even
2171 * trigger a loop). Since we really don't want to
2172 * do that, we requeue a resize in hopes that
2173 * by the time it gets handled, the child has seen
2174 * the light and is willing to go along with the
2175 * new size. (this happens for the zvt widget, since
2176 * the size_allocate() above will have stored the
2177 * requisition corresponding to the new size in the
2180 * This doesn't buy us anything for 1), but it shouldn't
2181 * hurt us too badly, since it is what would have
2182 * happened if we had gotten the configure event before
2183 * the new size had been set.
2186 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
2188 * gtk/gtkrc.c: deal properly with the fact that RC
2189 style lists may include rc styles more than once.
2191 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
2192 unused static function.
2194 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
2195 stack of directories of RC files currently being
2196 parsed and implicitely add them to pixmap path.
2198 This fixes a bug where the directory would get
2199 appended then overwritten by pixmap_path declarations.
2201 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
2203 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
2204 theme's exit function. (Patch from Peter Wainwright,
2207 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
2208 Add a destroy() handler to take care of removing
2209 group for menu item. (Fixes bug #1197)
2211 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
2214 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
2216 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
2217 roundtrip to figure window's width and height, since we know that
2218 anyways from widget->allocation.
2220 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
2222 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
2223 the hints after we request the new size.
2225 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
2227 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
2228 GTK_WIDGET_REALIZED() assertion - we can compute the
2229 hints before we are realized.
2231 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
2232 hint changing so that we have a value of hints_changed
2233 when we decide whether to constrain the window size.
2235 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
2237 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
2238 change back to G_MAXINT.
2240 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
2242 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
2243 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
2244 contain uncluttered values.
2245 (gtk_window_compute_hints): simply assert that window is realized
2246 and that geometry_info is valid, since we rely on this anyways.
2247 (gtk_window_constrain_size): major cleanups to the code.
2248 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
2249 for the base size, instead of the minimums. use 32767 as max width
2250 and height (like in gtkwindow.c) instead of G_MAXINT.
2252 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
2254 * cleaned up the GtkContainer.need_resize flag handling mess, we
2255 only need to force resize requests when we were prematurely
2256 realized, or our widget tree was modified when we were temporarily
2257 hidden. handling these cases directly upon showing the window (i.e.
2258 while the GdkWindow is still unmapped) avoids the need to wait for
2259 a configure event response and therefore makes the GUI more snappier
2260 and avoids blank windows during the roundtrip.
2264 (gtk_widget_show): don't queue resizes on toplevels, they know how
2265 to deal with matters.
2267 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
2268 flag directly for not visible resize containers and spare us unecessary
2272 (gtk_window_realize): if we need to enforce premature size allocation,
2273 queue a container resize so we are correctly resized later on.
2275 (gtk_window_size_request):
2276 don't freak around with the ->need_resize flag,
2277 gtk_container_queue_resize() will care about that.
2279 handle initial resizing issues here, we can handle matters better in
2280 this place, especially since we know that our GdkWindow is still
2282 (gtk_window_move_resize):
2283 don't care about ->need_resize at all.
2284 handle size changes properly that occoured while we waited for a
2287 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
2289 * gtk/gtkwidget.c (gtk_widget_set_uposition):
2290 * gtk/gtkwindow.[hc] (gtk_window_reposition):
2291 Move the hint setting code from gtk_widget_set_uposition
2292 to here; set the hints so that we respect any previously
2295 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
2296 change the window hints here or move the window here,
2297 let that happen in gtk_window_move_resize().
2299 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
2301 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
2302 to already queued resizes (and therefore redraws) on a widget, check
2303 its anchestry as well.
2305 * gtk/gtkcontainer.c:
2306 (gtk_container_queue_resize): clear resize widgets for resize
2307 containers before aborting prematurely. this is especially important
2308 for toplevels which may need imemdiate processing or their resize
2309 handler to be queued.
2310 (gtk_container_dequeue_resize_handler): added new internal function for
2313 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
2314 configure event, take possible changes in window position into account
2316 if we request a new window size, queue up a resize handler that will
2317 last until the configure event response arrives.
2318 combined the ->need_resize case (initial show) with the general size
2319 (hints) changed case and added even more comments.
2320 if !auto_shrink, only revert to the old allocation if the new size
2321 is smaller than the current allocation.
2323 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
2325 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
2326 gtk_window_set_geometry_hints
2327 gtk_window_set_default_size):
2328 When hints are set, queue a resize so that the hints will
2329 be eventually reset on the toplevel.
2331 * gtk/gtkwindow.c (gtk_window_show): Use
2332 gtk_window_compute_default_size(). Clear the need_resize flag
2333 on the initail map so that we don't unnecessarily trigger the
2336 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
2337 into separate functions. Compare the hints we are setting
2338 with what we set last time so that we can accurately
2339 tell when we need to reset the hints.
2341 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
2342 function to figure out the size from requisition
2345 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
2346 from fvwm to constrain a size to the geometry hints.
2348 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
2349 to compare two sets of geometry hints.
2351 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
2352 from gtk_window_set_hints(), just compute the hints,
2355 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
2356 code from gtk_window_move_resize() to separate function,
2359 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
2361 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
2362 structure into a new private structure.
2364 * gtkrc.c: Split GtkRcStyle into public/private.
2365 In the private part, add a list of pointers to the
2366 RcStyle lists this RcStyle participates in.
2368 * gtkrc.c: When a RcStyle is free, remove all
2369 lists referencing it from the
2370 realized_style_ht hash, and free those lists.
2372 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
2373 gtk_rc_init(), since that adds the default styles
2374 to the list of parsed RC files again.
2376 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
2378 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
2380 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
2381 checks that ensure that a widget's allocation is at least 1 in width
2382 and height. (GNOME note: this doesn't affect old panel code anymore,
2383 because GtkSocket will request width and height of at least 1 since
2386 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
2387 allocated yet (happens if the user realizes the window prematurely),
2388 size request and allocate it.
2389 (gtk_window_size_allocate): guard against guint underflows.
2391 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
2393 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
2394 in gtk_built_sources, so gtk.defs gets built prior to all other
2397 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
2400 invoke indent on gtkmarshal.*.
2401 rewrote source generation rules, use COPYING as oldest source tag for
2402 a piggyback rule to generate all sources from (don't touch it ;).
2403 major cleanups, strip spaces on build rules for GNU Make.
2405 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
2406 source and target files from commandline arguments. don't invoke indent.
2408 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
2410 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
2411 notebook after switch to avoid drawing problems.
2412 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
2414 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
2416 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
2418 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
2420 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
2421 notebook after switch to avoid drawing problems.
2422 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
2424 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
2426 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
2428 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
2431 we use window->need_resize from configure_event now, to indicate that
2432 the gtkwindow should keep its allocation (e.g. because the user resized
2433 the window through window manager handles). resize_count is now reliably
2434 used to figure whether we got the allocation we requested from the
2436 configure events get queued as resizes now, the real stuff (size
2437 computation and allocation) now only goes on in gtk_window_move_resize().
2438 GtkWindow's requisition now contains its *real* requisition (like all
2439 other widgets), *not* taking usize into account.
2440 geometry_info->last_{width|height} is now updated from set_hints() only
2441 so it always contains the last hints we set for the window manager.
2442 made some event handlers return TRUE instead of FALSE.
2443 the overall code should be much more straight forward now, and the
2444 significant code portions are accompanied by comments now.
2445 (gtk_window_set_hints):
2446 removed requisition argument and made it
2447 fetch the requisition through gtk_widget_get_child_requisition.
2448 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
2451 ensure that the widget is realized before calling
2452 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
2453 ensure that we got properly size requested and allocated before
2455 (gtk_window_configure_event):
2456 ignore plain window moves, or reallocate the widget tree through the
2457 resize queue otherwise.
2458 (gtk_window_move_resize):
2459 mostly rewrote this function to figure window manager hints more
2460 reliably, coalesce window moves and resizes to reduce configure events
2461 and do actuall size allocations.
2463 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
2465 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
2466 that have a resize pending, because a redraw is already queued for them.
2468 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
2469 hack to clear resize_widgets.
2471 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
2472 for resize containers prior to size allocation. (this is also a bit
2473 ugly, but avoids side effects for stopped emissions and is thus more
2475 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
2477 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
2478 function from gtk_tooltips_expose, as we connect to ::expose_event
2481 1999-08-18 Federico Mena Quintero <federico@redhat.com>
2483 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
2485 (gtk_target_list_unref): Likewise.
2487 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
2489 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
2491 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
2492 guard against division by zero. (Fixes bug #1339)
2494 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
2496 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
2497 Prevent the trivial leak of information of allowing
2498 word motion when the entry is not visible.
2500 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
2502 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
2503 modality to error dialog as well as confirmation dialogs.
2504 (Bug #1803, reported by Rosanna Wing Sze Yuen)
2506 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
2508 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
2510 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
2512 * gtk/Makefile.am (install-data-local): Solaris apparently
2513 has various troubles with ln -f; use rm first instead.
2514 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
2516 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
2518 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
2519 use `cp' followed by `rm' (the `rm' was already there).
2521 July 30, 1999 Elliot Lee <sopwith@redhat.com>
2523 * configure.in: Fix autoconf warnings about cross compilation by
2524 trying to provide sane defaults for AC_TRY_RUN.
2525 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
2526 put them into $(srcdir) when generated. Also add a dependency of
2527 gtksignal.h on gtkmarshal.h for -j builds.
2528 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
2530 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
2532 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
2533 GDK_THREADS_{LEAVE,ENTER} pair.
2534 (From Paul Fisher <pnfisher@redhat.com>)
2536 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
2538 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
2539 width and height are always >0 (owen).
2541 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
2543 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
2544 change that assured that a widget's allocated with and height are
2545 always >1, since this breaks *buggy* panel code. unfortunately this
2546 back-breaks the gimp's color selector.
2548 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
2549 allocation is always >0 in width and height, before sending the
2550 configure event; this is a *gross* hack to get the gimp back to work.
2552 * marked both cases with TODO-1.3
2554 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
2556 * gtk/gtktext.c: Don't display wrap indicators when
2557 text is not editable and word wrap is on.
2559 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
2561 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
2562 option menus here as they are not derived from menu shell, assure that
2563 the option menu has a menu we can add items to.
2565 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
2567 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
2568 width/height to (gint) before calculations and check against < 0 to
2569 avoid guint wraparounds.
2571 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
2573 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
2574 width and height is never zero. sanity check both dimensions against
2575 32767 and issue a warning if the allocation is greater than that.
2577 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
2579 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
2580 to g_main_pending() as well.
2582 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
2584 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
2585 call to g_main_iteration() - since that will regrab
2586 GTK+ lock to process events.
2588 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
2591 - Regularize with the rest of GTK+ by making widget->requisition
2592 not reflect the set_usize()
2593 - Always recompute geometry hints, then check if they
2594 changed before sending them to the X server. The
2595 previous checks for changes would fail in a number
2598 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
2600 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
2602 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
2606 - Instantaneously update on modifier key presses
2607 - Allow cancellation of the drag with Escape.
2609 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
2611 * gtk/testgtk.c (create_handle_box): Set the policy
2612 to auto_shrink - otherwise the appearance is rather
2613 strange when flipping between horizontal and vertical.
2615 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
2617 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
2618 (gtk_window_set_default_size): don't change a value if it's < 0.
2621 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
2623 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
2625 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
2627 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
2628 add an extra "/" when concating "/" + filename.
2629 (From Matt Grossman <mattg@oz.net>)
2631 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
2633 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
2634 for fg_gc if we set it for drawing pixmap.
2636 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
2638 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
2640 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
2641 already set, call old engine's destroy function and
2642 unref the old engine.
2644 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
2646 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
2648 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
2650 * gtk/gtkaccelgroup.h: mark certain functions as internal.
2652 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
2654 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
2655 expand behaviour changed.
2657 * gtk/gtklabel.c (gtk_label_set_pattern):
2658 (gtk_label_set_justify):
2659 (gtk_label_set_line_wrap):
2660 don't bother invoking queue_clear, the reallocation does
2661 that for us, always free_words so the upcoming resize will
2662 relayout the label's contents.
2664 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
2666 * applied argument implementation patches from Elena Devdariani
2669 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
2670 ::space_style, ::relief
2671 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
2672 * gtk/gtkpreview.c: ::expand
2673 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
2674 * gtk/gtknotebook.c: ::homogeneous
2675 * gtk/gtklabel.c: ::wrap
2676 * gtk/gtklist.c: ::selection_mode
2677 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
2678 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
2679 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
2680 * gtk/gtkclist.c: ::sort_type
2681 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
2682 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
2684 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
2686 * gtk/gtkstyle.c: Removed ill-thought-out part of last
2689 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
2691 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
2692 counting right when we have to attach a new style
2693 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
2695 * gtk/gtkstyle.c: Documented the refcounting
2696 peculularities of gtk_style_attach.
2698 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
2700 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
2703 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
2704 of GTK_TOPLEVEL for creating the window.
2706 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
2708 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
2709 the last argument (reported by Per Winkvist).
2711 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
2713 Fixes for invisible XOR lines (Frank Loemker
2714 <floemker@TechFak.Uni-Bielefeld.DE>)
2716 * gtk/gtkclist.c (gtk_clist_realize): Always use
2717 a non-zero pixel for GDK_XOR.
2719 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
2720 Use GDK_INVERT instead of GDK_XOR.
2722 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
2724 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
2725 signals if h/voffsets differ from adjustment values.
2726 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
2728 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
2730 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
2731 ::selection-done emissions up to the topmost menu shell.
2733 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
2735 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
2736 the user data on the window before destroying it.
2738 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
2739 unrealize handler to take care of destroying
2740 notebook->panel properly.
2741 (Bug #1198 - Morten Welinder <terra@diku.dk>)
2743 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
2744 of g_new and g_realloc to stop memory leak. (Actually,
2745 we could just use g_realloc(), but I'm not 100% sure
2747 (Bug #1196 - Morten Welinder <terra@diku.dk>)
2749 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
2751 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
2753 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
2756 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
2757 with bin/button confusion.
2759 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
2761 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
2762 and show how preselection of radio items is done.
2764 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
2766 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
2767 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
2768 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
2769 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
2770 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
2771 * gtk/gtktable.c (gtk_table_attach):
2772 * gtk/gtklist.c (gtk_list_insert_items):
2773 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
2774 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
2775 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
2776 * gtk/gtkbin.c (gtk_bin_add):
2777 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
2778 * gtk/gtkfixed.c (gtk_fixed_put):
2779 * gtk/gtklayout.c (gtk_layout_put):
2780 general fixups to container_add logic. always realize child if
2781 child->parent is realized, only map the child and queue a resize
2782 if child and child->parent are both visible.
2784 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
2786 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
2787 instead of gtk_container_foreach to walk and unrealize children, so
2788 composite children get also unrealized.
2789 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
2790 (gtk_widget_map): assert that the widget is visible (basic constrain).
2791 (gtk_widget_real_map): assert that the widget is realized (basic
2794 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
2796 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
2798 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
2800 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
2801 file for iso-8859-2 locales.
2803 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
2805 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
2807 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
2808 (Pointed out by andy@rz.uni-karlsruhe.de and others).
2809 Remove some suspicious and useless lines.
2811 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
2813 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
2814 width,height = 0, 0 to mean - here to edge of window,
2815 instead of -1, -1, since the former is all we support.
2817 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
2819 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
2820 when removing from quit_functions list.
2822 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
2824 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
2826 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
2828 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
2829 When redrawing characters on non-visible entry, use appropriate
2830 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
2832 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
2834 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
2835 from drag coordinates.
2836 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
2839 * gtk/gtktree (drag_dest_cell)
2840 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
2843 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
2845 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
2847 (gtk_item_factory_finalize): invoke translate_notify independant from
2849 (gtk_item_factory_set_translate_func): likewise.
2850 (gtk_item_factory_destroy): only remove ifactory pointer from those
2851 widgets that belong to us (stupid me).
2853 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
2855 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
2856 rc_style list when lookup succeeeds.
2858 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
2860 * gtk/gtkctree.c (resync_selection):
2861 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
2862 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
2865 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
2867 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
2868 Add some missing GDK_THREADS_ENTER()/LEAVE around
2869 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
2871 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
2873 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
2874 rather than emit_by_name.
2876 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
2877 on the widget across multiple signal emissions.
2878 (gtk_editable_delete_text): same here.
2879 (gtk_editable_class_init): set widget_class->activate_signal after
2880 editable_signals[ACTIVATE] has been created.
2882 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
2884 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
2885 position here prematurely -- we might not have the
2886 right ->min_position and ->max_position yet.
2888 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
2890 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
2891 Add error traps so if the other end of the connection
2894 * gtk/gtkselection.c (gtk_selection_notify): Clean
2895 up properly when selection property retrieval fails.
2897 * gtk/gtkselection.c (gtk_selection_request): Correctly
2898 reject SelectionRequest notifies where the handler
2901 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
2903 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
2904 when we've previously highlighted.
2906 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
2907 emit two "drag_leave" signals for Motif drops.
2909 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
2910 back the correct status messages when dropping from
2911 Motif onto a proxy window that is rejecting the
2914 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
2916 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
2917 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
2918 to compare two argument values. added gtk_arg_to_valueloc() to set a
2919 variable from an arg through its location (pointer).
2921 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
2922 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
2923 as gfloat*, uchars are collected as guchar*, ints are collected as
2926 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
2928 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
2929 Include <string.h> instead of <strings.h>.
2931 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
2932 (actually, a lot more duplicate includes occur if
2933 you trace through the sequence of #include's)
2934 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
2936 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
2938 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
2939 gtk-a-higuti-990322-[0-3]
2941 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
2942 that was causing -DX_LOCALE not to work.
2944 * gtk/gtkrc.c (gtk_rc_init):
2945 X_LOCALE will never have LC_MESSAGES defined
2947 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
2949 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
2950 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
2952 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
2953 left/right as well (gtk-michael-980726-0.patch.gz).
2955 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
2956 for pointer values, use gchar instead of char. fixed uline allocation
2957 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
2958 chunks instead of G_ALLOC_ONLY.
2959 (gtk_label_size_request): always alter requisition as passed and leave
2960 widget->requisition alone.
2961 (gtk_label_set_text): allow NULL strings.
2962 (gtk_label_new): likewise.
2964 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
2966 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
2968 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
2970 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
2971 *and* mapped (i.e. drawable).
2972 (gtk_bin_expose): only send exposes to drawable children.
2974 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
2975 (gtk_box_expose): only send exposes to drawable children.
2977 * gtk/gtkhscale.c (gtk_hscale_draw):
2978 * gtk/gtkvscale.c (gtk_vscale_draw):
2979 hm, this is an ugly one. we first compute the size of our trough area
2980 here (window relative) and then check intersection with the draw_area
2981 which is parent relative because we're a NO_WINDOW widget, so we need
2982 to offset the trough area by allocation.x and allocation.y before the
2983 check. (this must not be done for the background area though, since
2984 that's already computed parent relative).
2986 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
2988 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
2989 unrealize title buttons.
2991 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
2993 * gtk/gtkclist.c (gtk_clist_column_title_passive)
2994 (gtk_clist_column_title_active):
2995 only connect/disconnect to GtkWidgetClass::event to block mouse events.
2997 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
2998 zero initialize event, removed superfluous gdk_window_get_pointer call
3000 * gtk/gtklist.c (gtk_list_vertical_timeout)
3001 (gtk_list_horizontal_timeout): removed superfluous
3002 gdk_window_get_pointer call
3004 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
3006 * plugging problems reported by "Bruce Mitchener, Jr."
3007 <bruce@puremagic.com> due to a purify session.
3011 (gtk_style_unref): assert ref_count to be > 0.
3013 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
3015 (gtk_clist_set_shift): likewise.
3017 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
3020 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
3021 event before sending it and set send_event to TRUE (which needs to
3022 be done for *all* synthesized events).
3023 (gtk_list_vertical_timeout): likewise.
3025 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
3028 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
3029 to TRUE when synthesizing events.
3031 [ *** end of merges from 1.2 *** ]
3033 1999-11-21 Tor Lillqvist <tml@iki.fi>
3035 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
3036 (or copied from gdkconfig.h.win32 on Win32, sigh).
3038 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
3040 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
3042 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
3044 * gdk/gdkconfig.h.win32: New file.
3046 * gdk/win32/makefile.cygwin: Build just a static archive here.
3048 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
3049 for the DLL from the static archive built above.
3051 * gdk/gdk.def: Moved here from the win32 subdirectory.
3053 * gdk/win32/*: Adapt for the changed private struct organisation.
3055 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
3057 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
3059 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
3060 for wheel mice (buttons 4 and 5).
3062 1999-11-18 Tor Lillqvist <tml@iki.fi>
3064 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
3065 drawables use just the pixel field in the foreground and
3066 background GdkColor of the GdkGC.
3068 gdk_gc_set_{fore,back}ground() are called in the GIMP with
3069 GdkColors containing uninitialized (red,green,blue) fields, and
3070 just the pixel field filled in, and furthermore in the
3071 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
3072 It thus turns out that we really don't need to have the full
3073 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
3074 it later to have just the pixel values.
3076 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
3078 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
3080 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
3082 * docs/gtkfaq.sgml: threads example from Erik Mouw.
3083 New question on GtkLabel background colors.
3085 * docs/gtk_tut.sgml:
3086 - Correct the example code callback
3087 function definitions.
3088 - Update the gtkdial example code, from Frans van Schaik.
3089 - Update setselection.c to current API.
3091 * examples/Makefile examples/*/*.c: Update to code
3094 1999-11-10 Tor Lillqvist <tml@iki.fi>
3096 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
3097 subrange table (from the "Developing International Software for
3098 WIndows 95 and Windows NT" book) was missing the Hangul syllable
3099 block... Get the loaded font's charset correctly.
3101 (Note that this, and the other *-win32.c files, still really are
3102 the old ones, the win32 subdirectory is not ready for compilation
3103 yet after the reorg.)
3105 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
3107 * gtk/gtkclist.c: Fix off-by-one bug in parameter
3110 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
3112 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
3113 on results of XQueryDeviceState().
3115 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
3117 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
3118 we need to accesss only ->children. We need an accessor
3121 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
3122 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
3123 to get rid of gdkx.h include.
3125 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
3126 and random references to 'None'.
3128 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
3129 Get rid of unused #include <gdk/gdkx.h>
3131 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
3132 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
3135 1999-11-08 Tor Lillqvist <tml@iki.fi>
3137 * gdk/win32/gdkdraw.c
3138 * gdk/win32/gdkfont.c
3139 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
3140 following yesterday's changes. (Unrelated to Owen's reorg.)
3142 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
3144 * gdk/x11/gdkinput-gxi.c: Add missing include,
3145 fix GdkWindowPrivate => GdkDrawablePrivate.
3147 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
3149 * gdk/x11/Makefile.am (xinput_sources): Add missing
3150 backslash to fix building with --with-xinput=none
3152 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
3154 Move all X specific code into the x11/ directory.
3155 Aside from shuffling things around, did the following:
3157 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
3158 gdk_arg_context_* - a simple argument parsing system
3159 in the style of popt.
3161 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
3162 gdk/x11/gdkprivate-x11.h:
3163 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
3164 add ->klass and ->klass_data fields. The klass_data
3165 field points to an auxilliary structure that is
3166 windowing system dependent.
3168 * gdk/gdkfont.c: Make most of the measurement functions
3169 simply wrappers around gdk_text_extents().
3171 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
3172 _gdk_font_strlen() function that hides the weird
3173 behavior in gtk+-1.[02] where a string is interpreted
3174 differently for 8-bit and 16-bit fonts.
3176 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
3177 to store common code for synthesizing double/triple
3180 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
3181 Make all the function that modify an existing GC
3182 simply wrappers around gdk_gc_set_values().
3184 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
3185 for throwing out later.
3187 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
3188 GdkImagePrivate and GdkColormapPrivate to have a
3189 windowing system dependent part (GdkFontPrivateX etc.)
3190 that "derives" from the system-independent part.
3192 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
3193 Got rid of the included-source-files for XInput in
3194 favor of automake conditionals. (Which didn't exist
3195 when XInput support was originally added.)
3197 * gdk/gdkrgb.c: Remove the visual id from the debugging
3198 statements since that is X11 specific; print out
3199 type/depth info instead.
3202 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
3204 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
3205 loading duplicates of hashed fonts.
3207 * gdk/gdk.c (gdk_keysym_convert_case): rename
3208 gdk_XConvertCase to gdk_keysym_convert_case, allow
3209 results to be NULL in the GTK+ style.
3211 * gdk/gdkcompat.h: Started compatibility header
3214 1999-11-07 Tor Lillqvist <tml@iki.fi>
3216 * gdk/win32/gdkprivate.h: New font private structures, related to
3219 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
3220 gdk_font_list_free(). On X11, will just be wrappers to
3221 XListFonts() and XFreeFontNames(). On Win32, the code previously
3222 in gtkfontsel.c is now here.
3224 New function gdk_font_xlfd_create(). On X11 will get the FONT
3225 property of the font (for GDK_FONT_FONTs), or call
3226 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
3227 builds a XLFD style name from the font information in the LOGFONT
3230 New function gdk_font_xlfd_free(), which correspondingly frees the
3231 string returned by gdk_font_xlfd_create().
3233 Implement fontsets on Win32. Add a function that iterates over a
3234 wide char string and calls a callback function for each substring
3235 of wide chars from the same Unicode subrange (and thus probably
3236 available in the same real font).
3238 Improve the XLFD emulation a bit.
3240 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
3242 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
3243 Beta3, WM_IME_CHAR messages don't seem to contain the composed
3244 multi-byte char as with the Active IMM on Win9x. Oh well, handle
3245 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
3246 ImmGetCompositionStringW() to get the composed Unicode chars.
3249 * gdk/win32/gdkdraw.c: Changes needed because of the font private
3252 * gdk/win32/gdk.def: Add the new functions.
3254 1999-11-04 Tor Lillqvist <tml@iki.fi>
3256 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
3257 get the Platform SDK to get <dimm.h>.
3259 * gdk/win32/gdkevents.c: More event handling fixes and
3260 simplification. Never generate motion events with is_hint true. We
3261 used to do that on bogus grounds earlier. Windows sends
3262 WM_MOUSEMOVE messages on button events even if the mouse hasn't
3263 moved, ignore these.
3265 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
3267 * gdk/win32/gdkglobals.c
3268 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
3269 the TrackMouseEvent function, and use it.
3271 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
3272 char before calling WideCharToMultiByte in order to get a string
3273 for the window title.
3275 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
3277 * gdk/win32/gdk.def: Remove obsolete functions.
3279 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
3280 /nodefaultlib and /defaultlib switches.
3282 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
3284 1999-10-31 Tor Lillqvist <tml@iki.fi>
3286 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
3289 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
3290 same type as GdkWChar, especially on Win32.
3292 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
3294 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
3295 before passing to Windows GDI for drawing etc. Convert to the
3296 system default codepage before passing to Windows as window
3299 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
3300 support changing input locale on the fly.
3302 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
3303 on-the-fly changes. Convert incoming characters from the current
3304 codepage to Unicode (and then to a UTF-8 multi-byte string) based
3305 on the current input language. Use keysym<->Unicode mapping tables
3306 and functions borrowed from xterm sources.
3308 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
3309 editions of Win9x, use the ActiveX-based Active IMM (Input Method
3310 Manager) if available. IMEs and the Active IMM are available under
3311 the disguise of Chinese, Korean and Japanese support for IE and
3312 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
3313 support is present in all editions (as long as you install it).
3315 Call DispatchMessage from gdk_events_queue() (and thus
3316 gdk_WindowProc()), instead of duplicating the code in
3319 Reworked the grab handling and propagation code, factored out
3320 duplicated code snippets into separate functions. Other cleanups,
3323 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
3324 the <dimm.h> header describing the Active IMM.
3326 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
3327 just do the same as for "single" fonts.
3329 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
3330 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
3331 the new keysyms from gdkkeysyms.h.
3333 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
3334 fontset, so that gtkentry uses wide characters.
3336 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
3337 GTk+'s system directory "gtk+", not "gtk".
3339 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
3341 * docs/gtkfaq.sgml: FAQ update
3343 1999-10-21 Tor Lillqvist <tml@iki.fi>
3345 * gdk/win32/gdkprivate.h: Add more font private data.
3347 * gdk/win32/gdkfont.c
3348 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
3349 fonts and strings. Now works much better. You still have to
3350 have a correct font selected, though. No fontset emulation yet.
3352 1999-10-19 Tor Lillqvist <tml@iki.fi>
3354 * gtk/maketypes.awk: Use G_OS_WIN32.
3356 * gtk/gtk.def: Add some missing entry points. Also some non-public
3357 ones, but PyGTK porter claims to need them.
3359 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
3360 built-in type generation.
3362 1999-10-14 Tor Lillqvist <tml@iki.fi>
3364 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
3365 GDK_FONT_FONT fonts (which is all we have for now, we don't
3366 emulate fontsets). The X11 version uses plain XDrawString in that
3367 case, too. The string passed to gdk_draw_text_wc seems to be in
3368 fact (at least, when used by gtkentry and gtktext) either in a
3369 single-byte charset, or a DBCS. Not Unicode.
3371 This fixes the problem in gtkfontsel, where even if you had
3372 selected a font with a non-Latin1 charset (windows-greek, for
3373 instance), the preview still used Latin-1 glyphs.
3375 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
3376 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
3377 (gdk_font_load): Recognize the demibold etc weights, even if we
3378 don't have the corresponding constants in the headers.
3379 (gdk_font_hash_insert): Use same hash mechanism as in the X11
3380 version. Should save font resources a bit, when we don't have
3381 multiple HFONTs for the same font.
3383 * gdk/win32/gdkprivate.h: Add the names field as in the X11
3386 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
3388 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
3391 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
3393 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
3394 layout support (as mentioned on
3395 http://www.jcinteractive.com/gnome-ui/software/widgets/)
3397 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
3400 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
3402 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
3404 * configure.in (ALL_LINGUAS): Added Galician (gl)
3406 1999-10-05 Tor Lillqvist <tml@iki.fi>
3408 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
3410 * gdk/win32/gdkcompat.c: New file, actually provide an
3411 implementation for the deprecated functions. (Just temporarily.)
3413 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
3415 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
3417 * gdk/win32/gdk.def gtk/gtk.def: Updates.
3419 1999-10-05 Kjartan Maraas <kmaraas@online.no>
3421 * configure.in: Added "uk" to ALL_LINGUAS.
3423 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
3425 * configure.in: correct checking for BeOS check
3430 * gtk/gtkitemfactory.c
3432 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
3434 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
3436 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
3437 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
3438 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
3441 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
3443 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
3444 Fix a reference to window_private->destroyed.
3446 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
3447 (ugly) setting of an internal GdkWindow member to use
3448 a _slightly_ cleaner macro.
3450 * gdk/gdkprivate.h: Split GdkWindowPrivate into
3451 GdkDrawablePrivate and GdkWindowPrivate.
3452 Add extra macros for accessing GDK_DRAWABLE_ components.
3454 * *.[ch]: Massive adjustments for the above, use the
3455 new macros in a lot of places.
3457 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
3459 * gdk/gdktypes.h: Make GdkDrawable the base type,
3462 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
3464 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
3466 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
3468 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
3470 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
3472 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
3473 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
3475 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
3477 * docs/gtk-config.1: Now autogenerated.
3478 * docs/Changes-1.4.txt: started
3480 1999-10-03 Tor Lillqvist <tml@iki.fi>
3482 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
3483 to #ifdef also here.
3485 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
3486 Owen did to the X11 backend.
3488 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
3489 ScrollWindowEx when blitting inside a window, it can't be correct
3490 in the general case.
3492 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
3493 WM_GETMINMAXINFO is easier.
3495 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
3496 depth equal to the bitspixel value, not the visual's depth.
3498 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
3499 to 24 even if the bitspixel value is 32.
3501 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
3502 need to check for depth==32 when bpp==32, depth will always be 24.
3504 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
3506 * docs/Changes-1.4.txt: Started
3508 * gtk/Makefile.am (gdk_headers): Include all the new headers.
3510 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
3512 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
3515 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
3516 header to gdkinputprivate.h.
3518 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
3519 unused since before 1.2.
3521 1999-09-30 Tor Lillqvist <tml@iki.fi>
3523 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
3524 expand possible hex escapes in the font family (put there by
3525 logfont_to_xlfd if the font name isn't a legal XLFD font family,
3526 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
3527 On Win32, add hex escapes here, too.
3529 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
3531 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
3532 to #ifdef GDK_WINDOWING_X11.
3534 [ Merges from gtk-1-2 ]
3536 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
3538 * configure.in: fixed "GNU Make" check to pass with new make version
3541 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
3543 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
3544 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
3545 AM_PATH_GTK() macros don't get confused by the -pre1.
3547 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
3549 * configure.in (REBUILD): Change check for perl5
3550 to check explicitely for v >= 5.002. (5.001
3551 does not work with our scripts.)
3553 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
3555 * configure.in: evaluate $PERL for the perl version check. added
3556 --disable-rebuilds to give the user an option to completely disable
3557 any source autogeneration rules.
3559 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
3561 * configure.in: evaluate $ac_make when checking for GNU Make.
3563 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
3565 * docs/Makefile.am: added generation.txt.
3567 * Makefile.am: require automake 1.4, build README from README.in and
3568 INSTALL from INSTALL.in in dist-hook.
3571 * INSTALL.in: new files to autogenerate README and INSTALL from.
3573 * configure.in: figure whether we have GNU Make
3575 * docs/generation.txt: minor additions/corrections.
3577 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
3579 * docs/gtkfaq.sgml: FAQ Update
3581 July 30, 1999 Elliot Lee <sopwith@redhat.com>
3583 * configure.in: Fix autoconf warnings about cross compilation by
3584 trying to provide sane defaults for AC_TRY_RUN.
3586 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
3589 * ltmain.sh: upgrade to libtool 1.3.3
3591 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
3593 * INSTALL: Indicate that the --with-glib= configure
3594 time flag is unsupported.
3596 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
3598 * docs/generation.txt: Added a file that gives
3599 documenation about the autogeneration process for
3600 various autogenerated files.
3602 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
3604 * configure.in (LIBS): Look for libgmodule in the
3607 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
3609 * docs/gtk_tut.sgml: Removed references to
3610 code examples in my directory on gtk.org as
3611 they should all be in the tutorial now.
3613 * docs/gtk_tut.sgml: Added sources for dial-test
3614 and scribble-xinput programs that were previously
3617 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
3619 * TODO: Added entry about menu keyboard navigation, removed
3620 some finished items.
3622 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
3624 * acinclude.m4: Standardize on func_dgettext
3625 not func_gettext, so that the checks for dgettext
3626 actually are paid attention to.
3628 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
3630 * configure.in (LIBS): Add $INTLLIBS into $LIBS
3631 directly, rather than repeating the checks for
3634 * INSTALL: Added information about gettext and
3637 * acinclude.m4 (LIBM): Check for dgettext, not
3638 just gettext. This should hopefully fix things wrt
3639 systems with old versions of GNU gettext installed.
3641 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
3643 * configure.in (LIBS): Look for libgmodule in the
3646 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
3648 * autogen.sh: add --enable-maintainer-mode
3650 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
3652 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
3654 * docs/gtk-config.1.in:
3656 configure.in: gtk-config is now generated.
3658 * docs/gtk-config.1: Removed, now generated.
3660 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
3662 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
3663 handle CreateNotify itself, still put out a debuging message for
3664 --gdk-debug=events. made the ReparentNotify debugging message more
3666 wrap xcoords translation for ConfigureEvents into an error trap,
3667 a destroy event may already be pending, and in that case, the
3668 actuall coordinate values are not at all critical.
3670 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
3672 * gdk/gdkcc.c: Stop leaking the color_hash all over
3673 the place. Simplify and improve the logic.
3675 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
3677 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
3678 for prototypes and function implementations consistent (reported
3681 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
3683 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
3684 send_event set in debugging output.
3685 (gdk_compress_exposures): default initialize the event so we don't
3686 operate on bogus values (namely send_event).
3688 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
3690 * gdk/gdkwindow.c: When we receive an unexpected
3691 destroy notify on one of our windows, don't just
3692 warn about it, also mark our windows as destroyed.
3694 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
3696 * gdk/gdkfont.c (gdk_font_hash_insert): Add
3697 name => font and name => fontset hashes. The
3698 name => fontset hash is a _big_ win since we
3699 weren't previously caching fontsets at all and loading
3700 fontsets is expensive. The name => font hash
3701 is less of a win, but it does save us from doing
3702 repeated XQueryFont calls on the same font.
3704 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
3705 list so we can remove font/fontset from hash.
3707 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
3709 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
3710 and slightly confusing test. [ XInternAtom (,,TRUE)
3711 will never return None ].
3713 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
3715 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
3716 gdk/gdkwindow.c (gdk_window_set_hints):
3718 Don't omit setting the properties if flags == 0 -
3719 there may be an existing set of properties there
3720 already. (Very old bug. Would it be better to
3721 delete the property instead?)
3723 * gdk/gdkselection.c (gdk_selection_property_get): Fix
3724 spelling error in comment.
3726 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
3728 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
3729 to avoid stomping over gdk_error_warnings.
3731 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
3732 as (bits_per_pixel + 7) / 8. This gives the same
3733 result as before for multiples of 8, but actually
3734 a "reasonable" value for 1bit or 4bit displays.
3736 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
3738 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
3741 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
3743 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
3744 discarding configure events.
3746 1999-08-18 Federico Mena Quintero <federico@redhat.com>
3748 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
3749 refcount is greater than zero.
3751 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
3753 * gdk/gdkfont.c (gdk_font_unref): Likewise.
3755 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
3757 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
3759 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
3761 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
3762 that format 32 => sizeof(item) == 4. It really is
3765 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
3767 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
3768 core dump at all on X IO errors, only core dump
3769 if --enable-debug for X errors.
3771 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
3773 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
3774 unknown window:" message. disabled ConfigureNotify discarding code,
3775 because it led to events being processed out of order.
3777 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
3779 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
3781 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
3782 we export this function, supress error warnings and don't reset the
3783 error code in the first half of this function.
3785 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
3786 code (instead of just -1) so gdk_error_trap_pop() reveals something
3787 actually informative about the error that happened.
3790 don't rely on gdk_error_code being -1 if an error occoured, but just
3791 gdk_error_code != 0.
3793 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
3795 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
3796 pointer *before* invoking the filter function, so we at least don't
3797 crash if a filter is removed that is currently executed. window filters
3798 *really* need to be made truely reentrant at some point.
3800 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
3802 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
3803 PropertyNotify debug messages.
3805 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
3807 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
3809 * gdk/gdkim.c: Fix cut-and-paste errors for
3810 x/y and PreeditAttributes/StatusAttributes.
3812 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
3814 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
3815 G_MAXINT to 2^16 to alleviate overflow problems in
3816 various window managers.
3818 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
3820 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
3823 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
3825 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
3826 Initialize size_hints.x and size_hints.y because kwm
3827 brokenly pays attention to them.
3828 (Bug #1181 - Lars Heete <hel@admin.de>)
3830 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
3832 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
3833 return value of gdk_list_visuals().
3834 (Bug #1193 - Morten Welinder <terra@diku.dk>)
3836 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
3838 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
3839 XSetIMValues to (void *) when comparing to NULL, to workaround
3840 the problem of some compilers barfing since older X headers don't
3841 have the prototype for it.
3843 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
3845 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
3846 for pseudocolor where colormap->colors was double
3849 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
3850 color value in the hash table with the pixel filled
3851 in so when we do later hash table lookups, the color
3854 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
3856 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
3859 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
3861 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
3862 pointed out by Morten Welinder <terra@diku.dk>.
3864 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
3866 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
3867 default filter from the list
3869 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
3871 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
3872 default filter from the list
3874 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
3876 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
3878 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
3879 g_strdup_printf instead of calcing the length separately
3881 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
3883 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
3884 that we don't do in many other places. (Fixing duplicate
3885 #include of config.h)
3887 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
3888 Otherwise, #ifndef XINPUT_NONE check in the latter
3889 doesn't work. (Bug #546)
3891 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
3893 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
3894 "None" case insensitive.
3896 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
3898 * gdk/gdkselection.c:
3899 Add error traps so if the other end of the connection
3902 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
3904 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
3905 dest_xid field into two fields - one for the window
3906 to send in messages, one to indicate the last looked
3907 up window for caching purposes. This is needed, so
3908 that Leave messages get the correct window.
3910 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
3912 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
3913 Fix warning created by people mucking around
3914 with the gsource API.
3916 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
3917 Change mapping between GIOCondition and GdkInputCondition
3918 to match the way the Linux kernel does it. This should
3919 fix problems where closed pipes were no longer signalling
3920 GDK_INPUT_READ on systems with a native poll().
3922 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
3924 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
3925 explicitly for the string "None" - it is in the XPM
3926 spec and some servers treat unknown colors in odd ways
3927 (like asking the user!)
3929 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
3931 * gdk/gdkevents.c: made "->" into a "." of previous change so
3934 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
3936 * gdk/gdkevents.c (gdk_compress_exposures): Set the
3937 window field of the event structure before calling
3940 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
3942 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
3943 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
3945 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
3947 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
3948 intermediate text property - prevents major memory
3949 leak when gdk_use_mb.
3950 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
3952 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
3954 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
3955 gtk-a-higuti-990322-[0-3]
3957 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
3958 sizeof(wchar_t) != sizeof (GdkWChar)
3960 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
3961 that was causing -DX_LOCALE not to work.
3963 * gtk/gtkrc.c (gtk_rc_init):
3964 X_LOCALE will never have LC_MESSAGES defined
3966 * gdk/gdk.c (gdk_init_check):
3967 Remove --xim-preedit and --xim-status from argv properly.
3969 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
3970 that the client window is present on the X server
3971 before we pass it to the input method.
3973 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
3975 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
3976 if --display is specified on the command line, than
3977 the drag window will not be created on that display.
3979 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
3981 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
3982 lookups with only_if_exists == TRUE were inserting
3983 bogus values into the atom cache.
3985 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
3987 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
3988 then reset it to NULL.
3992 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
3993 key for g_hash_table_remove() in both functions, this prevents us
3994 from accessing possibly uninitialized portions of a GdkColor structure
3995 where we are only interested in its pixel value.
3997 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
3999 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
4000 font hash table, if we have a GdkFontPrivate entry for this font
4001 already, simply increment its reference count, provided by Olaf Dietsche
4002 <olaf.dietsche+list.gtk@netcologne.de>.
4004 1999-09-21 Tor Lillqvist <tml@iki.fi>
4006 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
4009 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
4010 unused variables, leftovers from the X11 version.
4012 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
4014 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
4015 downcase fields on X11.
4017 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
4019 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
4020 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
4022 1999-09-17 Tor Lillqvist <tml@iki.fi>
4024 * gdk/win32/gdk.def: Add gdk_threads_mutex.
4026 * gtk/makefile.msc: Correct path to libintl.
4028 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
4029 use of gint vs. int, and gint vs. gboolean in headers and
4030 definitions. Use GtkType for the *_get_type functions. Note that
4031 these changes preserve binary compatibility.
4035 * gdk/gdk.h: Fix inconsistencies: gint vs int.
4039 * gtk/gtkmenufactory.c
4041 * gtk/gtkwidget.c: Fix inconsistencies, also gint
4044 * gtk/gtkcolorsel.[ch]
4046 * gtk/gtkdrawingarea.[ch]
4048 * gtk/gtkhandlebox.[ch]
4049 * gtk/gtkhpaned.[ch]
4050 * gtk/gtkhruler.[ch]
4052 * gtk/gtkpreview.[ch]
4054 * gtk/gtksocket.[ch]
4055 * gtk/gtkstatusbar.[ch]
4056 * gtk/gtktoolbar.[ch]
4058 * gtk/gtkvpaned.[ch]
4059 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
4062 * gtk/gtkgamma.h: Fix bug, missing () in call of
4063 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
4065 1999-09-14 Tor Lillqvist <tml@iki.fi>
4067 * gdk/gdkcolor.c (gdk_colormap_new)
4068 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
4069 colormap->colors was allocated twice.
4071 * gdk/win32/gdk.c: Remove some unused stuff.
4073 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
4076 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
4077 * gtk/gtklabel.h (gtk_label_get_type)
4078 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
4079 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
4080 in a couple of places, not guint.
4082 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
4084 * configure.in,po/et.po: added Estonian language file
4086 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
4088 * configure.in,po/da.po: added Danish file
4090 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
4092 * docs/gtkfaq.sgml: Minor FAQ Update
4094 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
4096 * docs/gtkfaq.sgml: FAQ update
4098 1999-08-27 Tor Lillqvist <tml@iki.fi>
4100 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
4101 way to get window contents continually refreshed while resizing. I
4102 didn't like the effects myself, so it's not on by default.
4104 * gdk/win32/gdkprivate.h: New flag variable
4105 gdk_event_func_from_window_proc, FALSE by default.
4107 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
4108 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
4109 are passed --gdk-event-func-from-window-proc.
4111 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
4112 and we have am event_func, call it instead of enqueing the event.
4114 1999-08-23 Tor Lillqvist <tml@iki.fi>
4116 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
4117 Kelley: Set expose_count in GdkEventExposes correctly.
4119 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
4120 MULTIPLE_WINDOW_CLASSES).
4122 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
4123 for bug in NT, apparently NT *does* draw the end pixel, too, in
4124 LineTo with a one-pixel pen, so we don't have to do it ourselves.
4126 1999-08-21 Tor Lillqvist <tml@iki.fi>
4128 Improvements by Hans Breuer:
4130 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
4132 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
4133 CS_?REDRAW flags as they cause lots of (late) redraws when "show
4134 window contents while dragging" is turned on. Allocate at least
4135 one unique class for every GdkWindowType. If support for single
4136 window-specific icons is ever needed (eg. Dialog specific), every
4137 such window should get its own class.
4139 1999-08-19 Tor Lillqvist <tml@iki.fi>
4141 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
4142 error that caused crashes.
4144 1999-08-17 Tor Lillqvist <tml@iki.fi>
4146 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
4147 window, use ScrollWindowEx, and call UpdateWindow. This prevents
4148 bugs when for instance part of the window was outside the
4149 display. Thanks to Philippe Colantoni for finding and fixing this.
4151 1999-08-16 Tor Lillqvist <tml@iki.fi>
4153 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
4154 endpoint calculations which were totally wrong. (A little RTFMing
4157 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
4158 from a separate directory, not from gettext, because of licensing
4159 issues (we want to use the LGPL version).
4161 * README.win32: Mention the intl from glibc vs from gettext issue.
4163 1999-08-13 Tor Lillqvist <tml@iki.fi>
4165 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
4166 in the key event handling: Now AltGr chars work again. Also,
4167 now Alt-digits are passed up as well as Control-digits.
4168 Pass keypad plus and minus as normal plus and minus.
4170 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
4172 * docs/gtkfaq.sgml: FAQ Update
4174 1999-07-25 Tor Lillqvist <tml@iki.fi>
4177 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
4180 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
4181 OK, but getting closer. Guard against bogus tilt data from Wacom
4182 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
4183 enable easier building without Wintab.
4185 * gdk/win32/gdkinput.h
4186 * gdk/win32/gdkevents.c
4187 * gdk/win32/gdkwindow.c: Minor changes related related to above.
4189 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
4190 code. As we have just one visual on Win32, no sense to have it in a
4191 table, and no need for the hash table.
4193 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
4194 better on white background.
4196 1999-07-21 Tor Lillqvist <tml@iki.fi>
4198 * README.win32: Update gcc build instructions. Mention gettext is
4201 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
4202 supported cursor size with GetSystemMetrics.
4204 * gdk/win32/gdkfont.c
4205 * gtk/gtkfontsel.c: Guard against some font weight and charset
4206 symbols being undefined (in mingw32 headers).
4208 * gdk/win32/makefile.cygwin
4209 * gtk/makefile.cygwin
4210 * gtk/gtkthemes.c: No longer need to have differently named
4211 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
4213 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
4215 * docs/gtkfaq.sgml: Long awaited FAQ update.
4217 1999-07-15 Tor Lillqvist <tml@iki.fi>
4219 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
4220 it. Obscure bit manipulation needed.
4222 * gdk/win32/gdkevents.c: Logging.
4224 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
4225 style (file name include compiler name) for theme engines.
4227 1999-07-13 Tor Lillqvist <tml@iki.fi>
4229 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
4231 * gdk/win32/gdkevents.c: Fix long-standing bug in key
4232 events. The key.string wasn't zero-terminated, still we strdup'ed
4233 it in gdk_event_copy(). Synthesize crossing events for button
4234 events before possible propagation.
4236 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
4238 * gdk/win32/makefile.cygwin
4239 * gtk/makefile.cygwin: Use new DLL naming style for the
4242 * gdk/win32/makefile.msc
4243 * gtk/makefile.msc: Cosmetics mostly.
4245 * gtk/gtk.def: Add missing entry points.
4247 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
4249 1999-07-09 Tor Lillqvist <tml@iki.fi>
4251 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
4252 or height is zero. Don't print a warning if Pie or Arc fails, they
4253 always fail (?) for very narrow ellipses.
4255 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
4256 the part or the destination window corresponding to source area
4257 outside of the source drawable's boundary.
4259 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
4260 anything if less than two points.
4262 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
4263 return NULL. Gtk cut-and-paste inside a single program works
4264 better this way. (It always gets the clipboard contents from
4265 Windows, not from its own copy, which is cleared anyway. I can't
4266 say I fully understand what happens... Emulating the X selection
4267 and property stuff is a bit of a mess.)
4269 * gdk/win32/gdkevents.c
4270 * gdk/win32/gdkproperty.c: A bit more verbose logging.
4272 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
4273 that never got deleted). Revamp gdk_region_shrink.
4275 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
4278 * gtk/gtk.def: Add some missing entry points.
4280 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
4283 1999-07-04 Tor Lillqvist <tml@iki.fi>
4285 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
4286 Control-digits specially.
4288 1999-07-03 Tor Lillqvist <tml@iki.fi>
4290 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
4292 1999-06-28 Tor Lillqvist <tml@iki.fi>
4294 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
4295 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
4298 1999-06-01 Jose H Mercado <jmercado@mit.edu>
4300 * gtk+.spec.in: Corrected some typos in files section.
4302 1999-06-15 Tor Lillqvist <tml@iki.fi>
4304 * README.win32: Mention using GNU gettext.
4305 * config.h.win32: Enable NLS stuff.
4306 * gtk/makefile.msc: Use GNU gettext.
4307 * gdk/win32/gdkdnd.c: Minor header reorg.
4308 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
4310 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
4311 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
4313 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
4319 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
4321 1999-05-30 Tor Lillqvist <tml@iki.fi>
4323 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
4324 SafeAdjustWindowRectEx. Don't override all calls to
4325 AdjustWindowRectEx by it, but use it only in two places: When
4326 creating a new top-level window and when moving a top-level
4329 Use screen coordinate rectangle, not client rectangle, in
4330 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
4331 when we try to place a window so that the decoration (mainly,
4332 title bar) isn't visible.
4334 These changes fix the bug that showed up for instance as the
4335 GIMP's saved top-level windows moving right and down (by an amount
4336 equal to the window decoration) for each session. This bug showed
4337 up also in testgtk's "Saved Position".
4339 gdk_window_resize also redone a bit.
4341 1999-05-25 Tor Lillqvist <tml@iki.fi>
4343 * gtk/testgtkrc: Add (commented out) Windows-style theme
4346 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
4348 1999-05-18 Tor Lillqvist <tml@iki.fi>
4350 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
4351 gdkx.h to a gdk subdirectory, so that applications can include
4352 these with <gdk/*.h> without trouble.
4354 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
4355 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
4356 have their bitmap destroyed.
4358 * gdk/win32/gdk.def: Add gdk_root_parent.
4360 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4366 gtk/Makefile.am: changes to compile nicely (with xlib)
4369 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
4375 * ltmain.sh: upgrade to libtool 1.3
4377 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
4380 * gtk/gtkctree.c: merges from gtk-1-2
4382 1999-04-25 Tor Lillqvist <tml@iki.fi>
4384 Support added for building using a GNU toolchain on Win32,
4385 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
4387 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
4388 * config.h.win32: Changes for gcc.
4389 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
4390 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
4391 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
4392 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
4393 Protect shl stuff unavaiilable with mingw32 headers.
4394 * gdk/win32/gdkevents.c: Fix typo.
4395 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
4396 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
4397 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
4398 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
4399 the mingw32 headers.
4400 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
4401 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
4402 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
4403 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
4404 Test for NATIVE_WIN32, not _MSC_VER.
4405 * gtk/gtkmain.c: No use warning about developer version on Win32,
4406 there aren't any non-developer versions anyhow.
4407 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
4408 * gtk/makefile.msc: Use pthread from another directory. Minor other
4411 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
4413 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
4414 default filter from the list
4416 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
4418 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
4419 when gtk_widget_grab_default() is called for a widget that
4420 is not within a GtkWindow.
4422 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
4424 * docs/gtk_tut.sgml, examples/clist.c: use a
4425 scrolled window in the clist example. Minor
4428 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
4430 * docs/gtk_tut.sgml: Style check from David King
4431 <dking@youvegotmail.net>
4433 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
4435 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
4436 compile with unknown value of GDK_WINDOWING
4438 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
4440 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
4441 after the rule is fired.
4442 (install-exec-local): Install gdkconfig.h only if the contents are
4443 different from the currently installed gdkconfig.h.
4445 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
4447 * gdk/Makefile.am (configexecincludedir): Rename from
4448 configincludedir so that gdkconfig.h will be installed
4449 as part of `make install-exec'.
4451 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
4457 * ltmain.sh: upgrade to libtool 1.2f
4459 * autogen.sh: libtool is not required to autogen gtk+
4461 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
4464 1999-03-18 Tor Lillqvist <tml@iki.fi>
4466 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
4467 declaring gdk variables exported/imported from the DLL. New image
4468 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
4469 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
4470 GDK_DRAG_PROTO_OLE2.
4472 * gdk/gdk.h: Merge in Win32 version: Two new functions,
4473 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
4474 declared only for the Win32 version, but could be in the X11
4475 version as well. (Needed for a Xlib-less gdk_imlib.)
4476 gdk_color_hash should have only one parameter. Declare
4477 gdk_threads_mutex with GDKVAR.
4479 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
4482 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
4483 per pixel, not bits.
4485 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
4486 Fetch bpp (which means bits-per-pixel here) from another place on
4487 Win32. Accept also depth==32 (which we might get on Win32) with
4490 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
4491 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
4492 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
4493 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
4494 in the backend-dependent directory, not in the common gdk
4497 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
4500 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
4502 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
4503 want to use the Gtk+ devel version (which is true, and yes - even i am
4504 currently working with the 1.2.x branch). so everyone reading this, you
4505 probably want to issue
4506 cvs checkout -r glib-1-2 glib
4508 cvs checkout -r gtk-1-2 gtk+
4509 as your next two comands.
4511 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
4513 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
4514 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
4516 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
4517 file. strongly deprecated the GTK_HAVE_* macros, we provide
4518 GTK_CHECK_VERSION() for people that need to check for certain
4521 * gtk/gtkcompat.h: removed this from CVS.
4522 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
4523 idea right from the start, it just didn't seem like that back then.
4525 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
4527 * merges from gtk-1-2:
4529 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
4531 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
4532 item factory class has been created.
4533 (gtk_item_factory_parse_rc): likewise.
4536 keep proper references for old_active_menu_item.
4537 (gtk_menu_reparent): unset the usize of the new parent,
4538 so the menu can sanely be size requested and we don't get nasty screen
4539 artefacts upon next reparentation.
4540 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
4541 enter notify. only synthesize enter notifies if the pointer really is
4542 inside the event window.
4543 (gtk_menu_popdown): use gtk_menu_shell_deselect().
4544 (gtk_menu_popup): move the background setting stuff into
4545 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
4547 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
4548 gtk_menu_shell_select_item() to select the new item.
4549 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
4550 do the right thing for deselection as well.
4552 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
4554 * gtk/gtkwidget.[hc]:
4555 (gtk_widget_accelerators_locked): return whether a widget's accelerators
4558 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
4559 existing accelerators if the widget's accelerators are locked.
4561 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
4563 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
4565 * gtk/gtkmenu.c: truely forward key press and key release events to
4566 the menu widget from the toplevel or tearoff window. we can't simply
4567 connect to that, we need to stop further processing of the events as
4570 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
4573 (gtk_menu_key_press): pass event->keyval, event->state to
4574 gtk_accelerator_valid, instead of event->keyval twice.
4575 refuse to install single letter accelerators for menus that use
4576 single letter shortcuts.
4578 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
4579 gtk_menu_ensure_uline_accel_group().
4581 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
4582 which will always return an uline accel group, made
4583 gtk_menu_get_uline_accel_group() return NULL if the group isn't
4586 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
4588 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
4590 * gtk/gtkclist.c (gtk_clist_column_title_passive):
4591 Leave button sensitive, trap button_press, button_release,
4592 motion_notify, enter_notify and leave_notify events instead.
4593 (gtk_clist_column_title_active): disconnect event handler.
4594 (gtk_clist_drag_data_get): fixed memory leak. Reported by
4595 Guillaume Laurent <glaurent@worldnet.fr>
4597 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
4599 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
4600 width/height mixups.
4602 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
4605 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
4607 * gtk/testgtk.c (create_item_factory): unref the item factory after
4608 window's destruction.
4610 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
4611 count on the menu shell around the menu item's activation, since the
4612 signal emission may cause menu shell destruction.
4614 * gtk/gtkitemfactory.c:
4615 the previous code leaked one accel group per menu. we use
4616 gtk_menu_get_uline_accel_group() now to fix that, and with that
4617 also create the underline accelerator group of the menus only if
4618 required (i.e. an underline accelerator has been specified).
4619 (gtk_item_factory_construct):
4620 (gtk_item_factory_create_item): removed code that would create an
4621 extra accel group for the menu (and leak references).
4622 (gtk_item_factory_create_item): adapted the underline accelerator
4623 installation code to properly feature gtk_menu_get_uline_accel_group().
4625 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
4626 menu->accel_group, this may return NULL if the accelerator group
4627 hasn't been set yet.
4628 added gtk_menu_get_uline_accel_group() to retrive the underline
4629 accelerator group of the menu, this will be created on demand
4630 and proper care is taken about its reference count.
4632 * gtk/gtkitemfactory.h:
4633 * gtk/gtkitemfactory.c:
4634 dumped the approach of keeping a widgets by action list on the
4635 factory since the factory<->widget destroy negotiation didn't work
4636 and would be hard to get going at all. instead we keep a list of
4637 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
4638 persistant throughout a program's life time).
4639 also, i removed the static const gchar *key_* variables, and made
4640 them inline strings (they weren't actually used anyways).
4641 (gtk_item_factory_add_item): update ifactory->items.
4642 (gtk_item_factory_destroy): destroy ifactory->items (and remove
4643 the item factory pointer from the remaining ifactory widgets).
4644 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
4645 list to find the widget.
4646 (gtk_item_factory_get_item): new function that works around
4647 gtk_item_factory_get_widget() limitations, this function will only
4648 return menu items, even for <Branch> entries.
4650 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
4652 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
4653 font hash table, if we have a GdkFontPrivate entry for this font
4654 already, simply increment its reference count, provided by Olaf Dietsche
4655 <olaf.dietsche+list.gtk@netcologne.de>.
4657 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
4658 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
4660 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
4662 * gtk/gtkcontainer.c:
4663 (gtk_container_add_with_args):
4664 (gtk_container_addv):
4665 (gtk_container_add): before adding a child to a conatiner, make sure
4666 it is (default) constructed, this is neccessary because under certain
4667 circumstances the child will get relized and mapped immediatedly, in
4668 which case it has to be constructed already.
4670 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
4672 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
4673 values > 1 as TRUE also.
4675 1999-03-16 Tor Lillqvist <tml@iki.fi>
4677 * README.win32: New file.
4679 * configure.in: Check for lstat.
4681 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
4684 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
4686 * gtk/gtk.def: Removed CRs.
4688 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
4691 * gdk/win32/makefile.msc: Correct upwards relative paths.
4693 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
4695 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
4696 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
4697 it was connecting a void function to expose_event and the int
4698 returning function to the draw signal
4700 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
4703 Use correct path to libgmodule.la when ref'ing uninstalled copy
4704 of glib. (Already in stable branch, Bug #417)
4706 1999-03-15 Tor Lillqvist <tml@iki.fi>
4708 Win32 merge and general portability stuff:
4710 * acconfig.h,configure.in: Check for <sys/time.h>.
4712 * gdk/win32: New directory (actually, been there for a while).
4714 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
4715 NATIVE_WIN32, and use these. Always case fold on Win32. No
4716 backslashed escapes on native Win32.
4718 * gtk/{gtk.def,makefile.msc}: New files.
4720 * gtk/Makefile.am: Add above new files.
4722 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
4723 instead of <strings.h>.
4725 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
4726 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
4727 <unistd.h> appropriately.
4729 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
4730 Use ABS() (from <glib.h>) instead of abs().
4732 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
4733 of gtk (and thus glib) headers, so that WIN32 will be
4734 defined. With MS C, include <direct.h> for mkdir prototype.
4736 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
4737 some casts, needed by MS C.
4739 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
4742 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
4743 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
4744 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
4746 * gtk/gtkmain.h: Mark variables for export/import on Win32.
4748 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
4749 the event is not a hint, or its window is not the slider. Needed
4752 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
4753 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
4754 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
4755 a subdirectory of the Windows directory as gtk system
4756 configuration directory.
4758 * gtk/gtkselection.c: No chunks on Win32.
4760 * gtk/gtksocket.c: Not implemented on Win32.
4762 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
4764 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
4766 * gtk/maketypes.awk: Declare variables with a macro that expands to
4767 necessary export/import magic in the case of Win32.
4769 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
4771 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
4773 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
4774 since those were meant only for gdki18n.h.
4775 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
4777 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
4779 1999-03-13 Tor Lillqvist <tml@iki.fi>
4781 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
4782 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
4784 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
4785 installed) to CFLAGS.
4787 * gdk/Makefile.am: Add rules for gdkconfig.h.
4789 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
4792 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
4793 gdkx.h anyway when compiling for X11.
4794 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
4795 general): Merge in Win32 version.
4797 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
4798 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
4799 expansion (if we don't have HAVE_PWD_H), allow for drive
4800 letters. UNC paths (\\server\share\...) are not handled yet. Also,
4801 included code from Craig Setera's port to Win32 (the one that uses
4802 X11, and the cygwin dll), even if it probably will be abandoned.
4804 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
4805 the user entered one herself. This way one can complete *.h and
4806 don't get matches on any .help files, for instance.
4808 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
4810 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
4811 font hash table, if we have a GdkFontPrivate entry for this font
4812 already, simply increment its reference count, provided by Olaf Dietsche
4813 <olaf.dietsche+list.gtk@netcologne.de>.
4815 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
4816 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
4818 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4820 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
4821 the number of calls to gdk_draw_point() (and thus to X) by
4822 clipping the points by hand.
4824 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
4826 (gtk_handle_box_paint): Only paint the handle if the expose area
4829 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
4831 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
4833 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
4835 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
4836 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
4838 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
4840 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
4841 textmode (O_TEXT) for OS/2 version.
4843 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
4845 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
4846 GtkSpinButton, "input" and "output", to make the output more flexible.
4847 The user has to provide a mapping between adjustment->value and the
4848 output string (and vice versa, if the spin button is editable).
4849 See testgtk for examples.
4851 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
4853 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
4856 * configure.in: set gtk+ version to 1.3.0.