1 2001-02-28 Havoc Pennington <hp@redhat.com>
3 * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
5 (gtk_widget_draw_focus): remove this function; we could instead
6 make it just gtk_widget_draw(), but in most cases I think the
7 result would be broken user code, so think it's better to have
8 that code not compile and get fixed
9 (gtk_widget_draw_default): ditto
11 * gtk/gtkwidget.c: Add default handlers for focus_in_event and
12 focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
14 * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
15 widgets lose/get the default, instead of calling draw_default
17 * docs/Changes-2.0.txt: note about all this
19 Then fixed every widget in GTK, I won't list all the filenames.
21 Tue Feb 27 19:32:53 2001 Jonathan Blandford <jrb@redhat.com>
23 * gtk/gtktreemodel.c (deleted_callback): Proxy out to
24 _gtk_tree_row_reference_deleted.
25 (inserted_callback): Proxy out to
26 _gtk_tree_row_reference_inserted.
27 (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
28 get around signal emission ordering problem.
30 * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
31 fix to work with SINGLE
32 (_gtk_tree_selection_internal_select_node): Major sanitization on
33 selections. SINGLE now seems to work.
35 * tests/Makefile.am: add testtreecolumn.c:
37 * tests/testtreecolumn.c: New test. Mostly points out selection
38 bugs currently, but will test columns later.
40 * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
41 selection bug. I hate touching this code -- it's scary.
43 2001-02-26 Havoc Pennington <hp@redhat.com>
45 * gtk/testgtk.c: test the window state stuff
47 * gtk/gtkwindow.c (gtk_window_present): new function, makes a
48 window come to the user's attention as if it were just created
49 (gtk_window_iconify): new function
50 (gtk_window_deiconify): new function
51 (gtk_window_stick): new function
52 (gtk_window_unstick): new function
53 (gtk_window_maximize): new function
54 (gtk_window_unmaximize): new function
56 * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
58 * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
60 * gdk/x11/gdkevents-x11.c: create window state events when
62 (gdk_wmspec_supported): new function
64 * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
65 iconification before showing the window
66 (gdk_window_deiconify): new function
67 (gdk_window_stick): new function
68 (gdk_window_unstick): new function
69 (gdk_window_maximize): new function
70 (gdk_window_unmaximize): new function
72 * gdk/gdkwindow.c: store the window state in the window;
73 change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
75 (gdk_window_get_state): return the current window state
77 * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
78 (gdk_event_get_state): handle GDK_WINDOW_STATE
79 (gdk_synthesize_window_state): function to create the window state
82 * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
83 event, for changes to "window state" such as maximized, sticky,
86 * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
89 * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function,
90 finds out if we support a given WM spec hint
92 Tue Feb 27 13:37:38 GMT 2001 Tony Gale <gale@gtk.org>
94 * docs/faq/gtk-faq.sgml: New question re memory leaks.
96 2001-02-25 Hans Breuer <hans@breuer.org>
98 * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
99 cause we want to loose those prototypes only in the latter case
101 * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
102 GdkPixmapImplWin32 because it itsn't derived from it. Use the
103 impl member variable instead
105 * gtk/gtk.def : updated
108 * gtk/gtkmenus.c : include <string.h> for memset ()
110 * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
111 for everthing built here, but for gtk-x.x.dll only. This solves
112 problem of indifferent gtk type definitions
114 Sat Feb 24 20:11:39 2001 Jonathan Blandford <jrb@webwynk.net>
116 * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
118 Fri Feb 23 17:50:13 2001 Jonathan Blandford <jrb@redhat.com>
120 * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
121 column that is exposed.
123 (_gtk_tree_view_update_size): Changed name from set_size, and
124 changed function to do more work, and not force people calling it
125 to figure out the size. Simplifies a lot of code elsewhere.
127 2001-02-23 Alexander Larsson <alexl@redhat.com>
129 * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
130 return solid masks for xpms that have no transparent color.
131 This makes the ..._create_from_xpm... API backwards
134 2001-02-23 Tor Lillqvist <tml@iki.fi>
136 * README.win32: Update. Mention the gtk-1-3-win32-production
139 * gdk/win32/bdfcursor.c: New file. A program that generates
140 xcursors.h. Thanks to Stefan Ondrejicka.
142 * gdk/win32/xcursors.h: New file, contains the X cursor font in a
145 * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
147 * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
148 function, uses xcursors.h.
149 (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
150 cursor from inline data instead of using LoadCursor() to generate
153 * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
154 event, must check the Windows message for mouse button state, as
155 the GDK event state might not have been built if it is
156 undelivered. Remove one goto.
158 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
159 SetCursor() if the current cursor as returned by GetCursor() is
160 the window's previous cursor. The ChildWindowFromPoint() test
161 apparently didn't work correctly.
163 * gdk/win32/rc/*.cur: Remove.
165 * gdk/win32/rc/gdk.rc.in: Remove cursors.
167 * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
169 * gtk/makefile.{mingw,msc}.in: Updates.
171 Wed Feb 21 20:56:50 2001 Jonathan Blandford <jrb@redhat.com>
173 * gtk/gtktreemodel.h: add functions for signal emission.
175 * gtk/gtktreestore.c: move to use above functions instead of
178 * gtk/gtkliststore.c: ditto
180 Wed Feb 21 15:41:34 2001 Jonathan Blandford <jrb@redhat.com>
182 * gtk/gtktreestore.c: removed signals. Moved to inherit from
183 GObject instead of GtkObject.
185 * gtk/gtkliststore.c: ditto.
187 * gtk/gtktreemodelsort.c: ditto.
189 * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
190 GtkTreeModelIface, instead of in each model.
192 2001-02-21 Havoc Pennington <hp@redhat.com>
194 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
195 unbreak this function
197 * gtk/gtkentry.c: apply patch from Lee Mallabone to add object
200 * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
203 * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object
206 * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
207 mean unset the max length
209 Wed Feb 21 14:23:05 2001 Jonathan Blandford <jrb@redhat.com>
211 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
212 Changed name to be set_cell_data_func to make it clear what
213 the functino does. Close bug #51069.
215 Tue Feb 20 16:49:00 2001 Jonathan Blandford <jrb@redhat.com>
217 * gtk/testgtk.c (main): Remove turning on of profiling malloc,
218 have memory actually freed. Keeps box running longer.
220 2001-02-21 Alexander Larsson <alexl@redhat.com>
222 * gtk/gtkseparatormenuitem.[ch]:
223 Added new menu separator item. The drawing and size handling
224 is still done in GtkMenuItem, but the API is a bit more sane.
227 Add gtkseparatormenuitem.[ch].
230 Add gtkseparatormenuitem.h.
233 * gtk/gtkmenufactory.c:
235 Use the new API for menu separators.
237 * demos/gtk-demo/menus.c (create_menu):
238 Add some GtkSeparatorMenuItem demo code.
240 2001-02-20 Havoc Pennington <hp@redhat.com>
242 * gtk/gtkaspectframe.c: Convert to new property API, patch from
245 * gtk/gtkarrow.c: Convert to new property API, patch from
248 Tue Feb 20 14:26:41 2001 Jonathan Blandford <jrb@redhat.com>
250 * tests/testtreeview.c (toggled_callback): fix to reflect change
251 in GtkTreeModelStore.
253 Tue Feb 20 12:16:12 2001 Jonathan Blandford <jrb@redhat.com>
255 * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
256 function to create an icon set from a pixbuf.
258 2001-02-20 Alexander Larsson <alexl@redhat.com>
260 * gtk/gtkcellrenderertext.[ch]:
261 Add a "markup" property.
263 * gtk/treestoretest.c:
264 Use the markup property, remove some leftover stuff from
267 2001-02-20 Alexander Larsson <alexl@redhat.com>
269 * gtk/gtklabel.c (gtk_label_set_selectable):
270 Queue a redraw if the selectable setting was changed.
272 2001-02-20 Alexander Larsson <alexl@redhat.com>
274 * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
275 Actually copy the whole gc, not just the public parts.
277 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
278 GDK_WINDOW_TEMP are not toplevel. Fixes selectable
281 2001-02-19 Havoc Pennington <hp@pobox.com>
283 * gdk/gdkwindow.c: docs
287 * gdk/gdkregion-generic.c: docs
289 * gdk/gdkgc.c (gdk_gc_set_values): docs
291 * gdk/gdkdraw.c: docs
293 * gdk/gdkdrawable.h: deprecate drawable get/set data
295 Mon Feb 19 20:37:35 2001 Jonathan Blandford <jrb@redhat.com>
297 * demos/gtk-demo/dialog.c: Add simple new demo.
299 2001-02-19 Havoc Pennington <hp@redhat.com>
301 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
302 insert_child_anchor signal, bug #50245
304 * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
305 from create_child_anchor, so the anchor is passed in
307 * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
308 (_gtk_widget_segment_new): have the child anchor object passed in,
309 instead of creating it.
311 * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
312 to gtk_text_buffer_get_modified
314 2001-02-19 Havoc Pennington <hp@redhat.com>
316 * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
317 changed GLib without fixing GTK
319 * gtk/gtkrange.h: Rename all the stupid implementation detail
320 functions to have an underscore in front. Most of them should
321 probably just go away, but for starters don't export them.
324 2001-02-19 Havoc Pennington <hp@redhat.com>
326 * gdk/gdkcolor.h: test was backward, so deprecated functions were
329 * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
330 clean up the old code a bit
332 * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
335 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
336 draw inconsistent state
338 * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
339 (create_menu): add inconsistent test
341 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
343 (gtk_check_menu_item_get_inconsistent): new function
344 (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
345 state (using etched in for now)
347 * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
348 draw inconsistent state
350 * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
351 function, used when the user has selected a range of stuff in
353 (gtk_toggle_button_get_inconsistent): accessor for that
354 (gtk_toggle_button_paint): draw inconsistent state (etched in?
355 don't know what else to do)
357 2001-02-19 Hans Breuer <hans@breuer.org>
359 * gtk/gtk.def : updated exported symbols
361 * gtk/makefile.msc.in : updated
363 * gtk/gtkstyle.c (gtk_style_realize) : gets called without
364 a colormap, when invoked from testgtk::entry. I'm not sure where
365 the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
366 avoids immediate crashing ...
368 * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
371 * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
372 0 parameter. At least msvc doesn't like macros with var args.
373 I simply removed the extra 0, was it a feature or a typo ?
375 * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
376 removed the extra indirection from the GtkTreeViewColumnFunc parameter,
377 because the value assignment to the internal struct wasn't working.
378 I'm not absolutely sure. The problem could have been resolved by
379 changing the "func" declartion in the struct, but was the pointer
380 to the function pointer intended ?
382 * gtk+/gtk/gtktreedatalist.c : include gboxed.h
384 * gdk/gdk.def : updated exported symbols
386 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
387 only use SetDIBitsToDevice if there is a palette at the drawable
388 and the image is GDK_VISUAL_PSEUDO_COLOR
390 * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
392 * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
394 * gdk/*/makefile.msc : updated
396 2001-02-19 Havoc Pennington <hp@redhat.com>
398 * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
399 GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
401 * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
402 (gdk_key_repeat_restore): nuke
404 * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
405 (gdk_init_check): no atexit func
407 * gdk/gdkrgb.h: mark some stuff deprecated
409 * gdk/gdkcolor.h: mark some stuff deprecated
411 * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
413 * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
415 2001-02-16 Havoc Pennington <hp@redhat.com>
417 * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
420 * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
421 steps, and add Ctrl-arrow shortcuts for paging visually as with
422 HScale, since Page Up and Page Down move logically.
424 * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
425 GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
427 * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
429 (gtk_range_scroll): handle the visual steps
431 * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
434 * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
435 steps, not the logical ones.
437 * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
438 (scroll_vertical): handle up/down steps
440 2001-02-19 Alexander Larsson <alexl@redhat.com>
442 * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
443 Copy data and free data with free().
445 * gdk-pixbuf/gdk-pixbuf.c:
446 * gdk-pixbuf/io-jpeg.c:
447 * gdk-pixbuf/io-png.c:
448 Use g_try_malloc/g_free instead malloc/free.
450 * gdk-pixbuf/test-gdk-pixbuf.c:
451 Must... initialize... gobject...
453 * gdk-pixbuf/pixops/timescale.c:
455 Use g_malloc instead of malloc.
457 2001-02-19 Alexander Larsson <alla@lysator.liu.se>
460 Comment out property assignments, these don't work yet.
462 2001-02-17 Havoc Pennington <hp@pobox.com>
464 * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
467 2001-02-17 Havoc Pennington <hp@pobox.com>
469 * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
470 shadowed variables that had broken size request in some cases,
471 leading to bogus tooltips (#50996)
473 2001-02-06 Jon K Hellan <hellan@acm.org>
475 Implement fast browsing of tooltips, bug #50619
477 * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
480 * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
481 use_sticky_delay and last_popdown.
482 (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
484 (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
486 (gtk_tooltips_recently_shown): New static function. Return true
487 if < sticky_delay has elapsed since last popdown.
488 (gtk_tooltips_event_handler): Display window after sticky_delay
489 (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
492 2001-02-17 Havoc Pennington <hp@pobox.com>
494 * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
497 * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
498 G_CONST_RETURN, make it return by reference, #50473
500 Sat Feb 17 06:47:27 2001 Tim Janik <timj@gtk.org>
502 * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
503 generated ENTER_NOTIFY event with 0, otherwise not explicitely
504 setup fields contain garbage (e.g. subwindow, breaking
505 gdk_drawable_ref() upon event copy).
506 (gtk_menu_stop_navigating_submenu_cb): same here.
508 * gtk/gtklist.c (gtk_list_vertical_timeout):
509 * gtk/gtklist.c (gtk_list_horizontal_timeout):
510 * gtk/gtkclist.c (vertical_timeout):
511 * gtk/gtkclist.c (horizontal_timeout): change direct assignment
512 default-zero-intialization for unions to memset(,0,), as unions are
513 not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
514 has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
516 * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
517 g_closure_sink() warning.
519 * gtk/gtktreemodel.c (gtk_tree_model_get_valist):
520 * gtk/gtktreestore.c (gtk_tree_store_set_valist):
521 * gtk/gtkliststore.c (gtk_list_store_set_valist):
522 fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
524 Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
526 * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
527 gtk_*_store_get, and moved to GtkTreeModel.
529 * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
531 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
533 * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
535 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
538 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
539 freeze/thaw notify between setting all the properties for a cell.
541 * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
543 2001-02-15 Havoc Pennington <hp@redhat.com>
545 * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
546 the X coordinates so they're with respect to the line, rather than
547 with respect to the layout.
549 * gtk/gtkalignment.c: Convert to new property API, patch from Lee
552 * gtk/testgtk.c (create_range_controls): add vscale tests,
555 * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix
558 * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
560 * gtk/gtktextiter.h (gtk_text_iter_is_last): rename
563 * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
564 rename gtk_text_buffer_get_end_iter
566 * gtk/testgtk.c (create_labels): Add test for selectable
568 * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
569 the selection stuff. This code is kind of broken since it doesn't
570 use the theme engine.
572 * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region):
573 fix infinite loop and y offset problem
574 (gdk_draw_layout_line_with_colors): fix foreground color handling
576 * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag
577 that makes the label selectable.
579 * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
580 layout when the style is set, since fonts etc. could have changed.
582 Fri Feb 16 14:22:05 2001 Jonathan Blandford <jrb@redhat.com>
584 * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
586 * gtk/gtktreemodelsimple.[ch]: removed.
588 2001-02-16 Alexander Larsson <alexl@redhat.com>
590 * gtk/gtktreemodelmapping.[ch]:
591 New files. Implement GtkTreeModelMapping.
594 Add gtktreemodelmapping.[ch].
597 Add gtktreemodelmapping.h
599 * gtk/treestoretest.c:
600 Test the GtkTreeModelMapping
602 Tue Feb 13 13:16:09 2001 Jonathan Blandford <jrb@redhat.com>
604 * demos/gtk-demo/panes.c (create_pane_options): If we're going to
605 have a demo, we might as well pass in real values. Thanks to
606 clahey for pointing this out.
608 2001-02-14 Havoc Pennington <hp@pobox.com>
610 * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
611 "static" to a private function
612 (gtk_image_menu_item_class_init): remove destroy handler,
613 add "image" object property
615 2001-02-13 Alexander Larsson <alla@lysator.liu.se>
617 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
618 Add a shortcut if the window and the current clip_region doesn't
619 overlap. This is needed when there are a lot of windows in a
620 window. The layout test in testgtk is a good test.
622 * gdk/linux-fb/gdkwindow-fb.c:
625 2001-02-13 Sven Neumann <sven@convergence.de>
627 * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
629 2001-02-13 Alexander Larsson <alexl@redhat.com>
631 * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
632 Don't reference last_cursor if it is null. Fixes crash when rotating
633 the screen before having moved the mouse.
635 * gdk/linux-fb/gdkcc-fb.c: Zapp!
637 * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
639 * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw
640 when using 90 or 270 degrees rotation.
642 2001-02-12 Havoc Pennington <hp@pobox.com>
644 * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where
645 it always set the foreground, even if we were only using
647 (gdk_draw_layout_line_with_colors): new function, allow
649 (gdk_draw_layout_with_colors): new function, allow override
651 (gdk_pango_layout_line_get_clip_region): function to get the clip
652 region for a logical text range
653 (gdk_pango_layout_get_clip_region): get the clip region for a
656 * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
657 (gdk_colormap_new): fix call to gdk_colormap_sync() so it has
658 the right number of arguments.
660 * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
661 enhance the function to check that node data corresponds to a
662 view still belonging to the tree.
664 * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the
666 (gtk_tree_view_inserted): ditto
667 (gtk_tree_view_child_toggled): ditto
669 * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
672 * gtk/gtkcellrenderertext.c (get_layout): fix leak of
675 * demos/gtk-demo/main.c (load_file): Fix leak of a GString
677 * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
679 * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
680 size in the size request
681 (gtk_menu_bar_size_allocate): consider toggle size here
683 * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
684 that displays a widget in the toggle slot
686 * gtk/testgtk.c: test GtkImageMenuItem
688 * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
690 * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
691 request and allocation
693 * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
695 * gtk/gtkcheckmenuitem.c
696 (gtk_check_menu_item_toggle_size_request): ditto
698 Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
700 * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
703 * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
704 and refuse to initialize GTK+ if they fail.
706 Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
708 * configure.in: Add check for gtk-doc version.
710 Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
712 * gtk/gtklabel.c (gtk_label_size_request): Fix bug
713 where the xpad/ypad was only being used on one side!
715 2001-02-11 Tor Lillqvist <tml@iki.fi>
717 * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
718 function, copied from X11 version.
720 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
721 DestroyCursor failures. The reason for the problem (despite the
722 inconsistent messages from GetLastError()) was that
723 DestroyCursor() cannot be called while a cursor is set in a
724 window. Set the new cursor first and then destroy the old one.
725 Thanks to jpe@archaeopteryx.com.
727 * gdk/win32/gdkcc-win32.c: Remove.
729 * gdk/win32/Makefile.am: Remove from here, too.
732 * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
735 * gtk/makefile.mingw.in: Updates.
737 2001-02-08 Havoc Pennington <hp@redhat.com>
739 * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
740 add a widget to a bin that already has a child.
742 * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
744 * docs/Changes-2.0.txt: note that GdkColorContext is gone.
746 * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
748 * gdk/gdk.h: remove gdkcc.h
750 * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
752 * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
753 GdkPixbuf, since the previous implementation was GdkColorContext
756 * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
758 Thu Feb 8 19:00:00 2001 Jonathan Blandford <jrb@redhat.com>
760 * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
763 2001-02-08 Havoc Pennington <hp@redhat.com>
765 * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
768 2001-02-08 Havoc Pennington <hp@redhat.com>
770 * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
773 * demos/gtk-demo/main.c (create_tree): adjust to changes in text
776 * demos/pixbuf-demo.c (timeout): remove deprecated
779 * demos/testpixbuf-save.c (main): remove deprecated
780 gtk_drawing_area_size
782 * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
783 buttons even if the model isn't setup. gtk_tree_view_check_dirty()
784 at the start of the allocation.
785 (gtk_tree_view_check_dirty): handle column->button == NULL, handle
786 unsetup or NULL model.
788 * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the
789 even/odd/sorted cells in the tree view.
791 * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
794 * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
795 backgrounds with draw_flat_box using different detail for even/odd
798 * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
799 row, so we can draw the alternating colors thing
801 * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
802 property from a synonym property, notify for the synonym.
803 Also, nuke the background_gdk_set and foreground_gdk_set synonyms
804 (gtk_text_tag_get_property): Always return the font, even if
805 all its fields aren't set
807 * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
808 store the attr list; it leaves us with no way to change attributes
809 in _render according to the render flags, and no way to implement
810 get_property. Instead store all the specific text attributes.
811 Separate whether an attribute is enabled from its value. Sync all
812 properties with GtkTextTag, make them all consistent, etc.
814 * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
815 renderers can highlight the sort row/column
817 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
818 accessor functions to get values; this has the side effect of
819 showing up which accessor functions were missing. Added those.
821 * gtk/gtktreeviewcolumn.h: Replace set_justification with
822 set_alignment, to be consistent with GtkLabel, GtkMisc
824 * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
827 * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
829 * gtk/gtktreesortable.h: updates in here
831 2001-02-07 Sven Neumann <sven@convergence.de>
833 * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to
834 pango dimensions after painting the background. We used to draw
835 gigantic flat boxes here.
837 Mon Feb 5 22:05:57 2001 Owen Taylor <otaylor@redhat.com>
839 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
840 error introduced with earlier commit) (pointed out by
843 Mon Feb 5 12:25:06 2001 Owen Taylor <otaylor@redhat.com>
845 * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
846 which are no longer necessary.
848 Mon Feb 5 13:22:54 GMT 2001 Tony Gale <gale@gtk.org>
850 * docs/faq/gtk-faq.sgml: s/MISK/MISC/
852 2001-02-04 Tor Lillqvist <tml@iki.fi>
855 * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
856 Provide dummy implementations.
858 Sun Feb 4 07:55:17 2001 Tim Janik <timj@gtk.org>
860 * gtk/gtksignal.h: removed gtk_signal_init() compat define.
862 * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
863 GTypeDebugFlags debug_flags and pass it on to g_type_init ();
864 deprecated this function.
866 * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
869 Sun Feb 4 07:45:45 2001 Tim Janik <timj@gtk.org>
871 * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
873 2001-02-03 Havoc Pennington <hp@pobox.com>
875 * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
876 Mikael Hermansson with patch from Mikael (if there was a toggle
877 start one after the first character in the range, this function
878 was broken). Bug #50380
880 Sat Feb 3 11:28:03 2001 Owen Taylor <otaylor@redhat.com>
882 * configure.in: Remove confusing comment about X11.
884 Fri Feb 2 19:21:23 2001 Owen Taylor <otaylor@redhat.com>
886 * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
887 regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
889 Fri Feb 2 18:31:54 2001 Owen Taylor <otaylor@redhat.com>
891 * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
892 it breaks things on BSD. If you want to compile GTK+ with
893 -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE
894 when configuring, since GTK+ simply can't be "pure ANSI"
895 in the header files it uses. (#8170, Greg Hudson)
897 2001-02-02 Havoc Pennington <hp@redhat.com>
899 * gtk/gtkwindow.c: docs
901 * gtk/gtkwidget.c: docs
902 (gtk_widget_set_colormap): add a reference to the colormap
903 (gtk_widget_get_default_colormap): add a reference to the colormap
905 * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
907 * gtk/gtktextiter.c: docs
909 * gtk/gtkmain.c (gtk_propagate_event): docs
911 * gtk/gtkpaned.c (gtk_paned_get_position): docs
912 (gtk_paned_set_position): docs
914 * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
915 sort interface, no implementation yet.
917 * demos/testpixbuf.c (new_testrgb_window): replace
918 gtk_drawing_area_size() with gtk_widget_set_usize()
920 * demos/testpixbuf-drawable.c (main): ditto
922 * gtk/testgtk.c: remove use of GtkStatusbarMsg
924 * gtk/gtktextbuffer.c: docs
926 * gtk/gtkstock.c: docs
928 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
930 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
932 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
934 * gtk/gtkimage.c: add some docs in here
935 (gtk_image_size_request): change name of
936 gtk_widget_render_stock_icon
937 (gtk_image_get_icon_set): don't dup returned string
938 (gtk_image_get_icon_set): don't dup returned string
940 * gtk/gtkwidget.c (gtk_widget_render_icon): rename from
941 gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
942 and gtkiconfactory.h functions
944 * gtk/gtkiconfactory.c: add some docs in here
946 * gtk/gtkmain.c (gtk_get_default_language): document
947 (gtk_get_current_event): document
948 (gtk_get_current_event_state): document
949 (gtk_get_event_widget): document
951 * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
953 * gtk/gtkcontainer.c: Add some documentation
954 (gtk_container_add): give a more explanatory warning on adding an
955 already-parented widget, this is kind of a FAQ and also a common
956 typo that's easier to debug with a nice warning
958 * gtk/gtkcellrenderertoggle.c
959 (gtk_cell_renderer_toggle_get_active): remove, I was on crack
960 adding this, it's useless
961 (gtk_cell_renderer_toggle_set_active): remove
962 (gtk_cell_renderer_toggle_get_radio): add
964 * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
965 the NULL cell renderer, that doesn't make any sense to me.
967 * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
968 demo code should never use deprecated features.
970 * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
971 code should never use deprecated features.
973 * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
974 gtk_widget_queue_clear_area deprecated
976 * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
979 * gtk/gtklabel.h: mark gtk_label_get() deprecated
981 * gtk/gtkimage.h: mark the legacy GtkImage functions that took
982 a GdkImage deprecated, replaced by new consistently-named
985 * gtk/gtkmain.h: Mark gtk_exit() deprecated
987 * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
989 * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string
992 * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file,
993 so it won't appear in docs and confuse people.
995 * gtk/gtkprogressbar.h: Mark all the old methods deprecated
997 * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
998 macros deprecated. (can't mark the type itself deprecated, since
999 GtkProgressBar is not deprecated and we need the type decl to use
1002 * gtk/gtkpixmap.h: Mark deprecated
1004 * gtk/gtkoldeditable.h: Mark deprecated
1006 * gtk/gtklist.h: Mark deprecated
1008 * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used
1009 for anything anymore.
1011 * gtk/gtkctree.h: Mark deprecated
1013 * gtk/gtkclist.h: Mark deprecated
1015 * gtk/gtkpreview.h: Mark deprecated
1017 * gtk/gtkpacker.h: Mark deprecated
1019 * gtk/gtktipsquery.h: Mark deprecated
1021 * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
1023 * gtk/gtkvruler.h: Add comment that it will move out of GTK
1025 * gtk/gtkhruler.h: Add comment that it will move out of GTK
1027 * gtk/gtkruler.h: Add comment that it will move out of GTK
1029 * gtk/gtkgamma.h: Add comment that it will move out of GTK
1031 * gtk/gtkcurve.h: Add comment that it will move out of GTK
1033 Fri Feb 2 17:16:09 2001 Owen Taylor <otaylor@redhat.com>
1035 * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
1036 gdk_colormap_sync private since it was never exported
1039 * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
1040 colormap->colors[] for StaticGray, StaticColor colormaps.
1042 * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
1043 was being used as if it was image->bits_per_pixel.
1045 * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
1046 for the image in the GdkImage structure since it isn't
1047 reconstructable, and we need it to handle packed types
1049 * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
1050 the assumption that on Win32 image->bits_per_pixel == image->depth,
1053 * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
1055 * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
1056 warning message if no converter can be found.
1058 Fri Feb 2 15:09:51 2001 Owen Taylor <otaylor@redhat.com>
1060 * gtk/fnmatch.c (FOLD): Fix problem with passing signed
1061 chars to isupper() / tolower(). (#567)
1063 * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
1064 to clear up 64-bit warnings. (#567)
1066 Fri Feb 2 12:26:50 2001 Owen Taylor <otaylor@redhat.com>
1068 * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
1069 a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
1071 * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
1072 since some people set $(libdir) separately. (#1290, David Kaelbling)
1074 Thu Feb 1 18:25:46 2001 Owen Taylor <otaylor@redhat.com>
1076 * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
1077 defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
1078 MAXPATHLEN, but the code here depends on a fixed value.)
1081 Wed Jan 31 22:01:04 2001 Owen Taylor <otaylor@redhat.com>
1083 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
1084 where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
1086 Wed Jan 31 21:20:39 2001 Owen Taylor <otaylor@redhat.com>
1088 * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
1089 viewable there is no way that moving the node will cause the
1090 focus row to become not viewable, so omit check on the visibility
1091 of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
1093 Wed Jan 31 20:38:17 2001 Owen Taylor <otaylor@redhat.com>
1095 * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
1096 selection before inserting new text.
1098 Wed Jan 31 18:49:33 2001 Owen Taylor <otaylor@redhat.com>
1100 * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
1101 Make the sensitivity of the reparented child track that of
1102 the original parent menu item. (#34218, David Hodson)
1104 * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
1105 the case where the current item is destroyed properly.
1107 * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
1108 some edge cases with child-less menuitems.
1110 Wed Jan 31 17:16:13 2001 Owen Taylor <otaylor@redhat.com>
1112 * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
1113 key pop down window. (#12074, Jon K Hellan)
1115 Wed Jan 31 16:21:42 2001 Owen Taylor <otaylor@redhat.com>
1117 * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
1118 toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan)
1119 The solution here isn't perfect - you get an extraneous
1120 emission of "toggle", which could conceivably confuse an app,
1121 but better than the current situation. LXR search seems to
1122 indicate that no apps in GNOME CVS connect to "toggle".
1124 Wed Jan 31 15:46:13 2001 Owen Taylor <otaylor@redhat.com>
1126 * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
1127 gtk_public_h_sources to directly here to avoid warning when
1128 building srcdir != builddir. (#9656)
1130 Tue Jan 30 19:49:02 2001 Owen Taylor <otaylor@redhat.com>
1132 * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
1133 handlers in gtkrange.c return the proper values (TRUE == handled)
1136 This is just the tip of the iceberg, but gtkrange.c is the
1137 most common place where the propagation is problematical,
1138 and also a place where it is almost certainly safe to change
1139 this in the stable branch.
1141 (You don't want right click popups on a range control or anything...)
1143 Tue Jan 30 18:57:59 2001 Owen Taylor <otaylor@redhat.com>
1145 * gtk/gtktext.c (clear_focus_area): We need to clear the focus
1146 area on focus out, even if a background pixmap isn't set.
1149 Tue Jan 30 18:24:10 2001 Owen Taylor <otaylor@redhat.com>
1151 * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
1152 to deal with setting the shape properly when scrolling arrows are
1153 turned on, but not visible because there is sufficient space.
1156 Tue Jan 30 16:39:25 2001 Owen Taylor <otaylor@redhat.com>
1158 * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
1159 items with submenus, destroy the item along with the submenu.
1160 (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
1163 * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
1166 Tue Jan 30 15:51:25 2001 Owen Taylor <otaylor@redhat.com>
1168 * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
1169 the focus widget sometimes wasn't drawn with the default if there
1170 was no default widget.
1172 * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
1173 unreference pixmaps.
1175 * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
1176 for some extra safety.
1178 Mon Jan 29 19:00:01 2001 Owen Taylor <otaylor@redhat.com>
1180 * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
1181 the text of a cell to the old pointer value better, by
1182 copying the new text before freeing the old text. Some code
1183 cleanup. (#8079, Karl Nelson)
1185 Mon Jan 29 16:50:19 2001 Owen Taylor <otaylor@redhat.com>
1187 * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
1188 gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
1190 Mon Jan 29 15:22:51 2001 Owen Taylor <otaylor@redhat.com>
1192 * gtk/gtkmenu.c (gtk_menu_remove): When removing an
1193 item from a menu, check to see if it matches
1194 menu->old_active_menu_item, and if so, unref and clear
1195 old_active_menu_item (Patch from Pavel Cisler)
1197 * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
1198 menu_shell->active_menu_item, if it is the child being
1199 removed. (Patch based on that of Gene Ragan, #50337)
1201 2001-01-31 Alexander Larsson <alla@lysator.liu.se>
1203 * gdk/linux-fb/gdkselection-fb.c:
1204 * gdk/linux-fb/gdkcolor-fb.c:
1205 * gdk/linux-fb/gdkdrawable-fb2.c:
1206 * gdk/linux-fb/gdkfont-fb.c:
1207 * gdk/linux-fb/gdkim-fb.c:
1208 * gdk/linux-fb/gdkinput.c:
1209 * gdk/linux-fb/gdkkeyboard-fb.c:
1210 * gdk/linux-fb/gdkmain-fb.c:
1211 * gdk/linux-fb/gdkrender-fb.c:
1212 A bunch of whitespace cleanup.
1214 2001-01-30 Havoc Pennington <hp@pobox.com>
1216 * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in
1217 #ifdef GTK_ENABLE_BROKEN.
1219 * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
1220 GTK_ENABLE_BROKEN just before including the broken headers.
1222 * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
1223 deprecated types registered.
1225 * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
1226 we have to test the broken stuff.
1228 * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
1230 2001-01-30 Havoc Pennington <hp@redhat.com>
1232 * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
1233 here where prev pointer was set to the wrong thing
1235 * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
1236 (gtk_tree_path_is_descendant): new function
1238 * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
1240 (gtk_list_store_get_iter): don't modify iter if we can't get the
1243 * gtk/gtkliststore.h (struct _GtkListStore): cache the length
1245 * gtk/gtktreednd.h: add virtual function row_drop_possible() to
1248 * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
1249 was causing segfault
1251 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
1254 * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
1256 * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
1258 (gtk_list_store_iter_children): ditto
1259 (gtk_list_store_iter_nth_child): ditto
1260 (gtk_list_store_iter_nth_child): ditto
1261 (gtk_list_store_iter_parent): ditto
1263 * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
1264 on iter->user_data != NULL instead of silently accepting it.
1265 (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
1266 we are returning TRUE.
1267 (gtk_tree_store_iter_children): ditto
1268 (gtk_tree_store_iter_nth_child): ditto
1269 (gtk_tree_store_iter_parent): ditto
1270 (gtk_tree_store_insert): remove handling of parent->user_data ==
1271 NULL, replace with parent == NULL
1273 * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
1274 and a comment explaining things
1276 * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
1277 interface support to GtkTreeStore.
1279 * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
1280 FALSE if no prev, fix
1282 * gtk/gtktreeview.c (set_source_row): use a row reference
1283 (set_dest_row): use a row reference
1285 Sat Jan 27 15:52:02 2001 Jonathan Blandford <jrb@redhat.com>
1287 * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
1288 stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
1289 (gtk_tree_selection_select_iter): The same as above.
1291 2001-01-26 Havoc Pennington <hp@redhat.com>
1293 * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
1294 which holds a handle to a specific row (particular set of values
1295 in the model, i.e. pointer-identity row).
1297 * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
1298 use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
1299 Still need to use it for the src/dest row saved on the drag context.
1301 2001-01-26 Havoc Pennington <hp@redhat.com>
1303 * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
1305 * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
1306 not offset by TREE_VIEW_HEADER_HEIGHT
1307 (gtk_tree_view_tree_to_widget_coords): fix to not offset by
1308 TREE_VIEW_HEADER_HEIGHT
1310 * configure.in (included_loaders): for me, --with-included-loaders
1311 generates the error "the specified loader yes does not exist",
1312 i.e. the arg defaults to "yes", so change test for value ""
1313 to test for value "yes", and include all loaders in that case.
1315 * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
1317 * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
1318 handle TREE_VIEW_VERTICAL_SEPARATOR
1319 (gtk_tree_view_bin_expose): fix to consider the row offset as
1320 pointing halfway into vertical separator.
1321 (gtk_tree_view_draw_node_focus_rect): ditto
1323 * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
1324 --gtk-debug=updates, which causes gdk_window_set_debug_updates
1325 (TRUE) to be called.
1327 * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
1328 debug mode where the invalid region is colored in on invalidate,
1329 so you can see the flicker and know whether your redraw code is
1332 * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in
1333 tree window coordinates (clip rect is in tree window coords)
1335 * gtk/Makefile.am: add gtktreednd.[hc]
1337 * gtk/gtkliststore.c: implement gtktreednd interfaces.
1339 * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
1340 drag-and-drop data operations on a model (so we can set up tree
1341 drag-and-drop automatically)
1343 * gtk/testgtk.c: Add a window to change sensitivity in the
1344 GtkLabel test; add a way to change the entry frame in GtkEntry
1347 * gtk/gtkentry.c (gtk_entry_set_has_frame):
1348 (gtk_entry_get_has_frame): new functions to remove the frame
1350 (gtk_entry_size_request): shrink requisition if no frame
1351 (gtk_entry_draw_focus): don't draw frame if no frame
1353 * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
1354 checks inside a cell renderer
1355 (gtk_default_draw_option): ditto for options
1357 * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
1358 children from the alignment, not the button
1359 (gtk_tree_view_column_init): ref/sink the column, to emulate
1360 GObject refcounting.
1362 * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
1364 * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1365 Use theme functions to draw the toggles
1367 * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
1369 * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
1370 GdkPangoAttrEmbossed to use in rendering insensitive text
1372 * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
1374 * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
1375 using new GDK features
1377 2001-01-24 Alexander Larsson <alexl@redhat.com>
1380 Splitted gtk_image_clear into gtk_image_clear() and
1381 gtk_image_reset(). Call gtk_image_clear() in ::destroy
1384 * gtk/gtklabel.c (set_markup):
1387 * gtk/gtktextlayout.c:
1388 Always free display->shaped_objects.
1390 * gtk/testgtk.c (create_clist):
1391 Don't leak custom style.
1393 2001-01-23 Alexander Larsson <alexl@redhat.com>
1395 * gtk/gtkcolorsel.c (grab_color_at_mouse):
1396 Don't leak image. Simplify using gdk_colormap_query_color().
1397 (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
1399 * linux-fb/gdkcolor-fb.c:
1400 Implemented gdk_colormap_query_color.
1402 2001-01-23 Alexander Larsson <alexl@redhat.com>
1404 * linux-fb/gdkcursor-fb.c:
1405 Don't leak built-in cursors.
1407 * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
1408 Don't leak tmp_points.
1410 * linux-fb/gdkfont-fb.c (gdk_font_from_description):
1411 Don't modify desc. Don't leak font if the PangoFont
1414 * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
1417 * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
1420 2001-01-20 Havoc Pennington <hp@pobox.com>
1422 * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
1423 from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to
1426 2001-01-22 Havoc Pennington <hp@redhat.com>
1428 * demos/testanimation.c: fix to reflect gdk-pixbuf changes
1430 * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
1432 * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h:
1433 Remove, move back to gdk-pixbuf
1435 * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
1436 to all the word functions
1438 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
1439 before doing anything on NULL layout or if we don't have the focus
1441 * gtk/testtext.c (fill_example_buffer): "justification"
1443 * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
1444 to be called "justification" not "justify"
1446 * demos/gtk-demo/textview.c (create_tags): "justification"
1448 * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
1450 2001-01-22 Alexander Larsson <alexl@redhat.com>
1452 * gdk/gdkwindow.c (gdk_window_invalidate_region):
1453 Don't leak visible_region. Use visible_region instead of region.
1455 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1456 Don't do extra gdk_drawable_ref(). This is not X.
1457 (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
1458 gdk_fb_focused_window is ref:ed.
1459 (gdk_fb_window_send_crossing_events): Watch out for destroyed
1462 2001-01-22 Alexander Larsson <alexl@redhat.com>
1464 * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
1465 Don't leak the PangoFontDescriptor.
1467 Sun Jan 21 09:58:00 2001 Jonathan Blandford <jrb@redhat.com>
1469 * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1471 (gtk_tree_view_scroll_to_cell): Make work when not realized.
1472 (gtk_tree_view_realize): add scroll_to support
1473 (gtk_tree_view_finalize): add a finalize method. Populate.
1474 (gtk_tree_view_insert_column): ref and sink the column.
1475 (gtk_tree_view_append_column): ref and sink the column.
1476 (gtk_tree_view_queue_draw_node): New function to handle redrawing
1477 individual nodes. Should make the code much more efficient, if
1480 2001-01-19 Havoc Pennington <hp@redhat.com>
1482 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1483 byte_offset variable was being used to mean both "offset into
1484 layout" and "offset into buffer line" which was no longer true
1485 with addition of preedit string; fix
1487 2001-01-19 Havoc Pennington <hp@redhat.com>
1489 * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1491 * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1494 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1497 * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
1498 scroll_to_cell, matches TextView scroll functions better
1499 (gtk_tree_view_tree_to_widget_coords): new function
1500 (gtk_tree_view_widget_to_tree_coords): new function
1501 (gtk_tree_view_get_visible_rect): new function
1502 (gtk_tree_view_get_path_at_pos): accept negative coordinates
1503 (gtk_tree_view_draw_node_focus_rect): new function moved from
1504 draw_focus, also, use width of bin_window as width of the focus
1506 (gtk_tree_view_expand_row): fix bug where it didn't recognize
1507 already-expanded rows
1508 (gtk_tree_view_get_cell_rect): new function
1509 (gtk_tree_view_get_path_at_pos): return the click position
1510 relative to the passed-in cell
1511 (gtk_tree_view_set_expander_column): new function
1513 * configure.in: remove gtk-config-2.0 chmod
1515 * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
1516 and properly handle drags with targets we don't understand
1517 (gtk_text_view_drag_end): don't stop scrolling, the source isn't
1519 (gtk_text_view_drag_drop): stop scrolling here though, and set the
1522 * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
1524 (gtk_drag_dest_get_target_list): new function
1525 (gtk_drag_dest_set_target_list): new function
1527 * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
1529 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
1530 related to drag-and-drop
1532 2001-01-19 Alexander Larsson <alexl@redhat.com>
1534 * gdk/linux-fb/gdkprivate-fb.h:
1535 Define EMULATE_GDKFONT.
1536 Add extra pango_font stuff to GfkFontPrivate.
1538 * gdk/linux-fb/gdkdrawable-fb2.c:
1539 * gdk/linux-fb/gdkfont-fb.c:
1540 If EMULATE_GDKFONT defined, implement a slow lame GdkFont
1541 emulation using PangoFont.
1543 2001-01-17 Havoc Pennington <hp@pobox.com>
1545 * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
1546 all the non-deprecated set_foo functions. Added missing object
1547 properties, and added g_object_notify() to setters.
1550 2001-01-18 Tor Lillqvist <tml@iki.fi>
1553 * gtk/gtkrc.c: (Win32) Use the new
1554 g_win32_get_package_installation_(sub)directory() functions.
1556 * config.h.win32.in: New file.
1558 * config.h.win32: Removed.
1560 * configure.in: Output config.h.win32.
1562 * Makefile.am: Add it to EXTRA_DIST.
1564 * gtk/gtk.def: Update.
1566 Wed Jan 17 16:22:54 2001 Owen Taylor <otaylor@redhat.com>
1568 * gtk/gtklabel.c (gtk_label_size_request): Set the
1569 attributes onto the PangoLayout even if they are newly
1570 created from label->pattern.
1572 Tue Jan 9 11:20:48 2001 Owen Taylor <otaylor@redhat.com>
1574 * gdk/x11/gdkdnd-x11.c: Remove unused variable.
1576 * gtk/gtkdnd.c: Encapsulate storing and retrieving info
1577 structures in functions. Fixes bug where gtk_dataset_*
1578 was accidentally still being used in one place, causing
1579 every dest side event to be treated independently.
1581 * gtk/gtkdnd.c: Remove last vestages of handling
1582 ::draw (fixes warning)
1584 * gtk/gtkentry.[ch]: Add drag and drop support.
1586 * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
1587 new function gtk_check_drag_threshhold() for checking
1588 to check if (dx,dy) has exceeded the threshhold for starting
1589 a drag and use it everywhere.
1591 Mon Jan 8 11:58:05 2001 Owen Taylor <otaylor@redhat.com>
1593 * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
1594 add -I{includedir}/gtk-2.0.
1596 * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
1597 gdk/gdk-pixbuf.h: Doc fixups.
1599 * gtk/gtkobject.h: Remove trailing , from enum
1601 2001-01-17 Alexander Larsson <alexl@redhat.com>
1603 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
1604 Doh! Mixed up x and y.
1606 * gdk/linux-fb/gdkglobals-fb.c:
1607 Removed gdk_fb_pointer_grab_window_events,
1608 added _gdk_fb_pointer_grab_owner_events and
1609 _gdk_fb_keyboard_grab_owner_events.
1611 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
1612 Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
1613 crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
1614 (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
1615 Send crossing events after ungrab finished.
1616 (gdk_keyboard_grab): Set ..._owner_events
1617 (type_masks): Move out of function.
1618 (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
1619 gdk_fb_keyboard_event_window): New functions, return the
1620 window an event should be targeted at. Handles grabs and
1621 event propagation. Can return NULL.
1622 (gdk_event_make): Remove event_mask checking. Now always
1625 * gdk/linux-fb/gdkkeyboard-fb.c:
1626 * gdk/linux-fb/gdkproperty-fb.c:
1627 * gdk/linux-fb/gdkselection-fb.c:
1628 Use new event_window/gdk_event_make() behaviour.
1630 * gdk/linux-fb/gdkmouse-fb.c:
1631 Use new event_window/gdk_event_make() behaviour.
1632 Only send motion events if in the same window.
1633 If grabbed, use cursor from window if sibling of grabbed
1634 window, and cursor from grabbed window otherwise.
1636 * gdk/linux-fb/gdkprivate-fb.h:
1637 Update gdk_fb_window_send_crossing_events, gdk_event_make
1638 and grab varaible declarations. Add gdk_fb_*_event_window().
1640 * gdk/linux-fb/gdkwindow-fb.c:
1641 Use new event_window/gdk_event_make() behaviour.
1642 Keep correct track of focus window.
1643 (gdk_window_set_events): Set all specific button motion masks
1644 if GDK_BUTTON_MOTION_MASK set.
1646 * gtk/gtkdnd.c (gtk_drag_update):
1647 Free info->last_event if gdk_drag_motion returned FALSE.
1649 2001-01-16 Tor Lillqvist <tml@iki.fi>
1651 * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
1652 Eliminate redraws when input-only windows are shown or
1653 hidden. Thanks to jpe@archaeopteryx.com.
1655 Tue Jan 16 13:13:13 GMT 2001 Tony Gale <gale@gtk.org>
1657 * docs/faq/gtk-faq.sgml: FAQ update:
1658 - Update to bugzilla
1659 - Add GTK+ and security/SUID/SGID
1662 2001-01-16 Alexander Larsson <alla@lysator.liu.se>
1664 * gdk/linux-fb/gdkdnd-fb.c:
1667 2001-01-15 Havoc Pennington <hp@pobox.com>
1669 * tests/testtreeview.c: add test stuff for CellRendererToggle
1671 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
1674 * gtk/gtkcellrenderertoggle.c: distinguish different event types,
1675 only toggle on button press (would do release like GtkButton, but
1676 we'd need implicit grab code for treeview cells)
1678 2001-01-16 Tor Lillqvist <tml@iki.fi>
1680 * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
1682 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
1683 GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
1685 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
1686 to g_{locale,filename}_{to,from}_utf8 to match current API.
1688 * gtk/makefile.msc.in (gtk_OBJECTS)
1689 * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
1691 * gtk/gtk.def: Update.
1693 2001-01-15 Tor Lillqvist <tml@iki.fi>
1695 * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
1696 implementaion that more closely mimics the events that an X server
1697 would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1698 GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1699 with nested preview widgets, for instance, more responsive when
1700 you move the mouse quickly into them.
1701 (find_window_for_pointer_event): Make it actually compile.
1702 (gdk_event_translate): Set send_event to the value of
1703 InSendMessage (). This doesn't really mean the same as X11's
1704 send_event flag, but is close enough, says jpe@archaeopteryx.com
1706 2001-01-15 Alexander Larsson <alexl@redhat.com>
1708 * gdk/linux-fb/gdkdnd-fb.c:
1709 Implemented drag and drop.
1710 Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
1711 when it tries to free and then copy the same event (info->last_event).
1712 I am not sure about why this happens, but will continue looking.
1714 2001-01-15 Alexander Larsson <alexl@redhat.com>
1716 * gdk/linux-fb/gdkwindow-fb.c:
1717 Use gdk_window_invalidate_rect instead of
1718 gdk_window_invalidate_rect_clear to minimise flashing.
1719 When hiding windows you need to clear the root window though.
1721 2001-01-15 Alexander Larsson <alexl@redhat.com>
1723 * gdk/linux-fb/gdkdrawable-fb2.c:
1724 For optization, add an full_shapes argument to gdk_fb_clip_region.
1725 If this is false, only the cliprects of the shapes are used.
1727 * gdk/linux-fb/gdkprivate-fb.h:
1728 Export gdk_fb_window_peek_shape.
1729 Add full_shapes to gdk_fb_clip_region.
1731 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1732 When moving a window, don't clear everything under the it, just the
1733 root window. Makes stuff faster and flash less.
1734 (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1735 USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1736 offset of the shape.
1739 2001-01-12 Havoc Pennington <hp@redhat.com>
1741 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the
1742 current invalid region, fixes redraw bug while scrolling the
1745 * gtk/gtktextview.c, gtk/gtktextview.h:
1746 Rearrange the scrolling/validation/etc. code in a major way,
1747 so it seems to make sense to me. Probably isn't genuinely that
1750 * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1753 * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1755 2001-01-12 Alexander Larsson <alla@lysator.liu.se>
1757 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1758 Hide mouse pointer while rotation. Show it afterwards.
1760 2001-01-12 Alexander Larsson <alexl@redhat.com>
1762 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1763 windows in consideration when generating clip region.
1765 * gdk/linux-fb/gdkfb.h:
1766 Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1768 * gdk/linux-fb/gdkprivate-fb.h:
1769 Add shape to GdkWindowFBDatat.
1770 exported gdk_fb_window_get_abs_shape().
1771 removed gdk_fb_draw_lines declaration.
1773 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1774 Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1775 send focus changes when there is a grabbed window.
1776 (gdk_window_get_pointer): Handle shaped windows.
1777 (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1778 (gdk_fb_window_peek_shape): Returns the shape for a window,
1779 handles GDK_FB_USE_CHILD_SHAPE.
1780 (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1781 offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1782 (gdk_window_shape_combine_mask): Implement.
1784 * gtk/gtkwindow-decorate.c:
1785 HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1786 setting the shape of a window makes the window transparent.
1788 2001-01-11 Havoc Pennington <hp@redhat.com>
1790 * gtk/gtktreemodelsimple.h: Oops, broke some macros
1792 2001-01-10 Havoc Pennington <hp@redhat.com>
1794 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1795 add this function, bug 40251
1797 * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1800 2001-01-11 Alexander Larsson <alexl@redhat.com>
1803 Added ENABLE_SHADOW_FB
1806 Added --disable-shadowfb
1808 * gdk/linux-fb/gdkcursor-fb.c:
1809 Update shadowfb when updating cursor
1811 * gdk/linux-fb/gdkdrawable-fb2.c:
1812 Added wrappers for shadowfb that calls the normal drawable
1813 methods, but calls gdk_shadow_fb_update(bounding box) when
1814 GdkWindows are drawed to.
1815 Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1816 which also returns the bounding box.
1818 * gdk/linux-fb/gdkfb.h:
1819 Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1821 * gdk/linux-fb/gdkgeometry-fb.c:
1822 Update shadowfb when scrolling window.
1824 * gdk/linux-fb/gdkglobals-fb.c:
1825 Add _gdk_fb_screen_angle.
1827 * gdk/linux-fb/gdkkeyboard-fb.c:
1828 Test code for screen rotation. Shift-F2 in the xlate driver
1831 * gdk/linux-fb/gdkmain-fb.c:
1832 Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1834 * gdk/linux-fb/gdkmouse-fb.c:
1835 Use fb_width/height instead of modeinfo.xres/yres.
1837 * gdk/linux-fb/gdkprivate-fb.h:
1838 Added fb_men, fb_width, fb_height & fb_stride. When using
1839 shadow fb these can differ from the framebuffer stuff.
1840 Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1841 gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1842 _gdk_fb_screen_angle. Removed CM, RP.
1844 * gdk/linux-fb/gdkrender-fb.c:
1845 Added code for shadowfb handling and screen rotation using
1848 * gdk/linux-fb/gdkwindow-fb.c:
1849 Use fb_mem, fb_stride, fb_width, fb_height.
1850 Added recompute_rowstride to reset the rowstride of all windows.
1851 Added gdk_fb_recompute_all() which recomputes rootwindow size,
1852 window abs positions and window rowstrides. Usefull when the
1853 rotation has changed.
1855 Thu Jan 11 13:16:50 GMT 2001 Tony Gale <gale@gtk.org>
1857 * docs/faq/gtk-faq.sgml: update to make web site updating easier
1859 2001-01-10 Havoc Pennington <hp@redhat.com>
1861 * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
1862 where sibling == iter
1863 (gtk_tree_store_insert_after): handle sibling == iter
1864 (gtk_tree_store_prepend): remove stamp checks
1865 (gtk_tree_store_insert_before): ditto
1866 (gtk_tree_store_append): ditto
1867 (gtk_tree_store_get_path): ditto
1868 (gtk_tree_store_get_value): ditto
1869 (gtk_tree_store_iter_has_child): ditto
1870 (gtk_tree_store_iter_n_children): ditto
1871 (gtk_tree_store_iter_nth_child): ditto
1872 (gtk_tree_store_insert_after): ditto
1873 (gtk_tree_store_is_ancestor): ditto
1874 (gtk_tree_store_iter_depth): ditto
1875 (gtk_tree_store_insert_before): assert that sibling's parent is
1876 the same as the passed-in parent
1877 (gtk_tree_store_insert_after): assert that sibling's parent is
1878 the same as the passed-in parent
1881 * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience
1882 function to get the first iterator in a model
1884 * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
1885 conventionally the "root" in this sense is just NULL afaict.
1887 * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
1888 where sibling == iter
1889 (gtk_list_store_insert_after): handle case where sibling == iter
1891 * tests/testtreeview.c (run_automated_tests): fairly lame basic
1892 automated tests for ListStore, TreeStore
1894 * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
1895 (gtk_list_store_insert): update tail pointer, and fix it to work
1896 (gtk_list_store_insert_before): update tail pointer, and fix it to work
1897 (gtk_list_store_append): use tail to be faster
1898 (gtk_list_store_prepend): fix it, update tail pointer
1899 (gtk_list_store_insert_after): fix it, update tail pointer
1901 * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for
1904 2001-01-09 Havoc Pennington <hp@redhat.com>
1906 * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
1907 is NULL due to a pending resize
1909 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
1910 column width to values less than 1
1912 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
1913 width to be between min/max width, and still set the width
1914 even if autosize is turned on, so the tree view can use this
1915 function in order to autosize.
1916 (gtk_tree_view_column_init): set initial width to 1 not 0
1918 * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
1919 setter function to modify column width, so we get notification
1920 (gtk_tree_view_insert_iter_height): ditto
1921 (gtk_tree_view_calc_size): ditto
1922 (gtk_tree_view_check_dirty): ditto
1924 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
1925 properties to change all the interesting attributes of the tree
1927 (gtk_tree_view_column_set_header_clickable): rename set_clickable
1928 (gtk_tree_view_column_get_clickable): add
1929 (gtk_tree_view_column_set_cell_renderer): don't unset the current
1930 attributes; assume a cell renderer with equivalent object
1931 properties has been swapped in. Do g_object_notify().
1932 (gtk_tree_view_column_set_visible): g_object_notify
1933 (gtk_tree_view_column_get_sizing): rename from get_col_type
1934 (gtk_tree_view_column_set_sizing): g_object_notify
1935 (gtk_tree_view_column_set_width): add g_object_notify
1936 (gtk_tree_view_column_set_min_width): ditto
1937 (gtk_tree_view_column_set_max_width): ditto
1938 (gtk_tree_view_column_set_title): ditto
1939 (gtk_tree_view_column_set_clickable): ditto
1940 (gtk_tree_view_column_set_widget): ditto
1941 (gtk_tree_view_column_set_justification): ditto
1943 2001-01-09 Havoc Pennington <hp@redhat.com>
1945 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
1946 there are no rows in the model
1948 * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
1949 NULL, then return the start of the list
1951 * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
1952 if we can't get any rows from an empty model
1954 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
1955 extraneous * after function pointer typedef usage
1957 * Makefile.am: don't specify full path to cp and rm
1959 * gtk/gtkcellrenderertextpixbuf.c
1960 (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
1961 NULL before dereferencing, fixes a segfault that happened from
1964 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
1965 use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
1966 and reindent the function
1967 (gtk_cell_renderer_pixbuf_get_size): indentation
1969 * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
1971 (gtk_dialog_add_buttons_valist): add g_return_if_fail
1972 (gtk_dialog_set_default_response): New function, to set default
1974 (gtk_dialog_set_response_sensitive): New function, to set
1975 sensitivity of buttons
1977 * gtk/gtkcellrendererpixbuf.c
1978 (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
1979 (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
1981 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1982 handle any G_TYPE_OBJECT subclass, not just the base class, and
1984 (_gtk_tree_data_list_value_to_node): ditto
1986 * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if
1989 * gtk/gtkmain.c: add GTK_DEBUG_TREE
1991 * gtk/gtkdebug.h: add GTK_DEBUG_TREE
1993 2001-01-09 Tor Lillqvist <tml@iki.fi>
1995 * gdk/win32/gdkevents-win32.c: Implement better mouse
1996 capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
1997 (find_window_for_pointer_event): New function.
1998 (gdk_event_translate): Use it when handling mouse events.
2000 2001-01-09 Alexander Larsson <alla@lysator.liu.se>
2003 Added --with-included-loaders option
2005 * gdk-pixbuf/Makefile.am:
2006 * gdk-pixbuf/gdk-pixbuf-io.c:
2007 Add support for including selected gdk-pixbuf loaders only.
2009 * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
2010 gtk_window_set_has_frame):
2011 Added inline documentation.
2013 * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
2014 * docs/reference/gdk/tmpl/windows.sgml:
2015 Added inline documentation.
2017 Mon Jan 8 14:42:06 2001 Jonathan Blandford <jrb@redhat.com>
2019 * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
2020 realizing buttons that have already been realized.
2022 Mon Jan 8 14:06:29 2001 Jonathan Blandford <jrb@redhat.com>
2024 * tests/testtreeview.c (main): Show menu items before adding to
2027 * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
2028 around if we kill them.
2030 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2031 Return if we pass in a NULL model.
2033 2001-01-08 Havoc Pennington <hp@redhat.com>
2035 * tests/testtreeview.c: hack on this some
2037 * gtk/gtktreestore.c (gtk_tree_store_setv): rename
2038 gtk_tree_store_set_valist, v is for arrays, valist for varargs
2040 (gtk_tree_store_getv): rename gtk_tree_store_get_valist
2042 * gtk/gtkliststore.h: Add varargs set() and get() convenience
2045 2001-01-08 Alexander Larsson <alexl@redhat.com>
2047 * gtk/gtkwindow-decorate.[hc]:
2049 New files. Contains an implementation of a minimal WM for
2053 Add the possibility for GtkWindows to specify a frame. This
2054 is used for the window decoration code, but could concievably
2055 be used for X programs too (xmms style windows).
2056 GtkWindow->frame is the toplevel window if the window is framed.
2057 The signal frame_event gets all events that are targeted to
2059 (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
2062 Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
2063 Call out to gtkwindow-decorate.c for WM support in linx-fb.
2065 2001-01-08 Alexander Larsson <alexl@redhat.com>
2067 * docs/README.linux-fb:
2068 Correct filename ~/.pangoft2_aliases
2071 Added new function gdk_window_get_decorations.
2073 * gdk/linux-fb/gdkfb.h:
2074 Removed _gdk_window_get_decorations declaration.
2075 Renamed _gdk_window_set_child_handler to
2076 gdk_fb_window_set_child_handler.
2078 * gdk/linux-fb/gdkwindow-fb.c:
2079 Renamed _gdk_window_set_child_handler to
2080 gdk_fb_window_set_child_handler.
2082 * gdk/x11/gdkwindow-x11.c:
2083 New function gdk_window_get_mwm_hints().
2084 Implemented gdk_window_get_decorations.
2086 * docs/reference/gdk/tmpl/windows.sgml:
2087 * docs/reference/gdk/gdk-sections.txt:
2088 Added gdk_window_get_decorations docs.
2090 2001-01-08 Alexander Larsson <alla@lysator.liu.se>
2092 * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
2093 gdk_fb_window_find_focus, gdk_fb_send_focus_change,
2094 gdk_fb_window_send_crossing_events):
2095 Possibly send focus events when the mouse moves from one
2098 2001-01-07 Tor Lillqvist <tml@iki.fi>
2100 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
2101 gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
2102 to match current API.
2104 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
2105 environment variable is set, don't call g_error when on a
2106 palettized (PseudoColor) display. Some people want to use GTK+
2107 in 256-colour mode even though works only partially.
2111 * gtk/makefile.mingw.in: Update.
2113 2001-01-05 Havoc Pennington <hp@redhat.com>
2115 * tests/testtreeview.c: hack on this a bit
2117 * gtk/gtktextlayout.c (gtk_text_layout_class_init):
2118 s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
2120 * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS):
2121 was spelled incorrectly
2122 (GTK_IS_TREE_MODEL_SIMPLE): ditto
2124 * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
2125 from gtk_tree_view_set_headers_active
2128 (gtk_text_tag_get_property): handle PROP_DIRECTION
2129 (gtk_text_tag_set_property): g_object_notify when we toggle the _set
2130 properties, bug 40235
2132 * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
2135 Fri Jan 5 16:16:29 2001 Owen Taylor <otaylor@redhat.com>
2137 * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
2138 modules/input/gtkimcontextxim.c: Adapt to new prototypes
2139 for unicode,locale,filename conversion functions.
2141 2001-01-05 Havoc Pennington <hp@redhat.com>
2143 * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
2144 broken if called on the first position in the buffer.
2146 * gtk/gtktextlayout.c (line_display_index_to_iter): fix
2147 forward_to_delimiters to be called only if we aren't already at
2150 2001-01-05 Havoc Pennington <hp@redhat.com>
2152 * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2154 2001-01-05 Alexander Larsson <alexl@redhat.com>
2156 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
2157 colormap in here. Sync from X port.
2158 (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
2160 (gdk_fb_clip_region): Comment out g_warning about empty clip region.
2161 This happens now and then, and i don't think it is a bug.
2162 (gdk_fb_draw_polygon): Correctly add extra point if startpoint
2164 (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
2167 * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
2168 some of the fields filled in at least.
2170 * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
2171 miLineArcD is no more, remove it from the function definition.
2173 2001-01-04 Havoc Pennington <hp@redhat.com>
2175 * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
2178 * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
2179 user_data instead of tree_node
2181 * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
2182 TREE_VIEW_COLUMN_SIZE
2184 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
2185 "size" field to "width" finishes bug 40061
2187 * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
2188 for bitfields, bug 40268
2190 2001-01-04 Havoc Pennington <hp@redhat.com>
2194 s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
2196 s/GtkModelSimple/GtkTreeModelSimple/g;
2197 s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
2198 s/gtk_model_simple/gtk_tree_model_simple/g;
2199 s/gtkmodelsimple/gtktreemodelsimple/g;
2201 s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
2203 s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
2204 s/column_set_col_type/column_set_sizing/g;
2206 s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
2207 s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
2209 s/GtkCellRendererType/GtkCellRendererState/g;
2211 * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
2212 (gtk_cell_renderer_toggle_class_init): change "state" property to
2213 "active", to match GtkToggleButton
2214 (gtk_cell_renderer_toggle_get_active): new function, bug
2216 (gtk_cell_renderer_toggle_set_active): new function
2217 (gtk_cell_renderer_toggle_set_property): route changes to toggle
2218 state through gtk_cell_renderer_set_active
2220 Thu Jan 4 15:46:18 2001 Jonathan Blandford <jrb@redhat.com>
2222 * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
2223 temporarily until they work again. Brought up to date with
2224 changes in the model.
2225 * gtk/gtkmodelsimple.h: Brought up to date with changes in the
2228 2001-01-04 Havoc Pennington <hp@redhat.com>
2230 * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
2231 equal to the line length, then position iterator before paragraph
2232 separators. Fixes crash reported by Mikael Hermansson when
2233 pressing left arrow from the start of a line.
2235 * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
2236 about byte indexes off the end
2237 (iter_set_from_char_offset): add g_error about char offsets
2240 2001-01-03 Havoc Pennington <hp@redhat.com>
2242 * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
2244 * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
2245 of private functions; remove inclusion of private headers.
2247 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
2248 function, so we don't need private functions in gtktextdisplay.c
2250 * gtk/gtktextiterprivate.h: underscore-ification
2252 * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
2253 to instead say "only useful to implement widgets"
2255 * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
2256 GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
2257 GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
2259 * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
2260 This function was completely broken
2262 * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
2264 * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
2266 * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
2268 * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
2270 * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
2272 * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
2274 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
2277 * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
2280 * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
2281 Progress on bug 40103. Add draw_layout to draw a PangoLayout.
2282 (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
2283 which were not implemented.
2285 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
2286 insert_pixbuf signal. Rename delete_text to delete_range since it
2287 also deletes pixbufs and child anchors. This almost closes bug
2288 40245 (still need to deal with child anchors)
2290 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
2291 insert_pixbuf, change signal names as appropriate, change types of
2292 signals taking marks/tags to have the specific type, not just
2295 * gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
2298 * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
2299 unnecessary remove_contents() call
2300 (gtk_option_menu_class_init): add a "changed" signal, closes
2302 (gtk_option_menu_update_contents): emit "changed" if the
2303 active menu item changes
2305 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
2306 cast to GtkObject, reported by Jonas Borgstrom
2307 (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
2308 we can't do stuff with side effects in finalize. Instead, spew a
2309 warning if the loader isn't closed.
2311 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
2312 colormap in here, non-X ports probably need to sync to this change
2314 * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
2315 assertion that colormap != NULL, you can set the colormap to NULL
2318 * Makefile.am: remove gtk-config-2.0
2320 * configure.in: Use pkg-config to locate GLib. Remove
2321 separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
2322 and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
2323 Use pkg-config to locate Pango. Output correct Pango libs to
2324 gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
2326 * Makefile.am (pkgconfig_DATA): install only target-specific pc
2328 (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
2331 * gtk+-2.0.pc.in (Requires): require the GDK for the current target
2334 2001-01-03 Alexander Larsson <alla@lysator.liu.se>
2337 Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2339 Tue Jan 2 16:23:05 2001 Owen Taylor <otaylor@redhat.com>
2341 * gtk/gtktextlayout.c
2342 (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
2343 variable when moving back onto a single line.
2345 2001-01-01 Havoc Pennington <hp@redhat.com>
2347 * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2349 * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2351 * configure.in (LIBTOOL_EXPORT_OPTIONS): define
2352 LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2354 2001-01-01 Havoc Pennington <hp@redhat.com>
2356 * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
2358 * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for
2361 * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug
2363 (gtk_text_attributes_copy_values): rename from
2364 gtk_text_attributes_copy
2365 (gtk_text_attributes_copy): a more standard GTK copy function,
2366 which returns a new object
2368 2001-01-01 Havoc Pennington <hp@redhat.com>
2370 * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
2372 * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
2373 don't fill in tree_view->priv->selection, kind of an unexpected
2376 * gtk/gtkcellrenderertext.c: Remove definition of _ and include
2379 * gtk/gtkcellrenderer.c: Remove definition of _ and include
2381 (gtk_cell_renderer_get_property): remove calls to g_value_init
2383 * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
2386 * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
2387 and include gtkintl.h
2388 (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
2391 * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
2393 (_gtk_tree_selection_new_from_with_view): rename, return
2395 (_gtk_tree_selection_set_tree_view): rename with uscore
2396 (gtk_tree_selection_get_selected): fill in the "model" out param
2397 first, so it gets filled in even if we return at the top of the
2399 (gtk_tree_selection_real_select_all): add a comment and an else{}
2400 to clarify this a bit
2401 (gtk_tree_selection_real_unselect_all): add the same else{}
2403 * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
2404 set_tree_view to have underscore prefixes, move them to the
2405 private header, fix return type of new_with_tree_view
2406 (struct _GtkTreeSelection): mark struct
2409 * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
2410 GtkTreeModelFlags, not a guint
2411 (gtk_tree_path_prev): return gboolean not gint
2412 (gtk_tree_path_up): return gboolean not gint
2414 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
2415 return GtkTreeModelFlags, not a guint
2417 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
2418 that child model is non-null before unrefing it
2419 (g_value_int_compare_func): make this a qsort compare func, not
2422 * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
2423 (add -umn to the end), and mark it unimplemented
2424 (gtk_tree_model_sort_resort): remove, this wasn't implemented, and
2425 I don't see what it's for - doesn't the model always sort itself?
2426 (gtk_tree_model_sort_set_compare): this had the wrong signature
2428 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
2429 Fix the docs to say that it destructively replaces existing
2430 attributes (previously said that it added attributes).
2431 (gtk_tree_view_column_set_visible): canonicalize bool before
2432 equality testing. Also, check for realization before
2433 hiding/showing the tree_column->window; if this window could exist
2434 before realization, then it's busted and needs fixing, we can't
2435 create GDK resources pre-realization. Also, remove
2436 superfluous queue_resize(), since set_size() does that for us.
2437 (gtk_tree_view_column_set_col_type): check realization before
2438 using tree_column->window
2440 * gtk/gtktreedatalist.c: fix filename in copyright notice
2442 2000-12-31 Havoc Pennington <hp@pobox.com>
2444 * gtk/gtktextview.c: Rearrange all the
2445 scroll-while-dragging-or-selecting code to be different, not
2446 necessarily better. ;-)
2447 (gtk_text_view_scroll_to_mark): Change this
2448 function to take within_margin as a fraction instead of a pixel
2449 value, and to take alignment arguments (indicating where to align
2450 the mark inside the visible area)
2452 * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
2455 * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
2456 behavior so that offsets past the end of the line are not
2457 allowed, and an offset equal to the line length moves the iterator
2459 (gtk_text_iter_set_line_index): make parallel change
2460 (gtk_text_iter_get_bytes_in_line): add this function
2462 * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
2463 of byte indexes off the end of the line; byte index at the end of
2464 the line now returns FALSE and doesn't fill in the requested
2465 values, byte index past the end of the line is an error. Also,
2466 don't allow -1 offset anymore, since its meaning is unclear.
2468 This change exposes some bug in visual cursor motion, where we
2469 end up with a huge invalid byte index; needs fixing. Symptom of
2470 bug is a crash when you hit up arrow.
2472 (_gtk_text_line_char_locate): match the change to byte_locate
2474 * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2475 from start of line properly. fixes bug reported by Mikael
2476 Hermansson where backspace would delete all text before the
2479 2000-12-30 Tor Lillqvist <tml@iki.fi>
2481 * gdk/win32/gdkwindow-win32.c
2482 (gdk_window_impl_win32_get_visible_region): New function, as in
2484 (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2485 instead of duplicating the same code here.
2487 * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2490 * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2492 (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2495 * gtk/gtk.def: Update.
2497 * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
2499 2000-12-30 Havoc Pennington <hp@pobox.com>
2501 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
2502 colormap on input only windows, to avoid special cases all over
2503 the code for these windows.
2505 2000-12-26 Tor Lillqvist <tml@iki.fi>
2507 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
2508 we are on a palettized display ("PseudoColor" in X11), as the code
2509 for that doesn't work anyway, and never has.
2511 2000-12-22 Alexander Larsson <alexl@redhat.com>
2513 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
2514 Don't use isprint() for chars > 255.
2516 2000-12-21 Havoc Pennington <hp@redhat.com>
2518 * tests/testtreeview.c: more work
2520 2000-12-21 Alexander Larsson <alexl@redhat.com>
2522 * docs/README.linux-fb:
2523 Update the docs to the new pangoft2 way.
2525 2000-12-21 Alexander Larsson <alexl@redhat.com>
2528 For linux-fb get the pangoft2 cflags and libs. This needs a recent
2530 Remove modules/linux-fb/Makefile.
2532 * gdk/linux-fb/gdkdrawable-fb2.c:
2533 Render glyphs using freetype.
2535 * gdk/linux-fb/gdkfb.h:
2536 Add new fb-specific functions needed for managing windows.
2538 * gdk/linux-fb/gdkmain-fb.c:
2539 Remove gdk_font_init/fini() calls.
2541 * gdk/linux-fb/gdkpango-fb.c:
2542 Remove old implementation. Use pangoft2 instead.
2544 * gdk/linux-fb/gdkprivate-fb.h:
2545 Remove PangoFBFont and related stuff.
2547 * gdk/linux-fb/gdkwindow-fb.c:
2548 Implement drawable->get_visible_region.
2549 Implement support for _gdk_window_set_child_handler () and
2550 _gdk_window_get_decorations().
2552 * modules/Makefile.am:
2553 Remove linux-fb subdir.
2555 * modules/linux-fb/*:
2558 2000-12-20 Jonathan Blandford <jrb@redhat.com>
2560 * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
2561 calls, as they are no longer needed.
2563 * gtk/gtktreemodelsort.c: Fix up the comparison code.
2565 * gtk/gtktreemodel.h: Start work on ::reordered signal. Need to
2566 figure out how to emit a signal on an interface.
2568 2000-12-20 Havoc Pennington <hp@redhat.com>
2570 * tests: new directory to contain tests, gtk/test* should move
2571 here sometime (with appropriate on-cvs-server hackery)
2573 * tests/testtreeview.c, tests/Makefile.am: a test
2575 * configure.in (AC_OUTPUT): add tests/Makefile
2577 * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
2578 and "invisible_set" which were missing
2580 * gtk/gtkrbtree.h: some cheesy indentation fix
2582 2000-12-20 Alexander Larsson <alexl@redhat.com>
2584 * gtk/gtkinvisible.c (gtk_invisible_realize):
2585 Attach the style to the window so that the style it is not
2586 leaked when unrealizing the window.
2588 2000-12-18 Havoc Pennington <hp@redhat.com>
2590 * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
2591 begin/end user action where appropriate
2592 (gtk_text_view_commit_handler): add begin/end user action
2594 * gtk/gtktextbuffer.c: add begin/end user action signals, and
2595 bracket interactive operations with begin/end user action pair.
2597 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
2598 "interactive" arg from insert_text and delete_text signals.
2599 Add begin_user_action, end_user_action signals
2600 (gtk_text_buffer_begin_user_action):
2601 (gtk_text_buffer_end_user_action): New functions to delimit
2602 a user-visible action
2604 * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
2607 2000-12-18 Havoc Pennington <hp@redhat.com>
2609 * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
2610 was pretty non-working.
2612 * gtk/testtext.c (fill_file_buffer): make this a bit more robust
2613 by passing the length to g_utf8_validate().
2615 2000-12-16 Havoc Pennington <hp@pobox.com>
2617 * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
2618 Port to GObject, can go back in gdk-pixbuf after setting up
2619 a gdk-pixbuf-marshal.h header over there.
2621 * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
2622 (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
2624 (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
2626 (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
2627 here, do it when we create the buttons later
2628 (gtk_tree_view_realize_buttons): add some g_return_if_fail
2629 (gtk_tree_view_map): paranoia checks that column->button is shown
2631 (gtk_tree_view_size_request): only request visible children.
2632 Move header size calculation in here, for cleanliness, and
2633 to maintain invariants for child widgets if we eventually
2634 let users set different children inside the buttons
2635 (gtk_tree_view_map_buttons): factor out code to map buttons,
2636 since it was being called several times
2637 (gtk_tree_view_size_allocate_buttons): move_resize the drag
2638 windows instead of just moving them; their height may change
2639 if we allow random widgets in there, or the theme changes.
2640 (gtk_tree_view_size_allocate): move button size allocation
2641 above emitting the scroll signals, to ensure a sane state when we
2643 (gtk_tree_view_button_release): remove queue_resize after
2644 tree_view_set_size(), set_size() will handle any resize queuing
2646 (gtk_tree_view_focus_in): just queue a draw, don't fool with
2648 (gtk_tree_view_focus): use gtk_get_current_event() and
2649 gdk_event_get_state()
2650 (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
2651 (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
2653 (gtk_tree_view_create_button): show the button here
2654 (gtk_tree_view_button_clicked): actually emit the clicked signal
2656 (_gtk_tree_view_set_size): return right away if the size is
2657 unchanged, as a cheesy optimization
2658 (gtk_tree_view_setup_model): rename set_model_realized to
2659 setup_model to match the flag that indicates whether we've
2661 (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
2662 exist, because set_scroll_adjustment does that and it shouldn't
2663 matter what order you call these in
2664 (gtk_tree_view_get_vadjustment): ditto
2665 (gtk_tree_view_set_headers_visible): canonicalize the bool,
2667 (gtk_tree_view_set_headers_visible): call
2668 gtk_tree_view_map_buttons() instead of using cut-and-paste code
2669 (gtk_tree_view_append_column): clarify whether the return value
2670 is the count of columns before or after, and do the increment
2671 separately from the return statement so you can tell from the code.
2672 (gtk_tree_view_remove_column): ditto
2673 (gtk_tree_view_insert_column): ditto
2674 (gtk_tree_view_get_column): remove g_return_if_fail for columns
2675 outside the existing range, the docs say that outside-range
2676 columns are allowed, so we handle them as documented. (Presumably
2677 this allows a nice loop with column != NULL as test.)
2678 (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
2679 mean (left/right/center etc.).
2680 (gtk_tree_view_collapse_all): only queue a draw if we're mapped
2681 (gtk_tree_view_expand_row): add docs
2682 (gtk_tree_view_collapse_row): add docs
2684 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
2685 function to emit the clicked signal on a column
2687 * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
2689 (gdk_event_get_time): don't treat GDK_SCROLL
2690 as a button event, remove default case from switch so gcc
2691 will whine if we don't explicitly handle all event types
2693 * gtk/gtktreeselection.h: added some FIXME
2695 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
2696 "columns" to "n_columns" and "column" to "columns" for clarity
2698 2000-12-16 Havoc Pennington <hp@pobox.com>
2700 * gtk/gtktextiter.c: General cleanup of the log attr iteration
2701 stuff. This should make e.g. the delete key work again in the
2703 (gtk_text_iter_forward_cursor_positions): handle negative count
2704 (gtk_text_iter_backward_cursor_positions): handle negative count
2705 (gtk_text_iter_forward_word_ends): handle negative count
2706 (gtk_text_iter_backward_word_starts): handle negative count
2708 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
2709 gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c,
2710 gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to
2711 GObject. No doubt will cause breakage.
2713 * demos/gtk-demo/textview.c: remove hacks around
2714 non-GObject-ification of the text objects
2716 * demos/gtk-demo/main.c (main): use g_object_set() to manipulate
2719 2000-12-14 Havoc Pennington <hp@pobox.com>
2721 * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2722 that we have Xrender
2724 Thu Dec 14 20:22:31 2000 Owen Taylor <otaylor@redhat.com>
2726 * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2727 Add two virtualized functions gdk_drawable_get_clip_region - to
2728 get the clip region when drawing.
2730 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2731 use invalidate_region.
2733 * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2736 * acconfig.h configure.in: Check for Xft. For now, assume
2737 that if Xft is found, Pango was compiled with Xft support
2740 * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
2741 gdk_colormap_query_color().
2743 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2744 with Xft if appropriate.
2746 * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2747 a pangoxft context if we have XFT and the environment
2748 variable GD_USE_XFT is set.
2750 * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2751 and also possibly an XftDraw structure.
2753 * gtk/gtkfontsel.c: Handle the case where the font from the
2754 style doesn't match any of the fonts a bit better.
2756 * gtk/testgtk.c: Add tabs between directional segments for
2757 hebrew/arabic test. (Not really necessary, just a little
2760 2000-12-14 Havoc Pennington <hp@redhat.com>
2762 * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2765 2000-12-14 Havoc Pennington <hp@redhat.com>
2767 * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2768 unused call to get_last_line()
2770 * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2771 here until boxed is working (and maybe after that - we should
2772 really not gratuitously break old code)
2774 * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2775 specific types for font_desc and tabs args, move them to
2776 GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get
2777 fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2779 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2780 use GTK_TYPE_POINTER for signal signatures as a hack-around
2782 * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2785 * gtk/gtktextlayout.c (line_display_iter_to_index):
2787 (line_display_index_to_iter): make static
2789 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2790 to marshal a string not a boxed
2792 * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2794 * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2795 since the UTF-8 isn't validated yet
2797 * gtk/gtktextsegment.c (char_segment_check_func): don't require
2798 lines to end in '\n'
2800 * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2801 forward_to_delimiters, and grapheme boundaries
2802 (gtk_text_view_delete_from_cursor): properly handle non-newline
2803 delimiters, and grapheme boundaries
2805 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2806 to gtk_text_iter_forward_to_delimiters, and make it work properly
2807 if empty lines end with a character other than '\n'
2809 * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2812 2000-12-15 Tor Lillqvist <tml@iki.fi>
2814 * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2817 * gdk/gdk.def: Update.
2819 * gdk/win32/gdkmain-win32.c
2820 * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2821 gdkmain-win32.c here.
2823 * gdk/win32/makefile.mingw.in (all): No need to make
2824 gdk-win32res.o here, the makefile one step up will call us to make
2827 * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2830 * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2832 * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2833 call to g_source_add().
2835 * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2836 leak. Thanks to Andreas Kemnade.
2838 2000-12-13 Havoc Pennington <hp@pobox.com>
2840 * gtk/gtktextbtree.h: Remove double _ in front of some functions
2842 * gtk/gtktext*.[hc]: update accordingly
2844 2000-12-13 Havoc Pennington <hp@pobox.com>
2846 * gtk/gtktextbtree.h: Put _ in front of every function in this
2849 * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2851 2000-12-13 Alex Larsson <alexl@redhat.com>
2853 * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2854 Add support for ps2 intellimouse.
2857 Move shift-F1 repaint handling to xlate handler only.
2859 * docs/README.linux-fb:
2861 Document the new refresh keys.
2863 Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
2865 * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
2867 * gtk/gtkbox.c: change property types from (u)long to (u)int for
2868 ::position and ::padding.
2870 * gtk/gtkcontainer.c: make ::border_width an INT property.
2872 * gtk/gtkpacker.c: make ::position an INT property.
2874 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2875 guard against NULL h/v scrollbars, since this is used at construction
2878 * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
2879 internal gtk_clist_constructor().
2881 * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
2882 gtk_ctree_constructor().
2884 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
2885 ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
2887 * docs/reference/Makefile.am: fun stuff, disabled docs generation
2888 again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
2890 * gtk/gtkwidget.[hc]:
2891 removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
2892 and gtk_widget_get().
2893 (gtk_widget_new): use g_object_new_valist().
2894 (gtk_widget_set): use g_object_set_valist().
2896 * gtk/gtkobject.[hc]:
2897 removed gtk_object_arg_get_info(), gtk_object_getv(),
2898 gtk_object_query_args(), gtk_object_newv(),
2899 gtk_object_class_add_signals(),
2900 gtk_object_class_user_signal_new(),
2901 gtk_object_class_user_signal_newv(),
2902 gtk_object_arg_set(), gtk_object_arg_get(),
2903 gtk_object_args_collect(),
2904 gtk_object_default_construct(),
2905 gtk_object_constructed(),
2906 GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
2907 removed nsignals, signals and n_args members from GtkObjectClass.
2908 (gtk_object_new): use g_object_new_valist().
2909 (gtk_object_set): use g_object_set_valist().
2910 (gtk_object_get): use g_object_get_valist().
2912 * gtk/gtkcompat.h: define gtk_object_default_construct().
2914 * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
2917 * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
2918 fucntions, cleaned up method assignments (make sure your structures
2919 are setup properly before calling out). removed all GTK_CONSTRUCTED
2922 Tue Dec 12 11:52:16 2000 Owen Taylor <otaylor@redhat.com>
2924 * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
2925 off-by-one error in checks. (Dave Lambert)
2927 2000-12-12 Alexander Larsson <alexl@redhat.com>
2929 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
2930 Don't free gdk_fb_keyboard twice.
2932 Tue Dec 12 08:24:42 2000 Tim Janik <timj@gtk.org>
2936 (create_statusbar): get rid of object_signal:: GtkObject argument uses,
2937 use GObject swapped_signal:: properties instead.
2939 * gtk/gtkcellrenderertoggle.c:
2940 * gtk/gtkcellrenderertextpixbuf.c:
2941 * gtk/gtkcellrenderertext.c:
2942 * gtk/gtkcellrendererpixbuf.c:
2943 * gtk/gtkcellrenderer.c:
2944 * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
2945 missing warnings for invalid property ids, install properties
2946 with g_object_class_install_property() now.
2949 (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
2951 Wed Oct 25 14:17:43 2000 Owen Taylor <otaylor@redhat.com>
2953 * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
2954 to determine if a window is the focus widget within
2957 * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
2960 * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
2961 of the case where the container CAN_FOCUS to here instead
2962 of having it in each individual move-the-focus place.
2964 * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
2965 focusing to be geometric in a much more obvious sense. Arrowing
2966 around is still non-intuitive because it isn't perfect and
2967 because entries, etc, grab the arrow keys, but it at least
2968 usually will do what you expect now.
2970 * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
2973 * gtk/gtknotebook.c: Change tabs to be a single item in
2974 the focus chain. Make movement of focus on tabs with arrow
2977 * gtk/gtknotebook.c (gtk_notebook_find_child): Add
2978 CHECK_FIND_CHILD macro to give informative error messages
2979 instead of silent returns.
2981 * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
2982 flag since we handle GdkReturn on the tabs.
2984 * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
2985 windows rather than sending expose events directly.
2987 * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
2988 definition for GtkNotebookPage into .c file, since it is private.
2990 * gtk/testgtk.c (create_notebook): Add option for
2991 testing borderless notebook.
2993 * gtk/testgtk.c (page_switch): Removed egregious poking
2994 around in GTK+ internals.
2996 * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
2998 * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
2999 properly through gtk_clist_focus. Make the title headers a
3000 single item in the tab-focus chain, and make left-right wrap
3003 * gtk/gtkwindow.c (gtk_window_focus): Add a custom
3004 focus method so that wrapping around works properly.
3006 * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
3007 that is handled for the widget now.
3009 Mon Dec 11 11:41:12 2000 Owen Taylor <otaylor@redhat.com>
3011 * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
3012 widgets as TOPLEVEL.
3014 * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
3015 TOPLEVEL widgets are containers.
3017 * gtk/gtkinvisible.h: Remove useless include.
3019 2000-12-11 Havoc Pennington <hp@redhat.com>
3021 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3022 Handle chopping off \r\n and 0x2029 in addition to \n before
3023 passing to PangoLayout
3025 * gtk/gtkimcontextsimple.c
3026 (gtk_im_context_simple_get_preedit_string):
3027 return an empty string if no match is pending
3029 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
3030 assertion that the returned preedit string was sane
3032 * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
3033 s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
3034 s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
3036 Mon Dec 11 10:02:26 2000 Owen Taylor <otaylor@redhat.com>
3038 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize):
3039 Fix up finalizer to chain to its parent.
3041 2000-12-11 Alexander Larsson <alexl@redhat.com>
3043 * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
3044 Clearified the difference between the keyboard types. Wrote a note
3045 about the magic sysrq key to get out of raw mode.
3047 2000-12-09 James Henstridge <james@daa.com.au>
3049 * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
3050 member to hold masks for detecting the start of a protocol packet.
3051 (mouse_devs): add packet start masks for ps2 and ms device types.
3052 Left the mask for fidmour blank, as I have no idea what it should
3054 (handle_mouse_io): skip bytes until we get to the start of a
3055 packet. My Logitech mouse seems to be passing an extra NULL pad
3056 byte, and GPM does a similar thing here.
3057 (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
3058 this is the ms mouse driver.
3059 (gdk_fb_mouse_ms_packet): fix up button handling, which was
3060 completely broken except for button1. It was checking the wrong
3061 bit in the packet for the status of the right mouse button, and
3062 wrongly assuming right == button2 rather than 3. I fixed that and
3063 also added support for middle button (button2).
3065 2000-12-08 Havoc Pennington <hp@redhat.com>
3067 * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
3068 that cause a segfault on text insertion
3070 * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix
3073 * gtk/gtktextiter.c (test_log_attrs): use
3074 _gtk_text_buffer_get_line_log_attrs to speed things up a bit
3076 * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs):
3077 Get log attrs for a line, using a cache stored on the buffer
3079 * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
3080 reported by Jeff Franks
3082 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
3084 * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
3085 /dev/ttyS0 -> /dev/mouse
3087 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
3089 * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
3090 Added dummy gdk_fontset_load.
3092 2000-12-08 Alexander Larsson <alexl@redhat.com>
3094 * docs/README.linux-fb:
3098 * gdk/linux-fb/Makefile.am:
3099 Define GDK_DATA_PREFIX.
3101 * gdk/linux-fb/gdkmain-fb.c:
3103 Change default display to /dev/fb0.
3105 * gdk/linux-fb/gdkpango-fb.c:
3106 Add $(prefix)/share/fonts/ to font path.
3108 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
3110 * gdk/linux-fb/gdkkeyboard-fb.c:
3111 New file containing the abstracted keyboard driver. Most code
3112 taken from gdkinput-ps2.c
3114 * gdk/linux-fb/gdkinput-ps2.c:
3117 * gdk/linux-fb/Makefile.am:
3118 Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
3120 * gdk/linux-fb/gdkcolor-fb.c:
3121 display->fb was renamed to display->fb_fd.
3123 * gdk/linux-fb/gdkcursor-fb.c:
3124 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3126 * gdk/linux-fb/gdkinput.c:
3127 Moved gdk_input_init here from gdkinput-ps2.c
3129 * gdk/linux-fb/gdkmain-fb.c:
3130 display->fb was renamed to display->fb_fd.
3131 Now the tty and the console is opened here instead
3132 of in the keyboard driver. Also check GDK_VT to see what
3134 Move gdk_beep () here from gdkinput-ps2.c
3135 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3137 * gdk/linux-fb/gdkmouse-fb.c:
3139 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3140 Return correct keyboard modifiers.
3141 GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
3143 * gdk/linux-fb/gdkprivate-fb.h:
3144 Add tty and vt info to display.
3145 Add orignal modeinfo storage to display
3146 Update global functions
3148 * gdk/linux-fb/gdkwindow-fb.c:
3149 Added gdk_fb_window_find_focus().
3150 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3152 2000-12-07 Havoc Pennington <hp@pobox.com>
3154 * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of
3155 function, noticed by Alex
3157 2000-12-06 Elliot Lee <sopwith@redhat.com>
3159 * configure.in: Detect freetype properly
3161 * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
3164 2000-12-06 Alexander Larsson <alexl@redhat.com>
3166 * gdk/linux-fb/Makefile.am:
3169 * gdk/linux-fb/gdkmouse-fb.c:
3170 New file. Abstracted the mouse drivers a bit.
3172 * gdk/linux-fb/gdkcursor-fb.c:
3173 The cursor hide/show functions was moved here from gdkinput-ps2.c.
3175 * gdk/linux-fb/gdkinput-ps2.c:
3176 Removed old mouse handling code. Moved cursor handling code
3177 to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
3178 gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
3181 * gdk/linux-fb/gdkmain-fb.c:
3182 Pass NULL pointers for x,y in gdk_mouse_get_info call.
3184 * gdk/linux-fb/gdkprivate-fb.h:
3185 Removed public gdk_fb_find_common_ancestor, added and renamed
3186 functions for the new mouse handling code.
3188 * gdk/linux-fb/gdkwindow-fb.c:
3189 Moved gdk_fb_window_send_crossing_events here. added global
3190 variable gdk_fb_window_containing_pointer. made
3191 gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
3192 renamed to gdk_mouse_get_info.
3194 2000-12-06 Alexander Larsson <alexl@redhat.com>
3196 * gdk/linux-fb/gdkevents-fb.c:
3197 Update to match latest gmain/gsource changes.
3199 * gdk/linux-fb/gdkinput-ps2.c:
3200 Bogus gdk_keymap_get_entries_for_keycode implementation so that
3201 it links. Will be implemented later.
3203 2000-12-03 Havoc Pennington <hp@pobox.com>
3205 * gdk/Makefile.am: add gdkkeys.[hc]
3207 * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
3208 files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
3210 * acconfig.h, configure.in: add checks and command line options
3213 * gdk/x11/gdkkeys-x11.c: Implement the above functions
3215 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
3216 and group in the key event
3218 * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
3219 field with the low-level hardware key code, and a group
3220 field with the keyboard group
3222 * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
3223 and declare a couple globals used for keymap handling
3225 * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
3226 hold down Shift-Control and type a hex number to get a Unicode
3227 character corresponding to the hex number
3228 (gtk_im_context_simple_get_preedit_string): Fix cursor position
3229 (return bytes not chars)
3231 2000-12-05 Elliot Lee <sopwith@redhat.com>
3233 * gdk/gdkcolor.h: Make GdkColor specify element sizes
3234 to avoid waste on 64-bit platforms.
3236 Tue Dec 5 15:49:31 2000 Owen Taylor <otaylor@redhat.com>
3238 * INSTALL: Fix link to PNG home, remove reference
3241 * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
3243 * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
3246 * gtk/gtkcheckmenuitem.c: Permanently turn on
3249 * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
3250 be NULL. (Vladimir Klebanov, #26545)
3252 * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
3253 some signed/unsigned comparison problems. (#6510,
3256 * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
3257 return type to boolean (Oskar Liljeblad, #18648)
3259 2000-12-05 Alexander Larsson <alexl@redhat.com>
3261 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
3262 Remove bogus colormap setting.
3264 2000-12-05 Alexander Larsson <alexl@redhat.com>
3266 * gdk/linux-fb/gdkcolor-fb.c:
3267 More complete colormap handling. Now GdkRGB work in 8 bpp modes.
3269 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
3272 Tue Dec 5 13:17:53 GMT 2000 Tony Gale <gale@gtk.org>
3274 * docs/tutorial/gtk-tut.sgml: DND updates
3276 2000-12-05 Alexander Larsson <alla@lysator.liu.se>
3278 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3279 Remove old debug g_warning().
3280 (gdk_fb_draw_drawable): The src argument can be either a wrapper
3281 or an implementation, just pass the implementation to draw_drawable_2.
3283 * gdk/linux-fb/gdkprivate-fb.h:
3284 Added GDK_IS_DRAWABLE_IMPL_FBDATA()
3286 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3287 clear and invalidate area when window is destroyed.
3288 (send_map_events): Remove old commented out code.
3290 2000-12-05 Alexander Larsson <alexl@redhat.com>
3292 * gdk/linux-fb/gdkpango-fb.c:
3293 Use italic instead of oblique in font aliases.
3295 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
3296 _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
3297 other unsupported functions.
3299 2000-12-04 Havoc Pennington <hp@redhat.com>
3301 * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
3303 * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
3305 * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
3307 * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary
3308 hack to avoid infinite loops (synthetic expose event) -
3309 Owen has more appropriate fixes in a branch he'll check in later.
3311 * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
3312 separator, CR, and CRLF as line ends
3314 * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
3315 into lines using pango_find_paragraph_boundary(); other bits of
3316 the widget are still going to be broken if the boundary isn't '\n'
3319 2000-12-04 Alexander Larsson <alexl@redhat.com>
3321 * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
3324 * gdk/linux-fb/gdkpango-fb.c:
3325 Copied some 26.6 scaling macros from pango to clean up the rounding.
3326 (pango_fb_font_get_glyph_info): Correct sign on x value.
3328 * gdk/linux-fb/gdkprivate-fb.h:
3329 Removed unreferenced external functions.
3331 * modules/linux-fb/Makefile.am: Use ` instead of '.
3333 * modules/linux-fb/basic.c:
3334 Remove dead code. In particular the dummy lang engine which broke all
3335 pango layouts in GtkFB. Don't include tables-big.i anymore.
3337 * modules/linux-fb/tables-big.i:
3338 Upgrade to latest version from pango. Left for reference, basic_ranges
3341 2000-12-04 Havoc Pennington <hp@redhat.com>
3343 Fix bugs Alex found:
3345 * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
3348 * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
3350 * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
3352 * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw()
3353 implementation in here, apparently the expose() implementation was
3356 2000-12-04 Alexander Larsson <alexl@redhat.com>
3358 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3359 Return positive descent.
3361 2000-12-02 Havoc Pennington <hp@pobox.com>
3363 * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
3366 * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
3367 calls gdk_window_process_updates() to push the exposes through
3368 (gtk_widget_class_init): No more draw signal, no
3369 gtk_widget_real_draw()
3371 * gtk/gtkbin.c (gtk_bin_draw): remove
3373 * gtk/gtkbox.c (gtk_box_draw): remove
3375 * gtk/gtkbutton.c (gtk_button_draw): remove
3377 * gtk/gtkcalendar.c (gtk_calendar_draw): remove
3379 * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
3381 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
3383 * gtk/gtkclist.c (gtk_clist_draw): remove
3385 * gtk/gtkentry.c (gtk_entry_draw): remove
3387 * gtk/gtkeventbox.c (gtk_event_box_draw): remove
3389 * gtk/gtkfixed.c (gtk_fixed_draw): remove
3391 * gtk/gtkframe.c (gtk_frame_draw): remove
3393 * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
3395 * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
3397 * gtk/gtklayout.c (gtk_layout_draw): remove
3399 * gtk/gtklist.c (gtk_list_draw): remove
3401 * gtk/gtklistitem.c (gtk_list_item_draw): remove
3403 * gtk/gtkmenu.c (gtk_menu_draw): remove
3405 * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
3407 * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
3409 * gtk/gtknotebook.c (gtk_notebook_draw): remove
3411 * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
3413 * gtk/gtkpacker.c (gtk_packer_draw): remove
3415 * gtk/gtkrange.c (gtk_range_draw): remove
3417 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
3419 * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
3421 * gtk/gtktable.c (gtk_table_draw): remove
3423 * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
3425 * gtk/gtktext.c (gtk_text_draw): remove
3427 * gtk/gtktextview.c (gtk_text_view_draw): remove
3429 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
3431 * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
3433 * gtk/gtktree.c (gtk_tree_draw): remove
3435 * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
3437 * gtk/gtktreeview.c (gtk_tree_view_draw): remove
3439 * gtk/gtkviewport.c (gtk_viewport_draw): remove
3441 * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
3443 * gtk/gtkvscale.c (gtk_vscale_draw): remove
3445 * gtk/gtkwindow.c (gtk_window_draw): remove
3447 2000-20-01 Anders Carlsson <andersca@gnu.org>
3449 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
3450 a GtkToggleButton is both insensitive and active, it was being
3451 drawn by the GtkButton draw handler which doesn't check the
3452 state. Now it's calling gtk_toggle_button_paint instead.
3454 2000-12-01 Havoc Pennington <hp@redhat.com>
3456 * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
3457 dangling pointers to the appearance attributes from the
3460 * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
3461 width/height to mean "full width/height of drawable"
3463 * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
3464 click to select word/line
3466 * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters
3467 when getting log attrs. Get a slice, so that pixmaps and stuff
3468 are properly handled.
3470 * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3471 paste into the selection (replaces selection now, previously
3472 crashed or added to selection). Reveals longstanding btree bug -
3473 select multiple lines, middle-click on the selection, boom. This
3474 isn't related to my changes though.
3476 * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3477 PangoLogAttrs changes
3478 (gtk_entry_move_backward_word): ditto
3480 * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3481 functions return bool whether the iter moved onto a
3482 dereferenceable position.
3484 * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3485 functions for motion in terms of display lines.
3487 * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3488 get the buffer a mark is inside
3490 2000-12-01 Alexander Larsson <alexl@redhat.com>
3492 * gdk/linux-fb/Makefile.am:
3493 * modules/linux-fb/Makefile.am:
3494 Freetype 2 final uses freetype-config
3496 * gdk/linux-fb/gdkpango-fb.c:
3497 Upgrade to use Freetype 2 final.
3498 More flexible support for font aliases, this also fixes a bug with
3499 GtkFontSelector, as the aliases must be visible in the font/family list,
3500 or GtkFontSelector reads uninitialized memory.
3502 2000-11-30 Hidetoshi Tajima <tajima@eng.sun.com>
3504 * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
3505 XGetIMValues to properly terminate variable argument list, and do
3506 NULL return check for ic_values and xim_styles.
3508 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
3509 Restore preedit state after XmbResetIC().
3511 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
3512 XvaCreateNestedList() should take XvaNestedList, but not
3515 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
3516 preedit_draw_callback, preedit_caret_callback): Match
3517 "preedit-changed" signal name to "preedit_changed" to be
3518 consistent to the spec.
3520 * gtk/gtkimcontextsimple.c (check_table):
3521 Match "preedit-changed" to "preedit_changed" to be consistent
3524 Thu Nov 30 23:03:04 2000 Owen Taylor <otaylor@redhat.com>
3526 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
3527 gc->clip_region == NULL>
3529 2000-11-30 Tor Lillqvist <tml@iki.fi>
3531 Changes by Hans Breuer:
3533 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3534 Dont't use negative width and height as max_hints. This fixes
3535 Owen's recent testgtk changes for win32.
3537 * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
3538 gdk_win32_hdc_release): These are exported and may be called with
3539 other drawable types than our GdkDrawableImplWin32 (?).
3541 * gdk/gdkwindow.c: Backing store appears to work on Windows now,
3542 so always #define USE_BACKING_STORE.
3544 * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
3545 of printf for debugging output.
3547 * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
3549 * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
3551 * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
3554 * gtk/gtktexttypes.h: Ditto.
3556 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
3557 (GDK_VoidSymbol) also if in case of arg check failure.
3559 * gtk/gtkimcontextsimple.c
3560 (gtk_im_context_simple_get_preedit_string): Don't assign cursor
3561 position to the pointer, but to the variable it points to.
3563 * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
3565 * gtk/gtk.def: Updates.
3567 2000-11-29 Elliot Lee <sopwith@redhat.com>
3569 * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
3570 GTK_TYPE_TREE_MODEL.
3572 2000-11-29 Alexander Larsson <alexl@redhat.com>
3574 * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
3575 Set the size of the font from the description.
3576 (gdk_text_width): Gross hack that calculates the width
3577 of text by text_length * size/2. This is necessary because
3578 GtkLabel does some ugly gtk_string_width call to calculate
3580 (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
3582 Wed Nov 29 13:39:19 GMT 2000 Tony Gale <gale@gtk.org>
3584 * docs/tutorial/gtk-tut.sgml: DND updates
3586 2000-11-29 Alexander Larsson <alexl@redhat.com>
3588 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3589 If you pass width or height == 0 to gdk_window_clear_area they
3590 should be calculated from the window size.
3592 2000-11-29 Alexander Larsson <alexl@redhat.com>
3594 * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
3595 a grab, but no grab-cursor, use the cursor from the grabbed
3596 window. (gdk_fb_window_send_crossing_events): Send normal
3597 enter/leave notifications if grab and owner_events == TRUE.
3599 2000-11-29 Alexander Larsson <alexl@redhat.com>
3601 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3602 Do implicit button grabs, even if the window doesn't
3604 (gdk_fb_window_send_crossing_events): If there is a
3605 grab, only the grabbed window gets normal enter/leave
3606 notifications. On ungrab go from grabbed window to current.
3607 Don't send any notification to b when propagating from c -> b.
3608 If setting a grab on window, don't set prev_window.
3609 (handle_mouse_input): Send enter/leave events to the window the
3610 mouse is over, not the grabbed one.
3612 2000-11-28 Elliot Lee <sopwith@redhat.com>
3614 * gdk/gdkregion-generic.c: Zap warning.
3615 * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
3616 * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
3618 2000-11-28 Alexander Larsson <alla@lysator.liu.se>
3620 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3621 The cursor should be hidden if it is part of either the
3622 source or destination region. Not only if it is in both.
3623 (gdk_window_set_transient_for): Silence warnings.
3625 2000-11-28 Alexander Larsson <alexl@redhat.com>
3627 * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
3628 The default mode in X is Pie Arcs, therefore that is
3631 2000-11-28 Alexander Larsson <alexl@redhat.com>
3633 * gdk/linux-fb/gdkinput-ps2.c:
3634 Implement correct EnterNotify/LeaveNotify:
3635 (gdk_fb_window_send_crossing_events): New function that sends
3636 all GdkCrossingEvents from the last mouse-window to the specified
3638 (gdk_fb_window_visibility_crossing): Removed function.
3639 (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
3640 (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
3641 instead of gdk_window_get_pointer() for better readability.
3643 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
3644 gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
3646 * gdk/linux-fb/gdkprivate-fb.h:
3647 removed gdk_fb_window_visibility_crossing, added
3648 gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
3650 gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
3651 New function that finds the least common ancestor of two windows.
3652 (gdk_window_show, gdk_window_hide):
3653 Use gdk_fb_window_send_crossing_events.
3654 (gdk_fb_window_move_resize): Send configure events to toplevel
3655 windows. Use gdk_fb_window_send_crossing_events.
3657 2000-11-27 Havoc Pennington <hp@redhat.com>
3659 * gtk/gtkprivate.h (enum): Remove a trailing comma
3661 2000-11-27 Federico Mena Quintero <federico@helixcode.com>
3663 * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
3664 the "changed" callback of the adjustment. We need to redraw the
3665 spin button's arrows when the adjustment's range changes.
3666 (adjustment_changed_cb): Draw the arrows.
3667 (gtk_spin_button_value_changed): Draw the arrows.
3669 2000-11-23 Alexander Larsson <alexl@redhat.com>
3671 * gdk/linux-fb/gdkselection-fb.c:
3672 Initial selection implementation.
3674 * gtk/gtkselection.c:
3675 if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
3676 requestor in gtk_selection_request.
3678 * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
3679 Added gdk_selection_property atom.
3681 * gdk/linux-fb/gdkprivate-fb.h:
3682 Export _gdk_selection_window_destroyed.
3683 Removed mask_off_x/y from GdkCursorPrivateFB.
3684 Removed hbearing, added top, left to PangoFBGlyphInfo.
3686 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3687 Call _gdk_selection_window_destroyed
3688 (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
3689 the root window has been created.
3690 (static_dx_hack, static_dy_hack, compare_draw_rects,
3691 gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
3692 in region. They are already sorted. Instead just traverse them in
3693 reverse if draw_direction < 0.
3695 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3696 Double-clicks must be sent after the normal button_press.
3697 (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3699 * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
3700 Pass _gdk_fb_screen_gc instead of NULL.
3702 * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3703 Initialize gdk_selection_property.
3704 (gdk_event_make): Remove unused code.
3706 * gdk/linux-fb/gdkcursor-fb.c:
3707 Make the pixmap for the cursor the same size as the mask. Also remove
3708 the mask_off_x/y fields in GdkCursorPrivateFB and combine
3709 _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
3710 Now the whole cursor is visible.
3712 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3713 Fix bug where xdest+height instead of ydest+height was used
3714 to calculate if the source and dest overlapped. This fixes the
3715 redraw bug when the main window in testgtk was scrolled when
3716 partially covered by a tall window.
3717 Copy rectangles in region in order depending on draw_direction.
3718 Also moved the draw_direction flipping of start_y and end_y into
3719 the gc functions, as this might not be what all of them want.
3720 (gdk_fb_draw_lines): Support dashed lines.
3721 (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3722 so that the text is positioned correctly (was 1 pixel high).
3724 gdk/linux-fb/gdkgc-fb.c:
3725 Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3726 all lines were drawn a pixel to short. Also checked the default of
3727 the rest of the values, and they're the same as X now.
3729 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3730 Clean up pixel positioning of the glyphs. Just use bgy->top and
3731 bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3732 to all divisions to get correct rounding behaviour.
3734 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3735 gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3736 Moved start_y/end_y flip into draw_drawable implementations.
3737 Flip also x rendering when draw_direction < 0.
3738 Remove unneccesary multiply with draw_direction.
3740 Wed Nov 22 14:11:19 GMT 2000 Tony Gale <gale@gtk.org>
3742 * docs/tutorial/gtk-tut.sgml:
3743 - get rid of gtk_toggle_button_toggled FUD
3744 - start DND section - needs work - based on:
3745 http://wolfpack.twu.net/docs/gtkdnd/
3747 2000-11-22 Alexander Larsson <alexl@redhat.com>
3749 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3750 Correct calculation of font metrics. Now GtkEntrys have sane
3753 2000-11-22 Alexander Larsson <alexl@redhat.com>
3756 Add new type GdkSpan
3758 * docs/reference/gdk/gdk-sections.txt,
3759 docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3761 Implement and document gdk_region_spans_intersect_foreach.
3763 * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3764 Add new file gdkrender-fb.c which contains all core
3766 Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3767 gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3768 (optimized rectangle fillers).
3770 * gdk/linux-fb/gdkdrawable-fb2.c:
3771 Move all rendering code to gdkrender-fb.c.
3772 Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3773 Use the new span intersection functions in gdk_fb_fill_spans.
3774 gdk_fb_draw_rectangle() clips filled rectangles and calls
3775 gc->fill_rectangle with the result.
3776 gdk_fb_fill_spans() gets extra argument "sorted".
3778 * gdk/linux-fb/gdkevents-fb.c:
3779 Remove unused includes and defines.
3780 New function gdk_fb_get_time() to get correct time for events.
3782 * gdk/linux-fb/gdkinput-ps2.c:
3783 Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3784 Make sure to set the time of all events.
3786 * gdk/linux-fb/gdkmain-fb.c:
3787 Use gdk_fb_get_time ().
3789 * gdk/linux-fb/gdkprivate-fb.h:
3790 New virtual GC calls: fill_span & fill_rectangle.
3791 Export gdk_fb_get_time().
3792 gdk_fb_fill_spans() gets extra argument "sorted".
3794 * gdk/linux-fb/mi*.c:
3795 Use GdkSpan instead of GdkRectangle.
3796 Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3797 from XFree 4 source)
3799 2000-11-22 <jrb@redhat.com>
3801 * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3802 reversing the order in an if statement will do. Doing so managed
3803 to make the treemodelsort half work. Other half will follow after
3804 I get the insert function fully fixed.
3806 2000-11-21 Elliot Lee <sopwith@redhat.com>
3807 * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3808 more than 2 bits. Besides, I need to implement an evil hack. :)
3810 Tue Nov 21 14:17:51 GMT 2000 Tony Gale <gale@gtk.org>
3812 * docs/tutorial/gtk-tut.sgml: minor corrections
3814 2000-11-20 Jonathan Blandford <jrb@redhat.com>
3815 * gtk/gtktreemodelsort.h: Add convertion functions to let you
3816 convert to and from relative path's and iters.
3818 * gtk/treestoretest.c: move to having a sorted/unsorted view. Start
3819 testing sorting functions a bit better. Currently broken -- will
3822 2000-11-20 Havoc Pennington <hp@redhat.com>
3824 * gtk/gtkwidget.c: Documented a bunch of functions in here
3825 (gtk_widget_realize): Warn if you try to realize
3826 a widget with no parent that isn't a toplevel
3827 (gtk_widget_intersect): return a gboolean
3829 2000-11-20 Havoc Pennington <hp@redhat.com>
3831 * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3832 gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3833 scrolling to be implemented in GDK to finish. Also, right now
3834 we just size_allocate all children on every layout change,
3835 which is pretty lame. Test commented out of testtext.c,
3836 until it works better.
3838 2000-11-20 Alexander Larsson <alla@lysator.liu.se>
3840 * gdk/linux-fb/gdkdrawable-fb2.c:
3841 Removed unused arguments from gdk_fb_drawable_get_pixel().
3843 * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3844 Renamed fidur specific mouse packet data in MouseDevice to
3845 generic. Used it in ps2 mouse handling code to avoid blocking
3848 Sat Nov 18 18:00:17 2000 Jonathan Blandford <jrb@redhat.com>
3850 * demos/gtk-demo/main.c: Changed to have the list become
3851 non-italic when the demo window is destroyed through an external
3852 event (like a close button). Doing so found three bugs in the
3855 * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
3857 * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
3858 we actually set the cell.
3860 * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
3862 * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
3863 free a leaked path. Thanks memprof.
3865 Sat Nov 18 11:58:17 2000 Owen Taylor <otaylor@redhat.com>
3867 * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix
3868 off-by-one error when destroying allocated segments
3869 on failure. (Elliot)
3871 Sat Nov 18 11:45:09 2000 Owen Taylor <otaylor@redhat.com>
3873 * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
3874 memleaks found by Evan Martin.
3876 Fri Nov 17 20:14:20 2000 Owen Taylor <otaylor@redhat.com>
3880 * NEWS: Updates for 1.3.2
3882 2000-11-17 Tor Lillqvist <tml@iki.fi>
3884 * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
3885 but in general for window system specific events.
3888 * gtk/makefile.mingw.in
3889 * gtk/makefile.msc.in: Update.
3891 * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
3893 Thu Nov 16 16:11:39 2000 Owen Taylor <otaylor@redhat.com>
3895 * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
3896 distribute gtk.immodules.
3898 * gtk/Makefile.am (install-data-local): Don't install the
3899 gtk.immodules file created for the uninstalled modules;
3900 instead run gtk-query-immodules after install
3902 Wed Nov 15 21:51:31 2000 Owen Taylor <otaylor@redhat.com>
3904 * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
3905 -rpath to the right install location.
3907 * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
3910 * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
3913 2000-11-15 Havoc Pennington <hp@pobox.com>
3915 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
3916 patch from Mikael Hermansson to temporarily stop blinking while
3917 the user is using the keyboard to type or navigate.
3919 Also, when blinking, stay on for longer than we stay off. Also,
3920 return from start_cursor_blink if !cursor_visible, to save
3921 checking that flag all over the place before we call
3924 Thu Nov 16 01:25:51 2000 Robert Brady <robert@suse.co.uk>
3926 * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
3927 only contain a "fontset" line, which is now ignored.
3929 * gtk/gtkentry.c (gtk_entry_button_release): Make
3930 double-click-to-select-word work.
3932 Wed Nov 15 20:16:54 2000 Owen Taylor <otaylor@redhat.com>
3934 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end):
3935 Don't move back one char when we are actually at the end of the
3938 2000-11-15 Robert Brady <robert@suse.co.uk>
3940 * modules/input/iminuktitut.c (inuktitut_compose_seqs):
3943 * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
3944 bind_textdomain_codeset.
3946 (gtk_init_check): Make the warning about translating default:LTR
3949 Wed Nov 15 18:39:40 2000 Owen Taylor <otaylor@redhat.com>
3951 * **/Makefile.am : remove unecessary rules for win32-specific
3952 config-substituted targets. If you want these rules, use
3953 --enable-maintainer-mode (called automatically by autogen.sh).
3954 Stops a lot of unneccessary make-time warnings.
3956 * gtk/gtktext{layout,display}.c: Factor in total width as
3957 well as screen when figuring alignment for word-wrap as well as
3958 no wrap; this is necessary to handle lines that cannot be wrapped
3961 2000-11-15 Havoc Pennington <hp@redhat.com>
3963 * gtk/testtext.c: Implement essential color cycling feature
3965 2000-11-15 Havoc Pennington <hp@redhat.com>
3967 * gtk/gtktextview.c (changed_handler): Invalidate the side windows
3968 when we invalidate the main window.
3970 * gtk/testtext.c (create_view): Get rid of text_changed_callback,
3971 GtkTextView will now invalidate the side windows for us when text
3974 Wed Nov 15 16:02:20 2000 Owen Taylor <otaylor@redhat.com>
3976 * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
3977 unconditionally, since we may need to update the horizontal
3978 scrollbars even if the height didn't change.
3980 * gtk/gtktextlayout.c (add_preedit_attrs): Always get
3981 the extra attrs, since some of them affect size.
3983 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
3986 2000-11-15 Havoc Pennington <hp@redhat.com>
3988 * gtk/gtktextlayout.c (set_para_values): If indent is negative,
3989 don't move the first line out into the margin, instead move the
3990 whole paragraph in order to make space for the first line within
3993 2000-11-15 Havoc Pennington <hp@redhat.com>
3995 * gtk/gtktextview.c (changed_handler): offset redraw rect by
3996 xoffset in addition to yoffset, so horizontal scrolling doesn't
3999 2000-11-15 Havoc Pennington <hp@redhat.com>
4001 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
4003 (render_layout_line): fix reversed test that caused weird
4004 underlines to get drawn
4006 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
4008 * gdk/linux-fb/gdkprivate-fb.h:
4011 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
4013 * gdk/linux-fb/gdkprivate-fb.h:
4014 Added virtual functions set_pixel, get_color,
4015 fill_span and draw_drawable to the GC.
4016 Added global _gdk_fb_screen_gc to use instead of
4017 NULL when drawing to the screen.
4018 Added _gdk_fb_gc_calc_state() prototype.
4020 * gdk/linux-fb/gdkgc-fb.c:
4021 Call _gdk_fb_gc_calc_state() on any gc state change.
4023 * gdk/linux-fb/gdkglobals-fb.c:
4024 Add _gdk_fb_screen_gc
4026 * gdk/linux-fb/gdkdrawable-fb2.c:
4027 _gdk_fb_gc_calc_state() calculates best functions
4028 for the GC state and depth.
4029 Moved bpp specialized code to separate functions.
4030 Added optimized 24 bpp AA draw_drawable.
4032 * gdk/linux-fb/gdkevents-fb.c:
4033 Silence gcc warning.
4035 * gdk/linux-fb/gdkimage-fb.c:
4036 Use _gdk_fb_screen_gc
4038 * gdk/linux-fb/gdkwindow-fb.c:
4039 Init and use _gdk_fb_screen_gc
4041 * gdk/linux-fb/mitypes.h:
4042 Remove unused types.
4044 2000-11-14 Havoc Pennington <hp@pobox.com>
4046 * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
4049 2000-11-14 Havoc Pennington <hp@pobox.com>
4051 * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
4053 * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
4054 unknown char, no real reason we were using a variable.
4055 Remove gtk_text_unknown_char variable. Fix all the text widget
4058 * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC,
4059 since the Unicode spec seems to prefer that character for our
4062 Wed Nov 15 02:18:01 2000 Robert Brady <robert@suse.co.uk>
4064 * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return
4065 value of g_getenv() isn't freeable, so g_strdup it.
4067 * modules/input/inuktitut.c: Inuktitut input method.
4069 * modules/input/Makefile.am: Build this.
4071 2000-11-14 Elliot Lee <sopwith@redhat.com>
4073 * gtk/Makefile.am: Install gtk.immodules, needed for operation
4076 Tue Nov 14 20:13:06 2000 Owen Taylor <otaylor@redhat.com>
4078 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
4079 reversed > that was causing Home to go to end of previous line.
4081 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
4082 modified-keypresses (leave for bindings.)
4084 * modules/input/Makefile.am: Remove useless -export-dynamic
4085 from module LDFLAGS.
4087 2000-11-14 Havoc Pennington <hp@redhat.com>
4089 * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
4092 * gtk/gtktextdisplay.c (render_layout_line): Take rise into
4093 account. Also, render rise, underline, background, etc. for
4094 pixbufs as well as text. Also, draw underlines one pixel higher.
4096 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
4097 PangoAttribute for the rise, so it gets drawn properly. Also,
4098 add the GtkTextAppearance attribute for pixbuf/widget segments
4099 as well; we should go ahead and have rise, underline, background,
4100 stipple work for those
4102 * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
4105 2000-11-15 Tor Lillqvist <tml@iki.fi>
4107 * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
4109 * gtk/gtk.def: Update.
4111 * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
4113 (gtk_rc_get_im_module_file): Use run-time installation directory
4116 * gdk/win32/rc/gdk.rc: Remove.
4117 * gdk/win32/rc/gdk.rc.in: New file.
4118 * gdk/win32/rc/Makefile.am: New file
4119 * gdk/win32/Makefile.am: Corresponding changes.
4121 * gtk/gtk.rc: Remove.
4122 * gtk/gtk-win32.rc.in: New file.
4123 * gtk/Makefile.am: Corresponding changes.
4125 * configure.in: Corresponding changes.
4127 * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
4128 has a built gtkcompat.h. Developers using CVS code on Win32 can
4129 hand-edit it from gtkcompat.h.in.
4131 * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
4132 gtkcompat.h from gtkcompat.h.win32.
4134 2000-11-14 Havoc Pennington <hp@redhat.com>
4136 * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
4137 to default to GDK_ACTION_MOVE if the drag is within a single
4138 widget. Defaults to GDK_ACTION_COPY between widgets.
4140 Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
4142 * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
4144 * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
4146 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
4149 * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
4151 * configure.in (GTK_VERSION): Up to 1.3.2
4153 * modules/input/Makefile.am (im_xim_la_SOURCES): Add
4156 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
4157 missing doc comment.
4159 2000-11-14 Alexander Larsson <alexl@redhat.com>
4161 * modules/linux-fb/basic.c:
4162 Use the glib iconv wrappers.
4164 2000-11-13 Havoc Pennington <hp@pobox.com>
4166 * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
4169 * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
4170 scroll the GdkWindows before realization.
4172 2000-11-13 Havoc Pennington <hp@redhat.com>
4174 * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug
4175 where GC didn't always get updated properly
4177 * demos/gtk-demo/textview.c (create_tags): Use subattributes
4178 of fonts instead of setting the entire font
4180 * gtk/testtext.c (fill_example_buffer): Use "size" instead of
4183 * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
4185 * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into
4186 a bunch of individually-settable font attributes. You can still
4187 use the "font" and "font_desc" args, they just set all the font
4190 2000-11-13 Elliot Lee <sopwith@redhat.com>
4192 * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
4194 Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
4196 * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
4197 * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
4199 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
4202 2000-11-13 Havoc Pennington <hp@redhat.com>
4204 * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of
4207 * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
4210 * gtk/testtext.c: Test pixels above/below/inside paragraphs
4213 * gtk/gtktextview.c: Implement object args and setters/getters for
4214 all the aspects of the GtkTextAttributes that are not set from
4215 GtkWidget attributes. This is spacing, justification, margins,
4218 (gtk_text_view_set_arg)
4219 (gtk_text_view_get_arg): implement get/set for editable, wrap mode
4221 (gtk_text_view_class_init): Add args for justify, left_margin,
4222 right_margin, indent, and tabs
4225 * gtk/gtktextlayout.c (set_para_values): fix to display indent
4228 * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute,
4229 replace with indent attribute
4231 * gtk/gtktextlayout.c (set_para_values): multiply indent by
4234 * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
4235 rearranging code to do that
4236 (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
4237 i.e. don't subtract the top_margin first, just to keep
4238 all margin-futzing in one place.
4240 * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
4242 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
4243 special case of last line, Pango now handles this itself.
4244 (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the
4246 (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
4247 (find_display_line_above): wasn't moving the byte index as it
4248 iterated over lines, so always returned byte 0. Also, port to use
4250 (find_display_line_below): same problem as
4251 find_display_line_above. Also, port to use PangoLayoutIter.
4253 2000-11-13 Alexander Larsson <alexl@redhat.com>
4255 * gdk/linux-fb/*.[ch]:
4256 Massive reindent to gtk+ standard. My hands hurt.
4258 * gdk/linux-fb/gdkcolor-fb.c:
4259 Move GdkColorPrivateFB from inherited to windowing_data
4261 * gdk/linux-fb/gdkcursor-fb.c:
4262 _gdk_cursor_new_from_pixmap made static
4264 * gdk/linux-fb/gdkdnd-fb.c:
4265 GdkDragContextPrivate moved to windowing_data
4267 * gdk/linux-fb/gdkdrawable-fb2.c:
4268 Removed endian.h, use glib endianness macros instead
4269 Some cleanups in the usage of GDK_DRAWABLE_FBDATA
4270 and GDK_DRAWABLE_IMPL_FBDATA
4272 * gdk/linux-fb/gdkfont-fb.c:
4273 Add empty gdk_font_load(). Needed for linking of Gtk+.
4275 * gdk/linux-fb/gdkimage-fb.c:
4276 Removed endian.h, use glib endianness macros instead
4277 Moved GdkImagePrivateFB to windowing_data
4278 gdk_image_new_bitmap didn't always allocate enough
4281 * gdk/linux-fb/gdkinput-ps2.c:
4282 Added semi-working support for MS serial mice.
4284 * gdk/linux-fb/gdkprivate-fb.h:
4285 s/GdkWindowPrivate/GdkWindowObject/
4286 Removed GdkWindowPrivate typedef
4287 s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
4288 Removed GDK_DRAWABLE_P
4289 Move GdkColorPrivateFB from inherited to windowing_data
4290 Moved GdkImagePrivateFB to windowing_data
4292 * gdk/linux-fb/gdkvisual-fb.c:
4293 Removed some unused debug code.
4295 * gdk/linux-fb/gdkwindow-fb.c:
4296 Use stock cursors instead of including X headers.
4297 s/GdkWindowPrivate/GdkWindowObject/
4299 * gdk/linux-fb/mitypes.h:
4300 Removed unused types.
4302 * modules/linux-fb/basic.c:
4303 Use the pango fribidi wrappers.
4305 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4307 * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
4308 gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
4309 gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
4310 gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
4311 GEqualFunc where applicable.
4313 * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
4314 pango_font_description_equal as changed in pango.
4316 * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
4318 * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
4320 * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
4322 * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
4324 * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
4326 * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
4328 * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
4329 gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
4331 * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
4332 gtk_rc_styles_compare -> gtk_rc_styles_equal.
4334 2000-11-12 Havoc Pennington <hp@pobox.com>
4336 * demos/gtk-demo/Makefile.am (democodedir): change demo install
4337 dir to datadir/gtk+-2.0/demo
4339 * demos/gtk-demo/textview.c: Text widget demo; reveals all
4340 sorts of text widget and Pango font bugs. Urgh.
4342 * demos/gtk-demo/Makefile.am (demos): Add textview.c
4344 * demos/gtk-demo/main.c (create_tree): Add instructions at top of
4345 tree that you should double click to see the demo. Fix
4346 types of variables to reflect changed return values from
4347 GtkTreeStore and GtkTreeViewColumn constructors.
4349 * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
4350 newly-created buffer to prepare for GObject semantics
4352 * gtk/testtext.c: don't leak the buffer with GObject semantics
4354 * gtk/testtextbuffer.c: ditto
4356 2000-11-12 Havoc Pennington <hp@pobox.com>
4358 Rename this testgtk to gtk-demo to avoid confusion, and
4359 install it so people can use it as a supplement to
4362 * demos/gtk-demo: Moved from demos/testgtk
4364 * demos/testgtk: Removed
4366 * configure.in: make Makefile in gtk-demo
4368 * demos/gtk-demo/Makefile.am: Install sample source to
4369 datadir/gtk-demo (maybe there's a better place?), and
4370 rename the binary to gtk-demo
4372 * demos/gtk-demo/main.c (load_file): Load installed sample
4373 source if source isn't found in pwd.
4375 2000-11-09 Havoc Pennington <hp@pobox.com>
4377 * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char"
4378 argument to set the char displayed when visibility == FALSE
4379 (gtk_entry_create_layout): If !entry->visible, replace
4380 all chars with the "invisible char"
4382 * gtk/testgtk.c: Test the invisible_char deal
4384 Mon Nov 13 02:16:33 2000 Robert Brady <robert@suse.co.uk>
4386 * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
4387 can't get a native font in the right encoding.
4389 Mon Nov 13 00:09:29 2000 Robert Brady <robert@suse.co.uk>
4391 * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
4394 Sun Nov 12 19:11:42 2000 Owen Taylor <otaylor@redhat.com>
4396 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
4397 Fix warning when moving between paragraphs.
4399 * gtk/gtkentry.[ch]: Change move => move_cursor,
4400 delete => delete_from_cursor, insert => insert_at_cursor
4402 Sun Nov 12 22:52:51 2000 Robert Brady <robert@suse.co.uk>
4404 * modules/input/imviqr.c: A vietnamese VIQR-based input method.
4406 * modules/input/imthai-broken.c: A Thai input method for use if
4407 Thai keys are really generating Latin1 keysyms.
4409 * modules/input/Makefile.am: Build these.
4411 Sun Nov 12 22:15:35 2000 Robert Brady <robert@suse.co.uk>
4413 * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c:
4414 g_filename_{to,from}_utf8 now takes an extra parameter.
4416 * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
4417 strftime into UTF-8.
4419 (column_from_x, gtk_calendar_paint_day_names): Support RTL
4422 (gtk_calendar_paint_day_names): Draw day names in the right
4425 Sun Nov 12 14:10:09 2000 Owen Taylor <otaylor@redhat.com>
4427 * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
4428 problem with using result of g_get_charset() backwards -
4429 pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
4431 * gtk/gtkwindow.c (gtk_window_compute_hints): Support
4432 negative min_width/height and max_width/height to
4433 mean "requisition"; this allows setting a window
4434 to be user-resizable in only one direction easily.
4436 * gtk/testgtk.c (create_main_window): Remove hard-coded
4437 usize - set a default size in the vertical direction.
4439 Sun Nov 12 13:33:01 2000 Owen Taylor <otaylor@redhat.com>
4441 * gtk/gtkrange.c: Add some missing casts. Support
4442 2 and 3 button clicks on the arrows to mean
4443 "move by pages" and "jump to end". (Like gtkspinbutton)
4445 2000-11-12 Hans Breuer <Hans@Breuer.Org>
4447 * gdk/win32/makefile.msc : reflect build module changes
4449 * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
4450 from GdkPixmap*, cast implementation member instead.
4452 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
4453 passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src
4454 maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
4455 more Gdi functions return value checking.
4456 (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
4457 GdkImagePrivateWin32 *.
4459 * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
4460 menus useable again. Add #pragma message to keep reminded on this issue.
4461 (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
4462 windows. This allows to enable backing store on Win32!
4464 * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
4465 in drawable is of impl type. Correct specific type checks appropriate.
4467 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check
4468 GDK_WINDOW_DESTROYED before allocating new resources.
4470 * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4472 * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4473 (gdk_window_foreign_new) initialize parent handle.
4474 (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4476 * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4477 Let the GDI invalidate the window on MoveWindow call to fix scrolling
4478 problems (e.g. main buttons in testgtk).
4480 Sat Nov 11 23:07:30 2000 Owen Taylor <otaylor@redhat.com>
4482 * gtk/gtkentry.c (gtk_entry_key_press): Call
4483 gtk_widget_activate for GDK_Return.
4485 * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4486 of preedit cursor position.
4488 Sun Nov 5 04:24:53 2000 Owen Taylor <otaylor@redhat.com>
4490 * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4493 Tue Sep 19 10:54:22 2000 Owen Taylor <otaylor@redhat.com>
4495 * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4496 out support for multiple locales; that simple doesn't
4497 work reliably with current Xlib
4499 * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
4500 gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
4501 Add support for positioning the cursor within the preedit string.
4503 Mon Sep 18 23:56:32 2000 Owen Taylor <otaylor@redhat.com>
4505 * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
4506 at XIM input method module.
4508 * gtk/gtktextview.c: Check for bindings after passing
4509 events to im context filter.
4511 Mon Sep 18 11:50:51 2000 Owen Taylor <otaylor@redhat.com>
4513 * gtk/gtktextlayout.c (add_preedit_attrs): Handle
4514 empty attribute lists properly.
4516 Sun Sep 17 10:08:16 2000 Owen Taylor <otaylor@redhat.com>
4518 * gtk/queryimmodules.c (main): Return non-zero exit
4519 status if errors were encountered querying any
4522 * modules/input/Makefile.am (moduledir): remove
4523 leftover bin program target.
4525 * docs/make-todo: Fix typo in error message.
4527 Sat Sep 16 14:04:30 2000 Owen Taylor <otaylor@redhat.com>
4529 * configure.in: Add modules/input/Makefile
4531 Sat Sep 16 14:01:52 2000 Owen Taylor <otaylor@redhat.com>
4533 * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
4534 don't include gtkthemes.h.
4536 * gtk/testgtk.c gtk/testtext.c: Set environment variables
4539 * gtk/Makefile.am: Add new .c and .h files, build
4540 gtk-query-immodules and use it to create a gtk.immodules
4541 file for use of test programs.
4543 * gtk/gtkpreview.c: remove extra blank line.
4545 Sat Sep 16 13:21:04 2000 Owen Taylor <otaylor@redhat.com>
4547 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
4548 Add the ability to add extra tables beyond the default
4549 one, and also the ability to have compose sequences
4550 that are prefixes of other compose sequences.
4552 * gtk/gtkimcontextsimple.c: Export a preedit string which
4553 consists of possible candidates for keystrokes that have
4554 been entered but not yet committed.
4556 * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
4557 gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
4559 * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
4560 Add a function to add input-method switching menu items
4563 * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
4564 when switching input methods.
4566 * gtk/gtkimcontextsimple.[ch]: Change the format of
4567 the compose table to allow compose tables of different
4570 Sat Sep 16 13:05:48 2000 Owen Taylor <otaylor@redhat.com>
4572 * gtk/gtkimmodule.[ch]: Support routines for loading
4573 GtkIMContext implementations dynamically at runtime.
4575 * modules/input/imcyrillic-translit.c: A sample input
4576 method (based on GtkIMContextSimple with an extra table),
4577 which demonstrates preedit strings and the module
4578 system for input modules
4580 * gtk/queryimmodules.c: Program to query the available
4581 input modules and write the results into a file.
4583 * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
4584 extra config options "im_module_file" (cache file for
4585 input method modules), and "im_module_path" - path
4586 to look for modules when generating cache file.
4590 Sat Sep 16 13:09:06 2000 Owen Taylor <otaylor@redhat.com>
4592 * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
4593 generic code from gtkthemes into a new abstraction
4594 GtkModule which has the logic for implementing
4595 a loadable module which implements a number of
4598 Sat Sep 16 13:07:13 2000 Owen Taylor <otaylor@redhat.com>
4600 * gtk/gtkeditable.[ch]: Convert GtkEditable from
4601 a class into an interface
4603 * gtk/gtkoldeditable.[ch]: Move the old editable
4604 implementation into here, so legacy widgets can
4605 still rely on the implemenation. GtkOldEditable
4606 exports GtkEditable. Make selection handling
4607 code use new text conversion functions (and
4608 handle UTF-8 as a side-effect). Use GtkClipboard
4611 * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
4612 Adopt to match above changes.
4614 * gtk/gtkentry.[ch]: Implement GtkEditable directly,
4615 avoid GtkOldEditable implementation. Restructure
4616 to reduce number of places that modify state directly.
4617 Move to GtkBindingSet. Display the preedit string.
4618 Queue recomputation of PangoLayout and scroll position
4619 to improve effiency of doing complex changes naively.
4620 Add a menu with cut/copy/paste and input method selection.
4622 Thu Sep 14 22:11:05 2000 Owen Taylor <otaylor@redhat.com>
4624 * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
4625 to set preedit string and attributes; display preedit string by
4626 inserting string and attributes at cursor when creating the
4629 * gtk/gtktextlayout.c: Move all conversions between byte
4630 positions in PangoLayout and GtkTextIter into new functions
4631 line_display_iter_to_index/index_to_iter that properly
4632 handle the preedit string.
4634 * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
4635 it to return const char * (eventually will end up
4636 as GCONST char *, most likely.)
4638 * gtk/gtktextview.[ch]: Handle the preedit string, call
4639 gtk_im_context_reset() as necessary, add a menu to switch
4642 * gtk/gtktextlayout.[ch]: Remove useless
4643 gtk_text_layout_get_log_attrs() function.
4645 2000-11-11 Tor Lillqvist <tml@iki.fi>
4648 * gtk/gtk.def: Update.
4650 * gdk/win32/*.c: Add last argument to g_type_register_static()
4653 * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
4655 * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
4656 generated by older wheel mouse drivers. Get the correct y
4657 coordinate from WM_MOUSEWHEEL messages.
4659 * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
4660 gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
4661 gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
4662 Debugging functions.
4664 * gdk/win32/gdkprivate-win32.h: Declare them.
4666 * gdk/win32/gdkinput-win32.h: Add declaration for
4667 gdk_input_window_destroy().
4669 * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
4671 Fri Nov 10 19:06:41 2000 Jonathan Blandford <jrb@redhat.com>
4673 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
4674 function to help handle keeping things in sync.
4676 Fri Nov 10 12:10:34 2000 Jonathan Blandford <jrb@redhat.com>
4678 * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
4681 * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
4682 (gtk_list_store_class_init): use the new BOXED marshallers.
4684 * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
4685 new_with_values to new_with_types.
4686 (gtk_tree_store_get_column_type): add this.
4687 (gtk_tree_store_class_init): use the new BOXED marshallers.
4689 * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
4690 mirror some POINTER marshallers.
4692 Thu Nov 9 11:23:22 2000 Jonathan Blandford <jrb@redhat.com>
4694 * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
4695 allow more interesting iterators. Also, made the lifecycle of
4696 iterators more explicit.
4698 * gtk/gtktreemodelsort.[ch]: New model for sorting.
4700 * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
4703 2000-11-09 Alexander Larsson <alexl@redhat.com>
4705 * demos/testgtk/menus.c:
4706 Changes to make the new testgtk compile after
4707 gtk_menu_append was removed.
4709 * gdk/linux-fb/gdkdrawable-fb2.c
4710 (gdk_fb_get_depth, gdk_fb_get_visual,
4711 gdk_drawable_impl_fb_class_init): Implement
4712 these drawable functions. Now GtkImages work again.
4714 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
4716 * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4718 * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4719 gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4720 Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4721 GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4723 2000-11-08 Havoc Pennington <hp@pobox.com>
4725 * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4726 visible_set args, don't know where these had gone, I thought they
4729 * gtk/testtext.c: Add a menu item to apply invisibility tag;
4730 now we can test the feature and see that it's totally broken.
4732 2000-11-08 Havoc Pennington <hp@pobox.com>
4734 Make DND copy pixbufs and tags when source and target share a
4737 * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4738 in-process GTK_TEXT_BUFFER_CONTENTS target
4739 (gtk_text_view_drag_data_received): Paste from
4740 GTK_TEXT_BUFFER_CONTENTS if we receive it.
4742 2000-11-08 Alexander Larsson <alexl@redhat.com>
4744 * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4747 * gtk/gtkmenu.c: Add support for scrolling menus.
4748 Remove gtk_menu_append/prepend/insert, these have been moved to
4749 gtkcompat.h as #defines.
4751 * gtk/gtkcompat.h.in:
4752 Add compatibility #defines for gtk_menu_append/prepend/insert
4754 * gtk/gtkmenu.h: Add data needed for scrolling menus.
4755 GtkMenuPositionFunc gets an extra argument push_in.
4756 gtk_menu_append/prepend/insert removed.
4758 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4759 positioning behaviour to fit to scrolling menus.
4761 * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4762 into menuitem->submeny. That is wrong, and broke torn
4763 off submenus of torn off menus, since they were unrealized
4764 when the first menu was unrealized.
4766 * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4767 gtk_menu_shell_select_item() since these need to be overridden in
4770 * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4771 positioning behaviour to fit to scrolling menus.
4772 (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4773 the current item so that it is prelighted when the menu pops up.
4774 This is a workaround to the fact that the menu doesn't get the
4775 initial enter event (due to grabs).
4777 * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4778 s/gtk_menu_append/gtk_menu_shell_append/
4780 * gtk/gtknotebook.c:
4781 s/gtk_menu_insert/gtk_menu_shell_insert/
4783 * gtk/testgtk.c (create_menu, create_menus):
4784 Create the first menu with 50 items so that menu scrolling
4788 Patch from Jonathan Blandford <jrb@redhat.com>
4790 * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4791 system to handle size requests. First, we ask what the size of
4792 the toggle is. Then, when allocating the size, we allocate the
4793 toggle_size first. This way we can have multiple menu-item
4794 classes w/o needing a seperate class for each.
4796 * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4797 * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4799 * gtk/gtkcheckmenuitem.c
4800 (gtk_check_menu_item_toggle_size_request): New function to handle
4801 the toggle size-request.
4803 2000-11-07 Havoc Pennington <hp@redhat.com>
4805 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4806 Half-ass somewhat fix this function, so that scrolling to the
4807 insertion point works. Pango hacking is in the future to really
4810 * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4811 length of data, no longer used.
4813 * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4814 method contents in here, get rid of destroy method
4815 (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4816 that were backward. Remove debug spew.
4817 (cut_or_copy): Make the clipboard work with insert_range to
4818 preserve tags and pixbufs, not just the primary selection.
4820 2000-11-07 Havoc Pennington <hp@redhat.com>
4822 * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename
4823 to gtk_text_mark_get_visible
4825 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4826 bug that was generating an invalid iterator
4828 * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4829 ensure_char_offsets() in front of code placing the iter in an
4832 * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4833 make override_location arg const
4834 (paste): Replace the selection if we paste into the
4837 * gtk/gtkselection.h: Remove "GtkSelectioData"
4838 (struct _GtkSelectionData): move the definition here.
4840 * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4841 Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4843 * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4845 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4846 (gtk_text_buffer_insert_range_interactive): implement
4847 (gtk_text_buffer_get_tags): Remove, replaced by
4848 gtk_text_iter_get_tags()
4850 * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4851 limit parameter, to avoid infinite linear scan.
4852 (gtk_text_iter_backward_search): Add search limit
4853 (gtk_text_iter_forward_find_char): Add search limit
4854 (gtk_text_iter_backward_find_char): Add search limit
4856 2000-11-07 Alexander Larsson <alla@lysator.liu.se>
4858 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4859 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
4860 gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
4861 gdk/linux-fb/gdkwindow-fb.c:
4862 use g_object_new() instead of g_type_create_instance() which
4863 is a private function for fundamental type implementations.
4865 * gdk/linux-fb/gdkinput-ps2.c:
4866 Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
4867 instead just store the current modifier state. Add a (somewhat broken)
4868 keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
4869 Rename exported function gdk_input_ps2_get_mouseinfo to
4870 gdk_input_get_mouseinfo.
4872 * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
4873 gdk/linux-fb/gdkwindow-fb.c:
4874 gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
4877 2000-11-02 Havoc Pennington <hp@redhat.com>
4879 * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
4880 use stock buttons. Should be 100% source compatible, appropriate
4881 filesel fields now point to dialog->vbox and dialog->action_area.
4882 On the bizarre side, dialog->action_area and filesel->action_area
4883 are not the same widget.
4884 (gtk_file_selection_init): Put some padding around the selection
4885 entry, so it isn't touching the GtkDialog separator.
4887 * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog,
4888 use stock buttons, etc. Should also be source compatible.
4889 Set the dialog default title in _init not _new().
4891 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
4892 Use stock buttons; don't put a button box inside the existing
4893 dialog button box. Don't bother with push/pop colormap anymore.
4895 * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more
4896 specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
4897 for message dialog, and necessary for the font selection and color
4898 selection with help and apply buttons.
4900 * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer
4901 to the created button widget. Set GTK_CAN_DEFAULT on the button.
4902 (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
4903 between buttons, put less padding around the action area.
4904 (gtk_dialog_run): Exit on unmap rather than on destroy.
4905 This will also exit the loop if the widget is hidden.
4906 (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
4907 instead of GTK_RESPONSE_NONE; since we're already adding a bunch
4908 of GTK_RESPONSE_* stuff, this seems cleaner, and lets you
4909 special-case delete event.
4911 * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
4914 Sun Nov 5 05:32:39 2000 Tim Janik <timj@gtk.org>
4916 * gtk/testgtk.c (uposition_stop_configure): provide a toggle
4917 button to temporarily disable position recording in the
4918 "saved position" test.
4920 Sat Nov 4 05:37:17 2000 Tim Janik <timj@gtk.org>
4922 * gtk/gtkthemes.c: added compat code that temporarily implements
4923 GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
4924 going to be revamped by owen's upcoming GtkModule patches, but
4925 untill then people want gtk to build, right? ;)
4927 2000-11-04 Havoc Pennington <hp@pobox.com>
4929 * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
4932 * docs/Changes-2.0.txt: Add note about
4933 gtk_container_get_toplevels()
4935 * gtk/gtktextview.h: formatting
4937 * gtk/gtktextview.c: don't start descriptions with "Returns",
4940 Sat Nov 4 10:12:27 2000 Owen Taylor <otaylor@redhat.com>
4942 * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
4943 look for glib-2.0.m4 not glib.m4. (Ali Abdin)
4945 2000-11-03 Havoc Pennington <hp@redhat.com>
4947 * gtk/gtktexttagtable.c: Docs
4948 (gtk_text_tag_table_size): return a signed int
4950 * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
4951 (gtk_text_tag_event): make the event_object a GObject
4953 * gtk/gtktextview.c: Write API docs for all functions.
4955 * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
4956 for gtk_text_view_get_window_type() called on one of the private
4959 * gtk/gtktextview.c: Instead of accessing text_view->buffer
4960 directly, call get_buffer() which demand-creates a default
4961 buffer. So gtk_text_view_new() can be used to create a view with a
4962 default buffer in it, if you just want an empty text box users can
4963 put data in. Useful for GUI builders also.
4965 2000-11-03 Pablo Saratxaga <pablo@mandrakesoft.com>
4967 * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
4968 the charset encodign portion MUST be in lowercase.
4969 * gtk/gtkrc.az: added file for Azeri language
4971 2000-11-03 Havoc Pennington <hp@redhat.com>
4973 Get widgets working on the btree/buffer side. Display of them
4976 * gtk/gtktextview.c: start implementing child widget stuff
4978 * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
4980 * gtk/gtktextlayout.c: handle embedded widgets
4982 * gtk/gtktextdisplay.c: handle embedded widgets
4984 * gtk/gtktextchild.c: Implement all the child anchor goo
4986 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
4989 * gtk/gtktextbtree.c: Add child anchor table to the btree struct
4990 (insert_pixbuf_or_widget_segment): abstract out common portions of
4991 creating a child anchor or a pixbuf segment.
4992 (gtk_text_btree_create_child_anchor): new function
4993 (gtk_text_btree_unregister_child_anchor): new function
4995 * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
4996 allocate_child signal on GtkTextLayout
4998 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
5000 (gtk_text_iter_get_child_anchor): new function
5002 * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
5003 default handler for the changed signal, which calls
5004 gtk_text_buffer_set_modified(), instead of just always emitting
5005 changed then calling set_modified() manually. I guess this is
5006 maybe more flexible. It seems logical.
5008 Fri Nov 3 08:58:38 2000 Tim Janik <timj@gtk.org>
5010 * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
5013 * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
5015 Thu Nov 2 14:10:51 2000 Owen Taylor <otaylor@redhat.com>
5017 * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
5020 2000-11-02 Havoc Pennington <hp@redhat.com>
5022 * gtk/testgtk.c (create_labels): had a test backward
5024 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
5025 fields, so the dest GC ends up with the correct clip origin,
5026 etc. Fixes a bug where colored labels didn't redraw
5029 2000-11-02 Alexander Larsson <alexl@redhat.com>
5031 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5032 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
5033 gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
5034 Add last argument to t_type_register_static call.
5036 * gdk/linux-fb/gdkdrawable-fb2.c:
5037 Add last argument to t_type_register_static call.
5038 export the get_image drawable virtual function.
5040 * gdk/linux-fb/gdkimage-fb.c:
5041 Add last argument to t_type_register_static call.
5042 rename gtk_image_get to _gdk_fb_get_image and
5043 export it for use by gdkdrawable-fb2.
5045 * gdk/linux-fb/gdkprivate-fb.h:
5046 export _gdk_fb_get_image.
5048 * gdk/linux-fb/gdkselection-fb.c:
5049 Add new api call stubs.
5052 Missing ( in linux-fb part.
5054 * modules/linux-fb/Makefile.am:
5055 Must link with gdk_pixbuf or get unresolved symbol.
5057 2000-11-01 Havoc Pennington <hp@pobox.com>
5059 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use
5060 GTK_TYPE_TEXT_ITER and BOXED marshallers
5062 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
5064 * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
5066 * gtk/gtk-boxed.defs: add GtkTextIter
5068 * gtk/gtkmarshal.list: Add marshallers for text widget that
5069 properly use OBJECT and BOXED
5071 2000-11-01 Havoc Pennington <hp@redhat.com>
5073 * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
5075 * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
5076 before returning it.
5078 2000-11-01 Havoc Pennington <hp@redhat.com>
5080 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5081 Clip the rectangle to be rendered to the drawable, since
5082 get_from_drawable() requires a region within the drawable
5084 2000-11-01 Havoc Pennington <hp@redhat.com>
5086 * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
5089 Wed Oct 25 20:10:57 2000 Owen Taylor <otaylor@redhat.com>
5091 * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
5094 2000-11-01 Havoc Pennington <hp@pobox.com>
5096 * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
5098 (gtk_label_finalize): unref the attr list if any.
5100 * gtk/testgtk.c (create_get_image): close test on second click
5101 (make_message_dialog): close dialog if it exists
5103 * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
5105 * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
5108 * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
5109 from Pango markup format
5110 (gtk_label_set_markup_with_accel): ditto but with accelerator
5113 * gtk/gtkimage.c (gtk_image_expose): reformatting.
5115 * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
5116 reflect current state of GDK - use gdk_drawable_get_colormap, etc.
5117 Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
5118 call gdk_window_get_origin().
5120 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5121 implement GDK_PIXBUF_ALPHA_FULL
5123 Wed Nov 1 03:43:42 2000 Tim Janik <timj@gtk.org>
5125 * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
5126 g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
5127 g_signal_handlers_disconnect_matched to block/unblock and disconnect
5128 multiple handlers respectively, instead of only treating the
5129 first handler found (bug reported by owen).
5131 Mon Oct 30 19:23:50 2000 Jonathan Blandford <jrb@redhat.com>
5133 * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
5135 * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
5137 * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
5138 gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
5139 gtk/gtktreeviewcolumn.h: Fixed inline docs.
5141 * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
5142 widget. Needs writing someday.
5144 * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
5147 2000-10-30 Havoc Pennington <hp@redhat.com>
5149 * gtk/gtktextview.h, gtk/gtktextview.c:
5150 Rename delete_at_cursor delete_from_cursor, and
5151 move to move_cursor.
5153 2000-10-30 Havoc Pennington <hp@redhat.com>
5155 * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
5156 gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
5157 gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
5158 gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
5159 gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
5160 gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
5161 gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
5162 gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
5163 gtktexttypes.h, gtktextview.c, gtktextview.h:
5165 Massive reindentation and reformatting. Arg alignment and comments
5166 still need fixing in various places.
5168 2000-10-30 Havoc Pennington <hp@redhat.com>
5170 * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
5171 to be named insert_at_cursor and delete_at_cursor so C++ can
5174 2000-10-28 Tor Lillqvist <tml@iki.fi>
5176 * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
5177 to get a double directory separator in case the home directory
5178 ends with one. This would cause trouble especially on Windows,
5179 where the path will be confused with the syntax for an an UNC
5180 (network share) path \\server\share\path.
5181 (gtk_rc_add_initial_default_files): Ditto.
5183 Sat Oct 28 02:33:09 2000 Robert Brady <robert@suse.co.uk>
5185 * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
5187 * gtk/gtktextview.c: Use correct marshallers.
5189 Fri Oct 27 17:56:26 2000 Jonathan Blandford <jrb@redhat.com>
5191 * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to
5192 use new iter stuff, and added all the appropriate signals et al.
5194 * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
5195 code is internal to gtk only.
5197 2000-10-28 Tor Lillqvist <tml@iki.fi>
5200 * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
5201 glib-genmarshal etc.
5203 Fri Oct 27 20:15:00 2000 Tim Janik <timj@gtk.org>
5205 * gtk/Makefile.am: added dependancies for testtextbuffer which broke
5208 Fri Oct 27 18:51:44 2000 Tim Janik <timj@gtk.org>
5210 * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
5212 2000-10-27 Robert Brady <robert@suse.co.uk>
5214 * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic),
5215 en_GB (British), ia (Interlingua).
5217 2000-10-26 Havoc Pennington <hp@redhat.com>
5219 * gtk/gtktextiter.c (my_strrstr): fix constness warning
5222 nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
5224 * gtk/gtktextsegment.c (char_segment_new): rename
5225 (_char_segment_new_from_two_strings): rename
5226 (_toggle_segment_new): rename
5228 * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
5229 (make_clipboard_widget): make it static
5230 (text_get_func): static
5231 (text_clear_func): static
5233 * gtk/gtkcolorsel.c (adjustment_changed): make this function
5235 (hex_changed): make it static
5236 (hsv_changed): make it static
5237 (opacity_entry_changed): make it static
5239 * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
5240 (toggle_segment_check_func): rename with _gtk
5242 * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
5243 (_widget_segment_new): rename
5244 (_widget_segment_add): rename
5245 (_widget_segment_remove): rename
5246 (_widget_segment_ref): rename
5247 (_widget_segment_unref): rename
5249 * gtk/gtktextmark.c (_mark_segment_new): Rename
5250 _gtk_mark_segment_new
5252 2000-10-26 Havoc Pennington <hp@redhat.com>
5254 * gtk/gtkmarshal.list: add new marshallers used by the text widget
5255 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5258 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
5261 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
5262 gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
5263 license on these files.
5265 * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
5268 * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to
5269 runtime random number different for each tree, instead of
5270 a constant I made up.
5272 Thu Oct 26 07:36:16 2000 Tim Janik <timj@gtk.org>
5274 * gtk/Makefile.am: buncha cleanups, kludged build sources
5275 dependencies with a Makefile: oldest-source-stamp dependancy
5276 for the moment. automake is really fighting us here, with
5277 intentionally not allowing user-defined rules or dependancies
5278 prior to it's -include $(DEP_FILES) statement. sucks rocks!
5280 * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
5281 to public headers. tehy have a comment stating that they are
5282 "semi-public" aren't included by gtk.h and if enums popup there,
5283 they can be /*< skip >*/-ed.
5285 * gtk/gtktextlayout.h:
5286 * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
5287 added LGPL... <SIGH>
5289 Wed Oct 25 20:40:25 2000 Jonathan Blandford <jrb@redhat.com>
5291 * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
5292 GtkTreeIter. Added iterators everywhere.
5294 * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
5296 * gtk/gtktreeviewselection.c: Changed to use the iterators.
5298 * gtk/gtktreestore.c: Changed to use the iterators.
5300 * gtk/gtkliststore.c: Commented out the code. Will convert to
5303 * gtk/gtkmodelsimple.c: Commented out the code. Will convert to
5306 * gtk/treestoretest.c: Changed to use iterators.
5308 * demos/testgtk/main.c: Moved to use the new iterator system.
5310 Thu Oct 26 02:10:32 2000 Tim Janik <timj@gtk.org>
5312 * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
5313 localization misbehaviour.
5315 * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
5316 a useless type without copy/free.
5318 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
5319 of GTK_TYPE_CTREE_NODE.
5321 Thu Oct 26 00:51:52 2000 Tim Janik <timj@gtk.org>
5324 (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
5327 * gtk/gtk-boxed.defs (GtkSelectionData): specify
5328 gtk_selection_data_copy and gtk_selection_data_free
5329 do GtkSelectionData work as params in signals.
5331 Wed Oct 25 20:47:41 2000 Tim Janik <timj@gtk.org>
5333 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
5334 implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
5335 couldn't they at least give it a non-standard name?
5337 * gtk/gtktextlayout.c: arg! yet another implementation of
5338 gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
5340 * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
5341 gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
5342 home. now i know this _is_ a conspiracy.
5344 * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
5347 * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
5348 (gtk_accel_group_create_add): marshaller signature fixups.
5350 * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
5351 pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
5353 * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
5356 Tue Oct 24 23:59:21 2000 Tim Janik <timj@gtk.org>
5358 * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
5359 due to the signal system changes, it wouldn't build currently. to
5362 * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
5364 * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
5365 so it needs gtk_marshal_VOID__ENUM() instead of
5366 gtk_marshal_NONE__UINT().
5368 * gdk/gdk*.c: adapted type registration functions.
5370 * gtk/gtkbindings.c:
5371 * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
5374 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
5377 (gtk_object_destroy):
5378 (gtk_object_shutdown): fixed recursion guards. basically we have to
5379 catch the case where any of GObject.shutdown() or gtk_object_destroy()
5380 is called during ::destroy, and avoid recursion there.
5382 * gtk/gtktypeutils.c:
5383 * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
5384 boxed_copy/boxed_free. this needs a more general solution based on a
5385 publically installed code-generator utility.
5387 * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
5388 glib's gobject has support for that now.
5389 define GtkSignalMarshaller in terms of GSignalCMarshaller.
5391 Mon Oct 23 09:36:42 2000 Tim Janik <timj@gtk.org>
5393 * gtk/gtksignal.[hc]:
5394 * gtk/gtkmarshal.[hc]:
5395 * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
5396 compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
5397 removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
5400 * *.c: marshaller name fixups.
5402 * gtk/gtkmarshal.list: added a comment briefing the format.
5404 Sun Oct 22 23:14:39 2000 Tim Janik <timj@gtk.org>
5406 * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
5407 compatibility macros here now. more specifically, most of
5408 the API is preserved (yes, _most_, nonwithstanding the
5409 following exceptions listed, the API is stil lHUGE ;)
5410 things that got removed completely:
5411 GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
5412 gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
5413 gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
5414 gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
5415 gtk_signal_remove_emission_hook().
5416 non-functional functions variants:
5417 gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
5418 the GtkCallbackMarshal argument to gtk_signal_connect_full() is
5419 not supported anymore.
5420 (gtk_signal_compat_matched): new internal function to aid
5421 implementation of the compatibility macros, it provides
5422 functionality to block/unblock/disconnect handlers based
5425 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
5427 * *.c: adaptions to new type registration API signatures.
5429 Fri Oct 20 15:26:33 2000 Tim Janik <timj@gtk.org>
5431 * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
5433 2000-10-25 Robert Brady <robert@suse.co.uk>
5435 * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
5436 gdk_property_delete): If window == NULL, assume the root window.
5437 (restoring the behaviour that was in 1.2).
5439 * gtk/testtext.c (save_buffer): Allow creation of new files when
5442 (fill_file_buffer): Don't die if a UTF-8 sequence is split across
5445 2000-10-25 Tor Lillqvist <tml@iki.fi>
5447 * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
5449 * gdk/win32/gdkdrawable-win32.c
5450 * gdk/win32/gdkimage-win32.c
5451 * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
5454 * gdk/win32/gdkcc-win32.c
5455 * gdk/win32/gdkcolor-win32.c
5456 * gdk/win32/gdkfont-win32.c
5457 * gdk/win32/gdkinput-win32.c
5458 * gdk/win32/gdkmain-win32.c
5459 * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
5461 2000-10-24 Havoc Pennington <hp@redhat.com>
5463 * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
5464 it a static function
5466 * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5467 redraw text when a tag is applied to it.
5469 * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5470 (gtk_text_tag_affects_nonsize_appearance): private functions to
5471 see if a tag requires various kinds of redraw/layout to be queued
5474 * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5476 * gtk/testtext.c (fill_example_buffer): Put the cursor
5477 at the start of the buffer, so search works by default
5479 * gtk/gtktextiter.c (lines_match): init match_start always
5481 * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5482 function, get iter at a line + a byte index
5484 * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5485 to set byte position within a line
5486 (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5488 2000-10-23 Havoc Pennington <hp@redhat.com>
5490 * gtk/testtext.c: Re-enable the "find" dialog
5492 * gtk/testgtk.c: Add test for gdk_drawable_get_image
5494 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5495 the arguments to gdk_draw_drawable were in the wrong order
5496 (gdk_window_paint_init_bg): This function was ignoring the
5497 init_region, instead of clipping to it, so the entire backing
5498 pixmap was cleared on every begin_paint()
5499 (gdk_window_begin_paint_region): Hmm, the same list-walking bug
5500 was in here again, the loop kept using the same GtkWindowPaint
5502 (gdk_window_begin_paint_region): Fix a bug where we had two
5503 x_offset instead of x_offset and y_offset
5505 * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
5506 before we get the image.
5507 (gdk_draw_drawable): get the composite before we draw the drawable.
5508 (gdk_drawable_real_get_composite_drawable): default
5509 get_composite_drawable implementation that returns the drawable
5512 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
5513 get_composite_drawable virtual function
5515 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
5518 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
5519 make this work if the source drawable is a GdkDrawableImplX11
5520 instead of a public drawable type. This is really broken; the
5521 problem is that GdkDrawable needs a virtual method get_xid(), but
5522 of course that doesn't work in practice. Enter RTTI.
5524 Also, improve mismatched depth message.
5526 * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
5529 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
5530 install _gdk_x11_get_image as our implementation of get_image
5532 * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
5533 _gdk_x11_get_image and export for use in gdkdrawable-x11.c
5535 * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
5536 gdk_drawable_get_image
5538 * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
5540 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
5543 * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
5544 trailing semicolon after for loop
5546 Mon Oct 23 12:07:57 2000 Owen Taylor <otaylor@redhat.com>
5548 * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
5549 where font_desc for widget's context lagged widget's font_desc by
5552 2000-10-22 Tor Lillqvist <tml@iki.fi>
5554 * gdk/win32/gdkgc-win32.c
5555 * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
5557 * gtk/makefile.mingw.in
5558 * gtk/gtk.def: Updates.
5560 * gtk/testgtk.c: sleep() is called _sleep in MS's C
5563 * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
5565 * gtk/makefile.msc: Remove
5567 * gtk/makefile.msc.in: New file, like makefile.mingw.in.
5569 * gtk/Makefile.am: Add it.
5571 * configure.in: Generate it.
5573 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
5574 * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
5575 something even if not implemented, to satisfy picky MSVC.
5577 Patches by Hans Breuer:
5579 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
5580 SetBkMode() and SetTextAlign() before calling
5581 pango_win32_render().
5583 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
5584 Set hcliprgn to NULL after destroying it.
5585 (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
5587 * gdk/win32/gdkgeometry-win32.c
5588 (_gdk_windowing_window_queue_antiexpose): More effective
5591 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
5592 depth as default, not the visual's.
5594 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
5595 against empty title.
5597 * gdk/win32/gdkprivate-win32.h: Define a helper macro,
5600 * gdk/win32/gdkimage-win32.c: Use it.
5602 2000-10-22 Robert Brady <robert@suse.co.uk>
5604 * configure.in: Check for bind_textdomain_codeset
5606 * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset
5607 present, make use of it.
5609 Add a translatable string "default:LTR" which, if translated
5610 to "default:RTL", will cause the default direction to be
5613 * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget
5614 direction if marked as flippable.
5616 * gtk/gtkhscale.c: Mark widget as flippable.
5618 2000-10-04 Havoc Pennington <hp@redhat.com>
5620 * gtk/testgtk.c (create_buttons): create some stock buttons
5621 with the default accel group
5622 (create_image): test some new GtkImage features
5623 (make_message_dialog): test GtkMessageDialog
5624 (create_modal_window): fix someone's bizzarro indentation
5626 * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement
5627 GTK_WIN_POS_CENTER_ON_PARENT.
5628 Add "destroy with parent" setting, which means the window goes
5629 away with its transient parent.
5630 (gtk_window_get_default_accel_group): get the default accel group
5632 (gtk_window_set_destroy_with_parent): set/unset destroy with
5634 (gtk_window_read_rcfiles): invalidate icon set caches
5635 after reloading rcfiles
5637 * gtk/gtkenums.h (GtkWindowPosition): add
5638 GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog
5639 on its parent window when the dialog is mapped for the first time.
5641 * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add
5642 a simple message dialog class
5644 * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event
5645 handler to emit response signal, and maybe later it would
5646 honor a hide_on_delete flag - though that isn't there yet.
5647 Set border width on the vbox to 2, so we get some padding.
5648 Use a button box for the action area.
5649 (gtk_dialog_key_press): synthesize a delete event if Esc
5650 is pressed and the GtkWidget key press handler didn't
5651 handle the escape key.
5652 (gtk_dialog_new_with_buttons): new function creates a dialog
5653 with some default buttons in it.
5654 (gtk_dialog_add_action_widget): add an activatable widget
5655 as a button in the dialog - you can also add a non-activatable
5656 widget by accessing the action area directly.
5657 (gtk_dialog_add_button): add a simple button - stock ID or
5658 label - to the action area
5659 (gtk_dialog_response): emit response signal
5660 (gtk_dialog_run): block waiting for the dialog, return
5661 the response. Override normal delete_event behavior, so that
5662 delete_event does nothing inside gtk_dialog_run().
5664 * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
5665 emitted when an action widget is clicked or the dialog gets
5668 * gtk/gtk.h: add gtkmessagedialog.h
5670 * gtk/Makefile.am: add gtkmessagedialog.[hc]
5672 2000-10-18 Havoc Pennington <hp@redhat.com>
5674 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
5675 where any number of empty lines would get skipped
5677 * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
5680 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
5681 warning about invalid iterators (explain more thoroughly)
5682 (gtk_text_iter_in_region): rename gtk_text_iter_in_range
5684 * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
5687 * demos/*.c: Add error handling
5689 * gtk/gtktextbuffer.c: don't modify const iterators
5691 * gtk/gdk-pixbuf-loader.c: Add full error handling here
5693 * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
5696 * gtk/gtkiconfactory.c: Update to reflect addition of error
5697 handling to gdk-pixbuf loaders
5699 Wed Oct 18 11:14:05 2000 Owen Taylor <otaylor@redhat.com>
5701 * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
5702 move to new modularized testgtk.
5704 2000-10-17 Jonathan Blandford <jrb@redhat.com>
5706 * gtk/gtktreeview.c: Draw the arrows correctly.
5708 * gtk/gtktreemodel.c: Added user docs.
5710 * gtk/gtk.h: remove gtktreedatalist.h.
5712 * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
5713 parent when generating my type.
5715 * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5716 POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5718 2000-10-16 Jonathan Blandford <jrb@redhat.com>
5720 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5721 GtkTreeModel from object to interface.
5723 2000-10-16 Havoc Pennington <hp@redhat.com>
5725 * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing
5728 2000-10-16 Jonathan Blandford <jrb@redhat.com>
5730 * gtk/gtktreeselection.c: Add API documentation to all public
5733 * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5736 2000-10-15 Jonathan Blandford <jrb@redhat.com>
5738 * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5739 proposed by Guy Harris <gharris@flashcom.net>. Also, added API
5740 docs to all public functions.
5742 * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5743 gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5744 gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5745 gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5746 gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5749 2000-10-14 Robert Brady <robert@suse.co.uk>
5751 * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5753 2000-10-12 Jonathan Blandford <jrb@redhat.com>
5755 * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5756 values other then G_TYPE_STRING.
5757 * gtk/gtktreeselection.c: Minor commenting updates.
5758 * gtk/gtktreeview.c: Format updates.
5760 2000-10-09 Tor Lillqvist <tml@iki.fi>
5762 * README.win32: Update.
5764 * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5765 lines that had been deleted by mistake (?).
5767 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5768 also the case fg==white and bg==black (but still not randomly
5769 coloured cursors). Thanks to Wolfgang Sourdeau.
5771 * gdk/win32/*.c: Silence gcc -Wall.
5773 * gtk/gtk.def: Add missing entry points.
5775 Fixes by Hans Breuer:
5778 * gdk/win32/makefile.msc: Update.
5780 * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5781 some MSVC thing, presumably), cause breakpoint on failures. Add
5782 GDK_NOR case. Call g_log_set_always_fatal.
5784 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5785 should be pased by reference.
5787 * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5789 * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5791 * gdk/win32/gdkevents-win32.c
5792 * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5794 * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5795 implementation object.
5797 * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5800 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5801 Use the wrapper object.
5803 2000-10-06 Havoc Pennington <hp@redhat.com>
5805 * Makefile.am (SRC_SUBDIRS): contrib subdir
5807 * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5808 so it can be used in Xlib version
5810 * demos/testpixbuf.c (update_timeout): error checking from 1.0
5813 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5814 change from 1.0 tree that returns first frame of animation
5815 if the loaded file is an animation.
5817 * contrib: add new directory to hold stuff that comes with GTK+
5818 but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5820 * configure.in: add contrib/*
5822 2000-10-05 Havoc Pennington <hp@redhat.com>
5824 * demos/testpixbuf-save.c: add pixbuf save test
5826 * demos/Makefile.am: add testpixbuf-save.c
5828 2000-10-05 Jonathan Blandford <jrb@redhat.com>
5830 * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5831 GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5832 * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5833 * gtk/gtktreeselection.[ch]: Replaced
5834 "node_selected"/"node_unselected" signal with "selection_changed"
5837 2000-10-04 Jonathan Blandford <jrb@redhat.com>
5839 * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5842 2000-10-04 Jonathan Blandford <jrb@redhat.com>
5844 * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5847 Wed Oct 4 15:52:15 2000 Owen Taylor <otaylor@redhat.com>
5849 * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5850 Move list pointer forwards before removing item from
5851 list. (Crash reported by Salmaso Raffaele)
5853 * gdk/gdkwindow.h: Remove spurious trailing ,
5855 * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
5856 dependencies on uninstalled libraries, sorry folks.
5858 2000-10-04 Havoc Pennington <hp@redhat.com>
5860 * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5861 gtk/gtkiconfactory.c: Fix copyrights
5863 * demos/testpixbuf.c: add inline pixbuf test
5865 Mon Sep 25 15:05:17 2000 Owen Taylor <otaylor@redhat.com>
5867 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
5868 Add gdk_window_iconify.
5870 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
5871 (gdk_window_set_geometry_hints): Add win_gravity
5872 to geometry structure.
5874 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
5875 Implement _NET_WM_PING.
5877 * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
5878 Set _NET_WM_PID on the client leader.
5880 * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
5881 Handle UTF-8 better.
5883 * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
5884 UTF-8 better, set _NET_WM_NAME as well. Only set
5885 icon name if it hasn't previously been explicitely
5888 2000-10-03 Havoc Pennington <hp@redhat.com>
5890 * gtk/testtextbuffer.c: clean up trailing whitespace,
5891 add extensive tests for tag toggle iteration.
5893 * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
5896 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5897 optimize case where the tag root is on level 1
5898 (gtk_text_line_previous_could_contain_tag): attempt to implement
5899 (gtk_text_line_next_could_contain_tag): Abstract out node_compare
5902 * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
5903 Implement this, though not very efficiently.
5905 * gtk/gtktextiterprivate.h: reformat
5907 * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
5910 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
5911 this to properly revalidate the iterators.
5913 * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
5914 properly at the end of the line (and therefore on empty lines)
5916 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
5917 maybe we should return a value...
5919 2000-10-03 Tor Lillqvist <tml@iki.fi>
5921 * config.h.win32: Guard definition of alloca(). glib.h now handles
5925 * gtk/gtk.def: Add new entry points.
5927 Changes just to make GTK+ build without errors on Win32. No hope
5928 of it working in its current state, though...:
5930 * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add
5931 some functions from the X11 backend, just to make GTK+ build.
5933 * gdk/makefile.mingw.in
5934 * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
5935 number. Add new object files.
5937 * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
5938 GetMessageTime to get timestamp (where on X11 uses
5939 gdk_x11_get_server_time()).
5941 2000-10-02 Havoc Pennington <hp@pobox.com>
5943 * gtk/gtktextview.c: text_window_* weren't static and should have
5945 Start work on child widgets; not yet complete, syncing to
5948 * gtk/gtktextchild.h: change this to contain a public interface,
5949 starting work on child interfaces.
5950 * gtk/gtktextchildprivate.h: move private interfaces here
5952 * gtk/Makefile.am: update to reflect gtktextchildprivate.h
5954 * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
5955 gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
5956 gtk/gtktextmark.c: copyright notices
5958 * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
5961 * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
5964 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5967 2000-09-30 Havoc Pennington <hp@pobox.com>
5969 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
5970 NULL start/end pointers
5972 * gtk/gtktextbuffer.c: Write some docs
5973 (gtk_text_buffer_get_selection_bounds): Allow start/end to be
5974 NULL, so you can just check whether there's a selection.
5976 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
5977 cleanup_line or segments_changed ourselves, it gets done
5980 * gtk/gtktextmark.h:
5981 s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
5983 * gtk/gtktextsegment.h: Clean up some indentation and naming mess
5985 * gtk/gtktextmark.c: delete some more old Tk cruft
5987 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
5988 mark before removing it, so we can emit MARK_DELETED with a valid
5990 (gtk_text_buffer_mark_set): hold ref across signal emission
5992 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
5993 whining about attempts to delete special marks
5995 * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
5996 underscore, since it's internal.
5998 * gtk/gtktextbuffer.h: Remove find_string prototype, this is
5999 now implemented in terms of iterators in gtktextiter.h
6001 * gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
6002 New function, destructively sets contents of buffer. Also
6003 a convenient way to clear the buffer by setting text to ""
6005 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
6006 multiline string literal
6008 * gtk/testtext.c (text_changed_callback): Redraw line numbers if
6011 * gtk/gtktextiter.c (forward_char): Return FALSE if new location
6012 is not dereferenceable
6013 (gtk_text_iter_forward_lines): fix return value
6015 2000-09-29 Havoc Pennington <hp@redhat.com>
6017 * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
6019 * gtk/gtktextview.c: Implement drag thresholding; change functions
6020 that set border window size to have nicer name
6021 (gtk_text_view_mark_set_handler): Fix this to have the
6024 * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
6026 * gtk/testtext.c: Update with API changes, put line numbers on
6029 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
6032 * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
6033 pixbuf; delete a big block of #if 0 Tk code
6035 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
6036 insert_pixmap with insert_pixbuf
6038 2000-09-29 Martin Baulig <baulig@suse.de>
6040 * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
6041 confusion with the GdkPixbuf of the GNOME 1.x platform.
6043 2000-09-29 Havoc Pennington <hp@pobox.com>
6045 * gtk/gtktextview.c: Implement the side windows.
6047 * gtk/testtext.c: Implement simple line numbering in the
6048 left side window; seems to make scrolling sloooow. Oops.
6049 Also, cursor blink is for some reason causing redraws
6050 of the line numbers. Should investigate...
6052 2000-09-28 Havoc Pennington <hp@redhat.com>
6054 * gtk/gtktextview.c: Set up infrastructure to deal with lots of
6055 scrolling child windows, and draw focus rectangle properly.
6057 (gtk_text_view_buffer_to_window_coords):
6058 Coordinate transformation to deal with all these freaking windows
6060 (gtk_text_view_window_to_buffer_coords): transform the other way
6062 * gtk/testtext.c (create_buffer): Update to match Pango API change
6064 * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
6066 (foreach_unref): don't emit remove signal from finalize, just
6067 set tag's parent to NULL
6069 2000-09-26 Havoc Pennington <hp@redhat.com>
6071 * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
6074 2000-09-26 Havoc Pennington <hp@redhat.com>
6076 * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
6077 headers into the private header list
6079 * Makefile.am (pkgconfig_DATA): install pkg-config files
6081 * configure.in: add pkg-config files
6083 * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
6085 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
6086 outstanding icon caches on theme change.
6088 * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
6091 (GtkIconSource): Specification for creating a pixbuf
6092 appropriate for a direction/state/size triplet from
6093 a source pixbuf or filename
6095 (GtkIconSet): List of GtkIconSource objects that are used to
6096 create the "same" icon (e.g. an OK button icon), and cache for
6099 (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
6100 up the icon set for a given stock ID. GTK maintains a stack of
6101 GtkIconFactory to search, and applications or libraries can add
6102 additional icon factories on top of the stack
6104 * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
6105 the set of GtkIconSource specified for a given stock ID into
6106 a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
6107 RcStyle, under the specified stock ID.
6109 * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
6110 render_icon used to derive a GdkPixbuf from a GtkIconSource.
6111 This allows people to theme how prelight, insensitive, etc. are
6114 (gtk_style_lookup_icon_set): Look up a stock ID in the list of
6115 icon factories for a style, and return the resulting
6118 (gtk_style_render_icon): Render an icon using the render_icon
6119 method in the GtkStyleClass.
6121 * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
6122 Use the style for a given widget to look up a stock ID, get the
6123 icon set, and render an icon using the render_icon method
6126 * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
6127 (contains information about a stock item), the built-in stock item
6128 IDs, and functions to add/lookup stock items.
6130 * gtk/stock-icons/*: Stock icons that come with GTK
6132 * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
6133 a button based on a GtkStockItem
6134 (gtk_button_new_accel): Takes a uline string and accel group, and
6135 installs the accelerator.
6137 * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
6138 image-display widget.
6140 2000-09-25 Havoc Pennington <hp@redhat.com>
6142 * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
6144 * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
6145 Fix a bug when removing node data, we didn't properly
6146 re-splice the linked list after removing the data.
6148 * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
6149 GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
6151 * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
6153 * gtk/gtktextlayout.c (set_para_values): Set tab array
6154 for the layout from the GtkTextTag.
6156 * gtk/gtktexttypes.h: delete tab and search cruft,
6157 remove g_convert() in favor of GLib version
6159 * gtk/gtktexttypes.c: remove tab implementation from here,
6162 * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
6163 tab stuff using new PangoTabArray from Pango
6165 * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
6166 unused border_width stuff
6168 Thu Sep 14 12:21:12 2000 Owen Taylor <otaylor@redhat.com>
6170 * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
6171 glib) and now useless utf_to_latin1() latin1_to_utf()
6173 * gtk/gtktextview.[ch]: Change ::move_insert and
6174 ::delete_text action signals to ::move and ::delete;
6175 create the signals with the right enumeration type,
6176 not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
6177 C-v bindings, change Home, End to move to beginning/end
6178 of line, Add C-Home C-End to move to beginning/end
6179 of buffer. Change ::cut_text to ::cut_clipboard, etc;
6180 combine ::scroll_text into ::move; use new GtkSelectionData
6181 functions to simplify DND text handling.
6183 * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
6184 deletion enumerations here, rename enumeration values to
6185 be consistently plural.
6187 * gtk/gtktextbuffer.c: Use new clipboard interfaces
6188 for cut/copy/paste and primary selection.
6190 * gtk/gtktextbuffer.[ch]: Remove excess time and
6191 'interactive' arguments from cut/copy/paste;
6192 rename cut to cut_clipboard, etc; remove
6193 gtk_text_buffer_get_clipboard_contents().
6195 * gtk/gtktextlayout.[ch]: Add
6196 gtk_text_layout_move_iter_to_line_end() to move the iter to
6199 * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
6200 Functions to set or get a UTF-8 string on the selection
6203 * gtk/gtkclipboard.[ch]: New, simplified selection handling
6206 * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
6207 created widgets - one of these is useless if we don't.
6209 * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
6210 a public function clear all targets registered for the
6213 * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
6214 Never call gtk_widget_realize() - that was just asking
6215 for bizarre side-effects.
6217 * gtk/gtkselection.c (gtk_selection_owner_set): Call
6218 gdk_selection_owner_set even if the widget is the
6219 same so that we reliably update the timestamp on
6222 * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a
6223 gdk_x11_get_server_time() function.
6225 * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
6226 gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
6227 Add some tricky filtering on serial numbers for
6228 selection clear events to fix up long-standard
6229 race condition FIXME's in gtkselection.c.
6231 * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
6232 routines to convert from utf8 to compound text or
6233 STRING and from a text property to UTF-8.
6235 * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add
6236 a convenience function gdk_get_current_event_time().
6238 * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
6239 and free selection_data->data properly
6241 Sat Sep 9 10:23:53 2000 Owen Taylor <otaylor@redhat.com>
6243 * gtk/gtkthemes.c: Remove some unecessary includes.
6245 2000-09-08 Jonathan Blandford <jrb@redhat.com>
6247 * gtk/gtktextdisplay.c
6248 * gtk/gtktextlayout.c
6251 * gtk/testtext.c: Change the overstrike property to strikethrough,
6252 to closer match pango.
6254 Fri Sep 8 14:28:00 2000 Owen Taylor <otaylor@redhat.com>
6256 * gtk/gtktextview.c: Fix up visibility so that focus,
6257 cursor_visible and blink interact properly. Reenable cursor blink
6258 which had been roughly disabled. Make blink and focus
6261 * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
6262 Add a flag for whether to display insertion cursor and
6263 a function to set the flag.
6265 * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
6266 get_line_y() to get_line_yrange(), to be a bit more generally
6269 Thu Sep 07 20:54:33 2000 George Lebl <jirka@5z.com>
6271 * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region
6272 do stop_navigating_submenu, to clear last timeout properly.
6273 Also in gtk_menu_motion_notify move ignore_enter above
6274 the conditional to make it always happen as suggested by Owen
6276 2000-09-07 Tor Lillqvist <tml@iki.fi>
6278 * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
6280 * gdk/win32/gdkwin32.h: Add more definitions missing from the free
6283 * gdk/win32/gdkprivate-win32.h: Add a couple of missing
6286 * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
6287 (gdk_win32_get_colormap): A line had been deleted by mistake.
6289 * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
6290 (gdk_event_translate): Handle more virtual keycodes to be able to
6291 generate GDK events for Control-comma, Control-period, etc.
6293 * gtk/gtk.def: Add some missing entry points.
6295 Thu Sep 7 11:47:02 2000 Owen Taylor <otaylor@redhat.com>
6297 * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
6298 Doc comment fixing. (Mostly non-matching parameter names.)
6300 * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
6301 comments a little to avoid looking like a doc comment.
6303 * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
6304 GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
6305 conversions be changed to GError?)
6307 * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT):
6308 Move private #defines into .c file.
6310 * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
6311 order of argument addition, remove duplicates.
6313 * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
6314 parent class is FrameClass, not BinClass.
6316 * gtk/gtk.h: Add gtkinvisible, which was missing.
6317 (It's occasionalyl useful for client apps, if seldom.)
6319 * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
6322 Wed Sep 6 09:53:15 2000 Owen Taylor <otaylor@redhat.com>
6324 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
6325 coordinates when creating window, instead of GDK-space
6326 coordinates. (Avoid BadValue on too large windows.)
6328 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6330 * configure.in (use_mmx_asm): Remove conftest* after use along the
6331 lines of AC_TRY_COMPILE.
6333 * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
6334 of g_dirname, which is deprecated.
6335 (gtk_rc_parse_any): Removed calls to
6336 g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
6338 * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
6339 Removed calls to g_hash_table_{freeze,thaw}, as they are
6342 * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
6343 instead of g_basename.
6345 2000-09-04 Elliot Lee <sopwith@redhat.com>
6347 * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
6350 Sun Sep 03 00:47:08 2000 George Lebl <jirka@5z.com>
6352 * gtk/gtkwidget.h: Add some documenting comments about
6353 GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
6354 just as owen said on irc.
6356 * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly
6357 set HAS_DEFAULT. Only set it if there isn't another window
6358 holding it (a focus window which RECEIVES_DEFAULT) and only unset
6359 it if the widget is not the focused window with RECEIVES_DEFAULT.
6360 This fixes weird double default bugs in dialogs which has things
6361 call gtk_window_set_default at times.
6363 Fri Sep 1 22:39:07 2000 Owen Taylor <otaylor@redhat.com>
6365 * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
6366 Nils Barth and David Santiago to improve submenu
6367 navigation. The patch does this by creating a triangular
6368 region from the point where the pointer leaves the
6369 menu to the submenu. While the pointer is in
6370 that region and a timeout has not expired, events
6371 that would cause the active submenu to change are
6374 Fri Sep 1 15:34:46 2000 Owen Taylor <otaylor@redhat.com>
6376 * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
6377 moving a toplevel window immediately after sizing it would
6378 result in it being sized back to the old size since
6379 impl->width, impl->height aren't updated until we hear
6380 back from the server. There is still a (longstanding) bug
6381 here that gdk_window_get_size() will give the wrong size
6382 until we do hear back.
6384 2000-08-31 Havoc Pennington <hp@redhat.com>
6386 * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h,
6387 gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c,
6388 gtk/gtktexttagprivate.h, gtk/gtktextview.c:
6389 Rename GtkTextStyleValues to GtkTextAttributes
6391 2000-08-31 Havoc Pennington <hp@pobox.com>
6393 * gtk/gtktextbtree.c (GtkTextBTree): cache end line,
6394 for rapid testing whether an iterator is the end iterator
6395 (gtk_text_btree_new): init end line cache
6396 (gtk_text_line_is_last): use fast cached line to
6397 see if we're the last line.
6398 (get_last_line): use cached line here too, should
6399 speed up some random unrelated code.
6401 2000-08-30 Havoc Pennington <hp@pobox.com>
6403 * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
6406 * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
6407 delete_text signals. This allows the signals to be used for
6410 * gtk/gtktextbuffer.c: Change signal handler signatures;
6411 provide "interactive" argument when emitting insert_text or
6414 2000-08-30 Havoc Pennington <hp@pobox.com>
6416 * gtk/gtktextbuffer.c: Docs
6418 Fri Aug 25 12:16:15 2000 Owen Taylor <otaylor@redhat.com>
6420 * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
6421 from switch statements, since Tor removed the enumeration
6424 * gdk/x11/gdkimage-x11.c (gdk_image_get):
6425 s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
6427 2000-08-29 Elliot Lee <sopwith@redhat.com>
6428 * */*.h: Use G_GNUC_CONST.
6430 2000-08-27 Havoc Pennington <hp@pobox.com>
6432 * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
6433 minor indentation fixes, inserted some FIXME about stuff I
6434 realized was broken while documenting it.
6435 (gtk_text_iter_get_pixmap): allow out params to be NULL, following
6438 Tue Aug 22 12:33:24 2000 Owen Taylor <otaylor@redhat.com>
6440 * gtk/testgtk.c (create_styles): Fix double free of
6443 Mon Aug 21 22:39:18 2000 Owen Taylor <otaylor@redhat.com>
6445 * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
6447 * gtk/testgtk.c (create_styles): Add a test for modifying
6448 the style through gtk_widget_modify_*.
6450 * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
6451 a function to get the current modifier style.
6453 * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
6454 of the passed in GtkRcStyle instead of ref'ing it.
6456 * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
6458 2000-08-20 Tor Lillqvist <tml@iki.fi>
6461 * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
6462 shared memory image+pixmap GdkImage type, or
6463 gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
6466 * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6467 actually call gtk_init_abi_check(), passing also
6468 sizeof(GtkWindow). Ditto for gtk_init_check().
6471 * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6472 New functions, used to check that the GTK+-using code has been
6473 compiled using the correct compiler and switches. In particular,
6474 with gcc one has to use the -fnative-struct switch as GTK+ is
6477 Fri Aug 18 17:27:46 2000 Owen Taylor <otaylor@redhat.com>
6479 * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6480 ->prev fields when merging lists. (Found simultaneously
6481 by Pawel Salek and Jakub Jelinek)
6483 2000-08-12 Tor Lillqvist <tml@iki.fi>
6486 * gtk/gtk.def: Add missing entries.
6488 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6489 OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6491 * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6492 function. Dummy implementation at this point.
6494 * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6495 rules. Undefine GTK_COMPILATION when compiling the test programs.
6497 * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
6499 2000-08-11 Tor Lillqvist <tml@iki.fi>
6501 * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
6502 to convert back and forth from UTF-8 and the "system" (or "current
6503 locale") charset when necessary. Indentation/spacing cleanup.
6505 2000-08-10 Havoc Pennington <hp@redhat.com>
6507 * Makefile.am (snapshot): Change the format of the snapshot
6508 version to match glib
6510 * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
6511 from EXTRA_DIST since it doesn't seem to exist
6513 2000-08-10 Tor Lillqvist <tml@iki.fi>
6515 * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
6516 version of the directory name (not the UTF-8 one) when building
6517 the path name to stat().
6519 2000-08-03 Elliot Lee <sopwith@redhat.com>
6521 * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
6522 PANGO_ATTR_SHAPE set.
6524 Thu Aug 3 09:17:06 2000 Owen Taylor <otaylor@redhat.com>
6526 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
6527 Peter Osterlund to simplify the code while keeping the
6528 functionality the same.
6530 Wed Aug 2 14:57:38 2000 Owen Taylor <otaylor@redhat.com>
6532 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
6533 is_viewable() test further inside the function, since removing the
6534 window from the redraw list without clearing ->update_area
6535 was also very broken.
6537 2000-08-02 Tor Lillqvist <tml@iki.fi>
6539 * configure.in: Check for <unistd.h>.
6541 2000-08-01 Martin Baulig <baulig@suse.de>
6543 * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
6544 to display the message that this is a development version of GTK+.
6546 Mon Jul 31 18:37:36 2000 Owen Taylor <otaylor@redhat.com>
6548 * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
6549 was depending on widget->allocation instead of the width of text_area,
6550 which was incorrect for subclasses like GtkSpinButton.
6552 * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
6553 with width == 1 tests that should be width == -1.
6555 Mon Jul 31 16:45:48 2000 Owen Taylor <otaylor@redhat.com>
6557 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken,
6558 (broken, Elliot, every single window blank on X) custom code with call
6559 to gdk_window_is_viewable() which a) prevents code duplicate and
6562 2000-07-31 Elliot Lee <sopwith@redhat.com>
6564 * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
6565 to get the GDK_PARENT_ROOT() macro to work.
6566 * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
6567 * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
6568 of, windows that aren't shown.
6569 * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
6572 Mon Jul 31 13:53:16 BST 2000 Tony Gale <gale@gtk.org>
6574 * docs/gtkfaq.sgml docs/gtk-faq.sgml:
6575 s/gtk_main_iteration/g_main_iteration/
6577 Did this already in change:
6578 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
6579 don't know how it got reverted.
6581 2000-07-31 Stanislav Brabec <utx@penguin.cz>
6583 * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
6584 gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
6586 * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
6589 2000-07-30 Pablo Saratxaga <pablo@mandrakesoft.com>
6591 * configure.in,po/{sp,sr}.po: Added Serbian files
6593 2000-07-30 Tor Lillqvist <tml@iki.fi>
6595 * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
6597 * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
6598 Remove the g_pipe_readable_msg stuff. Not needed with new GLib
6599 GIOChannel implementation.
6601 * gdk/win32/gdkinput.c
6602 * gdk/win32/gdkpango-win32.c: Update license name here, too.
6604 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
6605 definition to match prototype.
6607 * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
6609 2000-07-27 Elliot Lee <sopwith@redhat.com>
6611 * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
6612 function, to allow handling image formats that cannot be detected
6613 by looking at content alone.
6615 Thu Jul 27 13:13:21 BST 2000 Tony Gale <gale@gtk.org>
6617 * docs/tutorial/*.gif *.jpg *.eps
6618 Update these to the same look-n-feel.
6619 Why does including images in DocBook suck so badly?
6621 Thu Jul 27 05:06:29 2000 Tim Janik <timj@gtk.org>
6623 * gtk/gtktable.c: applied patch from Phil Thompson
6624 <phil@river-bank.demon.co.uk> that enables space settings for
6625 the last row/columns as well.
6627 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
6629 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
6630 updates the license headers to the GNU Lesser General Public License,
6631 as well as updating the copyright year to 2000.
6633 2000-07-26 Robert Brady <rwb197@zepler.org>
6635 * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
6636 and po/Makefile, was installing and looking for them under gtk20
6637 and gtk2 respectively.
6639 2000-07-25 Havoc Pennington <hp@redhat.com>
6641 * gtk/testtext.c: Comment out some stuff that depends on the rest
6644 2000-07-25 Havoc Pennington <hp@redhat.com>
6646 * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
6649 2000-07-25 Havoc Pennington <hp@redhat.com>
6651 * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
6654 * gtk/gtktextview.h: To be consistent with usage of "line"
6655 throughout the API to mean "newline-terminated thingy", change
6656 MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
6659 (GtkTextView): Add flags for default editability, and whether to
6660 show the cursor. Add functions to get/set that. Add
6662 (gtk_text_view_get_iter_location): new function
6664 * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
6666 (g_convert): Add g_convert temporarily, will go in glib in a bit
6668 * gtk/gtktexttagtable.h: include gtktexttag.h, and define
6669 GtkTextTagTableForeach instead of brokenly using GHFunc.
6670 Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
6672 * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
6673 moved to public header.
6675 * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
6676 "invisible", since "elide" was a bad name.
6677 (gtk_text_tag_get_priority): Added
6679 (GtkTextStyleValues): put this in public header, along with
6680 functions to use it.
6682 * gtk/gtktextmarkprivate.h: Include more headers, since we no
6683 longer include gtktextbtree.h.
6685 * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
6686 gtk_text_mark_deleted
6688 * gtk/gtktextlayout.h: Don't include the "really private" headers,
6689 only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
6690 to make this possible. Now we only need to install
6691 gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
6692 (However the Makefile.am isn't changed yet because of the
6693 logistics of merging gtk-hp-patches piecemeal)
6695 * gtk/gtktextiterprivate.h: include btree header, so it compiles;
6696 rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6697 gtk_text_iter_get_line is now used in the public API for a
6700 * gtk/gtktextiter.h: Clean up function names to be more
6701 consistent. Always call char offset "offset" and byte index
6702 "index". A "line" is always a line number.
6704 (gtk_text_iter_is_last): new function, more efficient than
6705 the existing way to check
6706 (gtk_text_iter_is_first): new function, also more efficient
6708 (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
6710 (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
6711 gtk_text_iter_forward_char, etc.
6713 (gtk_text_iter_forward_to_tag_toggle): Renamed from
6714 forward_find_tag_toggle, since this isn't a linear search
6716 (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6718 (gtk_text_iter_forward_search, gtk_text_iter_backward_search):
6719 New functions, search for a buffer substring.
6721 * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6722 interactive and default editable (since we need to store that info
6723 until we receive the selection data).
6725 Remove all the _at_char and at_line etc. versions of functions;
6726 only have iterator versions.
6728 Add _interactive() versions of functions, that consider the
6729 editability of text. (FIXME add interactive flag to the
6730 insert/delete signals per Darin's suggestion)
6732 (gtk_text_buffer_get_tag_table): new function, demand-creates the
6733 tag table if necessary
6735 Remove declaration of gtk_text_buffer_get_iter_from_string
6737 (_gtk_text_buffer_get_btree): private/internal function, added.
6740 * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6741 (gtk_text_line_is_last): new function
6743 2000-07-25 Havoc Pennington <hp@redhat.com>
6745 * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6746 using GtkProgressBar. See Changes-2.0.txt for details.
6748 * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6749 "pulse_step" which are the equivalent of
6750 gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6753 * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6754 (use_text_format) to mark whether text set on the progress bar is
6755 a format string. Deprecate entire GtkProgress interface.
6757 * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6758 (gtk_progress_build_string): make this a no-op if use_text_format
6761 * docs/Changes-2.0.txt: Describe progress bar changes.
6763 2000-07-25 Tor Lillqvist <tml@iki.fi>
6765 * Makefile.am: Include the build directory.
6767 * configure.in: Generate build/Makefile, build/win32/Makefile,
6768 gdk/, gdk/win32/, and gtk/makefile.mingw.
6770 * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6771 Add GETTEXT_PACKAGE.
6774 * gtk/gtk.def: Updates.
6777 * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6778 need them any longer.
6780 * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6782 * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6783 PANGOWIN32_LIBS and gdk_pixbuf.
6785 * gdk/win32: Compiles, but no doubt doesn't work at all.
6787 * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION.
6789 * gdk/win32/gdkinput.c: New file, temporarily.
6791 * gdk/win32/gdkinput-win32.h: New file
6793 * gdk/win32/gdkinputprivate.h: Remove.
6795 * gdk/win32/gdkpango-win32.c: New file.
6797 * gtk/makefile.mingw.in: New file
6799 * gtk/makefile.cygwin: Removed
6801 * gtk/Makefile.am: Update accordingly.
6803 * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6804 made externally visible.
6806 * gtk/gtkmain.c: Use it.
6808 * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6811 * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6813 2000-07-24 Elliot Lee <sopwith@redhat.com>
6814 * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6815 individual backends already.
6816 * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6817 again. Yes, there really is a good reason for this, if you are using the gdkregion
6818 internals, and if you're not, why do you care?
6819 * gdk/gdkwindow.c: Fix inverted condition
6820 * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6821 * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6822 * gtk/gtkrange.c: Redraw trough when moving.
6823 * gtk/gtktypeutils.c: Fix warning by adding const cast.
6824 * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6826 2000-07-23 Tor Lillqvist <tml@iki.fi>
6828 * configure.in: Check for mkstemp and sigsetjmp. Output
6829 gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6831 More work on GDK for Win32. Still in an intermediate state.
6833 * gdk/makefile.cygwin
6834 * gdk/win32/makefile.cygwin: Removed.
6836 * gdk/makefile.mingw.in
6837 * gdk/win32/makefile.mingw.in: New files.
6840 * gdk/win32/Makefile.am: Generate and distribute them.
6842 * gdk/win32/gdkwindow-win32.h
6843 * gdk/win32/gdkdrawable-win32.h
6844 * gdk/win32/gdkpixmap-win32.h: New files.
6846 * gdk/win32/gdkcolor-win32.c
6847 * gdk/win32/gdkcursor-win32.c
6848 * gdk/win32/gdkdrawable-win32.c
6849 * gdk/win32/gdkgc-win32.c
6850 * gdk/win32/gdkimage-win32.c
6851 * gdk/win32/gdkprivate-win32.h
6852 * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6853 Rename fields and variables called xcursor, xid, etc (these names
6854 were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
6856 Sat Jul 22 17:41:26 2000 Owen Taylor <otaylor@redhat.com>
6858 * gtk/gtkentry.[ch]: Fix some problems with vertical
6861 * gtk/gtkentry.c (gtk_entry_find_position): Fix
6862 char/byte confusion.
6864 Sat Jul 22 11:16:05 2000 Owen Taylor <otaylor@redhat.com>
6866 * gtk/gtktextview.c (changed_handler): Fix bug where
6867 redraw wasn't being done properly when height of
6868 dirty region changed.
6870 * demos/Makefile.am: Remove various references to
6873 Fri Jul 21 15:28:13 2000 Owen Taylor <otaylor@redhat.com>
6875 * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
6876 PangoAttrShape to reserve space for pixmaps, add
6877 GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
6878 in the display functions.
6880 * gtk/testgtk.c (create_layout): Set some more exotic
6881 scrolled window options
6883 * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
6884 Add function to set the shadow type of a window, to allow
6885 putting a shadow around widgets such as GtkLayout or GnomeCanvas
6886 which don't draw their own frame.
6888 Fri Jul 21 16:34:42 BST 2000 Tony Gale <gale@gtk.org>
6890 * docs/tutorial/package-db-tutorial.sh: New file for
6891 packaging DocBook format tutorial
6893 Fri Jul 21 14:23:51 BST 2000 Tony Gale <gale@gtk.org>
6895 * docs/tutorial/gtk-tut.sgml: Minor updates
6897 * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
6899 2000-07-19 Tor Lillqvist <tml@iki.fi>
6901 * gtk/gtksignal.c: Fix C++ comment.
6903 * gtk/gtkimmulticontext.c
6904 * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
6905 don't return value from void functions.
6907 * gtk/gtk.def: Add gtk_rc_style_unref.
6909 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6911 * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
6912 gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
6913 gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
6914 gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
6915 gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
6916 gtk/gtktypeutils.h: Include files outside of the extern "C"
6917 block. Makes some C++ compiler happy. Reported by Denis Vakatov
6918 <vakatov@peony.nlm.nih.gov>.
6920 Wed Jul 19 14:07:57 BST 2000 Tony Gale <gale@gtk.org>
6922 * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
6923 Completes first pass. Hurrah!
6925 Tue Jul 18 17:17:55 BST 2000 Tony Gale <gale@gtk.org>
6927 * docs/tutorial/gtk-tut.sgml: More clean ups.
6929 Mon Jul 17 18:52:38 2000 Owen Taylor <otaylor@redhat.com>
6931 * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
6932 paint the background of the text area which was accidentally
6933 removed at some point.
6935 * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:
6937 - Move most of the functionality from the theme vtable
6938 into GtkRcStyleClass and GtkStyleClass. The moved
6939 vtable functions were changed a bit in the move to
6940 work better in their new home.
6942 - Get rid of the engine and engine_data fields from
6943 GtkRcStyle and GtkStyle; instead the theme
6944 engine derives theme-specific subclasses of GtkRcStyle
6947 - Add extra dlsym() found entry point to themes,
6948 theme_create_rc_style().
6950 * gtk/gtkstyle.c: Copy xthickness, ythickness fields
6951 in gtk_style_real_copy.
6953 * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
6954 to register a type associated with an engine. (The engine
6955 won't be unloaded as there is an instance of the type.)
6958 Mon Jul 17 18:19:06 BST 2000 Tony Gale <gale@gtk.org>
6960 * docs/tutorial/gtk-tut.sgml: Clean ups.
6962 Mon Jul 17 13:59:29 BST 2000 Tony Gale <gale@gtk.org>
6964 * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
6965 of cleaning up to do.
6967 2000-07-15 Tor Lillqvist <tml@iki.fi>
6969 * gdk/testgdk.c: New file, quick hack to test backends for
6970 pixel-by-pixel correctness of the most simple graphic operations.
6972 Fri Jul 14 20:30:25 2000 Owen Taylor <otaylor@redhat.com>
6974 * Really release 1.3.1
6976 * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
6979 Fri Jul 14 18:40:39 2000 Owen Taylor <otaylor@redhat.com>
6983 Fri Jul 14 16:21:26 2000 Owen Taylor <otaylor@redhat.com>
6985 * gtk/gtktextlayout.c: use FALSE for size_only most
6986 of the time when calling gtk_text_layout_get_line_display()
6987 to avoid causing double reshapes when a redraw follows
6990 Tue Jul 11 11:13:40 2000 Owen Taylor <otaylor@redhat.com>
6992 * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
6993 appropriate region and gdk_window_process_updates() so trough
6994 updating doesn't lag behind the window being scrolled.
6996 * gdk/gdkgc.c: Make parent_class pointer static.
6998 Sun Jul 9 21:31:23 2000 Owen Taylor <otaylor@redhat.com>
7000 * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
7003 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
7004 cut-and-paste error in computing memory offset for 4 channels.
7006 Fri Jul 14 14:05:02 2000 Owen Taylor <otaylor@redhat.com>
7008 * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
7009 gtk_rc_append_default_pixmap_path(), since it wasn't
7010 adding an interesting path and we don't have a meaningful
7011 default for this value.
7013 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
7015 * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
7016 gtk-config to gtk-config-2.0 move gtk_.m4 to
7019 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7020 gdk/Makefile.am demos/Makefile.am: Change
7021 library names to libgtk-1.3.la, etc, so that we
7022 can distinguish gtk-1.2 and gtk-2.0 on the linkline.
7024 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7025 gdk/Makefile.am gdk/x11/Makfile.am
7026 Move include files into /usr/include/gtk-2.0,
7027 /usr/lib/gtk-2.0/include/
7029 * autogen.sh acconfig.h configure.in gtk/gtkmain.c
7030 gtk/gtkintl.h: Change package for gettext from
7031 gtk+ to gtk20. Put hack in autogen.sh to modify
7032 po/Makefile.in.in after gettextize to make this
7035 * gtk+.spec: Some updates, not tested.
7037 * gdk-pixbuf/Makefile.am: Move loaders into
7038 $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
7040 * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
7041 $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
7042 to THEMENAME/gtk-2.0/. Move engine directory to
7043 $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
7045 2000-07-12 Tor Lillqvist <tml@iki.fi>
7047 Win32 changes, still doesn't build though.
7049 * gdk/makefile.cygwin
7050 * gdk/win32/makefile.cygwin
7051 * gtk/makefile.cygwin: Updates.
7053 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
7054 default values for fg and bg pixel as X11 does (0 and 1), not
7055 black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
7056 Use 0 for pen width by default (treated as 1 anyway later, but for
7057 apps that might check the value in the GdkGC).
7058 (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
7059 interface to gdk_gc_predraw and _postdraw.
7061 * gdk/win32/gdkwin32.h
7062 * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
7064 * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
7065 extraneous semicolon.
7067 * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
7069 * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
7070 not the Win32 bitspixel value.
7072 * gdk/win32/gdkcc-win32.c:
7073 * gdk/win32/gdkcolor-win32.c
7074 * gdk/win32/gdkprivate-win32.h
7075 * gdk/win32/gdkwin32.h: Changes to make compilable, with new
7076 GDK object structure.
7078 Tue Jul 11 20:59:35 2000 Tim Janik <timj@gtk.org>
7080 * docs/tutorial/gtk_tut_12.es.sgml (name):
7081 * docs/tutorial/gtk_tut_it.sgml (name):
7082 * docs/tutorial/gtk_tut_fr.sgml (name):
7083 * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
7084 outdated email adress: s/timj@psynet.net/timj@gtk.org/.
7086 Tue Jul 11 13:10:57 BST 2000 Tony Gale <gale@gtk.org>
7088 * docs/faq/gtk-faq.sgml: Cleanup indenting and various
7091 Tue Jul 11 08:04:58 2000 Tim Janik <timj@gtk.org>
7093 * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
7094 a bug here, never been here and never fixed anything ;(
7095 (don't segfault if tree->root_tree is NULL, which happens prior
7096 to widget realization, but puke instead).
7098 Tue Jul 11 06:38:42 2000 Tim Janik <timj@gtk.org>
7100 * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
7101 add the necessary tokens.
7103 * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
7104 (gtk_rc_style_to_style): copy thicknesses.
7105 (gtk_rc_init_style): apply thicknesses.
7106 (gtk_rc_parse_style): parse xthickness and ythickness.
7108 * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
7110 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
7112 (_gdk_windowing_window_init):
7113 * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
7114 (gdk_pixmap_create_from_data):
7115 (gdk_bitmap_create_from_data):
7117 * gdk/x11/gdkimage-x11.c (gdk_image_get):
7119 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
7120 * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
7121 * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
7122 (gdk_colormap_get_system):
7124 * gdk/gdkwindow.c (gdk_window_init):
7125 * gtk/gtkstyle.c (gtk_style_new):
7126 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
7127 * gdk/gdkpixmap.c (gdk_pixmap_init):
7128 * gtk/gtkrc.c (gtk_rc_style_new):
7129 use g_object_new() instead of g_type_create_instance() which
7130 is a private function for fundamental type implementations.
7132 Thu Jul 6 16:12:14 2000 Owen Taylor <otaylor@redhat.com>
7134 * configure.in: Add check for db2html
7136 Thu Jul 6 14:53:05 2000 Owen Taylor <otaylor@redhat.com>
7138 * gtk/gtktypeutils.c (gtk_type_init): Add a temporary
7139 hack to set glib_debug_objects based on gtk_debug_flags.
7141 Thu Jul 6 14:12:13 2000 Owen Taylor <otaylor@redhat.com>
7143 * INSTALL.in: Update the Prerequisites section.
7145 * Makefile.am demos/Makefile.am docs/Makefile.am
7146 docs/tutorial/Makefile.am gdk/x11/Makefile.am
7147 gdk/linux-fb/Makefile.am: Dist fixes
7149 Thu Jul 6 12:26:03 2000 Owen Taylor <otaylor@redhat.com>
7151 * NEWS: 10,000 foot view of 1.3.1 changes.
7153 Thu Jul 6 11:54:03 2000 Owen Taylor <otaylor@redhat.com>
7155 * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
7156 gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
7157 gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
7158 gdk/x11/gdkmain-x11.c:
7160 Patch from George Lebl to add a GdkGrabStatus enumeration to use
7161 as a return value of gdk_*_grab(). Previously, we just
7162 returned the X11 values directly.
7164 Thu Jul 6 11:27:44 2000 Owen Taylor <otaylor@redhat.com>
7166 * gdk/x11/Makefile.am: Patch from George Lebl to
7167 install all the headers in the right place.
7169 Tue Jul 4 13:13:01 BST 2000 Tony Gale <gale@gtk.org>
7171 * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
7172 initial conversion to DocBook.
7174 2000-07-04 Tor Lillqvist <tml@iki.fi>
7176 * README.win32: Improve a bit.
7178 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
7179 WM_SYSCHAR, and other changes to get handling of Alt+nnn or
7180 Alt+0nnn on the numpad (used to enter characters by numeric code
7181 from current DOS or ANSI codepage) working correctly, as in other
7184 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
7185 same argument validity tests as in X11 version.
7186 (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
7188 * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
7189 definitions in case missing from headers.
7191 * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
7192 destroy the window-specific cursor.
7193 (RegisterGdkClass): Use the global gdk_ProgInstance instead of
7194 calling GetModuleHandle(NULL).
7195 (gdk_window_set_cursor): Reworked to always copy the passed cursor
7196 with CopyCursor before setting it as the window-specific
7197 cursor. It is OK for the caller to destroy the GdkCursor (and thus
7198 also its Windows cursor) after calling this function. Destroy any
7199 previous window-specific cursor.
7201 Mon Jul 3 17:54:49 2000 Owen Taylor <otaylor@redhat.com>
7203 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7204 font charset is iso8859-1, not iso-8859-1.
7206 Mon Jul 3 17:08:14 2000 Owen Taylor <otaylor@redhat.com>
7208 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7209 Use g_get_charset() instead of g_get_codeset().
7211 * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
7212 Comment out some strdup'ing functions to keep timj
7213 happy until we finish fighting this out.
7215 Mon Jul 3 14:24:16 2000 Owen Taylor <otaylor@redhat.com>
7217 * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
7220 * gtk/gtktable.c (gtk_table_attach): Fix missed merge
7221 from 1.2 for parent/child states.
7223 * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
7226 * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
7227 event structures, replace with a generic axes field. Replace
7228 deviceid/sourec with GdkDevice *device.
7230 * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
7231 to extract particular axis use value from event. (Also
7232 can be used for normal X/Y.)
7234 * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
7235 allow for arbitrary number of axes, namespace everything
7236 as gdk_device_*. Replace guint32 deviceid with GdkDevice *
7239 * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
7240 Get rid of the gdk_input_vtable setup if favor of simply
7241 defining the functions in gdkinput-none/gxi/xfree.c in
7242 a similar fashion to the way that the port structure is
7245 * gtk/gtkdnd.c: Fix fields of synthesized button press event
7246 for new event structures.
7248 * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
7249 new device interfaces.
7251 Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
7253 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
7254 set the initial text.
7256 * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
7257 gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
7258 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
7259 gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
7261 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7262 pango_layout_set_font_description to simplify.
7264 Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
7266 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7267 pango_layout_set_font_description to simplify.
7269 Sun Jul 2 17:06:40 2000 Owen Taylor <otaylor@redhat.com>
7271 * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
7272 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
7273 pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
7275 * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
7276 PANGO_PIXELS() macro.
7278 Sun Jul 2 15:24:41 2000 Owen Taylor <otaylor@redhat.com>
7280 * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
7281 that returns a PangoContext owned by the widget and updated to
7282 match future changes in the widget. Also, make
7283 gtk_widget_create_pango_layout() use this context. If we ever
7284 add a ::changed signal to PangoContext, this will make things
7285 much more convenient.
7287 * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
7288 in the appropriate places instead of destroying the layouts and
7291 * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
7292 in a few strategic places.
7294 Sun Jul 2 14:37:58 2000 Owen Taylor <otaylor@redhat.com>
7296 * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call
7297 gtk_widget_size_request() on reparented child, if one. Otherwise,
7298 queue_resize() on the child never results in it getting size-requested
7301 * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
7302 in option menus, so that (with luck) people won't copy it into
7303 their apps in the future.
7305 * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
7306 to gtk_option_menu_calc_size. This isn't perfect, but should fix
7307 a lot of problems with changing the size of the menu's menu
7308 items after adding it to the option menu.
7310 * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
7312 * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
7313 the text direction for a widget changes.
7315 * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
7316 ::direction_changed to get rid of various hacks.
7318 Sun Jul 2 13:19:12 2000 Owen Taylor <otaylor@redhat.com>
7320 * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
7323 Sun Jul 2 13:06:26 2000 Owen Taylor <otaylor@redhat.com>
7325 * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
7326 flag to the structure. Do not call XFreePixmap on pixmaps created
7327 by gdk_pixmap_foreign_new().
7329 Sun Jul 2 12:45:50 2000 Owen Taylor <otaylor@redhat.com>
7331 * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
7332 value using GdkRGB functionality given GdkColormap and GdkColor.
7333 (name not final, waiting for inspiration.)
7335 * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
7336 set the foreground/background of a GC using the GC's colormap
7337 and GdkRGB. (name not final, waiting for inspiration.)
7339 * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from
7340 gdk_rgb_get_cmap(), put #define in gdkcompat.h.
7342 * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
7343 gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
7344 purely a function of the corresponding colormap. Make
7345 gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
7347 * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
7348 gdk_pixbuf_*create_from_xpm_* in terms of
7349 gdk_pixbuf_new_from_xpm_data(), move into platform independent
7352 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
7353 advantage of the new draw_rgb_32_image_dithalign.
7355 * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
7357 * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
7360 * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
7362 * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
7363 which we initialize from the drawable when the GC is created,
7364 if the drawable has a colormap.
7366 * gdk/x11/gdkgc-x11.c: include string.h for memset.
7368 * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
7370 * gtk/gtklayout.[ch]: Remove unsed configure serial member.
7372 Sat Jul 1 16:28:32 2000 Owen Taylor <otaylor@redhat.com>
7374 * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
7375 actually returning expose events, make sure to set
7376 the count field properly.
7378 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
7379 accidentally reintroced bug which always cleared
7380 the graphics_exposures value.
7382 Wed Jun 28 18:03:09 BST 2000 Tony Gale <gale@gtk.org>
7384 * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
7386 Wed Jun 28 17:49:05 BST 2000 Tony Gale <gale@gtk.org>
7388 * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
7390 Wed Jun 28 13:31:55 BST 2000 Tony Gale <gale@gtk.org>
7392 * docs/faq/gtk-faq.sgml: Start of Section 6.
7394 Mon Jun 26 19:37:04 2000 Owen Taylor <otaylor@redhat.com>
7396 * configure.in: Put 1.3.1 in warning message, not 1.3.0.
7398 (Fixes problem with drawing childless frames. Pointed out
7399 by and a first patch from Anders)
7401 * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
7402 compute a child_allocation, even if we don't have a child.
7404 * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
7405 Always chain to the parent's impl, even if we don't have a child.
7407 Mon Jun 26 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
7409 * gdk/gdkrgb.c: If possible, create only a single shm segment and
7410 use multiple parts of it instead of creating a bunch of separate
7411 segments, since the maximum number of segments per system is not
7412 large. (This might be worth backporting to GTK+-1.2.x if we make a
7415 * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
7416 structure in preparation for per-colormap GdkRGB.
7418 * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
7419 to False when we get EINVAL from shmget so that the caller of
7420 gdk_image_new can retry with a smaller segment size.
7422 Mon Jun 26 13:01:16 BST 2000 Tony Gale <gale@gtk.org>
7424 * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
7426 Fri Jun 23 17:54:23 2000 Tim Janik <timj@gtk.org>
7428 * configure.in: make the current version number 1.3.1 (binary age 0,
7431 * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
7432 gtkcompat.h is all we want.
7434 * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
7435 GLib primitive types. fixed g_type_register_fundamental() argument
7438 * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
7441 * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
7442 object code cleanup, comment trigraph fixes, etc...
7444 2000-06-23 Havoc Pennington <hp@redhat.com>
7446 * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark
7447 instead of making up a bogus name for first_para_mark
7449 * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow
7452 Thu Jun 22 17:43:51 BST 2000 Tony Gale <gale@gtk.org>
7454 * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
7456 2000-06-21 Havoc Pennington <hp@pobox.com>
7458 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
7459 we didn't check window->bg_pixmap != GDK_NO_BG.
7461 * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
7464 Thu Jun 22 14:02:19 BST 2000 Tony Gale <gale@gtk.org>
7466 * docs/faq/gtk-faq.sgm: Move file to here.
7467 TODO: Update Makfile.am
7469 Thu Jun 22 13:41:09 BST 2000 Tony Gale <gale@gtk.org>
7471 * docs/gtk-faq.sgm: Add Section 2
7473 Thu Jun 22 08:43:45 BST 2000 Tony Gale <gale@gtk.org>
7475 * docs/gtk-faq.sgm: New file. Start of DocBook
7478 Wed Jun 21 23:04:17 2000 Owen Taylor <otaylor@redhat.com>
7480 * configure.in (GDK_PIXBUF_MAJOR): Define version
7481 numbers for GDK_PIXBUF_*, as they get substituted
7482 into a header file. Need to consider versioning
7483 for gdk-pixbuf more carefully later.
7485 2000-06-21 Raja R Harinath <harinath@cs.umn.edu>
7487 Work with srcdir != builddir.
7488 * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use
7489 <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7490 * demos/testpixbuf.c: Likewise.
7491 * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7492 * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use
7494 * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h". Don't include
7496 * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7498 Wed Jun 21 19:45:02 2000 Owen Taylor <otaylor@redhat.com>
7500 * TODO.xml: Change 1.4 version numbers to 2.0.
7502 Wed Jun 21 19:29:08 2000 Owen Taylor <otaylor@redhat.com>
7504 * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
7505 fixups to GTK+ standard.
7507 Wed Jun 21 16:38:13 2000 Owen Taylor <otaylor@redhat.com>
7509 * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
7512 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
7515 * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
7516 gdk-pixbuf with GDK dependencies moved into GDK.
7518 * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
7519 move gdk-pixbuf-loader here until GObject has signals.
7521 * demos/: New directory of demos. Move demos from
7524 * demos/pixbuf-init.c: Small bit of code to check for
7525 loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
7526 set GDK_PIXBUF_MODULEDIR appropriately.
7528 * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
7529 define which no longer makes sense.
7531 2000-06-21 Havoc Pennington <hp@redhat.com>
7533 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
7534 gtk_get_default_language
7536 * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language):
7537 new function to get the default language
7539 * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c:
7540 s/gtk_text_view_style_values/gtk_text_style_values/
7542 * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
7543 Add a "language" field to tags.
7545 (gtk_text_tag_set_arg): Fix bug in setting
7546 "bg_full_height_set" tag.
7548 2000-06-21 Havoc Pennington <hp@redhat.com>
7550 * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
7553 * gtk/gtktexttypes.c: Remove UTF functions, use glib
7554 stuff instead when possible.
7556 * gtk/gtktexttypes.h: Delete some unused constants
7558 * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
7559 testtextbuffer.c: use glib instead of custom unicode routines
7561 Wed Jun 21 12:50:58 2000 Owen Taylor <otaylor@redhat.com>
7563 * docs/es/: Removed mistakenly added generated sgml
7565 * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
7566 Remove outdated info files.
7568 * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
7569 Moved tutorial files into subdir
7571 * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
7574 * docs/man/gtk_button.pod: Remove. (contents will be
7575 integrated into gtk-reference button page.)
7577 * configure.in docs/Makefile.am docs/tutorial/Makefile.am
7578 docs/faq/Makefile.am: Adjust for new organization
7580 2000-06-21 Christopher Blizzard <blizzard@redhat.com>
7582 * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
7583 not $(MKINSTALLDIRS)
7585 Wed Jun 21 12:24:28 2000 Owen Taylor <otaylor@redhat.com>
7587 * gtk/testgtk.c (create_text): Finish the job Elliot started
7588 of removing font setting test for text widget. (Since text widget
7589 and GdkFont are not deprecated, and cause portability problems.)
7591 Wed Jun 21 11:41:43 2000 Owen Taylor <otaylor@redhat.com>
7593 * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
7594 gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
7595 Remove use of libunicode in favor of new GLib functions.
7597 * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
7598 nano-x, framebuffer. The X11 include is just a hack until we get
7599 the necessary functions in gdkcolor.h, so there is no reason to
7600 add other includes of platforms.
7602 * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert
7603 window bigger than the screen change.
7605 * gtk/testgtk.c: Revert some random changes from Elliot
7606 that had no particular point and were causing testgtkrc
7607 not to function correctly.
7609 * gdk/gdkregion-generic.h: Revert change from Elliot. Just
7610 because GdkSegment and GdkRegionBox have the same fields,
7611 it doesn't mean that 'typedef GdkSegment GdkRegionBox'
7612 results in clearer code.
7614 * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
7615 gdk_input_translate_coordinates): Fix missed GdkObjectification
7617 2000-06-18 Elliot Lee <sopwith@redhat.com>
7619 * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
7620 * gtk/gtk{plug,socket}.h: Missed commits from previous.
7622 2000-06-20 Havoc Pennington <hp@redhat.com>
7624 * modules/linux-fb/Makefile.am: Make this compile
7625 without framebuffer enabled
7627 * gdk/linux-fb/Makefile.am: Add conditional to not build
7628 framebuffer unless specified in configure
7630 * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
7631 the size of the target instead of source if -1 was passed for
7634 * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
7635 width/height confusion.
7637 2000-06-19 Havoc Pennington <hp@redhat.com>
7639 * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
7640 GDK_DRAWABLE_XID. In the future, we probably want to make it
7641 faster with G_DISABLE_CHECKS turned on.
7643 2000-06-14 Havoc Pennington <hp@redhat.com>
7645 * gdk/Makefile.am: add gdkpixmap.c
7647 * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
7648 s/gdk_image_init/_gdk_windowing_image_init
7650 * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
7653 * gdk/gdkcolor.h: make GdkColormap a GObject subclass
7655 * gdk/gdkcompat.h: remove GdkWindowType compat, since
7656 GdkWindowType is now non-deprecated;
7657 change gdk_window_get_type() compat to be
7658 gdk_window_get_window_type().
7660 * gdk/gdkdnd.h: make GdkDragContext a GObject.
7662 * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
7663 virtual GObject. Make all functions call into the vtable.
7664 Move gdk_image_put() guts in here. Remove GdkDrawableType
7665 and gdk_drawable_get_type(), these are now GdkWindow-specific.
7666 draw_image, get_depth, get_size, set_colormap, get_colormap,
7667 get_visual added to the vtable.
7669 * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
7670 GObject. Virtualize everything.
7671 (gdk_gc_new_with_values): remove check for destroyed window,
7672 because now GdkWindow::create_gc will check this.
7673 (gdk_gc_set_values): New function to set GC values, this
7674 was already implemented but wasn't in the header
7676 * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
7678 * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
7679 _gdk_window_draw_image(), remove _gdk_windowing_window_class,
7680 remove _gdk_window_class; add _gdk_window_impl_get_type() and
7681 _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
7682 _gdk_windowing_window_init, rename gdk_image_init to
7683 _gdk_windowing_image_init.
7685 * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
7686 (gdk_draw_layout): Remove check for destroyed window,
7687 because all the drawable methods already check it.
7689 * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
7690 Add gdkpixmap.c which contains implementation of GdkDrawable
7691 virtual table (by chaining to a platform-specific implementation
7694 * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
7695 GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
7696 GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7697 GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7700 * gdk/gdktypes.h: #include <glib-object.h>
7702 * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
7703 Move most functionality to platform-specific implementation
7704 object. GdkWindow itself now handles the backing store, then
7705 chains to the platform-specific implementation.
7706 (gdk_window_get_window_type): return GdkWindowType of the window.
7707 (gdk_window_peek_children): New routine, returns the children of
7709 (gdk_window_get_children): Was in X11-specific code and did
7710 XQueryTree. Changed to simply return a copy of window->children;
7711 so it can go in cross-platform code.
7713 * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
7715 * gdk/x11/gdkcolor-x11.c: implement X-specific parts of
7716 GdkColormap; just changed to use the new private data instead
7717 of casting to GdkColormapPrivate.
7719 * gdk/x11/gdkcursor-x11.c: added a couple typechecks to
7722 * gdk/x11/gdkdnd-x11.c: Change the way we access private fields
7723 (private data member in the GObject).
7724 (xdnd_manager_source_filter): Function had broken
7725 error handling, fix it (use gdk_error_trap_push).
7727 * gdk/x11/gdkdrawable-x11.c: This file now implements
7728 a base class for GdkWindowImplX11/GdkPixmapImplX11. This
7729 base class is purely for the convenience of the X port,
7730 and not part of the interface to cross-platform GDK.
7732 * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7734 * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7735 specific to X, and returned by the create_gc virtual method
7736 of GdkDrawableImplX11.
7737 (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7738 rather than gchar, this was also changed in the GdkGC vtable.
7739 (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7740 mask is 0, return immediately, instead of checking every flag.
7741 This is faster, and keeps us from segfaulting if values is NULL
7742 and the mask contains some nonzero flags.
7744 * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7747 * gdk/x11/gdkglobals-x11.c: change type of grab window, since
7748 GdkWindowPrivate is gone.
7750 * gdk/x11/gdkim-x11.c: rename things that got renamed.
7752 * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
7753 remove the image_put stuff that got transferred to GdkDrawable.
7755 * gdk/x11/gdkinput.c: renamings
7757 * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7759 * gdk/x11/gdkpixmap-x11.c: GObject conversion
7761 * gdk/x11/gdkprivate-x11.h: indentation fixes
7763 * gdk/x11/gdkproperty-x11.c: renamings
7765 * gdk/x11/gdkselection-x11.c: renamings
7767 * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
7768 implements the platform-specific "impl" object.
7769 Moved gdk_window_get_children to gdk/gdkwindow.c
7771 * gdk/x11/gdkx.h: Remove all the private structs and private datas
7772 that no longer exist. Add declaration of GdkGCX11 object here.
7773 Fix all the macros to still work.
7775 * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7776 GdkDragContext from the boxed types since they are now GObjects.
7778 * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7779 moved xthickness/ythickness into the instance. GtkStyleClass
7780 functions are now in the standard vtable for GtkStyle, so you have
7781 to create a GObject subclass to write a theme engine.
7782 (gtk_style_copy): fixed a leaked PangoFontDescription
7783 (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7784 can be the standard GObject function.
7787 s/style->klass->[xy]thickness/style->[xy]thickness
7788 s/pango_layout_unref/g_object_unref/
7790 * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7792 * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
7793 accessing GDK internals.
7795 * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
7796 accessing GDK internals.
7798 2000-06-18 Elliot Lee <sopwith@redhat.com>
7800 * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7802 * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7803 problem by calculating event position relative to the trough
7804 rather than the slider.
7805 * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7807 * gdk/gdkgc.h: Add GDK_NOR.
7809 * configure.in, Makefile.am: Add modules top level dir
7810 * configure.in: Only use pangox library if building x11 target.
7811 * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7813 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
7815 * gtk/gtkcolorsel.c: Change private class member to be named
7816 private_data throughout the file.
7818 * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7819 private_data to avoid clashing with keyword.
7821 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
7823 * gdk/gdkdnd.h: Add comment to remove warning.
7825 Sun Jun 18 15:35:35 2000 Pablo Saratxaga <pablo@mandrakesoft.com>
7827 * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7828 Byelorussian language; changed the Makefile and file names
7831 Mon Jun 12 16:58:40 2000 Owen Taylor <otaylor@redhat.com>
7833 * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7834 rather than gdk_window_hide; this makes things work
7835 correctly if the window is programmatically hidden while
7838 Sun Jun 11 12:46:19 2000 Owen Taylor <otaylor@redhat.com>
7840 * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7841 cut and paste typo where wrong pixmap was being
7842 unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7844 Sun Jun 11 10:22:36 2000 Owen Taylor <otaylor@redhat.com>
7846 * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7847 Add helper function to compute format / bytes
7848 relationship. Use in a couple places to fix up
7849 errors which assume 8 * format.
7851 * gtk/gtkselection.c (gtk_selection_request): Use 32
7852 rather than 8 * sizeof (GdkAtom), to work correctly
7855 Thu Jun 8 21:54:51 2000 Christopher Blizzard <blizzard@redhat.com>
7857 * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
7859 (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
7862 * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
7863 checking macros return NULL since the function has a return value.
7865 Wed Jun 7 15:44:42 2000 Owen Taylor <otaylor@redhat.com>
7867 * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
7868 GTK+ from building at all.
7870 * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
7872 Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
7874 * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
7875 gtk/Makefile.am: make it possible to configure gtk for different
7876 targets on the same platform. The library name is now
7877 libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
7878 flag. Only the x11 target compiles right now.
7879 * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
7880 gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
7881 * gdk/nanox/gdk*generic*: delete generic region code.
7882 * gdk/linux-fb/gdk*generic*: delete generic region code.
7883 * README.nanox: update information.
7885 Tue Jun 6 10:53:59 2000 Owen Taylor <otaylor@redhat.com>
7887 * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
7888 prepend not append. (Pointed out by Brett Hall.)
7890 Tue Jun 6 01:59:57 2000 Owen Taylor <otaylor@redhat.com>
7892 * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
7894 Mon Jun 5 16:00:09 2000 Owen Taylor <otaylor@redhat.com>
7896 * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
7897 need this later, and this makes sure that the atexit for
7898 glib gets called after that for GDK, so atexits are
7899 properly ordered for object leak checking.
7901 * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
7903 * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call
7904 pango_x_shutdown_display()
7906 * gtk/simple.c (main): Close window on destroy.
7908 Mon Jun 5 11:50:02 2000 Owen Taylor <otaylor@redhat.com>
7910 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
7911 to treat initial creation different from setting with
7912 regards to the graphics-exposures parameter, so add a parameter
7913 indicating whether this is initial or not.
7915 Mon Jun 5 13:29:31 2000 Owen Taylor <otaylor@redhat.com>
7917 * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
7918 to sort of work by adding an extra return_exposes arg
7919 to gdk_event_translate() - it might be better to simply
7920 deprecate the function altogether and force people to rewrite
7921 without it. gdk_window_scroll() handles most of it, and where
7922 gdk_window_scroll() doesn't work, simply redrawing more does.
7924 * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
7927 * gtk-config.in: Include PANGO_CFLAGS/LIBS.
7929 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a
7930 bunch of pretty much useless /* Print debugging info */ comments
7931 which had drifted away from the code they were commenting.
7933 2000-06-02 Havoc Pennington <hp@pobox.com>
7935 * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
7936 is in working order.
7938 * gtk/testtext.c: Change to reflect anonymous mark API
7940 * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
7942 * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
7943 field, which was unused.
7945 * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
7948 * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*
7950 * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
7951 flag on the insertion point and selection bound
7953 Throughout, use GtkTextMark instead of GtkTextLineSegment, and
7954 make mark-manipulation functions take a GtkTextMark* instead of a
7957 * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
7958 GtkTextMarkBody; will be used to detect attempts to delete
7959 the permanent marks (insert and selection bound)
7961 * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer
7963 Fri Jun 2 12:56:01 2000 Owen Taylor <otaylor@redhat.com>
7965 * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
7968 * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event):
7969 Honor DOUBLE_BUFFRED_FLAG
7971 * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
7972 function to set the DOUBLE_BUFFERED flag.
7974 * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
7975 or not exposes done on the widget should be double-buffered.
7977 * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
7978 to be what would be expected. (Fixes problem with a
7979 g_return_if_fail() validating a TextDirection enumeration)
7981 Thu Jun 1 23:05:13 2000 Owen Taylor <otaylor@redhat.com>
7983 * gtk/gtkwidget.c: Remove all references to
7984 offscreen flag which was no longer used.
7986 * gtk/gtkprivate.h (enum): Remove unused flags and compress.
7988 * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
7989 for non-null label_widget->parent.
7991 * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
7992 which no longer was used.
7994 * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
7996 * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
7999 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
8000 check for destroyed windows.
8002 Thu Jun 1 13:48:45 2000 Owen Taylor <otaylor@redhat.com>
8004 * gtk/gtkimmulticontext.c: Add a finalize method and unref
8005 the slave context there.
8007 * gtk/gtkinvisible.[ch]: Make reference counting behavior
8008 identical to GtkWindow.
8010 Thu Jun 1 01:54:11 2000 Owen Taylor <otaylor@redhat.com>
8012 * Makefile.am gdk/gdkpango.c: Copy the layout render function from
8013 pangox to here, so we can write them independent of rendering
8014 system, using GDK primitives.
8016 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
8017 gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
8018 since we have a rendering-system independent implementation in
8019 terms of draw_glyphs().
8021 * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
8022 function to render a single line.
8024 * gdk/x11/gdkpango.c: Move the guts of this file mostly
8025 into ../gdkpango.c, which simplifies things, since we
8026 don't have to deal with raw X gc's.
8028 Fri May 19 04:28:16 2000 Owen Taylor <otaylor@redhat.com>
8030 * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
8031 get the logical attributes for a given GtkTextLine.
8033 Tue May 30 16:05:39 2000 Owen Taylor <otaylor@redhat.com>
8035 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
8036 g_locale_get_codeset() to g_get_codeset() change.
8038 Tue May 30 15:03:19 2000 Owen Taylor <otaylor@redhat.com>
8040 * gtk/testcalendar.c (calendar_font_selection_ok): Use font
8043 * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
8046 * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
8047 redoing (vastly simplifying) for Pango. Still needs quite
8048 a bit of work. (Size selection is currently poor. List of
8049 predefined sizes is not a good idea, since all of these
8050 sizes won't necessarily be distinct.)
8052 Tue May 30 13:50:19 2000 Owen Taylor <otaylor@redhat.com>
8054 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
8055 CODESET results for LANG=C.
8057 Mon May 29 15:49:10 2000 Owen Taylor <otaylor@redhat.com>
8059 * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
8060 which takes a stringized pango font description;
8061 ignore the older 'font' and 'fontset' declarations.
8063 * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
8064 field with a GdkFont derived via gdk_font_from_description(),
8065 for compatibility. (Should we just remove it entirely?
8066 Probably too much compatibility breakage, but people
8067 should be migrating to the new Pango stuff as quickly
8070 Mon May 29 15:47:41 2000 Owen Taylor <otaylor@redhat.com>
8072 * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
8074 Mon May 29 15:44:46 2000 Owen Taylor <otaylor@redhat.com>
8076 * gtk/gtkcalender.c: Roughly pango-ized. Really needs
8077 redoing; there are some bugs in size allocation right
8078 now, the semi-existant distinction between header / day
8079 fonts was removed, but, with Pango, could actually
8080 be made functional in a nice way.
8082 * gtk/testcalender: Move calender from examples into this
8083 directory as a test program. (We really need to restrcture
8084 testgtk into a whole directory full of tests for every
8085 widget or functionality group, separated into multiple .c
8088 Mon May 29 15:19:56 2000 Owen Taylor <otaylor@redhat.com>
8090 * gtk/testgtk.c (file_exists): Fix stupid typo that
8091 was keeping RC file from being loaded.
8093 * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
8096 Mon May 29 14:31:27 2000 Owen Taylor <otaylor@redhat.com>
8098 * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
8099 Add function to load a GdkFont from a PangoFontDescription.
8101 2000-05-29 Tor Lillqvist <tml@iki.fi>
8103 * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
8104 variable should be of type GdkEventPrivate.
8106 Fri May 26 17:16:40 2000 Owen Taylor <otaylor@redhat.com>
8108 * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
8109 to have any widget for the label, use a GtkLabel widget
8110 to display the text. (Based partially on a patch from
8113 (Quite a bit of code reorganization - strip 90% of the
8114 guts out of gtkaspectframe and add a single virtual
8115 func to GtkFrameClass - compute_child_allocation.)
8117 Fri May 26 12:00:02 2000 Owen Taylor <otaylor@redhat.com>
8119 * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
8120 (Removed clist->row_center_offset field because caching
8121 it wasn't saving time or code, added private function
8122 _gtk_clist_create_cell_layout()).
8124 Wed May 24 15:59:37 2000 Owen Taylor <otaylor@redhat.com>
8126 * gtk/gtkaccellabel.c: Pangoized.
8128 * gtk/[hv]ruler.c: Pangoized
8130 Mon May 22 19:23:59 2000 Owen Taylor <otaylor@redhat.com>
8132 * gtk/gtkfilesel.c (gtk_file_selection_init):
8133 Use gtk_clist_set_column_auto_resize() to remove need
8134 need for manual column width computations.
8136 Mon May 22 18:50:26 2000 Owen Taylor <otaylor@redhat.com>
8138 * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
8139 ensuring Pango correctness, and considerably simplifying the
8142 * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
8144 * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
8145 getting of numbers of lines.
8147 * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
8148 to the actual requested width of the lable, not to the wrap
8151 * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
8153 * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
8154 gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
8156 * gtk/gtktextview.c: Fix structure inheritance.
8158 * gtk/gtkprogressbar.c: Pangoize.
8160 Mon May 22 15:47:30 2000 Owen Taylor <otaylor@redhat.com>
8162 * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
8165 * gtk/gtktextlayout.c (find_display_line_above): Fixed
8166 bug with computing line tops.
8168 * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
8170 Thu May 18 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
8172 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
8173 and y_offset coordinates to do what we need now. (The offset between
8174 buffer and layout coordinates has been reintroduced, but is a
8175 bit different than before.)
8177 * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
8178 handle the adjustments ourselves, and scroll as necessary using
8179 the new gdk_window_scroll().
8181 The advantage of this is that when we are incrementally revalidating,
8182 we are essentially rearranging things around the visible portion
8183 of the screen. With the old setup, the visible portion of the
8184 screen was moved around in the layout, so scrolling and redrawing
8185 to track that caused jumping of the display. Since we now
8186 control the scrolling ourselves, we can suppress this and
8187 only redraw when things actually change.
8189 Thu May 18 18:47:25 2000 Owen Taylor <otaylor@redhat.com>
8191 * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
8192 the region not just redisplay it after-all, since we store the
8193 cursors in the LineDisplay. (Ugly interactions here between
8194 GtkLayout and GtkTextBTree here.)
8196 * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
8198 Thu May 18 18:43:21 2000 Owen Taylor <otaylor@redhat.com>
8200 * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
8201 Added function to scroll contents of a window while keeping the
8202 window constant. Works by XCopyArea or guffaw-scrolling depending
8203 on the details of how the window is set up. (guffaw-scrolling
8204 still needs to be filled in.)
8206 Wed May 17 22:36:53 2000 Owen Taylor <otaylor@redhat.com>
8208 * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
8209 move the debugging that was tied to a global variable
8212 * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
8214 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
8215 validated flag, in line data instead of setting height/width to
8216 -1. This allows us to perform operations with partially invalid
8217 buffer (using the old size for invalid lines) and thus to do
8218 incremental vaidation. Keep height/width aggregates up to date
8219 when deleting text and rebalancing the tree.
8221 * gtk/gtktextbtree.[ch]: Add functions validate a line
8222 (gtk_text_btree_validate_line), and to validate up
8223 to a number of pixels (gtk_text_btree_validate).
8225 * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
8226 that indicates that something is changed and a revalidation
8227 pass is needed. Change ::need_repaint to ::changed, and
8228 make it take old and new yranges instead of a rectangle.
8230 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
8231 the line_data_destroy() function from
8232 gtk_text_btree_add_view() to a virtual function in
8235 * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
8236 since we are handling partial repaints in a different fashion
8239 * gtk/gtktextbtree.[ch]: Only repaint the changed portion
8240 of the selection instead of queueing a repaint on the
8243 * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
8244 get_selection_bounds() down to btree, make the function
8245 in buffer a wrapper around the btree function.
8247 * gtk/gtktextlayout.[ch]: Add functions to check if the
8248 layout is valid and to recompute either a range of pixels
8249 aroudn a line or a certain total number of pixels.
8251 * gtk/gtktextlayout.[ch]: Cache a single line display;
8252 now that we only redraw the needed portions, the hit rate
8253 for this cache is quite high.
8255 * gtk/gtktextview.[ch]: Keep track of the first paragraph
8256 on the screen so that when re-laying-out the buffer, we can
8257 keep the same place. This requires connecting to ::value_changed
8260 * gtk/gtktextview.[ch]: Add idle functions to revalidate
8261 the buffer after we receive an ::invalidated signal.
8263 Wed May 17 22:10:47 2000 Owen Taylor <otaylor@redhat.com>
8265 * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
8266 to max of allocation and layout size, not just to the
8269 * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
8270 Invalidate window so it gets redrawn properly.
8272 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
8273 to mean the entire window.
8275 * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
8278 Mon May 15 14:51:31 2000 Owen Taylor <otaylor@redhat.com>
8280 * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
8281 to get the name of a mark.
8283 * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
8284 to find the paragraph from a y position.
8286 Thu May 11 12:57:20 2000 Owen Taylor <otaylor@redhat.com>
8288 * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
8289 nodes have width/height >= 0, not > 0.
8291 Tue May 9 21:29:06 2000 Owen Taylor <otaylor@redhat.com>
8293 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
8294 Add a size_only flag, so when we only need the size, we don't create
8295 useless appearance attributes.
8297 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
8298 duplicate setting of font description.
8300 * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
8302 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
8304 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
8305 EXTRA_DIST. It does not work well when the file that
8306 everything depends on is not in the tarball.
8308 Wed Apr 26 00:56:14 2000 Owen Taylor <otaylor@redhat.com>
8310 * gtk/testgtk.c: Some hacks and fixes so that it basically
8311 works when not sitting in the GTK+ build tree.
8313 2000-05-03 Havoc Pennington <hp@redhat.com>
8315 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8316 Properly determine the ordering of the tag root and the current
8317 line within the tree. Previous algorithm only worked if the tag
8318 root's immediate parent was the common root of both the current
8319 line and the tag root.
8321 Wed Apr 26 00:43:00 2000 Owen Taylor <otaylor@redhat.com>
8323 * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
8326 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
8327 the widget text directional dynamically.
8329 * gtk/gtktextview.[ch]: Added functions to get and set default
8332 Tue Apr 25 23:47:38 2000 Owen Taylor <otaylor@redhat.com>
8334 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
8335 in cursor location computation.
8337 Tue Apr 25 23:22:59 2000 Owen Taylor <otaylor@redhat.com>
8339 * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
8340 vadjusment values properly when layout gets smaller.
8342 * gtk/gtktextview.c (need_repaint_handler): Areas being
8343 passed in are far completely inaccurate, and sometimes
8344 too small, so, for now, just queue a redraw on the
8345 whole visible region.
8347 2000-04-25 Havoc Pennington <hp@redhat.com>
8349 * gtk/gtktextbtree.c (summary_destroy): new function to
8350 destroy tag summary nodes
8351 (gtk_text_line_next_could_contain_tag): this function was
8352 totally broken if the line passed in wasn't below the tag
8354 (gtk_text_btree_first_could_contain_tag): In the tag == NULL
8355 "wildcard" case, we have to do a linear scan. Blah.
8356 (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
8357 we have to do the linear scan
8358 (tag_removed_cb): When a tag is removed from the tag table,
8359 remove the GtkTextTagInfo node from the btree.
8360 (gtk_text_btree_spew): Implement the spew function, for
8361 our debugging pleasure.
8363 Tue Apr 25 19:40:18 2000 Owen Taylor <otaylor@redhat.com>
8365 * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
8366 a problem with referring to the wrong buffer.
8368 * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
8370 * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
8371 font description to gtk_style_new() - otherwise things
8372 don't work without a .gtkrc file.
8374 * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
8375 tags table if we create it ourself, too.
8377 * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
8378 it was conflicting with XKB modifiers.
8380 * gtk/gtktextview.[ch]: Add simple support for
8383 Mon Apr 24 19:34:18 2000 Owen Taylor <otaylor@redhat.com>
8385 * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
8386 with deletion from last commit.
8388 Mon Apr 24 19:29:40 2000 Owen Taylor <otaylor@redhat.com>
8390 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
8391 in the context from the current locale.
8393 * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
8394 context, not hardcoded value.
8396 * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
8399 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
8401 * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
8402 attributes - that doesn't handle partial-glyph selection
8403 properly. Instead use new pango_layout_line_get_x_ranges()
8404 functionality to draw the selection.
8406 * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
8407 now properly handles out-of-range coordinates.
8409 * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
8411 * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
8414 * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
8415 for paragraphs opposite to the base direction of the widget.
8417 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
8419 * gtk/gtktextlayout.c: Don't split segments on marks, since that
8420 causes Arabic words to reshape as you cursor through.
8422 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
8423 cursor position when moving vertically with the arrow keys and
8424 scrolling with page-up/page-down. (Arrow keys save only the X,
8425 scrolling saves both X and Y.)
8427 This means you can line-up / line-down or page-up / page-down
8428 without losing your place, and also that moving vertically
8429 with the cursor keys keeps the same X position, not the same
8432 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
8433 arrow keys move by display lines, not paragraphs.
8435 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
8437 * gtk/gtklayout.c: Make sure that the bin window is at least
8438 as big as the allocation. (Should we also make sure that the
8439 bin window is big enough to completely cover widget->window?)
8441 * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
8442 function to get the onscreen rectangle.
8444 * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
8445 for offsets in window coordinates.
8447 Sun Apr 16 16:13:27 2000 Owen Taylor <otaylor@redhat.com>
8449 * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
8452 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
8453 from the widget direction.
8455 * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
8456 Add a "direction" attribute.
8458 * gtk/gtktextview.c: global s/tkxt/text_view/.
8460 * gtk/testtext.c: Added long block of text in Arabic, to test out
8461 the direction attributes. (Some problems with the shaping system
8462 for arabic become obvious - like the fact the cursor splits words
8463 into unjoined pieces.)
8465 Fri Apr 14 12:54:34 2000 Owen Taylor <otaylor@redhat.com>
8467 * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8469 * gtk/gtktextlayout.c: Fix up alignment.
8471 * gtk/testtext.c: Add some tests for centering, wrapping.
8473 Fri Apr 14 09:26:22 2000 Owen Taylor <otaylor@redhat.com>
8475 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8476 Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8477 If we wrote GTK+-specific layout-render function this could just replace
8478 the draw_layout() operation in the vtable.
8480 * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
8481 pango_layout_get_cursor_pos() and use that function.
8483 * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8484 is a non-static symbol.
8486 * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8487 with gtk_text_btree_find_line_by_y()
8489 * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8490 renderer that handles GtkTextAppearance attributes.
8492 * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
8494 - Move the values in the style that don't affect geometry into a
8495 GtkTextAppearance structure.
8496 - Change underline to take a PangoUnderline and "font" a string
8497 representation of a font description
8498 - Add a "font_desc" attribute which takes a FontDescription structure.
8500 * gtk/gtktextlayout.[ch]:
8502 - Get rid of the display-line list per each line. Instead, we
8503 generate, on demand, a GtkTextLineDisplay structure which]
8504 contains a PangoLayout * and other necesary information
8505 (offsets, cursor locations) for displaying a paragraph.
8506 - Get rid of the code to wrap lines, create display chunks,
8507 etc. Instead, we just go through a paragraph and convert
8508 it into the necessary inputs to a PangoLayout.
8509 - Implement a new attribute type, GtkTextAttrAppearance. This
8510 holds a GtkTextAppearance, and is used to pass colors,
8511 stipple, etc, through from the layout to the display without
8512 having to use lots and lots of individual attributes.
8513 - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
8514 in terms of PangoLayout functions.
8516 * gtk/gtktextview.c:
8518 - Handle passing the necessary PangoContext to the layout
8519 - Some fixups in painting to deal with the automatic backing store
8520 and offsetting of GTK+-1.4
8521 - Add a style_set handler so that the default style reacts
8522 properly to theme changes.
8524 * gtk/gtktext?*.[ch]: Random code-style fixes.
8526 * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
8528 Mon Apr 10 10:33:45 2000 Owen Taylor <otaylor@redhat.com>
8530 * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
8531 in original form preparatory to Pango-ization and gdkimcontext-ization.
8533 Thu Apr 6 19:25:39 2000 Owen Taylor <otaylor@redhat.com>
8535 * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
8536 so that we can derive from gtkimcontext in language bindings properly.
8538 Thu Apr 6 16:02:52 2000 Owen Taylor <otaylor@redhat.com>
8540 * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
8541 Add a compose table including (almost) all the compose combinations
8542 from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
8543 data in the XIM implementation.
8545 * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
8546 Moved functions to convert keyvalues from and to unicode here from
8547 the win32 port and made them public.
8549 Wed Apr 5 16:37:29 2000 Owen Taylor <otaylor@redhat.com>
8551 * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
8553 Wed Apr 5 16:27:45 2000 Owen Taylor <otaylor@redhat.com>
8555 * gtk/gtkimcontext.[ch]: Base class for new input context system
8557 * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
8558 the real input context implementation to be loaded from modules
8559 and switched on the fly.
8561 * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
8562 context that just does direct keysymbol => unicode translation.
8564 * gtk/gtkentry.[ch]: Start switching editing over to using
8565 GtkInputContext. (No handling of preedit yet.)
8567 Wed Apr 5 15:48:41 2000 Owen Taylor <otaylor@redhat.com>
8569 * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
8570 many substitutions. (klass should not be subsituted.)
8572 Wed Apr 5 00:18:14 2000 Owen Taylor <otaylor@redhat.com>
8574 * configure.in: Add checks for Pango
8576 * configure.in docs/Makefile.am: Add test for sgml2html
8577 and allow 'make dist' without building html, but print out
8578 warnings in that case. (For making snapshots)
8580 * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
8581 Add Pango libraries and C flags
8583 * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8584 Add function (gdk_draw_layout) to draw a pango layout.
8586 * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
8587 for getting Pango contexts for GDK.
8589 * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
8591 * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
8594 * gtk/gtkentry.c: Hack in simple Hebrew input with direct
8595 keysym => unicode translations. More languages can be added
8596 here, but real input-method support is needed.
8598 * docs/Changes-1.4.txt: Added note about entry behavior.
8600 * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
8601 to set the reading direction for a widget and the global direction.
8602 Add test which allows toggling the global direction. Two private
8603 flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
8605 * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
8606 gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
8608 * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
8610 * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
8611 underlining now handled by Pango.
8613 * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
8614 to RCStyle and Style. (Having both this and the old font name and GdkFont
8617 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
8618 convenience functions for creating contexts and layouts for widgets.
8620 * gtk/testgtk.c: Enhance label tests with multilingual labels.
8622 2000-05-29 Jonathan Blandford <jrb@redhat.com>
8624 * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
8625 titles to be active, even if they aren't visible.
8626 (gtk_clist_column_titles_passive): Ditto.
8628 2000-05-21 Nils Barth <nils_barth@post.harvard.edu>
8632 * gtktypeutils.h: Spelling/grammar fixes in comments.
8634 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
8636 * gdk/nanox/*.h: add missing header files.
8638 Fri May 19 11:52:59 2000 Tim Janik <timj@gtk.org>
8640 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
8642 (gtk_drawing_area_size): queue a resize.
8644 Sun Mar 26 03:21:28 2000 Tim Janik <timj@gtk.org>
8646 * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
8647 the handlers, also invalidate them. bug nailed down by Karl Nelson
8648 <kenelson@ece.ucdavis.edu>.
8650 Fri May 19 06:49:23 2000 Tim Janik <timj@gtk.org>
8652 * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
8653 "(nil)" foundries, patch from Grigorios Magklis.
8655 * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
8656 on non-available fonts, based on a patch by Grigorios Magklis
8657 <maglis@cs.rochester.edu>.
8659 2000-05-18 Elliot Lee <sopwith@redhat.com>
8661 * gdk/x11/gdkregion-generic.c: If a region does not have any
8662 rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
8663 instead of GDK_OVERLAP_RECTANGLE_IN.
8665 2000-05-17 Jonathan Blandford <jrb@redhat.com>
8667 * gtk/gtklayout.c (gtk_layout_map): Remove references to
8668 OFFSCREEN, as it is no longer necessary.
8670 Wed May 17 10:52:12 2000 Owen Taylor <otaylor@redhat.com>
8672 * gtk/gtkcolorsel.c: Patch from David Santiago
8673 <mrcooger@cyberverse.com> to change things so that the
8674 indicator of the active palette entry is done independently,
8675 not via the focus, since it should always be visible.
8677 2000-05-17 Tor Lillqvist <tml@iki.fi>
8679 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
8680 refcount leaks as in the X11 backend.
8682 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
8685 * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
8686 backend. Add _gdk_windowing_window_destroy().
8688 * gtk/gtkcolorsel.c: Include correct backend-specific header.
8689 Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
8690 either, but these probably do exist on nanox?)
8692 * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
8693 which isn't necessarily defined by <math.h>.
8695 * gtk/gtkobject.c (gtk_object_init): Don't go up the class
8696 ancestry past GtkObject.
8698 * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8701 * gtk/gtk.def: Update corresponding to recent changes.
8703 * gtk/makefile.{cygwin,msc}: Updates.
8705 Fri May 12 18:46:51 2000 Owen Taylor <otaylor@redhat.com>
8707 * docs/Changes-1.4.txt: A bit of editing.
8709 * gdk/gdkwindow.c (_gdk_window_clear_update_area)
8710 * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
8711 to clear the update area for the window, and clear it
8712 when hiding a window.
8714 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
8715 if window destroyed.
8717 * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8719 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
8720 gdk_window_destroy() to the generic code, since there was a lot of
8721 window-system-independent logic it in. Add a function:
8723 _gdk_window_destroy()
8725 to the internal API to destroy a window without unreferencing it.
8728 _gdk_windowing_window_destroy()
8730 That does the windowing-system-dependent part of destroying
8733 Fri May 12 11:07:41 2000 Owen Taylor <otaylor@redhat.com>
8735 * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8737 Fri May 12 11:06:10 2000 Owen Taylor <otaylor@redhat.com>
8739 * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
8740 Make gtk_widget_shape_combine_mask() keep a reference count on
8741 the pixmap since it keeps it around.
8743 Fri May 12 10:53:29 2000 Owen Taylor <otaylor@redhat.com>
8745 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8748 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8749 leak with event filters.
8751 Thu May 11 14:29:44 2000 Owen Taylor <otaylor@redhat.com>
8753 * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8754 signal handlers with the right data arguments. (Fixes
8755 some warnings when a widget was repeatedly set as a drag
8758 * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8759 window so we can avoid avoid setting the DND properties on the
8760 toplevel window repeatedly.
8762 2000-05-13 Tor Lillqvist <tml@iki.fi>
8764 * gdk/win32/gdkwin32.h: Define more message types missing from
8767 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8768 call gdk_window_destroy_notify(). It was never called. This
8769 probably meant that the GdkWindow was never freed. Thanks Owen for
8772 * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8773 window as destroyed before calling DestroyWindow(). DestroyWindow()
8774 causes a call to the window procedure (gdk_WindowProc), which
8775 calls gdk_event_translate(), which calls
8776 gdk_window_destroy_notify(), which gets confused unless the window
8777 is set as destroyed.
8779 * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8780 this function to indicate it's win32 only. Put inside #ifdef
8783 * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8784 debugging function. (gdk_event_translate:) Add a default branch
8785 that uses the above function to print debug messages with all
8786 Windows messages symbolically.
8788 * gdk/win32/gdkprivate-win32.h: Declare it, and
8789 gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8791 Fri May 12 20:07:32 2000 Tim Janik <timj@gtk.org>
8793 * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8796 Fri May 12 17:13:32 2000 Tim Janik <timj@gtk.org>
8798 * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8800 * gtk/gtktext.c: made the adjustments no-construct args, simply
8801 provide default adjustments.
8802 (gtk_text_destroy): release adjustments.
8804 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8805 adjustment argument non-construct.
8807 * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8808 instead of in finalize.
8809 (gtk_progress_get_text_from_value):
8810 (gtk_progress_get_current_text):
8811 (gtk_progress_set_value):
8812 (gtk_progress_get_percentage_from_value):
8813 (gtk_progress_get_current_percentage):
8814 (gtk_progress_set_percentage):
8815 (gtk_progress_configure): ensure an adjustment is present.
8817 Thu May 11 01:24:08 2000 Tim Janik <timj@gtk.org>
8819 * gtk/gtkcolorsel.[hc]:
8820 * gtk/gtkcolorseldialog.[hc]:
8821 * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8822 their parent implementation, use bit fields for boolean values, don't
8823 create unused widgets, usage of glib types, braces go on their own
8824 lines, function argument alignment, #include directives etc. etc. etc..
8826 * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8828 Wed May 10 23:29:52 2000 Tim Janik <timj@gtk.org>
8830 * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8832 * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8835 * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8837 (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8839 * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8840 to NULL when the toplevel is getting destroyed.
8841 (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8843 (gtk_menu_init): store the information of whether we have to
8844 readd the initial child ref_count during destruction in a new
8845 GtkMenu field needs_destruction_ref_count.
8847 * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8848 here, those reading: learn from my mistake! ;)
8849 in order for set_?adjustment to support a default adjustemnt if
8850 invoked with an adjustment pointer of NULL, the code read (pseudo):
8851 if (v->adjustment) unref (v->adjustment);
8852 if (!adjustment) adjustment = adjustment_new ();
8853 if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8854 now imagine the first unref to actually free the old adjustment and
8855 adjustment_new() creating a new adjustment from the very same memory
8856 portion. here, the latter comparision will unintendedly fail, and
8857 all hell breaks loose.
8858 (gtk_viewport_set_hadjustment):
8859 (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
8860 after unreferencing it.
8862 * gtk/gtkcontainer.[hc]: removed toplevel registration
8863 functions: gtk_container_register_toplevel(),
8864 gtk_container_unregister_toplevel() and
8865 gtk_container_get_toplevels() which had wrong semantics
8866 anyways: it didn't reference and copy the list.
8868 * gtk/gtkwindow.c: we take over the container toplevel registration
8869 bussiness now. windows are registered across multiple destructions,
8870 untill they are finalized. the initial implicit reference count
8871 users are holding on windows is removed with the first destruction
8873 (gtk_window_init): ref & sink and set has_user_ref_count, got
8874 rid of gtk_container_register_toplevel() call. add window to
8876 (gtk_window_destroy): unref the window if has_user_ref_count
8877 is still set, got rid of call to
8878 gtk_container_unregister_toplevel().
8879 (gtk_window_finalize): remove window from toplevel list.
8880 (gtk_window_list_toplevels): new function to return a newly
8881 created list with referenced toplevels.
8882 (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
8884 * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
8885 adjustment a non-construct arg.
8886 * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
8887 * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
8888 * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
8890 * gtk/gtkrange.c: added some realized checks.
8891 (gtk_range_destroy): get rid of the h/v adjustments in the
8892 destroy handler instead of finalize. remove timer.
8893 (gtk_range_get_adjustment): demand create adjustment.
8895 * gtk/gtkviewport.c: made h/v adjustment non-construct args.
8896 we simply create them on demand now and get rid of them in
8897 the destroy handler.
8898 (gtk_viewport_destroy): get rid of the h/v adjustments in the
8899 destroy handler instead of finalize.
8900 (gtk_viewport_get_hadjustment):
8901 (gtk_viewport_get_vadjustment):
8902 (gtk_viewport_size_allocate): demand create h/v adjustment
8905 * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
8906 gtk_widget_real_destroy () functionality.
8907 (gtk_widget_real_destroy): reinitialize with a new style, instead
8908 of setting widget->style to NULL.
8910 Fri May 5 13:02:09 2000 Tim Janik <timj@gtk.org>
8912 * gtk/gtkcalendar.c:
8913 * gtk/gtkbutton.c: ported _get_type() implementation over to
8914 GType, either to preserve memchunks allocation facilities,
8915 or because Gtk+ 1.0 GtkTypeInfo was still being used.
8917 * gtk/gtkobject.[hc]: derive from GObject. ported various functions
8918 over. prepare for ::destroy to be emitted multiple times.
8919 removed reference tracer magic. chain into GObjectClass.shutdown()
8920 to emit ::destroy signal.
8922 * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
8925 * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
8932 * gtk/gtkargcollector.c:
8933 * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
8934 not being a fundamental anymore, and to work with the new
8935 type system (nuked fundamental type varargs clutter).
8937 * gtk/*.c: install finalize handlers in the GObjectClass
8938 part of the class structure.
8939 changed direct GTK_OBJECT()->klass accesses to
8941 changed direct object_class->type accesses to GTK_CLASS_TYPE().
8943 * gtktypeutils.[hc]: use the reserved fundamental ids provided by
8944 GType. made most of the GTK_*() type macros and Gtk* typedefs
8945 simple wrappers around macros and types provided by GType.
8946 most notably, a significant portion of the old API vanished:
8949 GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
8950 GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
8953 GTK_TYPE_C_CALLBACK,
8957 gtk_type_set_varargs_type(),
8958 gtk_type_get_varargs_type(),
8959 gtk_type_check_object_cast(),
8960 gtk_type_check_class_cast(),
8961 gtk_type_describe_tree(),
8962 gtk_type_describe_heritage(),
8964 gtk_type_children_types(),
8965 gtk_type_set_chunk_alloc(),
8966 gtk_type_register_enum(),
8967 gtk_type_register_flags(),
8968 gtk_type_parent_class().
8969 replacements, where available are described in ../docs/Changes-1.4.txt.
8970 implemented compatibility functions for the remaining API.
8972 * configure.in: depend on glib 1.3.1, use gobject module.
8974 Thu May 11 12:39:50 2000 Owen Taylor <otaylor@redhat.com>
8976 * TODO.xml: Various updates to current status.
8978 Wed May 10 20:25:04 2000 Owen Taylor <otaylor@redhat.com>
8980 * gtk.m4: Print out version when test succeeds.
8982 Wed May 10 16:38:17 2000 Owen Taylor <otaylor@redhat.com>
8984 * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
8985 gtk/gtkhsv.[ch]: Color selection dialog rewrite.
8987 (Original triangle color selector from Simon Budig
8988 <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
8989 from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
8990 Santiago <mrcooger@cyberverse.com>)
8992 * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
8993 out into a separate widget.
8995 * gtk/testgtk.c: Add some checkbuttons for toggling palette
8996 and opacity controls.
8998 Wed May 10 16:08:09 2000 Owen Taylor <otaylor@redhat.com>
9000 * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
9001 snuck in prematurely.
9003 2000-05-07 Tor Lillqvist <tml@iki.fi>
9005 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
9006 had deleted a ! operator by mistake, which caused
9007 GDK_SELECTION_CLEAR events never to be generated, which caused
9008 only the first copy to the clipboard from an gtkeditable to
9009 actually cause a copy to the Windows clipboard.
9011 2000-05-06 Tor Lillqvist <tml@iki.fi>
9013 * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
9014 compilation, too. Current mingw gcc distributions include the
9015 necessary headers. Also the necessary IIDs are now in mingw
9016 headers/libraries, and own definitions unnecessary.
9018 More hacking on OLE2 DND, still doesn't work though, and thus
9021 * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
9024 Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
9026 * gdk/nanox/*: nano-X port work in progress.
9027 * gdk/simple.c: simple test for Gdk.
9028 * README.nanox: notes about the port: read this first!
9029 * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
9032 Fri May 5 11:18:47 2000 Owen Taylor <otaylor@redhat.com>
9034 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
9035 gdk_window_clear() into common code, implement in terms of
9036 gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
9037 not redirected to the backing rectangle.
9039 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
9041 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
9042 EXTRA_DIST. It does not work well when the file that
9043 everything depends on is not in the tarball.
9045 Tue Apr 25 22:20:41 2000 Owen Taylor <otaylor@redhat.com>
9047 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
9048 with recursion where process_updates() is called from
9049 an expose handler. (GtkTextView is highly broken in
9050 doing this, but it should work, so it is a nice test
9053 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
9055 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
9056 handle the case where updates are queued during processing of
9059 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
9061 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
9062 window is on gdk_display - use that instead of segfaulting.
9064 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
9066 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
9067 broken and require an empty arg, give it to them.
9069 Fri Apr 28 19:34:32 2000 Tim Janik <timj@gtk.org>
9071 * gtk/gtklabel.h: indentation fixes.
9073 2000-05-02 Tor Lillqvist <tml@iki.fi>
9075 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
9076 draw too narrow or too low arcs, they seem to fail, at least with
9077 some display drivers.
9079 * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
9081 Large changes to the Win32 backend, partially made necessary by
9082 the changes to the backend-independent internal
9083 structures. Attempts to implement similar backing store stuff as
9084 on X11. The current (CVS) version of the Win32 backend is *not* as
9085 stable as it was before the no-flicker branch was merged. A
9086 zipfile with that version is available from
9087 http://www.gimp.org/win32/. That should be use by "production"
9088 code until this CVS version is usable. (But note, the Win32
9089 backend has never been claimed to be "production quality".)
9091 * README.win32: Add the above comment about versions.
9093 * gdk/gdkwindow.c: Don't use backing store for now on Win32.
9095 * gdk/gdk.def: Update.
9097 * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
9098 presumably be replaced by some more better mechanism as 1.4 gets
9099 closer to release shape.
9101 * gdk/makefile.{cygwin,msc}: Update.
9103 * gdk/win32/*.c: Correct inclusions of the backend-specific and
9104 internal headers. Change code according to changes in these. Use
9105 gdk_drawable_*, not gdk_window_* where necessary.
9107 * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
9110 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
9111 to interpret single characters as UTF-8. Thanks to Hans Breuer.
9112 Use correct function name in warning messages.
9114 * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
9115 GSourceFuncs gdk_event_prepare and gdk_event_check.
9116 (gdk_event_get_graphics_expose): Do implement, use
9117 PeekMessage. Thanks to Hans Breuer.
9118 (event_mask_string): Debugging function to print an GdkEventMask.
9119 (gdk_pointer_grab): Use it.
9121 * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
9122 (old) book I used claimed was Hangul actually is CJK Unified
9123 Ideographs Extension A. Also, Hangul Syllables were missing.
9126 * gdk/win32/gdkgc-win32.c: Largish changes.
9128 * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
9129 g_win32_getlocale() from GLib, and not setlocale() to get current
9132 * gdk/win32/gdkprivate-win32.h
9133 * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
9134 gdkwin32.h, similarily as in the X11 backend.
9136 * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
9137 assignment was used instead of equals in if test. Thanks to Hans
9140 * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
9143 * gdk/win32/makefile.{cygwin,msc}
9144 * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
9145 path to the Win32 headers that works also with the mingw compiler.
9147 * gtk/gtkstyle.c: Include <string.h>.
9149 2000-04-26 Havoc Pennington <hp@redhat.com>
9151 * gtk/gtklabel.c (gtk_label_get_text): Add this function,
9152 replacing the broken gtk_label_get ()
9154 2000-04-15 Havoc Pennington <hp@pobox.com>
9156 * gdk/gdkdnd.h: clean up enum format, remove extra comma,
9157 this keeps scanner scripts from getting confused.
9159 * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
9160 data, rather than void
9162 2000-04-15 Tor Lillqvist <tml@iki.fi>
9164 * gtk/gtkclist.c (gtk_clist_motion)
9165 * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
9166 with is_hint FALSE, get x and y from the event. They used to be
9167 used uninitialised. The Win32 backend never sends motion events
9168 marked as hints. This for instance fixes the annoying file and
9169 font selector behaviour in the Win32 version.
9171 2000-04-14 Tor Lillqvist <tml@iki.fi>
9173 * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
9174 gtk_private_n_signals variables, they are used by some software,
9177 * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
9178 installation directory from the Registry, where the installer
9181 Fri Apr 7 17:19:27 2000 Owen Taylor <otaylor@redhat.com>
9183 * gdk/x11/Makefile.am: Fix problem with installation directory for
9186 * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
9187 <mrcooger@cyberverse.com> so that when selecting menus with the
9188 mouse, the first item will not be selected, but when selecting
9189 with an accelerator, or navigating left-right on a menubar with
9190 the menus popped up, the first item will be selected.
9192 2000-04-05 Dan Damian <dand@dnttm.ro>
9194 * configure.in: Added "ro" to ALL_LINGUAS.
9196 Wed Apr 5 00:08:36 2000 Owen Taylor <otaylor@redhat.com>
9198 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
9201 * Makefile.am (EXTRA_DIST): Fix typo.
9203 * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
9204 to catch gdkconfig.h
9206 * gtk/gtkitemfactory.c: Added FIXME.
9208 2000-03-30 Jonathan Blandford <jrb@redhat.com>
9210 * gtk/gtkpaned.c (gtk_paned_get_position): oops.
9211 s/return_if_fail/return_val_if_fail/g and add a return value.
9213 Mon Mar 27 20:56:14 2000 Owen Taylor <otaylor@redhat.com>
9215 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
9218 * gdk/gdkinput.h: Fix missing line from merge.
9220 Mon Mar 27 20:39:49 2000 Owen Taylor <otaylor@redhat.com>
9222 * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
9223 instead of gdkprivate.h.
9225 Sun Mar 12 15:19:24 2000 Owen Taylor <otaylor@redhat.com>
9227 * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
9228 parent class to correctly be GtkDialogClass.
9230 Thu Feb 24 23:58:21 2000 Owen Taylor <otaylor@redhat.com>
9232 * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
9233 toplevel windows and their immediate children by their parents,
9234 since the size of toplevel windows is out of our immediate
9235 control and we don't get any real benefit from trying to track
9236 this size for clipping.
9238 * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
9239 for input_only windows.
9241 * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
9242 to fix some hacks and make sure that we don't try to set the
9243 background of input only windows.
9245 Thu Feb 24 18:11:46 2000 Owen Taylor <otaylor@redhat.com>
9247 * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
9248 the _really_ internal stuff, and leave gdkprivate.h for the fake private
9249 stuff that we've traditionally exposed.
9251 * gdk/**.c: Use gdkinternals.h where appropriate.
9253 * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
9254 not include gdkprivate-x11.h, move all stuff of conceivable public
9255 interest into gdkx.h; keep all really private stuff in
9256 uninstalled header gdkprivate-x11.h.
9258 * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
9259 image->image_put on windows through a new function _gdk_window_draw_image()
9260 to allow us to do backing store for images. (Sort of ugly)
9262 * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
9263 contexts locally so that we can offset them properly when drawing
9264 onto backing pixmaps.
9266 * gdk/gdkinput.h: Reindented
9268 * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
9269 pixmap or color for the window, so we can properly initialize
9270 our double-buffer pixmaps, and also so that we temporarily set
9271 a background of None while scrolling.
9273 * gdk/gdkregion.h: Revise region boolean operators to have an
9274 interface that is actually convenient - switch from creating new
9275 regions on every op, to "methods" that modify existing regions
9276 (A = A OP B). 3 argument forms which allow dest == src, would also
9277 be possible, but the current interfaces seem to map nicely
9278 onto what needs to be done. (There is quite a lot of region
9281 * gdk/gdkregion.h: Add constructor from rectangle and a copy
9284 * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
9285 gdkpoly-generic.h: Copy region code from Xlib, switch it over
9286 to 32 bit coordinates, modify it to be mostly GTK+ style
9287 and to have interfaces that match gdkregion.h.
9289 * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
9290 double-buffered drawing. gdk_window_begin_paint_{rect,region}()
9291 create a backing pixmap and redirect all drawing to
9292 that backing pixmap until a matching gdk_window_end_paint().
9294 * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
9295 Create a special drawable class for GtkWindow's that
9296 redirects the drawing to the backing pixmap as necessary
9297 and then calls the real operations in _gdk_windowing_window_class.
9299 * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
9300 Store invalid region for each window. Generate expose events for invalid
9301 region in an idle. This replaces both the expose compression
9302 and the redrawing queuing in GTK+. It is both more efficient and
9303 simpler than either one individually and far more so then the
9306 * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
9307 Emulate 32 bit coordinates for windows with 16 bit coordinates
9308 by offsetting drawing, guffaw scrolling techniques and
9309 mapping/unmapping child windows as necessary.
9311 * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
9312 where, when invalid regions are processed, the region is stored,
9313 and if expose events come in that are detectably duplicate
9314 the processed exposes (by comparison of event serial numbers),
9315 the stored region is subtracted out of those exposes.
9317 * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
9318 regions newly exposed when scrolling or resizing windows.
9319 This, combined with forcing processesing of queued invalidated
9320 regions, gives nice flicker-free scrolling.
9322 * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
9323 invalidated regions after every scroll.
9325 * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
9326 emulation in GDK. Its, for all practical purposes just a
9327 GtkViewport/GtkFixed hybrid now.
9329 * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
9330 (16-bit) structures as necessary instead of just casting.
9332 * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
9333 in terms of the structures from gdkregion-generic.c, using appropriate
9334 offsets from GDK to X11 coordinates. Cache clip mask and
9335 origin and ts origin locally and only flush to the server
9336 when drawing, to avoid constantly setting and resetting these
9337 values when offsetting GC's for scrolling and backing pixmaps.
9339 * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
9341 * gtk/gtkcontainer.c: Call process_all_updates at end
9342 of resizing to reduce flicker. (Avoids having redraw
9343 lag arbitrarily behind resize under some circumstances)
9345 * gtk/gtkentry.c: Remove old backing store code, and simply take
9346 advantage of the new backing store capabilities of GDK.
9348 * gtk/gtkmain.c: Simple implementation of widget backing
9349 store - simply push a paint while handling each expose.
9350 (Should really be configurable widget for widget.)
9352 * gtk/gtkwidget.c: Remove all the old complicated redraw
9353 code, and simply invalidate the GDK windows from
9354 gdk_window_queue_clear(), etc. (Sigh, so much carefully
9355 debugged complexity ... gone to the winds.)
9357 Remove all the code for suppressing expose events while
9358 resizes are pending; this isn't needed since the invalid
9359 areas won't be processed until after the resizes are
9360 processed, since they are in a lower priority idle.
9362 Thu Feb 24 15:37:41 2000 Owen Taylor <otaylor@redhat.com>
9364 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
9365 and height of dest rectangle for non-intersecting rectangles.
9367 Sun Feb 20 16:47:31 2000 Owen Taylor <otaylor@redhat.com>
9369 * gtk/gtkwidget.h: Make GtkAllocation just a typedef
9372 Sun Feb 20 11:27:00 2000 Owen Taylor <otaylor@redhat.com>
9374 * gdk/gdk{events,image,private,types,window}.h
9375 gdk/x11/gdkinputprivate.h: Change all coordinates
9376 from int16 to int. Also, Change width and height from
9377 unsigned to signed to avoid all the stupid C
9380 Sat Feb 19 12:01:53 2000 Owen Taylor <otaylor@redhat.com>
9382 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
9383 Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
9384 Add some more detailed checking.
9386 * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
9387 New function to retrieve the depth of a drawable.
9389 * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
9390 field, reorder fields to save memory.
9392 Mon Dec 13 14:06:03 1999 Owen Taylor <otaylor@redhat.com>
9394 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
9395 of the background image instead of scaling the background down to
9398 * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
9399 which temporarily set slider to wrong size.
9401 * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
9404 Wed Nov 17 18:36:05 1999 Owen Taylor <otaylor@redhat.com>
9406 2000-03-23 Jonathan Blandford <jrb@redhat.com>
9408 * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
9410 2000-03-17 Tor Lillqvist <tml@iki.fi>
9412 * gdk/win32/gdkevents-win32.c: Remove the #ifndef
9413 USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
9415 * gdk/win32/gdkfont-win32.c
9416 * gdk/win32/gdkproperty-win32.c
9417 * gdk/win32/gdkselection-win32.c
9418 * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
9421 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
9423 * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
9425 Mon Mar 13 18:37:55 2000 Owen Taylor <otaylor@redhat.com>
9427 * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
9428 is called without trapping X errors.
9430 Fri Feb 25 10:48:53 2000 Owen Taylor <otaylor@redhat.com>
9432 * gtk/gtkrc.*: Fix problem where stray '"' characters found their
9433 way into the fontset lists.
9435 Tue Feb 22 08:52:52 2000 Tim Janik <timj@gtk.org>
9437 * gtk/gtkthemes.h: add extern "C" scope.
9439 Mon Feb 21 20:16:42 2000 Lars Hamann <lars@gtk.org>
9441 * gtk/gtkclist.c: applied patch from Guy Harris <guy@netapp.com>
9442 to make appends to the list constant. (gtk-guy-990901-0.patch)
9444 Mon Feb 14 22:50:10 2000 Tim Janik <timj@gtk.org>
9446 * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
9447 for the typename hash table.
9449 Mon Feb 14 15:01:23 2000 Owen Taylor <otaylor@redhat.com>
9451 * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
9452 to make sure we never divide by zero.
9453 (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
9455 Mon Feb 14 12:29:38 2000 Owen Taylor <otaylor@redhat.com>
9457 * gtk/gtkfontsel.c: Apply patch from
9458 SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
9459 better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
9461 Also, some cleanups in atom handling.
9463 Sun Feb 13 08:02:21 2000 Tim Janik <timj@gtk.org>
9465 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9468 Fri Feb 11 02:19:32 2000 Tim Janik <timj@gtk.org>
9470 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
9471 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
9472 * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9473 more guint wrap-around bugs before going to bed.
9475 Thu Feb 10 16:16:35 2000 Tim Janik <timj@gtk.org>
9477 * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9478 guint wrap arounds in allocation.width.
9480 * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9481 process untill we fit the allocation given.
9483 Tue Feb 8 09:38:29 2000 Tim Janik <timj@gtk.org>
9486 (gtk_widget_unrealize): guard widget access with ref/unref
9487 around signal emission.
9488 (gtk_widget_hide): same here, but also check its destroyed
9489 state before queueing a resize.
9491 Tue Feb 8 03:05:55 2000 Tim Janik <timj@gtk.org>
9493 * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9494 of gtk_default_insensitive_bg as insensitive base color.
9496 * gtk/gtktext.c (gtk_text_style_set): set the background color according
9497 to the widget's state.
9498 (gtk_text_realize): same here.
9499 (gtk_text_state_changed): same here.
9500 (draw_bg_rect): compare background color against base[] from
9501 GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
9503 Mon Feb 7 04:01:55 2000 Tim Janik <timj@gtk.org>
9505 * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
9506 grabs are active, unless a delete event is send to the toplevel
9507 of the currently grab holding widget.
9509 Sun Feb 6 10:13:15 2000 Owen Taylor <otaylor@redhat.com>
9511 * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
9512 debugging g_print's.
9514 Fri Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
9516 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
9517 ever make the scrolled-window requisition ever depend on the
9518 visibility state of the scrollbars for the AUTOMATIC policy.
9519 This breaks the GTK+ requisition model, and causes loops.
9521 Fri Feb 4 15:09:12 2000 Owen Taylor <otaylor@redhat.com>
9523 * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
9524 the default font to avoid problems with XFree86-4.0 where the
9525 default charset is iso10646-1, not iso8859-1.
9527 Thu Feb 3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
9533 * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
9535 * gtk/Makefile.am: minor cosmetic consistency tweak
9537 Thu Feb 3 14:46:01 2000 Owen Taylor <otaylor@redhat.com>
9539 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
9540 the activate_time to 0, so that we handle a quick
9541 press/release press/release properly and don't suppress
9542 the second release. (Red Hat bug #7545)
9544 Wed Feb 2 22:25:17 2000 Tim Janik <timj@gtk.org>
9546 * gtk/gtkctree.c (row_delete):
9547 (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
9548 bugs with destruction notifier, *always* update internal
9549 structures *before* calling user code.
9551 Sun Jan 30 20:10:52 2000 Lars Hamann <lars@gtk.org>
9553 A few more fixes for bug #5487, #2051, #2677.
9555 (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is
9556 not GDK_BUTTON_PRESS.
9557 (resync_selection): resync only if selection_mode is
9558 GTK_SELECTION_EXTENDED
9559 * gtk/gtkctree.c (resync_selection): same here
9561 Sun Jan 30 12:29:20 2000 Owen Taylor <otaylor@redhat.com>
9563 * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
9564 gdk_drag_get_selection() and gtk_menu_detach().
9566 [ From Jeroen Ruigrok/Asmodai ]
9568 Sat Jan 29 10:11:56 2000 Owen Taylor <otaylor@redhat.com>
9570 * gtk/gtknotebook.c (gtk_notebook_size_request):
9571 page->tab_label can be NULL.
9573 2000-01-25 Havoc Pennington <hp@pobox.com>
9575 * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
9578 * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
9580 * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
9582 * gdk/gdkproperty.c (gdk_property_get): return boolean
9584 * gdk/gdkinput.c (gdk_input_set_mode): return boolean
9586 * gdk/gdkim.c (gdk_im_ready): return boolean
9588 * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
9590 * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
9591 glib clash, should fix glib)
9593 * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
9594 (gdk_get_show_events): return gboolean, and canonicalize
9597 * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
9599 (gdk_colors_alloc): gboolean whether to be contiguous
9600 (gdk_color_equal): return gboolean since we are a predicate
9601 and not a qsort() (this looks semi-wrong due to glib breakage,
9602 IMO glib should be fixed)
9604 * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
9605 (gdk_get_use_xshm): return gboolean
9606 (gdk_pointer_is_grabbed): return gboolean
9608 * gdk/gdk.h: Change prototypes to match all the above changes,
9609 and re-run egtk-format-protos as required.
9611 Fri Jan 28 12:28:17 2000 Owen Taylor <otaylor@redhat.com>
9613 * gtk/gtkctree.c (resync_selection):
9614 * gtk/gtkclist.c (resync_selection):
9616 Return immediately if clist->drag_pos < 0. This is a workaround
9617 for the corrupt state that the clist gets into when a
9618 GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
9620 Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
9622 * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
9623 variable from recent commit.
9625 Thu Jan 27 15:22:09 2000 Owen Taylor <otaylor@redhat.com>
9627 * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
9629 Thu Jan 27 18:00:55 2000 Tim Janik <timj@gtk.org>
9631 * gtk/Makefile.am: prefix all autogenerated source that get build in
9632 $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
9633 in builddir. since we subsequently cd into srcdir for autogeneration,
9634 the paths have to be stripped from the target file names, thusly we
9635 use $(@F) as target names now.
9636 put a comment about configure.in's --disable-rebuilds option,
9637 which can be used for non-writable source directories, for development
9638 setups though, srcdir has to be *writable*.
9640 hu Jan 27 00:15:03 2000 Owen Taylor <otaylor@redhat.com>
9642 * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
9643 Finish the job of allowing event to be NULL.
9644 (Fixes bug #4283, reported by Chris Blizzard)
9646 * gtk/gtkentry.c (entry_adjust_scroll): When calculating
9647 things so that the cursor appears on screen, properly
9648 take into account INNER_BORDER.
9649 (Fixes bug #4754, reported by Antonio Campos)
9651 Wed Jan 26 23:12:28 2000 Owen Taylor <otaylor@redhat.com>
9653 * gtk/gtknotebook.c (gtk_notebook_map): Don't
9654 show the tab_label unless it itself is visible.
9656 gtk/gtknotebook.c (gtk_notebook_size_request):
9657 Do a better job of making sure that the visibility
9658 of the tab label corresponds to whether it should
9661 Wed Jan 26 21:17:03 2000 Owen Taylor <otaylor@redhat.com>
9663 * gtk/gtkoptionmenu.c (gtk_option_menu_position):
9664 Use the requisition, not the allocation, since the
9665 allocation has not necessarily been computed yet.
9666 (Pointed out by Eugene Osintsev)
9668 Wed Jan 26 19:44:25 2000 Owen Taylor <otaylor@redhat.com>
9670 * gtk/gtkstyle.c (gtk_style_new): Dont' set
9671 style/base[GTK_STATE_INSENSITIVE] both to
9672 gtk_default_insensitive_bg!
9673 (Bug #2187, reported by Jonathan Blandford)
9675 * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
9676 Add Alt_L, Alt_R to list of invalid accelerators.
9677 (Bug #3736, reported by Vlad Harchev)
9679 Wed Jan 26 19:01:56 2000 Owen Taylor <otaylor@redhat.com>
9681 * gtk/gtkfilesel.c (open_ref_dir): Fix several
9682 bugs which occured after an attempt to open
9683 invalid home directory left cmpl_state->reference_dir == NULL.
9685 - completion on files in home directory didn't work
9686 - completion on an empty string caused segfault
9688 (Bug #3678, reported by Steve Ratcliffe)
9690 * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
9691 cut and paste error that was causing scales to
9692 be incorrectly positioned.
9694 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
9696 2000-01-27 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
9698 * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9699 when checking for dcgettext, if we've found we needed
9702 Wed Jan 26 18:06:07 2000 Owen Taylor <otaylor@redhat.com>
9704 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9705 queue_clear on NO_WINDOW widgets during a reparent,
9706 since at that point the window and widget heirarchies
9707 are out of sync. This stops crashing in some cases
9708 (the scrolled window reparent test, for instance), and
9709 _probably_ won't cause drawing errors.
9711 * gtk/testgtk.c: Make the reparenting-a-scrolled-window
9712 test do what it was supposed to do and be robust against
9713 window closings, etc. (Bug #2443)
9715 Wed Jan 26 16:56:54 2000 Owen Taylor <otaylor@redhat.com>
9717 * gtk/gtkentry.c: Fix return values on mouse events.
9718 (Bug #2686, Sky <seb_sky@yahoo.com>)
9720 * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9721 (pointed out by George Lebl)
9723 * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9724 (From Ettore Perazzoli <ettore@helixcode.com>)
9726 Mon Jan 24 10:44:48 2000 Owen Taylor <otaylor@redhat.com>
9728 * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9729 clicks between rows or outside calender area correctly.
9730 (Patch from Damon Chaplin)
9732 * gtk/gtkclist.c (gtk_clist_set_row_data_full):
9733 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
9734 Call destroy function when overwriting existing data.
9735 (Pointed out by Damon Chaplin)
9737 Tue Jan 25 09:55:41 2000 Owen Taylor <otaylor@redhat.com>
9739 * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9740 which was causing problems on various systems with Xmu.
9741 This hasn't been needed for a very long time.
9744 Sun Jan 23 22:27:36 2000 Owen Taylor <otaylor@redhat.com>
9746 * gdk/gdki18n.h: Include <ctype.h> when defining
9747 gdk_isw* in terms of is* as a fallback.
9748 (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9750 Sun Jan 23 22:12:36 2000 Owen Taylor <otaylor@redhat.com>
9752 * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9753 realize the widget when it is size allocated!
9756 * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9757 Removed unused call to gdk_window_get_size() that
9758 showed up when the above was fixed.
9760 Sat Jan 22 15:44:30 2000 Owen Taylor <otaylor@redhat.com>
9762 * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9763 fix up widget->window when the widget is a
9764 NO_WINDOW container widget.
9766 Sat Jan 22 12:40:48 2000 Owen Taylor <otaylor@redhat.com>
9768 * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9769 to account for the fact that feof() does _not_
9770 return TRUE on errors, and thus avoid infinite loops
9771 when trying to use gdk_pixmap_create_from_xpm()
9772 on unreadable values.
9774 Fri Jan 21 18:32:43 2000 Owen Taylor <otaylor@redhat.com>
9776 * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9778 Fri Jan 21 16:24:08 2000 Owen Taylor <otaylor@redhat.com>
9780 * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9781 gdk_gc_set_dashes to take gint8 instead of gchar to
9782 make it clearer that it is _not_ a NULL terminated string.
9784 * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9785 gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9786 gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9789 Thu Dec 30 04:51:05 1999 Tim Janik <timj@gtk.org>
9791 * gtk/gtkvscale.c (gtk_vscale_pos_background):
9792 * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9793 background size relative to our allocation, guard against small
9794 allocations, we may have not yet been size allocated.
9796 Thu Dec 2 10:59:14 1999 Owen Taylor <otaylor@redhat.com>
9798 * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9799 not just version == 3. We implement all 3 + most of 4 -
9800 (we don't support matching text/plain;charset=iso-8859-1
9801 to a dest that expects text/plain). We'll still advertise
9802 3 to be safe, but any client implementing version >= 3
9803 must interoperate with 3.
9805 Tue Mar 14 11:53:31 2000 Owen Taylor <otaylor@redhat.com>
9807 * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9808 background and gc members, add a warning in gtk_tooltips_set_color()
9809 indicating that this function is deprecated.
9811 Thu Mar 9 22:10:56 GMT 2000 Tony Gale <gale@gtk.org>
9813 * docs/gtkfaq.sgml: FAQ Update:
9814 - Minor cleanups (Emmanuel, me)
9816 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9817 How can I retrieve the text from a GtkMenuItem? (timj)
9818 How do I validate/limit/filter the input to a GtkEntry? (me)
9819 Memory does not seem to be released when I free the list
9820 nodes I've allocated (timj)
9822 2000-03-07 Tor Lillqvist <tml@iki.fi>
9824 * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9825 (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9826 for which it is no use to call GetLastError onWin9x.
9827 (gdk_other_api_failed) New function, for general error
9828 reporting without calling GetLastError.
9829 (gdk_win32_api_failed) OTOH, this function always calls
9830 GetLastError. (gdk_win32_last_error_string) Remove this function,
9831 GLib has the equivalent now.
9833 * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9834 call them with function name, file name and line number in the
9837 * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9840 * gtk/gtk.def: Add some missing entry points.
9842 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9843 gtk_paned_set_gutter_size, which don't exist any longer, as void.
9845 Fixes by Hans Breuer:
9847 * gdk/makefile.msc: Update for debugging.
9849 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9850 implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9851 PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9854 * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
9857 * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
9859 * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
9861 2000-03-04 Tor Lillqvist <tml@iki.fi>
9863 * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
9864 just pixel value of background colour.
9866 * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
9867 containing code snippet previously duplicated in a couple of
9870 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
9873 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
9874 GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
9875 events for autorepeated Shift, Control and Alt keys. Use
9878 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
9879 pointer is inside the window the cursor of which we are setting,
9880 call SetCursor immediately.
9882 * gdk/win32/makefile.cygwin
9883 * gtk/makefile.cygwin: If we don't have the build number stamp
9886 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9887 gtk_paned_set_gutter_size as empty.
9889 * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
9891 Tue Feb 29 13:10:00 GMT 2000 Tony Gale <gale@gtk.org>
9893 * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
9894 gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
9895 docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
9896 docs/gtk_tut.sgml docs/gtk.texi TODO:
9898 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
9900 Sat Feb 26 11:46:25 GMT 2000 Tony Gale <gale@gtk.org>
9902 * gtk/gtkcalendar.c: Implement num_marked_dates,
9903 and don't emit mutiple day_selected signals on
9906 2000-02-25 Jonathan Blandford <jrb@redhat.com>
9908 * docs/make-todo (lineno): let title and logo be configurable so
9909 that GNOME can use this script too.
9911 * TODO.xml: added logourl and a title
9913 Fri Feb 25 11:12:00 2000 Owen Taylor <otaylor@redhat.com>
9915 * TODO.xml: Added some UI items, and an explanatory
9916 comment at the top of the file.
9918 Thu Feb 24 09:07:28 2000 Tim Janik <timj@gtk.org>
9920 * TODO.xml: some updates, added abunch of new entries.
9921 a note for those fiddeling with this file, when done
9923 $ ./docs/make-todo TODO.xml >/dev/null
9924 and correct output errors before comitting changes.
9926 Wed Feb 23 22:59:50 2000 Owen Taylor <otaylor@redhat.com>
9928 * TODO.xml: Added XML-structured TODO file.
9929 * docs/make-todo: python script to turn TODO.xml into
9932 2000-02-23 Jonathan Blandford <jrb@redhat.com>
9934 * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
9935 the function to let it draw the seven dots, instead of the old,
9936 much maligned, method.
9937 (draw_dot): New function to draw a dot.
9939 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
9940 to draw the handle inside the border width as opposed to outside.
9941 Use paint function instead of gdk_draw_point.
9943 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
9944 to draw the handle inside the border width as opposed to outside.
9945 Use paint function instead of gdk_draw_point.
9947 * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
9948 Change indenting to be more GTK like.
9950 Wed Feb 23 10:54:14 GMT 2000 Tony Gale <gale@gtk.org>
9952 * docs/gtk_tut.sgml: New section on GtkCalendar
9953 * examples/calendar: Update example code
9955 Tue Feb 22 13:54:12 GMT 2000 Tony Gale <gale@gtk.org>
9957 * docs/gtkfaq.sgml: FAQ Update
9959 2000-02-19 Anders Carlsson <andersca@gnu.org>
9961 * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
9962 to prevent the scroll event to be propagated upwards.
9964 Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
9966 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
9967 OwnerGrabButtonMask from button entries for
9968 GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
9970 * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
9971 to the event mask (which will result in button/press release
9972 being added to the event mask on Unix) so scrolling works
9973 for layouts in scroll windows.
9975 * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
9977 Patch from Anders Carlsson <andersca@gnu.org> to add
9980 * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
9981 scrolling to the "Test Scrolling" part of testgtk.
9983 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
9985 * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
9986 it against GDK_SCROLL.
9988 * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
9989 way of mouse wheel scrolling.
9991 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
9993 * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
9995 * gtk/gtkmain.c: Removed previous mouse wheel hack.
9997 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
9998 gdk_event_mask_table.
10000 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
10001 GdkEventScroll handler.
10003 * gdk/gdkevents.h: Added GdkEventScroll structure.
10005 Thu Feb 17 17:10:12 2000 Owen Taylor <otaylor@redhat.com>
10007 * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
10008 and Anders Carlsson to change the Paned widgets so that they
10009 can be dragged from anywhere along the length. Also change
10010 the way that this is drawn to make this apparent.
10012 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
10013 from George Lebl to check that option_menu->menu is present
10014 before getting history.
10016 2000-02-14 Tor Lillqvist <tml@iki.fi>
10018 * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
10019 before the assertion for non-NULL segment list.
10021 * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
10022 Seems that pattern brushes *must* be 8x8 pixels! At least on my
10023 machine, but it might be display driver dependent. Sigh, so make
10024 sure the stipple is that size. Does Windows suck or what?
10026 * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
10029 2000-02-13 Havoc Pennington <hp@pobox.com>
10031 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
10033 (gdk_cursor_new): init refcount to 1
10035 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
10037 2000-02-13 Tor Lillqvist <tml@iki.fi>
10039 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
10040 so that we don't have to do unnecessary settings to the HDC.
10042 * gdk/win32/gdkdrawable-win32.c
10043 * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
10046 * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
10047 the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
10048 GDI paths, call WidenPath to get the outline of the stroken path,
10049 and then fill the outline (with the brush that was built from the
10052 * gdk/win32/gdkgc-win32.c: Factor out common code from
10053 _gdk_win32_gc_new and gdk_win32_gc_set_values into
10054 gdk_win32_gc_values_to_win32values. Use correct colour for
10055 SetBkColor() (Until now the code actually used a random colour in
10056 the call to SetBkColor()... but that didn't show up as not many
10057 GDI APIs use the background colour. Pattern (opaque stippled)
10060 * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
10061 gdk_win32_api_failed): New functions for error logging.
10063 * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
10064 WIN32_API_FAILED to call them, passing function or file name and
10067 * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
10069 * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
10070 GdkColor for foreground and background in GdkGCWin32Data.
10072 * gdk/makefile.cygwin: Link in the resource object separately.
10074 * gdk/win32/rc/gdk.rc
10075 * gtk/gtk.rc (New file)
10076 * gdk/win32/makefile.cygwin
10077 * gtk/makefile.cygwin: Update build number in DLLs automatically,
10080 Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org>
10082 * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
10083 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
10084 * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
10085 * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
10086 parameters given and cursor->ref_count. coding style fixups.
10088 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10091 * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
10092 fix up widget macros and add _GET_CLASS() variant.
10094 * gtk/*.c: some GtkType fixups.
10096 2000-02-09 Tor Lillqvist <tml@iki.fi>
10098 * gdk/win32/gdkproperty-win32.c
10099 * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
10102 2000-02-04 Tor Lillqvist <tml@iki.fi>
10104 * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
10105 g_filename_to_utf8 to convert the font names Windows gives us from
10106 whatever is the default codepage to UTF-8.
10107 (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
10108 in the other direction.
10110 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
10111 error in debugging output.
10113 2000-02-02 Tor Lillqvist <tml@iki.fi>
10115 * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
10116 and height parameters to gdk_window_clear_area(). Not minus one.
10118 Wed Feb 2 11:58:05 2000 Owen Taylor <otaylor@redhat.com>
10120 * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
10121 checks if the widget passed to gtk_drag_get_data() was not the
10124 2000-02-01 Tor Lillqvist <tml@iki.fi>
10126 * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
10127 g_filename_from_utf8 functions (which were added a moment ago to
10128 GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
10131 gtk_file_selection_get_filename returns the filename in the C
10132 runtime encoding. It calls g_filename_from_utf8, but copies the
10133 returned string to a static buffer, which is returned. I think
10134 this is better than returning the result from g_filename_from_utf8
10135 directly, which would mean all apps that use it would have to free
10136 the return value. Or should this function care about this issue at
10137 all? Maybe a new function with clearly defined semantics.
10139 * gtk/gtkfilesel.h: Add comment about
10140 gtk_file_selection_get_filename returning the filename in the C
10141 runtime's encoding.
10145 * gdk/makefile.{cygwin,msc}
10146 * gtk/gtk.def: Updates.
10148 * gdk/gdkcursor-win32.c: Initialise refcount.
10150 2000-01-31 Yuan-Chung Cheng <platin@linux.org.tw>
10152 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
10154 2000-01-30 Havoc Pennington <hp@pobox.com>
10156 * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
10159 * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
10161 * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then
10162 implemented in platform-specific code
10164 * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
10166 * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
10167 underscore in front
10169 * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
10170 put an underscore in front
10172 * gdk/gdkcursor.c: new file, implements
10173 gdk_cursor_ref/gdk_cursor_unref
10175 * gdk/gdkcursor.h: Refcount GdkCursor
10177 * gdk/gdkcompat.h (gdk_cursor_destroy): compat
10179 2000-01-29 Tor Lillqvist <tml@iki.fi>
10182 * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
10184 Tue Jan 25 11:43:21 2000 Owen Taylor <otaylor@redhat.com>
10186 * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
10187 structures to properly inherit from GtkWidget not GtkBin.
10189 Sun Jan 23 20:28:24 2000 Owen Taylor <otaylor@redhat.com>
10191 * gtk+.spec.in: Added lib/gtk+/include/* to %files
10192 (bug #5178 - Peter Wainright)
10194 * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
10195 so that it will be installed.
10196 (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
10198 Fri Jan 21 16:29:28 2000 Owen Taylor <otaylor@redhat.com>
10200 * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
10201 for the GtkStyleClass vtable const.
10203 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
10204 take a const string argument like GtkTranslateFunc. This will
10205 require changes in use code.
10207 2000-01-19 Tor Lillqvist <tml@iki.fi>
10209 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10210 semantics (to mimic the X11 backend, which just calls XClearArea)
10211 is to check for zero width (and height), and in that case use the
10212 window's width minus x (height minus y). This fixes for instance
10213 some redraw problems with gtkclist, which were easily noticeable
10214 in the gtk file selection widget.
10216 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
10219 2000-01-13 Tor Lillqvist <tml@iki.fi>
10223 * gdk/x11/Makefile.am
10224 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
10226 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
10229 2000-01-09 Tor Lillqvist <tml@iki.fi>
10231 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
10232 WM_MOVE for iconified or invisible windows. This fixes various
10233 problems when minimising windows. Thanks to Bernd Herd.
10235 2000-01-05 Tor Lillqvist <tml@iki.fi>
10237 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
10238 backend's draw_lines method, not draw_points.
10240 2000-01-02 Tor Lillqvist <tml@iki.fi>
10242 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
10243 before Owen's reorganisation: Don't have queued_events and
10244 queued_tail statics in this file, but use gdk_queued_events and
10245 gdk_queued_tail. This makes exposure event compression work again.
10247 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
10250 1999-12-30 Tor Lillqvist <tml@iki.fi>
10252 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
10253 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
10254 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
10255 doesn't do anything.
10257 * gdk/gdk.def: Add gdk_xid_table_insert.
10259 * gdk/win32/gdkprivate-win32.h
10260 * gdk/win32/gdkevents-win32.c
10261 * gdk/win32/gdkinput-win32.c
10263 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
10264 extension_events field in the GdkWindowWin32Data struct. Use only
10265 the extension_events field in GdkWindowPrivate. Previously one was
10266 set, and the other one tested, which broke tablet
10267 functionality. Thanks to Keishi Suenaga for pointing this out.
10269 1999-12-18 Tor Lillqvist <tml@iki.fi>
10271 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
10272 When handling a single character (text length == 1), don't handle
10273 it as if it was UTF-8.
10275 1999-12-11 Tor Lillqvist <tml@iki.fi>
10277 * Makefile.am: Distribute README.win32.
10280 * gdk/win32/Makefile.am: Distribute Win32 files.
10282 * gdk/makefile.msc: New file.
10284 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
10287 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
10288 gdk_error_code as GDKVAR, as they are referred outside GDK.
10290 * gdk/win32/makefile.msc: Update.
10292 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
10293 tweaks. Check only if at least one of those Unicode subrange bits
10294 we care for is set. If no code page bits are set, guess (wildly)
10295 based on the charset.
10297 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
10299 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
10305 * gtk/gtkselection.c
10307 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
10308 appropriate. There must be a cleaner way to handle this?
10310 * gtk/gtkrc.c: Must include windows.h on Win32.
10312 * gtk/testgtk.c: No need to include gdkx.h.
10314 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
10316 1999-12-07 Tor Lillqvist <tml@iki.fi>
10318 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
10319 the rbearing is set to the same as the width, but this should be
10322 1999-12-06 Tor Lillqvist <tml@iki.fi>
10324 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
10325 function. If Windows doesn't tell us what Unicode subranges a font
10326 covers, guesstimate based on the codepages it covers. This will
10327 hopefully help those Windows versions or fonts that don't give us
10328 any useful Unicode subrange information with GetTextCharsetInfo.
10329 Call this function in gdk_font_load_internal.
10331 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
10334 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
10336 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
10337 New function, long needed.
10339 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
10341 * gdk/gdkproperty.h x11/gdkproperty.c: Change
10342 only_if_exists argument of gdk_atom_intern to
10345 1999-11-25 Tor Lillqvist <tml@iki.fi>
10347 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
10348 Fix two copy&paste errors.
10350 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
10353 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
10354 GdkWin32SingleFont struct.
10356 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
10357 subranges of loaded fonts. Clear font signature first, in case
10358 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
10359 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
10361 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
10362 Unoffset clip region.
10364 1999-11-23 Tor Lillqvist <tml@iki.fi>
10366 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
10367 event->any.window before calling filter functions.
10369 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
10371 * gtk/gtkgamma.h: Adapt cast macros to standard.
10373 [ Merges from 1.2 ]
10375 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
10377 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
10378 If translation does not include a '/', use entire
10379 translation instead of crashing.
10381 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
10383 * docs/gtk_tut.sgml:
10384 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
10386 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
10388 * gtk/gtkselection.c (gtk_target_list_remove): Use
10389 g_list_remove_link, not g_list_remove.
10391 [ From Geert Bevin <gbevin@thunderstorms.org> ]
10393 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
10395 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
10396 statement upon unselection (how the heck did that slip in?).
10398 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
10400 * gtk/gtktext.c (gtk_text_freeze):
10401 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
10402 in frozen state (and aparently crashes). patch provided by Anders
10403 Melchiorsen <and@kampsax.dtu.dk>.
10405 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
10407 * fix insensitive default/focus widget activation,
10408 reported by Matt Goodall <mgg@isotek.co.uk>.
10410 * gtk/gtkwindow.c (gtk_window_key_press_event):
10411 (gtk_window_activate_default):
10412 (gtk_window_activate_focus):
10413 return handled=FALSE for actiavtion of insensitive default
10414 widgets. return handled=TRUE for activation of insensitive
10415 focus widgets. don't activate in either case.
10417 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
10419 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
10420 and $glib_cflags to match library order and in the
10421 theory that an old version of GLib is more likely to
10422 be in the include directory for X then vice-versa.
10425 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
10427 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
10428 to determine the locale for fontsets, not LC_MESSAGES;
10429 the user may want English messages with a handling
10430 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
10431 will still be broken) (Bug #2891)
10433 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
10435 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
10437 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
10439 * gtk/gtkrc.ko: Changed the Korean default fontset.
10441 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
10443 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
10444 where when scrolling to the left or top double exposes
10445 were done, causing major slowdowns.
10447 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
10449 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
10450 names to lowercase and alphanumeric, before looking
10453 * gtk/Makefile.am: Install codeset variant gtkrc files
10454 with normalized names.
10456 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
10458 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
10459 popup menus when the menu is already visible, but its parent
10460 is still hidden, (happens after tornoff window got hidden).
10462 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
10464 * gtk/Makefile.am (install-data-local): Fix
10465 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10466 deleted, causing error messages on install.
10468 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
10470 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10471 the handle as well, since we now sometimes ignore
10472 exposes on the handle while resizing.
10474 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
10476 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10477 extra g_free introduced in one of the last one or two
10480 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
10482 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10483 consistent, put each style that a gtkrc.* file creates
10484 in a unique namespace, remove old files before installing.
10486 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
10488 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10489 gtk_rc_init is called multiple times. (Yes, people who
10490 do that have bugs in their code.)
10492 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10494 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10495 Remove it since it's generated by the Makefile anyway
10497 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
10499 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
10500 device->info.axes for core pointer.
10502 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
10504 * gtk/testgtk.c (destroy_idle_test): Rename idle to
10505 idle_id, to deal with obsolete, broken C libraries.
10507 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
10509 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
10510 allocation->x/y twice!
10512 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
10513 consistent with gtk_vscale_pos_trough().
10515 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
10517 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
10518 be queueing a resize on a toplevel container between
10519 the time we show it and when we map it. So, we need
10520 to test GTK_WIDGET_VISIBLE() for toplevels, and only
10521 use GTK_WIDGET_DRAWABLE() for child windows.
10523 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
10525 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
10528 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
10530 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
10531 container DRAWABLE (instead of VISIBLE), so we don't queue
10532 resizes on non-toplevel containers.
10534 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
10536 * gtk/gtkselection.[ch]: Make the data argument
10539 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
10541 * gtk/gtkwindow.c: Try to behave sensibly if
10542 the focus widget is the window itself. (Should
10543 we allow this at all?)
10545 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
10547 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
10548 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
10549 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
10550 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
10551 in prototypes and implementations consistent (Tomas Ogren).
10553 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
10554 before the widget is unparented (reported by damon).
10556 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
10557 since we provide unsigned data anyways.
10559 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
10561 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
10562 the call to gtk_tooltips_layout_text() until later.
10564 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
10565 Call gtk_widget_ensure_style() before using the style.
10567 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
10569 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
10570 for old widgets that don't propagate draws to all
10571 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
10573 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
10575 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
10576 for a redraw but just the widget that requested the resize.
10578 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
10580 * gtk/gtkcontainer.c: added new widget level method
10581 gtk_container_set_reallocate_redraws() and a GtkContainer flag
10582 reallocate_redraws : 1 to reflect the setting, exported this through
10583 the argument system as a boolean ::reallocate_redraws.
10585 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
10586 on the widget because the allocation changes, do so as well for
10587 widget->parent if the parent has reallocate_redraws set to TRUE.
10588 with that containers requesting reallocation redraws get automatically
10589 redrawn if their children changed allocation (this unfortunately
10590 affects also other children that didn't change allocation, but we
10591 cannot work around that before 1.3).
10593 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
10595 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
10596 _and_ height are >0 (not _or_).
10598 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
10599 instead of gtk_container_queue_resize(), which is a core gtk internal
10600 function (must have been on crack when i queued that).
10602 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
10603 we can check more reliably if we want to discard expose events.
10604 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
10607 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
10608 we simply trust these events. for deciding whether to discard exposes,
10609 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
10611 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
10613 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10614 queues of areas that are completely off screen.
10616 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
10617 logic for handleboxes.
10619 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
10620 check on width/height.
10622 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
10624 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
10625 we are fine with using $@ the way we do (if we actually encounter
10626 brokeness with $@ in VPATH builds because of additional path prefixes,
10627 we need to use $(@F) actually).
10629 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
10631 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
10632 short lived bugs, that would allow language bindings to do surgeries
10635 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
10637 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
10638 where comparison was being done against an uninitialized
10639 value causing intermittant results depending on
10640 compiler flags. Also make it clearer that we aren't
10641 ever initializing the child as 0x0 (though this will
10642 be caught in gtk_widget_size_allocate())
10644 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
10646 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
10647 gtk_window_unset_transient_for() call after we do checks
10648 involving the old transient parent.
10649 [ From Lance Capser <lmc@cyberhighway.net> ]
10651 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
10653 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
10656 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
10658 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
10659 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
10661 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
10663 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
10664 `$@' is valid only in the build dir, not after we've done
10665 `cd $srcdir'. Also use `test -f' instead of less portable
10668 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
10670 * gtk/gtktext.c (correct_cache_insert): Rewrite
10671 for simplicity, and hopefully correctness.
10672 (Fixes bug #1322, which was a segfault when
10673 on some insertions with the properties around
10674 the insertion set up just wrong.)
10676 * gtk/gtktext.c (gtk_text_adjustment): When we receive
10677 a "changed" signal, clamp the new value to the adjustment
10678 bounds to avoid segfaulting if someone tries to change
10679 the adjustment to a bogus value. (Bug #1795)
10681 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
10683 * gtk/gtkmain.c: Ignore unexpected destroy notifies
10684 for children, for toplevel windows handle them
10687 * gtk/gtkplug.c: Add an unrealize handler so that
10688 we unref plug->socket_window when we are done
10691 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
10693 * gtk/gtktext.c (clear_area): Fix stupid signedness
10694 problem that was causing background to sometimes
10697 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
10699 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
10701 * gtk/gtkmenu.c (gtk_menu_position): Make
10702 sure we never position menus with negative x, y,
10703 since gtk_widget_set_uposition() can't handle that.
10705 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
10706 Modify the positioning code a bit so that we always
10707 put the top-left corner onscreen. (This is for
10708 UI reasons, gtk_menu_position() now takes care of
10709 gtk_widet_set_uposition() brokeness.)
10711 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
10713 * gtk/Makefile.am: fixed up things for -jx, x > 1.
10715 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
10717 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10718 RC style that is passed in. The lack of the ref
10719 before was a bug. If people worked around this
10720 bug, this will introduce a slight memory leak
10721 in their code. The code should typically look like:
10723 rc_style = gtk_rc_style_new ();
10725 gtk_widget_modify_style (widget, rc_style);
10726 gtk_rc_style_unref (rc_style);
10728 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10729 the style if it was already set.
10731 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10732 style if it was set before.
10734 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
10736 * gtk/testgtk.c (main): Add a check to see if we
10737 are being run from the correct directory and
10738 to quit nicely if we are not.
10740 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10743 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
10745 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10748 queue resizes unconditionally (gtk_widget_queue_resize will figure
10749 what to do if the window is not realized).
10750 (gtk_window_move_resize): only recenter the window
10751 for GTK_WIN_POS_CENTER_ALWAYS.
10752 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10753 the same way as GTK_WIN_POS_CENTER.
10755 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
10757 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10758 with (!(info->last_flags & GDK_HINT_POS)) instead of
10759 (!info->last_flags & GDK_HINT_POS).
10761 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10762 new_height unconditionally, because we use these values even if
10763 !default_size_changed && !hints_changed.
10764 comented the (default_size_changed || hints_changed) case with
10765 respect to resize rejects from the window manager.
10767 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10768 in the zvt condition hack, since this includes the window hints, set
10769 the hints after the handling_resize case.
10771 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10772 window is initially shown with to the geometry.
10774 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
10776 * gtk/gtkwindow.c (gtk_window_move_resize):
10777 s/size_changed/default_size_changed/g so i know what's
10778 really going on (frying brain on smaller flame now).
10780 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
10782 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10783 we have size_changed upon handling_resize. this is a gross
10784 workaround for the broken zvt widget and should be removed in
10785 1.3 again (search for FIXME).
10786 Owen provided an accurate comment for this:
10788 /* We could be here for two reasons
10789 * 1) We coincidentally got a resize while handling
10791 * 2) Our computation of size_changed was completely
10792 * screwed up, probably because one of our children
10793 * is broken. It's probably a zvt widget.
10795 * For 1), we could just go ahead and ask for the
10796 * new size right now, but doing that for 2)
10797 * might well be fighting the user (and can even
10798 * trigger a loop). Since we really don't want to
10799 * do that, we requeue a resize in hopes that
10800 * by the time it gets handled, the child has seen
10801 * the light and is willing to go along with the
10802 * new size. (this happens for the zvt widget, since
10803 * the size_allocate() above will have stored the
10804 * requisition corresponding to the new size in the
10807 * This doesn't buy us anything for 1), but it shouldn't
10808 * hurt us too badly, since it is what would have
10809 * happened if we had gotten the configure event before
10810 * the new size had been set.
10813 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
10815 * gtk/gtkrc.c: deal properly with the fact that RC
10816 style lists may include rc styles more than once.
10818 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10819 unused static function.
10821 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10822 stack of directories of RC files currently being
10823 parsed and implicitely add them to pixmap path.
10825 This fixes a bug where the directory would get
10826 appended then overwritten by pixmap_path declarations.
10828 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10830 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10831 theme's exit function. (Patch from Peter Wainwright,
10834 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10835 Add a destroy() handler to take care of removing
10836 group for menu item. (Fixes bug #1197)
10838 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10839 in warning message.
10841 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
10843 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10844 roundtrip to figure window's width and height, since we know that
10845 anyways from widget->allocation.
10847 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
10849 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10850 the hints after we request the new size.
10852 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
10854 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
10855 GTK_WIDGET_REALIZED() assertion - we can compute the
10856 hints before we are realized.
10858 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
10859 hint changing so that we have a value of hints_changed
10860 when we decide whether to constrain the window size.
10862 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
10864 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
10865 change back to G_MAXINT.
10867 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
10869 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
10870 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
10871 contain uncluttered values.
10872 (gtk_window_compute_hints): simply assert that window is realized
10873 and that geometry_info is valid, since we rely on this anyways.
10874 (gtk_window_constrain_size): major cleanups to the code.
10875 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
10876 for the base size, instead of the minimums. use 32767 as max width
10877 and height (like in gtkwindow.c) instead of G_MAXINT.
10879 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
10881 * cleaned up the GtkContainer.need_resize flag handling mess, we
10882 only need to force resize requests when we were prematurely
10883 realized, or our widget tree was modified when we were temporarily
10884 hidden. handling these cases directly upon showing the window (i.e.
10885 while the GdkWindow is still unmapped) avoids the need to wait for
10886 a configure event response and therefore makes the GUI more snappier
10887 and avoids blank windows during the roundtrip.
10891 (gtk_widget_show): don't queue resizes on toplevels, they know how
10892 to deal with matters.
10894 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
10895 flag directly for not visible resize containers and spare us unecessary
10899 (gtk_window_realize): if we need to enforce premature size allocation,
10900 queue a container resize so we are correctly resized later on.
10902 (gtk_window_size_request):
10903 don't freak around with the ->need_resize flag,
10904 gtk_container_queue_resize() will care about that.
10906 handle initial resizing issues here, we can handle matters better in
10907 this place, especially since we know that our GdkWindow is still
10909 (gtk_window_move_resize):
10910 don't care about ->need_resize at all.
10911 handle size changes properly that occoured while we waited for a
10914 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
10916 * gtk/gtkwidget.c (gtk_widget_set_uposition):
10917 * gtk/gtkwindow.[hc] (gtk_window_reposition):
10918 Move the hint setting code from gtk_widget_set_uposition
10919 to here; set the hints so that we respect any previously
10920 set geometry hints.
10922 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
10923 change the window hints here or move the window here,
10924 let that happen in gtk_window_move_resize().
10926 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
10928 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
10929 to already queued resizes (and therefore redraws) on a widget, check
10930 its anchestry as well.
10932 * gtk/gtkcontainer.c:
10933 (gtk_container_queue_resize): clear resize widgets for resize
10934 containers before aborting prematurely. this is especially important
10935 for toplevels which may need imemdiate processing or their resize
10936 handler to be queued.
10937 (gtk_container_dequeue_resize_handler): added new internal function for
10940 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
10941 configure event, take possible changes in window position into account
10943 if we request a new window size, queue up a resize handler that will
10944 last until the configure event response arrives.
10945 combined the ->need_resize case (initial show) with the general size
10946 (hints) changed case and added even more comments.
10947 if !auto_shrink, only revert to the old allocation if the new size
10948 is smaller than the current allocation.
10950 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
10952 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
10953 gtk_window_set_geometry_hints
10954 gtk_window_set_default_size):
10955 When hints are set, queue a resize so that the hints will
10956 be eventually reset on the toplevel.
10958 * gtk/gtkwindow.c (gtk_window_show): Use
10959 gtk_window_compute_default_size(). Clear the need_resize flag
10960 on the initail map so that we don't unnecessarily trigger the
10963 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
10964 into separate functions. Compare the hints we are setting
10965 with what we set last time so that we can accurately
10966 tell when we need to reset the hints.
10968 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
10969 function to figure out the size from requisition
10972 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
10973 from fvwm to constrain a size to the geometry hints.
10975 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
10976 to compare two sets of geometry hints.
10978 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
10979 from gtk_window_set_hints(), just compute the hints,
10982 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
10983 code from gtk_window_move_resize() to separate function,
10986 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
10988 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
10989 structure into a new private structure.
10991 * gtkrc.c: Split GtkRcStyle into public/private.
10992 In the private part, add a list of pointers to the
10993 RcStyle lists this RcStyle participates in.
10995 * gtkrc.c: When a RcStyle is free, remove all
10996 lists referencing it from the
10997 realized_style_ht hash, and free those lists.
10999 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
11000 gtk_rc_init(), since that adds the default styles
11001 to the list of parsed RC files again.
11003 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
11005 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
11007 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
11008 checks that ensure that a widget's allocation is at least 1 in width
11009 and height. (GNOME note: this doesn't affect old panel code anymore,
11010 because GtkSocket will request width and height of at least 1 since
11013 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
11014 allocated yet (happens if the user realizes the window prematurely),
11015 size request and allocate it.
11016 (gtk_window_size_allocate): guard against guint underflows.
11018 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
11020 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
11021 in gtk_built_sources, so gtk.defs gets built prior to all other
11024 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
11027 invoke indent on gtkmarshal.*.
11028 rewrote source generation rules, use COPYING as oldest source tag for
11029 a piggyback rule to generate all sources from (don't touch it ;).
11030 major cleanups, strip spaces on build rules for GNU Make.
11032 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
11033 source and target files from commandline arguments. don't invoke indent.
11035 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
11037 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11038 notebook after switch to avoid drawing problems.
11039 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11041 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
11043 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11045 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
11047 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11048 notebook after switch to avoid drawing problems.
11049 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11051 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
11053 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11055 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
11058 we use window->need_resize from configure_event now, to indicate that
11059 the gtkwindow should keep its allocation (e.g. because the user resized
11060 the window through window manager handles). resize_count is now reliably
11061 used to figure whether we got the allocation we requested from the
11063 configure events get queued as resizes now, the real stuff (size
11064 computation and allocation) now only goes on in gtk_window_move_resize().
11065 GtkWindow's requisition now contains its *real* requisition (like all
11066 other widgets), *not* taking usize into account.
11067 geometry_info->last_{width|height} is now updated from set_hints() only
11068 so it always contains the last hints we set for the window manager.
11069 made some event handlers return TRUE instead of FALSE.
11070 the overall code should be much more straight forward now, and the
11071 significant code portions are accompanied by comments now.
11072 (gtk_window_set_hints):
11073 removed requisition argument and made it
11074 fetch the requisition through gtk_widget_get_child_requisition.
11075 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
11078 ensure that the widget is realized before calling
11079 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
11080 ensure that we got properly size requested and allocated before
11082 (gtk_window_configure_event):
11083 ignore plain window moves, or reallocate the widget tree through the
11084 resize queue otherwise.
11085 (gtk_window_move_resize):
11086 mostly rewrote this function to figure window manager hints more
11087 reliably, coalesce window moves and resizes to reduce configure events
11088 and do actuall size allocations.
11090 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
11092 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
11093 that have a resize pending, because a redraw is already queued for them.
11095 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
11096 hack to clear resize_widgets.
11098 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
11099 for resize containers prior to size allocation. (this is also a bit
11100 ugly, but avoids side effects for stopped emissions and is thus more
11102 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
11104 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
11105 function from gtk_tooltips_expose, as we connect to ::expose_event
11108 1999-08-18 Federico Mena Quintero <federico@redhat.com>
11110 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
11112 (gtk_target_list_unref): Likewise.
11114 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
11116 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
11118 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
11119 guard against division by zero. (Fixes bug #1339)
11121 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
11123 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
11124 Prevent the trivial leak of information of allowing
11125 word motion when the entry is not visible.
11127 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
11129 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
11130 modality to error dialog as well as confirmation dialogs.
11131 (Bug #1803, reported by Rosanna Wing Sze Yuen)
11133 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
11135 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
11137 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
11139 * gtk/Makefile.am (install-data-local): Solaris apparently
11140 has various troubles with ln -f; use rm first instead.
11141 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
11143 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
11145 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
11146 use `cp' followed by `rm' (the `rm' was already there).
11148 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11150 * configure.in: Fix autoconf warnings about cross compilation by
11151 trying to provide sane defaults for AC_TRY_RUN.
11152 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
11153 put them into $(srcdir) when generated. Also add a dependency of
11154 gtksignal.h on gtkmarshal.h for -j builds.
11155 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
11157 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
11159 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
11160 GDK_THREADS_{LEAVE,ENTER} pair.
11161 (From Paul Fisher <pnfisher@redhat.com>)
11163 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
11165 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
11166 width and height are always >0 (owen).
11168 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
11170 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
11171 change that assured that a widget's allocated with and height are
11172 always >1, since this breaks *buggy* panel code. unfortunately this
11173 back-breaks the gimp's color selector.
11175 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
11176 allocation is always >0 in width and height, before sending the
11177 configure event; this is a *gross* hack to get the gimp back to work.
11179 * marked both cases with TODO-1.3
11181 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
11183 * gtk/gtktext.c: Don't display wrap indicators when
11184 text is not editable and word wrap is on.
11186 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
11188 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
11189 option menus here as they are not derived from menu shell, assure that
11190 the option menu has a menu we can add items to.
11192 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
11194 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
11195 width/height to (gint) before calculations and check against < 0 to
11196 avoid guint wraparounds.
11198 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
11200 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
11201 width and height is never zero. sanity check both dimensions against
11202 32767 and issue a warning if the allocation is greater than that.
11204 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
11206 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
11207 to g_main_pending() as well.
11209 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
11211 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
11212 call to g_main_iteration() - since that will regrab
11213 GTK+ lock to process events.
11215 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
11218 - Regularize with the rest of GTK+ by making widget->requisition
11219 not reflect the set_usize()
11220 - Always recompute geometry hints, then check if they
11221 changed before sending them to the X server. The
11222 previous checks for changes would fail in a number
11225 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
11227 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
11229 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
11233 - Instantaneously update on modifier key presses
11234 - Allow cancellation of the drag with Escape.
11236 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
11238 * gtk/testgtk.c (create_handle_box): Set the policy
11239 to auto_shrink - otherwise the appearance is rather
11240 strange when flipping between horizontal and vertical.
11242 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
11244 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
11245 (gtk_window_set_default_size): don't change a value if it's < 0.
11248 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
11250 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
11252 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
11254 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
11255 add an extra "/" when concating "/" + filename.
11256 (From Matt Grossman <mattg@oz.net>)
11258 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
11260 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
11261 for fg_gc if we set it for drawing pixmap.
11263 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
11265 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
11267 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
11268 already set, call old engine's destroy function and
11269 unref the old engine.
11271 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
11273 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
11275 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
11277 * gtk/gtkaccelgroup.h: mark certain functions as internal.
11279 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
11281 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
11282 expand behaviour changed.
11284 * gtk/gtklabel.c (gtk_label_set_pattern):
11285 (gtk_label_set_justify):
11286 (gtk_label_set_line_wrap):
11287 don't bother invoking queue_clear, the reallocation does
11288 that for us, always free_words so the upcoming resize will
11289 relayout the label's contents.
11291 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
11293 * applied argument implementation patches from Elena Devdariani
11296 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
11297 ::space_style, ::relief
11298 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
11299 * gtk/gtkpreview.c: ::expand
11300 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
11301 * gtk/gtknotebook.c: ::homogeneous
11302 * gtk/gtklabel.c: ::wrap
11303 * gtk/gtklist.c: ::selection_mode
11304 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
11305 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
11306 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
11307 * gtk/gtkclist.c: ::sort_type
11308 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
11309 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
11311 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
11313 * gtk/gtkstyle.c: Removed ill-thought-out part of last
11316 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
11318 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
11319 counting right when we have to attach a new style
11320 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
11322 * gtk/gtkstyle.c: Documented the refcounting
11323 peculularities of gtk_style_attach.
11325 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
11327 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
11330 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
11331 of GTK_TOPLEVEL for creating the window.
11333 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
11335 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
11336 the last argument (reported by Per Winkvist).
11338 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
11340 Fixes for invisible XOR lines (Frank Loemker
11341 <floemker@TechFak.Uni-Bielefeld.DE>)
11343 * gtk/gtkclist.c (gtk_clist_realize): Always use
11344 a non-zero pixel for GDK_XOR.
11346 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
11347 Use GDK_INVERT instead of GDK_XOR.
11349 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
11351 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
11352 signals if h/voffsets differ from adjustment values.
11353 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
11355 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
11357 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
11358 ::selection-done emissions up to the topmost menu shell.
11360 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
11362 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
11363 the user data on the window before destroying it.
11365 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
11366 unrealize handler to take care of destroying
11367 notebook->panel properly.
11368 (Bug #1198 - Morten Welinder <terra@diku.dk>)
11370 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
11371 of g_new and g_realloc to stop memory leak. (Actually,
11372 we could just use g_realloc(), but I'm not 100% sure
11374 (Bug #1196 - Morten Welinder <terra@diku.dk>)
11376 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
11378 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
11380 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11383 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
11384 with bin/button confusion.
11386 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
11388 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
11389 and show how preselection of radio items is done.
11391 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
11393 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
11394 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
11395 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
11396 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
11397 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
11398 * gtk/gtktable.c (gtk_table_attach):
11399 * gtk/gtklist.c (gtk_list_insert_items):
11400 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
11401 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
11402 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
11403 * gtk/gtkbin.c (gtk_bin_add):
11404 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
11405 * gtk/gtkfixed.c (gtk_fixed_put):
11406 * gtk/gtklayout.c (gtk_layout_put):
11407 general fixups to container_add logic. always realize child if
11408 child->parent is realized, only map the child and queue a resize
11409 if child and child->parent are both visible.
11411 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
11413 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
11414 instead of gtk_container_foreach to walk and unrealize children, so
11415 composite children get also unrealized.
11416 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
11417 (gtk_widget_map): assert that the widget is visible (basic constrain).
11418 (gtk_widget_real_map): assert that the widget is realized (basic
11421 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
11423 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
11425 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
11427 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
11428 file for iso-8859-2 locales.
11430 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
11432 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
11434 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
11435 (Pointed out by andy@rz.uni-karlsruhe.de and others).
11436 Remove some suspicious and useless lines.
11438 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
11440 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
11441 width,height = 0, 0 to mean - here to edge of window,
11442 instead of -1, -1, since the former is all we support.
11444 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
11446 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
11447 when removing from quit_functions list.
11449 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
11451 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
11453 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
11455 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
11456 When redrawing characters on non-visible entry, use appropriate
11457 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
11459 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
11461 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
11462 from drag coordinates.
11463 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
11464 use drag_dest_cell.
11466 * gtk/gtktree (drag_dest_cell)
11467 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11470 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
11472 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11473 translate_* fields.
11474 (gtk_item_factory_finalize): invoke translate_notify independant from
11476 (gtk_item_factory_set_translate_func): likewise.
11477 (gtk_item_factory_destroy): only remove ifactory pointer from those
11478 widgets that belong to us (stupid me).
11480 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
11482 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11483 rc_style list when lookup succeeeds.
11485 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
11487 * gtk/gtkctree.c (resync_selection):
11488 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11489 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11492 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
11494 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11495 Add some missing GDK_THREADS_ENTER()/LEAVE around
11496 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11498 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
11500 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
11501 rather than emit_by_name.
11503 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
11504 on the widget across multiple signal emissions.
11505 (gtk_editable_delete_text): same here.
11506 (gtk_editable_class_init): set widget_class->activate_signal after
11507 editable_signals[ACTIVATE] has been created.
11509 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
11511 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
11512 position here prematurely -- we might not have the
11513 right ->min_position and ->max_position yet.
11515 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
11517 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
11518 Add error traps so if the other end of the connection
11521 * gtk/gtkselection.c (gtk_selection_notify): Clean
11522 up properly when selection property retrieval fails.
11524 * gtk/gtkselection.c (gtk_selection_request): Correctly
11525 reject SelectionRequest notifies where the handler
11528 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
11530 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
11531 when we've previously highlighted.
11533 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
11534 emit two "drag_leave" signals for Motif drops.
11536 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
11537 back the correct status messages when dropping from
11538 Motif onto a proxy window that is rejecting the
11541 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
11543 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
11544 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
11545 to compare two argument values. added gtk_arg_to_valueloc() to set a
11546 variable from an arg through its location (pointer).
11548 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
11549 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
11550 as gfloat*, uchars are collected as guchar*, ints are collected as
11553 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
11555 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
11556 Include <string.h> instead of <strings.h>.
11558 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
11559 (actually, a lot more duplicate includes occur if
11560 you trace through the sequence of #include's)
11561 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
11563 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
11565 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11566 gtk-a-higuti-990322-[0-3]
11568 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11569 that was causing -DX_LOCALE not to work.
11571 * gtk/gtkrc.c (gtk_rc_init):
11572 X_LOCALE will never have LC_MESSAGES defined
11574 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
11576 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
11577 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
11579 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
11580 left/right as well (gtk-michael-980726-0.patch.gz).
11582 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
11583 for pointer values, use gchar instead of char. fixed uline allocation
11584 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
11585 chunks instead of G_ALLOC_ONLY.
11586 (gtk_label_size_request): always alter requisition as passed and leave
11587 widget->requisition alone.
11588 (gtk_label_set_text): allow NULL strings.
11589 (gtk_label_new): likewise.
11591 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
11593 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
11595 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
11597 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
11598 *and* mapped (i.e. drawable).
11599 (gtk_bin_expose): only send exposes to drawable children.
11601 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
11602 (gtk_box_expose): only send exposes to drawable children.
11604 * gtk/gtkhscale.c (gtk_hscale_draw):
11605 * gtk/gtkvscale.c (gtk_vscale_draw):
11606 hm, this is an ugly one. we first compute the size of our trough area
11607 here (window relative) and then check intersection with the draw_area
11608 which is parent relative because we're a NO_WINDOW widget, so we need
11609 to offset the trough area by allocation.x and allocation.y before the
11610 check. (this must not be done for the background area though, since
11611 that's already computed parent relative).
11613 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
11615 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
11616 unrealize title buttons.
11618 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
11620 * gtk/gtkclist.c (gtk_clist_column_title_passive)
11621 (gtk_clist_column_title_active):
11622 only connect/disconnect to GtkWidgetClass::event to block mouse events.
11624 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
11625 zero initialize event, removed superfluous gdk_window_get_pointer call
11627 * gtk/gtklist.c (gtk_list_vertical_timeout)
11628 (gtk_list_horizontal_timeout): removed superfluous
11629 gdk_window_get_pointer call
11631 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
11633 * plugging problems reported by "Bruce Mitchener, Jr."
11634 <bruce@puremagic.com> due to a purify session.
11638 (gtk_style_unref): assert ref_count to be > 0.
11640 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
11642 (gtk_clist_set_shift): likewise.
11644 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
11647 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
11648 event before sending it and set send_event to TRUE (which needs to
11649 be done for *all* synthesized events).
11650 (gtk_list_vertical_timeout): likewise.
11652 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
11655 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
11656 to TRUE when synthesizing events.
11658 [ *** end of merges from 1.2 *** ]
11660 1999-11-21 Tor Lillqvist <tml@iki.fi>
11662 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
11663 (or copied from gdkconfig.h.win32 on Win32, sigh).
11665 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
11667 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
11669 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
11671 * gdk/gdkconfig.h.win32: New file.
11673 * gdk/win32/makefile.cygwin: Build just a static archive here.
11675 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
11676 for the DLL from the static archive built above.
11678 * gdk/gdk.def: Moved here from the win32 subdirectory.
11680 * gdk/win32/*: Adapt for the changed private struct organisation.
11682 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
11684 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
11686 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
11687 for wheel mice (buttons 4 and 5).
11689 1999-11-18 Tor Lillqvist <tml@iki.fi>
11691 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
11692 drawables use just the pixel field in the foreground and
11693 background GdkColor of the GdkGC.
11695 gdk_gc_set_{fore,back}ground() are called in the GIMP with
11696 GdkColors containing uninitialized (red,green,blue) fields, and
11697 just the pixel field filled in, and furthermore in the
11698 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11699 It thus turns out that we really don't need to have the full
11700 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
11701 it later to have just the pixel values.
11703 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
11705 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
11707 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
11709 * docs/gtkfaq.sgml: threads example from Erik Mouw.
11710 New question on GtkLabel background colors.
11712 * docs/gtk_tut.sgml:
11713 - Correct the example code callback
11714 function definitions.
11715 - Update the gtkdial example code, from Frans van Schaik.
11716 - Update setselection.c to current API.
11718 * examples/Makefile examples/*/*.c: Update to code
11719 listed in tutorial.
11721 1999-11-10 Tor Lillqvist <tml@iki.fi>
11723 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11724 subrange table (from the "Developing International Software for
11725 WIndows 95 and Windows NT" book) was missing the Hangul syllable
11726 block... Get the loaded font's charset correctly.
11728 (Note that this, and the other *-win32.c files, still really are
11729 the old ones, the win32 subdirectory is not ready for compilation
11730 yet after the reorg.)
11732 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
11734 * gtk/gtkclist.c: Fix off-by-one bug in parameter
11737 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
11739 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11740 on results of XQueryDeviceState().
11742 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
11744 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11745 we need to accesss only ->children. We need an accessor
11748 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11749 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11750 to get rid of gdkx.h include.
11752 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11753 and random references to 'None'.
11755 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11756 Get rid of unused #include <gdk/gdkx.h>
11758 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11759 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11762 1999-11-08 Tor Lillqvist <tml@iki.fi>
11764 * gdk/win32/gdkdraw.c
11765 * gdk/win32/gdkfont.c
11766 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11767 following yesterday's changes. (Unrelated to Owen's reorg.)
11769 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
11771 * gdk/x11/gdkinput-gxi.c: Add missing include,
11772 fix GdkWindowPrivate => GdkDrawablePrivate.
11774 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11776 * gdk/x11/Makefile.am (xinput_sources): Add missing
11777 backslash to fix building with --with-xinput=none
11779 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
11781 Move all X specific code into the x11/ directory.
11782 Aside from shuffling things around, did the following:
11784 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11785 gdk_arg_context_* - a simple argument parsing system
11786 in the style of popt.
11788 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11789 gdk/x11/gdkprivate-x11.h:
11790 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
11791 add ->klass and ->klass_data fields. The klass_data
11792 field points to an auxilliary structure that is
11793 windowing system dependent.
11795 * gdk/gdkfont.c: Make most of the measurement functions
11796 simply wrappers around gdk_text_extents().
11798 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
11799 _gdk_font_strlen() function that hides the weird
11800 behavior in gtk+-1.[02] where a string is interpreted
11801 differently for 8-bit and 16-bit fonts.
11803 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11804 to store common code for synthesizing double/triple
11807 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11808 Make all the function that modify an existing GC
11809 simply wrappers around gdk_gc_set_values().
11811 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11812 for throwing out later.
11814 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11815 GdkImagePrivate and GdkColormapPrivate to have a
11816 windowing system dependent part (GdkFontPrivateX etc.)
11817 that "derives" from the system-independent part.
11819 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11820 Got rid of the included-source-files for XInput in
11821 favor of automake conditionals. (Which didn't exist
11822 when XInput support was originally added.)
11824 * gdk/gdkrgb.c: Remove the visual id from the debugging
11825 statements since that is X11 specific; print out
11826 type/depth info instead.
11829 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
11831 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11832 loading duplicates of hashed fonts.
11834 * gdk/gdk.c (gdk_keysym_convert_case): rename
11835 gdk_XConvertCase to gdk_keysym_convert_case, allow
11836 results to be NULL in the GTK+ style.
11838 * gdk/gdkcompat.h: Started compatibility header
11841 1999-11-07 Tor Lillqvist <tml@iki.fi>
11843 * gdk/win32/gdkprivate.h: New font private structures, related to
11846 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11847 gdk_font_list_free(). On X11, will just be wrappers to
11848 XListFonts() and XFreeFontNames(). On Win32, the code previously
11849 in gtkfontsel.c is now here.
11851 New function gdk_font_xlfd_create(). On X11 will get the FONT
11852 property of the font (for GDK_FONT_FONTs), or call
11853 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11854 builds a XLFD style name from the font information in the LOGFONT
11857 New function gdk_font_xlfd_free(), which correspondingly frees the
11858 string returned by gdk_font_xlfd_create().
11860 Implement fontsets on Win32. Add a function that iterates over a
11861 wide char string and calls a callback function for each substring
11862 of wide chars from the same Unicode subrange (and thus probably
11863 available in the same real font).
11865 Improve the XLFD emulation a bit.
11867 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
11869 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
11870 Beta3, WM_IME_CHAR messages don't seem to contain the composed
11871 multi-byte char as with the Active IMM on Win9x. Oh well, handle
11872 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
11873 ImmGetCompositionStringW() to get the composed Unicode chars.
11875 * gdk/win32/gdkgc.c
11876 * gdk/win32/gdkdraw.c: Changes needed because of the font private
11879 * gdk/win32/gdk.def: Add the new functions.
11881 1999-11-04 Tor Lillqvist <tml@iki.fi>
11883 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
11884 get the Platform SDK to get <dimm.h>.
11886 * gdk/win32/gdkevents.c: More event handling fixes and
11887 simplification. Never generate motion events with is_hint true. We
11888 used to do that on bogus grounds earlier. Windows sends
11889 WM_MOUSEMOVE messages on button events even if the mouse hasn't
11890 moved, ignore these.
11892 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
11894 * gdk/win32/gdkglobals.c
11895 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
11896 the TrackMouseEvent function, and use it.
11898 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
11899 char before calling WideCharToMultiByte in order to get a string
11900 for the window title.
11902 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
11904 * gdk/win32/gdk.def: Remove obsolete functions.
11906 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
11907 /nodefaultlib and /defaultlib switches.
11909 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
11911 1999-10-31 Tor Lillqvist <tml@iki.fi>
11913 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
11916 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
11917 same type as GdkWChar, especially on Win32.
11919 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
11921 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
11922 before passing to Windows GDI for drawing etc. Convert to the
11923 system default codepage before passing to Windows as window
11926 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
11927 support changing input locale on the fly.
11929 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
11930 on-the-fly changes. Convert incoming characters from the current
11931 codepage to Unicode (and then to a UTF-8 multi-byte string) based
11932 on the current input language. Use keysym<->Unicode mapping tables
11933 and functions borrowed from xterm sources.
11935 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
11936 editions of Win9x, use the ActiveX-based Active IMM (Input Method
11937 Manager) if available. IMEs and the Active IMM are available under
11938 the disguise of Chinese, Korean and Japanese support for IE and
11939 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
11940 support is present in all editions (as long as you install it).
11942 Call DispatchMessage from gdk_events_queue() (and thus
11943 gdk_WindowProc()), instead of duplicating the code in
11946 Reworked the grab handling and propagation code, factored out
11947 duplicated code snippets into separate functions. Other cleanups,
11950 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
11951 the <dimm.h> header describing the Active IMM.
11953 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
11954 just do the same as for "single" fonts.
11956 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
11957 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
11958 the new keysyms from gdkkeysyms.h.
11960 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
11961 fontset, so that gtkentry uses wide characters.
11963 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
11964 GTk+'s system directory "gtk+", not "gtk".
11966 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
11968 * docs/gtkfaq.sgml: FAQ update
11970 1999-10-21 Tor Lillqvist <tml@iki.fi>
11972 * gdk/win32/gdkprivate.h: Add more font private data.
11974 * gdk/win32/gdkfont.c
11975 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
11976 fonts and strings. Now works much better. You still have to
11977 have a correct font selected, though. No fontset emulation yet.
11979 1999-10-19 Tor Lillqvist <tml@iki.fi>
11981 * gtk/maketypes.awk: Use G_OS_WIN32.
11983 * gtk/gtk.def: Add some missing entry points. Also some non-public
11984 ones, but PyGTK porter claims to need them.
11986 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
11987 built-in type generation.
11989 1999-10-14 Tor Lillqvist <tml@iki.fi>
11991 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
11992 GDK_FONT_FONT fonts (which is all we have for now, we don't
11993 emulate fontsets). The X11 version uses plain XDrawString in that
11994 case, too. The string passed to gdk_draw_text_wc seems to be in
11995 fact (at least, when used by gtkentry and gtktext) either in a
11996 single-byte charset, or a DBCS. Not Unicode.
11998 This fixes the problem in gtkfontsel, where even if you had
11999 selected a font with a non-Latin1 charset (windows-greek, for
12000 instance), the preview still used Latin-1 glyphs.
12002 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
12003 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
12004 (gdk_font_load): Recognize the demibold etc weights, even if we
12005 don't have the corresponding constants in the headers.
12006 (gdk_font_hash_insert): Use same hash mechanism as in the X11
12007 version. Should save font resources a bit, when we don't have
12008 multiple HFONTs for the same font.
12010 * gdk/win32/gdkprivate.h: Add the names field as in the X11
12013 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
12015 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
12018 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
12020 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
12021 layout support (as mentioned on
12022 http://www.jcinteractive.com/gnome-ui/software/widgets/)
12024 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
12027 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
12029 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
12031 * configure.in (ALL_LINGUAS): Added Galician (gl)
12033 1999-10-05 Tor Lillqvist <tml@iki.fi>
12035 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
12037 * gdk/win32/gdkcompat.c: New file, actually provide an
12038 implementation for the deprecated functions. (Just temporarily.)
12040 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
12042 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
12044 * gdk/win32/gdk.def gtk/gtk.def: Updates.
12046 1999-10-05 Kjartan Maraas <kmaraas@online.no>
12048 * configure.in: Added "uk" to ALL_LINGUAS.
12050 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
12052 * configure.in: correct checking for BeOS check
12057 * gtk/gtkitemfactory.c
12059 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
12061 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12063 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
12064 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
12065 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
12068 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
12070 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
12071 Fix a reference to window_private->destroyed.
12073 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
12074 (ugly) setting of an internal GdkWindow member to use
12075 a _slightly_ cleaner macro.
12077 * gdk/gdkprivate.h: Split GdkWindowPrivate into
12078 GdkDrawablePrivate and GdkWindowPrivate.
12079 Add extra macros for accessing GDK_DRAWABLE_ components.
12081 * *.[ch]: Massive adjustments for the above, use the
12082 new macros in a lot of places.
12084 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
12086 * gdk/gdktypes.h: Make GdkDrawable the base type,
12089 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
12091 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
12093 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
12095 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
12097 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
12099 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
12100 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
12102 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
12104 * docs/gtk-config.1: Now autogenerated.
12105 * docs/Changes-1.4.txt: started
12107 1999-10-03 Tor Lillqvist <tml@iki.fi>
12109 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
12110 to #ifdef also here.
12112 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
12113 Owen did to the X11 backend.
12115 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
12116 ScrollWindowEx when blitting inside a window, it can't be correct
12117 in the general case.
12119 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
12120 WM_GETMINMAXINFO is easier.
12122 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
12123 depth equal to the bitspixel value, not the visual's depth.
12125 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
12126 to 24 even if the bitspixel value is 32.
12128 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
12129 need to check for depth==32 when bpp==32, depth will always be 24.
12131 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
12133 * docs/Changes-1.4.txt: Started
12135 * gtk/Makefile.am (gdk_headers): Include all the new headers.
12137 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
12139 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
12142 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
12143 header to gdkinputprivate.h.
12145 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
12146 unused since before 1.2.
12148 1999-09-30 Tor Lillqvist <tml@iki.fi>
12150 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
12151 expand possible hex escapes in the font family (put there by
12152 logfont_to_xlfd if the font name isn't a legal XLFD font family,
12153 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
12154 On Win32, add hex escapes here, too.
12156 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
12158 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
12159 to #ifdef GDK_WINDOWING_X11.
12161 [ Merges from gtk-1-2 ]
12163 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
12165 * configure.in: fixed "GNU Make" check to pass with new make version
12168 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
12170 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
12171 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
12172 AM_PATH_GTK() macros don't get confused by the -pre1.
12174 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
12176 * configure.in (REBUILD): Change check for perl5
12177 to check explicitely for v >= 5.002. (5.001
12178 does not work with our scripts.)
12180 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
12182 * configure.in: evaluate $PERL for the perl version check. added
12183 --disable-rebuilds to give the user an option to completely disable
12184 any source autogeneration rules.
12186 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
12188 * configure.in: evaluate $ac_make when checking for GNU Make.
12190 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
12192 * docs/Makefile.am: added generation.txt.
12194 * Makefile.am: require automake 1.4, build README from README.in and
12195 INSTALL from INSTALL.in in dist-hook.
12198 * INSTALL.in: new files to autogenerate README and INSTALL from.
12200 * configure.in: figure whether we have GNU Make
12202 * docs/generation.txt: minor additions/corrections.
12204 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
12206 * docs/gtkfaq.sgml: FAQ Update
12208 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12210 * configure.in: Fix autoconf warnings about cross compilation by
12211 trying to provide sane defaults for AC_TRY_RUN.
12213 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
12216 * ltmain.sh: upgrade to libtool 1.3.3
12218 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
12220 * INSTALL: Indicate that the --with-glib= configure
12221 time flag is unsupported.
12223 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
12225 * docs/generation.txt: Added a file that gives
12226 documenation about the autogeneration process for
12227 various autogenerated files.
12229 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
12231 * configure.in (LIBS): Look for libgmodule in the
12234 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
12236 * docs/gtk_tut.sgml: Removed references to
12237 code examples in my directory on gtk.org as
12238 they should all be in the tutorial now.
12240 * docs/gtk_tut.sgml: Added sources for dial-test
12241 and scribble-xinput programs that were previously
12244 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
12246 * TODO: Added entry about menu keyboard navigation, removed
12247 some finished items.
12249 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
12251 * acinclude.m4: Standardize on func_dgettext
12252 not func_gettext, so that the checks for dgettext
12253 actually are paid attention to.
12255 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
12257 * configure.in (LIBS): Add $INTLLIBS into $LIBS
12258 directly, rather than repeating the checks for
12261 * INSTALL: Added information about gettext and
12264 * acinclude.m4 (LIBM): Check for dgettext, not
12265 just gettext. This should hopefully fix things wrt
12266 systems with old versions of GNU gettext installed.
12268 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
12270 * configure.in (LIBS): Look for libgmodule in the
12273 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12275 * autogen.sh: add --enable-maintainer-mode
12277 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
12279 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
12281 * docs/gtk-config.1.in:
12283 configure.in: gtk-config is now generated.
12285 * docs/gtk-config.1: Removed, now generated.
12287 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
12289 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
12290 handle CreateNotify itself, still put out a debuging message for
12291 --gdk-debug=events. made the ReparentNotify debugging message more
12293 wrap xcoords translation for ConfigureEvents into an error trap,
12294 a destroy event may already be pending, and in that case, the
12295 actuall coordinate values are not at all critical.
12297 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
12299 * gdk/gdkcc.c: Stop leaking the color_hash all over
12300 the place. Simplify and improve the logic.
12302 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
12304 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
12305 for prototypes and function implementations consistent (reported
12308 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
12310 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
12311 send_event set in debugging output.
12312 (gdk_compress_exposures): default initialize the event so we don't
12313 operate on bogus values (namely send_event).
12315 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
12317 * gdk/gdkwindow.c: When we receive an unexpected
12318 destroy notify on one of our windows, don't just
12319 warn about it, also mark our windows as destroyed.
12321 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
12323 * gdk/gdkfont.c (gdk_font_hash_insert): Add
12324 name => font and name => fontset hashes. The
12325 name => fontset hash is a _big_ win since we
12326 weren't previously caching fontsets at all and loading
12327 fontsets is expensive. The name => font hash
12328 is less of a win, but it does save us from doing
12329 repeated XQueryFont calls on the same font.
12331 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
12332 list so we can remove font/fontset from hash.
12334 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
12336 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
12337 and slightly confusing test. [ XInternAtom (,,TRUE)
12338 will never return None ].
12340 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
12342 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
12343 gdk/gdkwindow.c (gdk_window_set_hints):
12345 Don't omit setting the properties if flags == 0 -
12346 there may be an existing set of properties there
12347 already. (Very old bug. Would it be better to
12348 delete the property instead?)
12350 * gdk/gdkselection.c (gdk_selection_property_get): Fix
12351 spelling error in comment.
12353 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
12355 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
12356 to avoid stomping over gdk_error_warnings.
12358 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
12359 as (bits_per_pixel + 7) / 8. This gives the same
12360 result as before for multiples of 8, but actually
12361 a "reasonable" value for 1bit or 4bit displays.
12363 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
12365 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
12368 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
12370 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
12371 discarding configure events.
12373 1999-08-18 Federico Mena Quintero <federico@redhat.com>
12375 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
12376 refcount is greater than zero.
12378 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
12380 * gdk/gdkfont.c (gdk_font_unref): Likewise.
12382 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
12384 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
12386 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
12388 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
12389 that format 32 => sizeof(item) == 4. It really is
12392 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
12394 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
12395 core dump at all on X IO errors, only core dump
12396 if --enable-debug for X errors.
12398 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
12400 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
12401 unknown window:" message. disabled ConfigureNotify discarding code,
12402 because it led to events being processed out of order.
12404 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
12406 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
12408 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
12409 we export this function, supress error warnings and don't reset the
12410 error code in the first half of this function.
12412 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
12413 code (instead of just -1) so gdk_error_trap_pop() reveals something
12414 actually informative about the error that happened.
12417 don't rely on gdk_error_code being -1 if an error occoured, but just
12418 gdk_error_code != 0.
12420 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
12422 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
12423 pointer *before* invoking the filter function, so we at least don't
12424 crash if a filter is removed that is currently executed. window filters
12425 *really* need to be made truely reentrant at some point.
12427 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
12429 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
12430 PropertyNotify debug messages.
12432 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
12434 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
12436 * gdk/gdkim.c: Fix cut-and-paste errors for
12437 x/y and PreeditAttributes/StatusAttributes.
12439 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
12441 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
12442 G_MAXINT to 2^16 to alleviate overflow problems in
12443 various window managers.
12445 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
12447 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12450 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
12452 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
12453 Initialize size_hints.x and size_hints.y because kwm
12454 brokenly pays attention to them.
12455 (Bug #1181 - Lars Heete <hel@admin.de>)
12457 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
12459 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
12460 return value of gdk_list_visuals().
12461 (Bug #1193 - Morten Welinder <terra@diku.dk>)
12463 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
12465 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12466 XSetIMValues to (void *) when comparing to NULL, to workaround
12467 the problem of some compilers barfing since older X headers don't
12468 have the prototype for it.
12470 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
12472 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12473 for pseudocolor where colormap->colors was double
12476 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12477 color value in the hash table with the pixel filled
12478 in so when we do later hash table lookups, the color
12481 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12483 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12486 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
12488 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12489 pointed out by Morten Welinder <terra@diku.dk>.
12491 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
12493 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12494 default filter from the list
12496 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
12498 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12499 default filter from the list
12501 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
12503 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
12505 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
12506 g_strdup_printf instead of calcing the length separately
12508 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
12510 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
12511 that we don't do in many other places. (Fixing duplicate
12512 #include of config.h)
12514 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
12515 Otherwise, #ifndef XINPUT_NONE check in the latter
12516 doesn't work. (Bug #546)
12518 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
12520 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
12521 "None" case insensitive.
12523 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
12525 * gdk/gdkselection.c:
12526 Add error traps so if the other end of the connection
12529 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
12531 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
12532 dest_xid field into two fields - one for the window
12533 to send in messages, one to indicate the last looked
12534 up window for caching purposes. This is needed, so
12535 that Leave messages get the correct window.
12537 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
12539 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
12540 Fix warning created by people mucking around
12541 with the gsource API.
12543 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
12544 Change mapping between GIOCondition and GdkInputCondition
12545 to match the way the Linux kernel does it. This should
12546 fix problems where closed pipes were no longer signalling
12547 GDK_INPUT_READ on systems with a native poll().
12549 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
12551 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
12552 explicitly for the string "None" - it is in the XPM
12553 spec and some servers treat unknown colors in odd ways
12554 (like asking the user!)
12556 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12558 * gdk/gdkevents.c: made "->" into a "." of previous change so
12561 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
12563 * gdk/gdkevents.c (gdk_compress_exposures): Set the
12564 window field of the event structure before calling
12567 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
12569 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
12570 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
12572 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
12574 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
12575 intermediate text property - prevents major memory
12576 leak when gdk_use_mb.
12577 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
12579 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
12581 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12582 gtk-a-higuti-990322-[0-3]
12584 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
12585 sizeof(wchar_t) != sizeof (GdkWChar)
12587 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12588 that was causing -DX_LOCALE not to work.
12590 * gtk/gtkrc.c (gtk_rc_init):
12591 X_LOCALE will never have LC_MESSAGES defined
12593 * gdk/gdk.c (gdk_init_check):
12594 Remove --xim-preedit and --xim-status from argv properly.
12596 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
12597 that the client window is present on the X server
12598 before we pass it to the input method.
12600 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
12602 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
12603 if --display is specified on the command line, than
12604 the drag window will not be created on that display.
12606 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
12608 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
12609 lookups with only_if_exists == TRUE were inserting
12610 bogus values into the atom cache.
12612 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
12614 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
12615 then reset it to NULL.
12619 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
12620 key for g_hash_table_remove() in both functions, this prevents us
12621 from accessing possibly uninitialized portions of a GdkColor structure
12622 where we are only interested in its pixel value.
12624 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
12626 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12627 font hash table, if we have a GdkFontPrivate entry for this font
12628 already, simply increment its reference count, provided by Olaf Dietsche
12629 <olaf.dietsche+list.gtk@netcologne.de>.
12631 1999-09-21 Tor Lillqvist <tml@iki.fi>
12633 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
12636 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
12637 unused variables, leftovers from the X11 version.
12639 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
12641 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
12642 downcase fields on X11.
12644 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12646 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
12647 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
12649 1999-09-17 Tor Lillqvist <tml@iki.fi>
12651 * gdk/win32/gdk.def: Add gdk_threads_mutex.
12653 * gtk/makefile.msc: Correct path to libintl.
12655 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
12656 use of gint vs. int, and gint vs. gboolean in headers and
12657 definitions. Use GtkType for the *_get_type functions. Note that
12658 these changes preserve binary compatibility.
12662 * gdk/gdk.h: Fix inconsistencies: gint vs int.
12666 * gtk/gtkmenufactory.c
12667 * gtk/gtknotebook.c
12668 * gtk/gtkwidget.c: Fix inconsistencies, also gint
12671 * gtk/gtkcolorsel.[ch]
12672 * gtk/gtkcombo.[ch]
12673 * gtk/gtkdrawingarea.[ch]
12674 * gtk/gtkgamma.[ch]
12675 * gtk/gtkhandlebox.[ch]
12676 * gtk/gtkhpaned.[ch]
12677 * gtk/gtkhruler.[ch]
12679 * gtk/gtkpreview.[ch]
12680 * gtk/gtkruler.[ch]
12681 * gtk/gtksocket.[ch]
12682 * gtk/gtkstatusbar.[ch]
12683 * gtk/gtktoolbar.[ch]
12684 * gtk/gtkvbbox.[ch]
12685 * gtk/gtkvpaned.[ch]
12686 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
12689 * gtk/gtkgamma.h: Fix bug, missing () in call of
12690 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
12692 1999-09-14 Tor Lillqvist <tml@iki.fi>
12694 * gdk/gdkcolor.c (gdk_colormap_new)
12695 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
12696 colormap->colors was allocated twice.
12698 * gdk/win32/gdk.c: Remove some unused stuff.
12700 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
12703 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
12704 * gtk/gtklabel.h (gtk_label_get_type)
12705 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
12706 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
12707 in a couple of places, not guint.
12709 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12711 * configure.in,po/et.po: added Estonian language file
12713 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12715 * configure.in,po/da.po: added Danish file
12717 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12719 * docs/gtkfaq.sgml: Minor FAQ Update
12721 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12723 * docs/gtkfaq.sgml: FAQ update
12725 1999-08-27 Tor Lillqvist <tml@iki.fi>
12727 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12728 way to get window contents continually refreshed while resizing. I
12729 didn't like the effects myself, so it's not on by default.
12731 * gdk/win32/gdkprivate.h: New flag variable
12732 gdk_event_func_from_window_proc, FALSE by default.
12734 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12735 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12736 are passed --gdk-event-func-from-window-proc.
12738 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12739 and we have am event_func, call it instead of enqueing the event.
12741 1999-08-23 Tor Lillqvist <tml@iki.fi>
12743 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12744 Kelley: Set expose_count in GdkEventExposes correctly.
12746 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12747 MULTIPLE_WINDOW_CLASSES).
12749 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12750 for bug in NT, apparently NT *does* draw the end pixel, too, in
12751 LineTo with a one-pixel pen, so we don't have to do it ourselves.
12753 1999-08-21 Tor Lillqvist <tml@iki.fi>
12755 Improvements by Hans Breuer:
12757 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12759 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12760 CS_?REDRAW flags as they cause lots of (late) redraws when "show
12761 window contents while dragging" is turned on. Allocate at least
12762 one unique class for every GdkWindowType. If support for single
12763 window-specific icons is ever needed (eg. Dialog specific), every
12764 such window should get its own class.
12766 1999-08-19 Tor Lillqvist <tml@iki.fi>
12768 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12769 error that caused crashes.
12771 1999-08-17 Tor Lillqvist <tml@iki.fi>
12773 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12774 window, use ScrollWindowEx, and call UpdateWindow. This prevents
12775 bugs when for instance part of the window was outside the
12776 display. Thanks to Philippe Colantoni for finding and fixing this.
12778 1999-08-16 Tor Lillqvist <tml@iki.fi>
12780 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12781 endpoint calculations which were totally wrong. (A little RTFMing
12784 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12785 from a separate directory, not from gettext, because of licensing
12786 issues (we want to use the LGPL version).
12788 * README.win32: Mention the intl from glibc vs from gettext issue.
12790 1999-08-13 Tor Lillqvist <tml@iki.fi>
12792 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12793 in the key event handling: Now AltGr chars work again. Also,
12794 now Alt-digits are passed up as well as Control-digits.
12795 Pass keypad plus and minus as normal plus and minus.
12797 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
12799 * docs/gtkfaq.sgml: FAQ Update
12801 1999-07-25 Tor Lillqvist <tml@iki.fi>
12804 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12807 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12808 OK, but getting closer. Guard against bogus tilt data from Wacom
12809 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12810 enable easier building without Wintab.
12812 * gdk/win32/gdkinput.h
12813 * gdk/win32/gdkevents.c
12814 * gdk/win32/gdkwindow.c: Minor changes related related to above.
12816 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12817 code. As we have just one visual on Win32, no sense to have it in a
12818 table, and no need for the hash table.
12820 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12821 better on white background.
12823 1999-07-21 Tor Lillqvist <tml@iki.fi>
12825 * README.win32: Update gcc build instructions. Mention gettext is
12828 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12829 supported cursor size with GetSystemMetrics.
12831 * gdk/win32/gdkfont.c
12832 * gtk/gtkfontsel.c: Guard against some font weight and charset
12833 symbols being undefined (in mingw32 headers).
12835 * gdk/win32/makefile.cygwin
12836 * gtk/makefile.cygwin
12837 * gtk/gtkthemes.c: No longer need to have differently named
12838 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12840 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12842 * docs/gtkfaq.sgml: Long awaited FAQ update.
12844 1999-07-15 Tor Lillqvist <tml@iki.fi>
12846 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12847 it. Obscure bit manipulation needed.
12849 * gdk/win32/gdkevents.c: Logging.
12851 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12852 style (file name include compiler name) for theme engines.
12854 1999-07-13 Tor Lillqvist <tml@iki.fi>
12856 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
12858 * gdk/win32/gdkevents.c: Fix long-standing bug in key
12859 events. The key.string wasn't zero-terminated, still we strdup'ed
12860 it in gdk_event_copy(). Synthesize crossing events for button
12861 events before possible propagation.
12863 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
12865 * gdk/win32/makefile.cygwin
12866 * gtk/makefile.cygwin: Use new DLL naming style for the
12869 * gdk/win32/makefile.msc
12870 * gtk/makefile.msc: Cosmetics mostly.
12872 * gtk/gtk.def: Add missing entry points.
12874 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
12876 1999-07-09 Tor Lillqvist <tml@iki.fi>
12878 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
12879 or height is zero. Don't print a warning if Pie or Arc fails, they
12880 always fail (?) for very narrow ellipses.
12882 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
12883 the part or the destination window corresponding to source area
12884 outside of the source drawable's boundary.
12886 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
12887 anything if less than two points.
12889 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
12890 return NULL. Gtk cut-and-paste inside a single program works
12891 better this way. (It always gets the clipboard contents from
12892 Windows, not from its own copy, which is cleared anyway. I can't
12893 say I fully understand what happens... Emulating the X selection
12894 and property stuff is a bit of a mess.)
12896 * gdk/win32/gdkevents.c
12897 * gdk/win32/gdkproperty.c: A bit more verbose logging.
12899 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
12900 that never got deleted). Revamp gdk_region_shrink.
12902 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
12905 * gtk/gtk.def: Add some missing entry points.
12907 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
12910 1999-07-04 Tor Lillqvist <tml@iki.fi>
12912 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
12913 Control-digits specially.
12915 1999-07-03 Tor Lillqvist <tml@iki.fi>
12917 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
12919 1999-06-28 Tor Lillqvist <tml@iki.fi>
12921 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
12922 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
12925 1999-06-01 Jose H Mercado <jmercado@mit.edu>
12927 * gtk+.spec.in: Corrected some typos in files section.
12929 1999-06-15 Tor Lillqvist <tml@iki.fi>
12931 * README.win32: Mention using GNU gettext.
12932 * config.h.win32: Enable NLS stuff.
12933 * gtk/makefile.msc: Use GNU gettext.
12934 * gdk/win32/gdkdnd.c: Minor header reorg.
12935 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
12937 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
12938 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
12940 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
12946 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
12948 1999-05-30 Tor Lillqvist <tml@iki.fi>
12950 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
12951 SafeAdjustWindowRectEx. Don't override all calls to
12952 AdjustWindowRectEx by it, but use it only in two places: When
12953 creating a new top-level window and when moving a top-level
12956 Use screen coordinate rectangle, not client rectangle, in
12957 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
12958 when we try to place a window so that the decoration (mainly,
12959 title bar) isn't visible.
12961 These changes fix the bug that showed up for instance as the
12962 GIMP's saved top-level windows moving right and down (by an amount
12963 equal to the window decoration) for each session. This bug showed
12964 up also in testgtk's "Saved Position".
12966 gdk_window_resize also redone a bit.
12968 1999-05-25 Tor Lillqvist <tml@iki.fi>
12970 * gtk/testgtkrc: Add (commented out) Windows-style theme
12973 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
12975 1999-05-18 Tor Lillqvist <tml@iki.fi>
12977 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
12978 gdkx.h to a gdk subdirectory, so that applications can include
12979 these with <gdk/*.h> without trouble.
12981 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
12982 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
12983 have their bitmap destroyed.
12985 * gdk/win32/gdk.def: Add gdk_root_parent.
12987 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
12993 gtk/Makefile.am: changes to compile nicely (with xlib)
12996 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
13002 * ltmain.sh: upgrade to libtool 1.3
13004 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
13007 * gtk/gtkctree.c: merges from gtk-1-2
13009 1999-04-25 Tor Lillqvist <tml@iki.fi>
13011 Support added for building using a GNU toolchain on Win32,
13012 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
13014 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
13015 * config.h.win32: Changes for gcc.
13016 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
13017 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
13018 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
13019 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
13020 Protect shl stuff unavaiilable with mingw32 headers.
13021 * gdk/win32/gdkevents.c: Fix typo.
13022 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
13023 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
13024 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
13025 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
13026 the mingw32 headers.
13027 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
13028 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
13029 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
13030 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
13031 Test for NATIVE_WIN32, not _MSC_VER.
13032 * gtk/gtkmain.c: No use warning about developer version on Win32,
13033 there aren't any non-developer versions anyhow.
13034 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
13035 * gtk/makefile.msc: Use pthread from another directory. Minor other
13038 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
13040 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13041 default filter from the list
13043 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
13045 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
13046 when gtk_widget_grab_default() is called for a widget that
13047 is not within a GtkWindow.
13049 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
13051 * docs/gtk_tut.sgml, examples/clist.c: use a
13052 scrolled window in the clist example. Minor
13055 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
13057 * docs/gtk_tut.sgml: Style check from David King
13058 <dking@youvegotmail.net>
13060 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
13062 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
13063 compile with unknown value of GDK_WINDOWING
13065 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
13067 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
13068 after the rule is fired.
13069 (install-exec-local): Install gdkconfig.h only if the contents are
13070 different from the currently installed gdkconfig.h.
13072 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
13074 * gdk/Makefile.am (configexecincludedir): Rename from
13075 configincludedir so that gdkconfig.h will be installed
13076 as part of `make install-exec'.
13078 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
13084 * ltmain.sh: upgrade to libtool 1.2f
13086 * autogen.sh: libtool is not required to autogen gtk+
13088 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
13091 1999-03-18 Tor Lillqvist <tml@iki.fi>
13093 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
13094 declaring gdk variables exported/imported from the DLL. New image
13095 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
13096 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
13097 GDK_DRAG_PROTO_OLE2.
13099 * gdk/gdk.h: Merge in Win32 version: Two new functions,
13100 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
13101 declared only for the Win32 version, but could be in the X11
13102 version as well. (Needed for a Xlib-less gdk_imlib.)
13103 gdk_color_hash should have only one parameter. Declare
13104 gdk_threads_mutex with GDKVAR.
13106 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
13107 just one parameter.
13109 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
13110 per pixel, not bits.
13112 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
13113 Fetch bpp (which means bits-per-pixel here) from another place on
13114 Win32. Accept also depth==32 (which we might get on Win32) with
13117 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
13118 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
13119 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
13120 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
13121 in the backend-dependent directory, not in the common gdk
13124 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
13127 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
13129 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
13130 want to use the Gtk+ devel version (which is true, and yes - even i am
13131 currently working with the 1.2.x branch). so everyone reading this, you
13132 probably want to issue
13133 cvs checkout -r glib-1-2 glib
13135 cvs checkout -r gtk-1-2 gtk+
13136 as your next two comands.
13138 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
13140 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
13141 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
13143 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
13144 file. strongly deprecated the GTK_HAVE_* macros, we provide
13145 GTK_CHECK_VERSION() for people that need to check for certain
13148 * gtk/gtkcompat.h: removed this from CVS.
13149 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
13150 idea right from the start, it just didn't seem like that back then.
13152 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
13154 * merges from gtk-1-2:
13156 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
13158 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
13159 item factory class has been created.
13160 (gtk_item_factory_parse_rc): likewise.
13163 keep proper references for old_active_menu_item.
13164 (gtk_menu_reparent): unset the usize of the new parent,
13165 so the menu can sanely be size requested and we don't get nasty screen
13166 artefacts upon next reparentation.
13167 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
13168 enter notify. only synthesize enter notifies if the pointer really is
13169 inside the event window.
13170 (gtk_menu_popdown): use gtk_menu_shell_deselect().
13171 (gtk_menu_popup): move the background setting stuff into
13172 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
13174 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
13175 gtk_menu_shell_select_item() to select the new item.
13176 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
13177 do the right thing for deselection as well.
13179 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
13181 * gtk/gtkwidget.[hc]:
13182 (gtk_widget_accelerators_locked): return whether a widget's accelerators
13185 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
13186 existing accelerators if the widget's accelerators are locked.
13188 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
13190 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
13192 * gtk/gtkmenu.c: truely forward key press and key release events to
13193 the menu widget from the toplevel or tearoff window. we can't simply
13194 connect to that, we need to stop further processing of the events as
13197 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
13200 (gtk_menu_key_press): pass event->keyval, event->state to
13201 gtk_accelerator_valid, instead of event->keyval twice.
13202 refuse to install single letter accelerators for menus that use
13203 single letter shortcuts.
13205 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
13206 gtk_menu_ensure_uline_accel_group().
13208 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
13209 which will always return an uline accel group, made
13210 gtk_menu_get_uline_accel_group() return NULL if the group isn't
13213 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
13215 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
13217 * gtk/gtkclist.c (gtk_clist_column_title_passive):
13218 Leave button sensitive, trap button_press, button_release,
13219 motion_notify, enter_notify and leave_notify events instead.
13220 (gtk_clist_column_title_active): disconnect event handler.
13221 (gtk_clist_drag_data_get): fixed memory leak. Reported by
13222 Guillaume Laurent <glaurent@worldnet.fr>
13224 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
13226 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
13227 width/height mixups.
13229 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
13232 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
13234 * gtk/testgtk.c (create_item_factory): unref the item factory after
13235 window's destruction.
13237 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
13238 count on the menu shell around the menu item's activation, since the
13239 signal emission may cause menu shell destruction.
13241 * gtk/gtkitemfactory.c:
13242 the previous code leaked one accel group per menu. we use
13243 gtk_menu_get_uline_accel_group() now to fix that, and with that
13244 also create the underline accelerator group of the menus only if
13245 required (i.e. an underline accelerator has been specified).
13246 (gtk_item_factory_construct):
13247 (gtk_item_factory_create_item): removed code that would create an
13248 extra accel group for the menu (and leak references).
13249 (gtk_item_factory_create_item): adapted the underline accelerator
13250 installation code to properly feature gtk_menu_get_uline_accel_group().
13252 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
13253 menu->accel_group, this may return NULL if the accelerator group
13254 hasn't been set yet.
13255 added gtk_menu_get_uline_accel_group() to retrive the underline
13256 accelerator group of the menu, this will be created on demand
13257 and proper care is taken about its reference count.
13259 * gtk/gtkitemfactory.h:
13260 * gtk/gtkitemfactory.c:
13261 dumped the approach of keeping a widgets by action list on the
13262 factory since the factory<->widget destroy negotiation didn't work
13263 and would be hard to get going at all. instead we keep a list of
13264 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
13265 persistant throughout a program's life time).
13266 also, i removed the static const gchar *key_* variables, and made
13267 them inline strings (they weren't actually used anyways).
13268 (gtk_item_factory_add_item): update ifactory->items.
13269 (gtk_item_factory_destroy): destroy ifactory->items (and remove
13270 the item factory pointer from the remaining ifactory widgets).
13271 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
13272 list to find the widget.
13273 (gtk_item_factory_get_item): new function that works around
13274 gtk_item_factory_get_widget() limitations, this function will only
13275 return menu items, even for <Branch> entries.
13277 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
13279 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13280 font hash table, if we have a GdkFontPrivate entry for this font
13281 already, simply increment its reference count, provided by Olaf Dietsche
13282 <olaf.dietsche+list.gtk@netcologne.de>.
13284 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13285 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13287 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
13289 * gtk/gtkcontainer.c:
13290 (gtk_container_add_with_args):
13291 (gtk_container_addv):
13292 (gtk_container_add): before adding a child to a conatiner, make sure
13293 it is (default) constructed, this is neccessary because under certain
13294 circumstances the child will get relized and mapped immediatedly, in
13295 which case it has to be constructed already.
13297 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
13299 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
13300 values > 1 as TRUE also.
13302 1999-03-16 Tor Lillqvist <tml@iki.fi>
13304 * README.win32: New file.
13306 * configure.in: Check for lstat.
13308 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
13311 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
13313 * gtk/gtk.def: Removed CRs.
13315 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
13318 * gdk/win32/makefile.msc: Correct upwards relative paths.
13320 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
13322 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
13323 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
13324 it was connecting a void function to expose_event and the int
13325 returning function to the draw signal
13327 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
13330 Use correct path to libgmodule.la when ref'ing uninstalled copy
13331 of glib. (Already in stable branch, Bug #417)
13333 1999-03-15 Tor Lillqvist <tml@iki.fi>
13335 Win32 merge and general portability stuff:
13337 * acconfig.h,configure.in: Check for <sys/time.h>.
13339 * gdk/win32: New directory (actually, been there for a while).
13341 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
13342 NATIVE_WIN32, and use these. Always case fold on Win32. No
13343 backslashed escapes on native Win32.
13345 * gtk/{gtk.def,makefile.msc}: New files.
13347 * gtk/Makefile.am: Add above new files.
13349 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
13350 instead of <strings.h>.
13352 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
13353 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
13354 <unistd.h> appropriately.
13356 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
13357 Use ABS() (from <glib.h>) instead of abs().
13359 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
13360 of gtk (and thus glib) headers, so that WIN32 will be
13361 defined. With MS C, include <direct.h> for mkdir prototype.
13363 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
13364 some casts, needed by MS C.
13366 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
13369 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
13370 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
13371 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
13373 * gtk/gtkmain.h: Mark variables for export/import on Win32.
13375 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
13376 the event is not a hint, or its window is not the slider. Needed
13377 on Win32, at least.
13379 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
13380 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
13381 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
13382 a subdirectory of the Windows directory as gtk system
13383 configuration directory.
13385 * gtk/gtkselection.c: No chunks on Win32.
13387 * gtk/gtksocket.c: Not implemented on Win32.
13389 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
13391 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
13393 * gtk/maketypes.awk: Declare variables with a macro that expands to
13394 necessary export/import magic in the case of Win32.
13396 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
13398 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
13400 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
13401 since those were meant only for gdki18n.h.
13402 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
13403 for widechar tests.
13404 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
13406 1999-03-13 Tor Lillqvist <tml@iki.fi>
13408 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
13409 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
13411 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
13412 installed) to CFLAGS.
13414 * gdk/Makefile.am: Add rules for gdkconfig.h.
13416 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
13419 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
13420 gdkx.h anyway when compiling for X11.
13421 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
13422 general): Merge in Win32 version.
13424 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
13425 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
13426 expansion (if we don't have HAVE_PWD_H), allow for drive
13427 letters. UNC paths (\\server\share\...) are not handled yet. Also,
13428 included code from Craig Setera's port to Win32 (the one that uses
13429 X11, and the cygwin dll), even if it probably will be abandoned.
13431 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
13432 the user entered one herself. This way one can complete *.h and
13433 don't get matches on any .help files, for instance.
13435 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
13437 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13438 font hash table, if we have a GdkFontPrivate entry for this font
13439 already, simply increment its reference count, provided by Olaf Dietsche
13440 <olaf.dietsche+list.gtk@netcologne.de>.
13442 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13443 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13445 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
13447 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
13448 the number of calls to gdk_draw_point() (and thus to X) by
13449 clipping the points by hand.
13451 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
13452 the clip parameter.
13453 (gtk_handle_box_paint): Only paint the handle if the expose area
13456 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
13458 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
13460 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
13462 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
13463 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
13465 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
13467 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13468 textmode (O_TEXT) for OS/2 version.
13470 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
13472 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
13473 GtkSpinButton, "input" and "output", to make the output more flexible.
13474 The user has to provide a mapping between adjustment->value and the
13475 output string (and vice versa, if the spin button is editable).
13476 See testgtk for examples.
13478 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
13480 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13483 * configure.in: set gtk+ version to 1.3.0.