1 Sat Mar 3 13:21:27 2001 Owen Taylor <otaylor@redhat.com>
3 * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4 Add plug-socket tests. (Won't work worth a darn until I commit
5 the rest of the plug-socket changes, but no reason these
6 can't go into CVS now.)
8 2001-03-02 Havoc Pennington <hp@redhat.com>
10 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
11 _gdk_region_get_xrectangles()
13 * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
15 * gtk/testgtk.c (create_shapes): add test for shape_combine_region
17 * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
18 function, contributed by Ron Steinke
20 * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
23 * gdk/gdkregion-generic.c (gdk_region_get_rectangles):
24 New function, contributed by Ron Steinke
26 * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function,
27 used to line up the text in the entry when using the entry for
28 editable sheet cell hacks
30 * gtk/testgtk.c (create_entry): test the activate_default setting
33 * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to
34 cause the entry to activate the default button for a dialog when
36 (gtk_entry_get_activates_default): new function
38 Wed Feb 28 19:10:43 2001 Owen Taylor <otaylor@redhat.com>
40 * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
41 Hwang to move call to sync_selection() up a few lines
42 to before the row list is modified, to fix crash when
43 removing rows in the undo_selection list.
45 (Test case provided by Daniel Elstner:
47 http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
49 Fri Feb 23 15:06:48 2001 Owen Taylor <otaylor@redhat.com>
51 * gtk/gtktree.c (gtk_tree_class_init): Do the setting
52 of tree->root_tree in parent_set rather than _map(),
53 fixing #50892 in a bit better manner.
55 Thu Feb 22 17:07:58 2001 Owen Taylor <otaylor@redhat.com>
57 * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
59 Tue Feb 2 11:22:33 2001 Jody Goldberg <jgoldberg@home.com>
61 * gtk/gtkstyle.c : Remove duplicate fwd decl for
62 gtk_default_draw_shadow.
64 ue Feb 20 11:40:58 2001 Owen Taylor <otaylor@redhat.com>
66 * gdk/gdkimage.c (gdk_image_new): Remove excess
67 warning, make warnings more verbose, treat a error
68 in shmat as permanent, and don't try again.
71 Mon Feb 19 20:15:28 2001 Owen Taylor <otaylor@redhat.com>
73 * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
74 delay for the first click before starting to scroll.
75 (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
77 * gtk/gtktext.c: GtkText should have I-beam cursor.
78 (based on gtk-enf-990513-1.patch, Eric Fisher.)
80 Mon Feb 19 16:42:19 2001 Owen Taylor <otaylor@redhat.com>
82 * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
83 cleanup to remove some references to unused
86 Mon Feb 19 14:20:36 2001 Owen Taylor <otaylor@redhat.com>
88 * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
89 mask. (#51039, fix from Martin Maierhofer)
91 Fri Feb 16 20:09:42 2001 Owen Taylor <otaylor@redhat.com>
93 * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
94 for unshifted + and shifted = for non-us keyboards.
95 Make <Control>+ and <Control>- work as well as
96 <Control>KP_Plus, <Control>KP_Minus for recursive
97 open/close. (#2682, René Seindal)
99 Fri Feb 16 18:50:59 2001 Owen Taylor <otaylor@redhat.com>
101 * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
102 the active menu item before deactivating the menu,
103 so gtk_menu_popdown doesn't change the history. (#50964)
105 Fri Feb 16 15:55:22 2001 Owen Taylor <otaylor@redhat.com>
107 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines):
108 draw lines with text_gc rather than black_gc.
109 (Patch from Vlad Harchev <hvv hippo ru>, #50926)
111 Thu Mar 1 19:50:56 2001 Jonathan Blandford <jrb@redhat.com>
113 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
114 Move handling of buttons fully in gtktreeviewcolumn. This code is
115 less interrelated then it was, but it still requires the
116 GtkTreeView to map it.
118 * test/testtreecolumn.c: Now I can add a column to one view,
119 remove it, add it to the another view, remove it, then re-add it
122 Thu Mar 1 13:14:27 GMT 2001 Tony Gale <gale@gtk.org>
124 * docs/tutorial/gtk-tut.sgml: Minor corrections
126 Wed Feb 28 16:36:46 2001 Jonathan Blandford <jrb@redhat.com>
128 * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
131 2001-02-28 Havoc Pennington <hp@redhat.com>
133 * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
135 (gtk_widget_draw_focus): remove this function; we could instead
136 make it just gtk_widget_draw(), but in most cases I think the
137 result would be broken user code, so think it's better to have
138 that code not compile and get fixed
139 (gtk_widget_draw_default): ditto
141 * gtk/gtkwidget.c: Add default handlers for focus_in_event and
142 focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
144 * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
145 widgets lose/get the default, instead of calling draw_default
147 * docs/Changes-2.0.txt: note about all this
149 Then fixed every widget in GTK, I won't list all the filenames.
151 Tue Feb 27 19:32:53 2001 Jonathan Blandford <jrb@redhat.com>
153 * gtk/gtktreemodel.c (deleted_callback): Proxy out to
154 _gtk_tree_row_reference_deleted.
155 (inserted_callback): Proxy out to
156 _gtk_tree_row_reference_inserted.
157 (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
158 get around signal emission ordering problem.
160 * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
161 fix to work with SINGLE
162 (_gtk_tree_selection_internal_select_node): Major sanitization on
163 selections. SINGLE now seems to work.
165 * tests/Makefile.am: add testtreecolumn.c:
167 * tests/testtreecolumn.c: New test. Mostly points out selection
168 bugs currently, but will test columns later.
170 * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
171 selection bug. I hate touching this code -- it's scary.
173 2001-02-26 Havoc Pennington <hp@redhat.com>
175 * gtk/testgtk.c: test the window state stuff
177 * gtk/gtkwindow.c (gtk_window_present): new function, makes a
178 window come to the user's attention as if it were just created
179 (gtk_window_iconify): new function
180 (gtk_window_deiconify): new function
181 (gtk_window_stick): new function
182 (gtk_window_unstick): new function
183 (gtk_window_maximize): new function
184 (gtk_window_unmaximize): new function
186 * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
188 * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
190 * gdk/x11/gdkevents-x11.c: create window state events when
192 (gdk_wmspec_supported): new function
194 * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
195 iconification before showing the window
196 (gdk_window_deiconify): new function
197 (gdk_window_stick): new function
198 (gdk_window_unstick): new function
199 (gdk_window_maximize): new function
200 (gdk_window_unmaximize): new function
202 * gdk/gdkwindow.c: store the window state in the window;
203 change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
205 (gdk_window_get_state): return the current window state
207 * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
208 (gdk_event_get_state): handle GDK_WINDOW_STATE
209 (gdk_synthesize_window_state): function to create the window state
212 * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
213 event, for changes to "window state" such as maximized, sticky,
216 * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
219 * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function,
220 finds out if we support a given WM spec hint
222 Tue Feb 27 13:37:38 GMT 2001 Tony Gale <gale@gtk.org>
224 * docs/faq/gtk-faq.sgml: New question re memory leaks.
226 2001-02-25 Hans Breuer <hans@breuer.org>
228 * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
229 cause we want to loose those prototypes only in the latter case
231 * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
232 GdkPixmapImplWin32 because it itsn't derived from it. Use the
233 impl member variable instead
235 * gtk/gtk.def : updated
238 * gtk/gtkmenus.c : include <string.h> for memset ()
240 * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
241 for everthing built here, but for gtk-x.x.dll only. This solves
242 problem of indifferent gtk type definitions
244 Sat Feb 24 20:11:39 2001 Jonathan Blandford <jrb@webwynk.net>
246 * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
248 Fri Feb 23 17:50:13 2001 Jonathan Blandford <jrb@redhat.com>
250 * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
251 column that is exposed.
253 (_gtk_tree_view_update_size): Changed name from set_size, and
254 changed function to do more work, and not force people calling it
255 to figure out the size. Simplifies a lot of code elsewhere.
257 2001-02-23 Alexander Larsson <alexl@redhat.com>
259 * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
260 return solid masks for xpms that have no transparent color.
261 This makes the ..._create_from_xpm... API backwards
264 2001-02-23 Tor Lillqvist <tml@iki.fi>
266 * README.win32: Update. Mention the gtk-1-3-win32-production
269 * gdk/win32/bdfcursor.c: New file. A program that generates
270 xcursors.h. Thanks to Stefan Ondrejicka.
272 * gdk/win32/xcursors.h: New file, contains the X cursor font in a
275 * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
277 * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
278 function, uses xcursors.h.
279 (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
280 cursor from inline data instead of using LoadCursor() to generate
283 * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
284 event, must check the Windows message for mouse button state, as
285 the GDK event state might not have been built if it is
286 undelivered. Remove one goto.
288 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
289 SetCursor() if the current cursor as returned by GetCursor() is
290 the window's previous cursor. The ChildWindowFromPoint() test
291 apparently didn't work correctly.
293 * gdk/win32/rc/*.cur: Remove.
295 * gdk/win32/rc/gdk.rc.in: Remove cursors.
297 * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
299 * gtk/makefile.{mingw,msc}.in: Updates.
301 Wed Feb 21 20:56:50 2001 Jonathan Blandford <jrb@redhat.com>
303 * gtk/gtktreemodel.h: add functions for signal emission.
305 * gtk/gtktreestore.c: move to use above functions instead of
308 * gtk/gtkliststore.c: ditto
310 Wed Feb 21 15:41:34 2001 Jonathan Blandford <jrb@redhat.com>
312 * gtk/gtktreestore.c: removed signals. Moved to inherit from
313 GObject instead of GtkObject.
315 * gtk/gtkliststore.c: ditto.
317 * gtk/gtktreemodelsort.c: ditto.
319 * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
320 GtkTreeModelIface, instead of in each model.
322 2001-02-21 Havoc Pennington <hp@redhat.com>
324 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
325 unbreak this function
327 * gtk/gtkentry.c: apply patch from Lee Mallabone to add object
330 * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
333 * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object
336 * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
337 mean unset the max length
339 Wed Feb 21 14:23:05 2001 Jonathan Blandford <jrb@redhat.com>
341 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
342 Changed name to be set_cell_data_func to make it clear what
343 the functino does. Close bug #51069.
345 Tue Feb 20 16:49:00 2001 Jonathan Blandford <jrb@redhat.com>
347 * gtk/testgtk.c (main): Remove turning on of profiling malloc,
348 have memory actually freed. Keeps box running longer.
350 2001-02-21 Alexander Larsson <alexl@redhat.com>
352 * gtk/gtkseparatormenuitem.[ch]:
353 Added new menu separator item. The drawing and size handling
354 is still done in GtkMenuItem, but the API is a bit more sane.
357 Add gtkseparatormenuitem.[ch].
360 Add gtkseparatormenuitem.h.
363 * gtk/gtkmenufactory.c:
365 Use the new API for menu separators.
367 * demos/gtk-demo/menus.c (create_menu):
368 Add some GtkSeparatorMenuItem demo code.
370 2001-02-20 Havoc Pennington <hp@redhat.com>
372 * gtk/gtkaspectframe.c: Convert to new property API, patch from
375 * gtk/gtkarrow.c: Convert to new property API, patch from
378 Tue Feb 20 14:26:41 2001 Jonathan Blandford <jrb@redhat.com>
380 * tests/testtreeview.c (toggled_callback): fix to reflect change
381 in GtkTreeModelStore.
383 Tue Feb 20 12:16:12 2001 Jonathan Blandford <jrb@redhat.com>
385 * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
386 function to create an icon set from a pixbuf.
388 2001-02-20 Alexander Larsson <alexl@redhat.com>
390 * gtk/gtkcellrenderertext.[ch]:
391 Add a "markup" property.
393 * gtk/treestoretest.c:
394 Use the markup property, remove some leftover stuff from
397 2001-02-20 Alexander Larsson <alexl@redhat.com>
399 * gtk/gtklabel.c (gtk_label_set_selectable):
400 Queue a redraw if the selectable setting was changed.
402 2001-02-20 Alexander Larsson <alexl@redhat.com>
404 * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
405 Actually copy the whole gc, not just the public parts.
407 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
408 GDK_WINDOW_TEMP are not toplevel. Fixes selectable
411 2001-02-19 Havoc Pennington <hp@pobox.com>
413 * gdk/gdkwindow.c: docs
417 * gdk/gdkregion-generic.c: docs
419 * gdk/gdkgc.c (gdk_gc_set_values): docs
421 * gdk/gdkdraw.c: docs
423 * gdk/gdkdrawable.h: deprecate drawable get/set data
425 Mon Feb 19 20:37:35 2001 Jonathan Blandford <jrb@redhat.com>
427 * demos/gtk-demo/dialog.c: Add simple new demo.
429 2001-02-19 Havoc Pennington <hp@redhat.com>
431 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
432 insert_child_anchor signal, bug #50245
434 * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
435 from create_child_anchor, so the anchor is passed in
437 * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
438 (_gtk_widget_segment_new): have the child anchor object passed in,
439 instead of creating it.
441 * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
442 to gtk_text_buffer_get_modified
444 2001-02-19 Havoc Pennington <hp@redhat.com>
446 * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
447 changed GLib without fixing GTK
449 * gtk/gtkrange.h: Rename all the stupid implementation detail
450 functions to have an underscore in front. Most of them should
451 probably just go away, but for starters don't export them.
454 2001-02-19 Havoc Pennington <hp@redhat.com>
456 * gdk/gdkcolor.h: test was backward, so deprecated functions were
459 * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
460 clean up the old code a bit
462 * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
465 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
466 draw inconsistent state
468 * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
469 (create_menu): add inconsistent test
471 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
473 (gtk_check_menu_item_get_inconsistent): new function
474 (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
475 state (using etched in for now)
477 * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
478 draw inconsistent state
480 * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
481 function, used when the user has selected a range of stuff in
483 (gtk_toggle_button_get_inconsistent): accessor for that
484 (gtk_toggle_button_paint): draw inconsistent state (etched in?
485 don't know what else to do)
487 2001-02-19 Hans Breuer <hans@breuer.org>
489 * gtk/gtk.def : updated exported symbols
491 * gtk/makefile.msc.in : updated
493 * gtk/gtkstyle.c (gtk_style_realize) : gets called without
494 a colormap, when invoked from testgtk::entry. I'm not sure where
495 the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
496 avoids immediate crashing ...
498 * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
501 * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
502 0 parameter. At least msvc doesn't like macros with var args.
503 I simply removed the extra 0, was it a feature or a typo ?
505 * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
506 removed the extra indirection from the GtkTreeViewColumnFunc parameter,
507 because the value assignment to the internal struct wasn't working.
508 I'm not absolutely sure. The problem could have been resolved by
509 changing the "func" declartion in the struct, but was the pointer
510 to the function pointer intended ?
512 * gtk+/gtk/gtktreedatalist.c : include gboxed.h
514 * gdk/gdk.def : updated exported symbols
516 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
517 only use SetDIBitsToDevice if there is a palette at the drawable
518 and the image is GDK_VISUAL_PSEUDO_COLOR
520 * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
522 * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
524 * gdk/*/makefile.msc : updated
526 2001-02-19 Havoc Pennington <hp@redhat.com>
528 * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
529 GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
531 * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
532 (gdk_key_repeat_restore): nuke
534 * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
535 (gdk_init_check): no atexit func
537 * gdk/gdkrgb.h: mark some stuff deprecated
539 * gdk/gdkcolor.h: mark some stuff deprecated
541 * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
543 * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
545 2001-02-16 Havoc Pennington <hp@redhat.com>
547 * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
550 * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
551 steps, and add Ctrl-arrow shortcuts for paging visually as with
552 HScale, since Page Up and Page Down move logically.
554 * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
555 GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
557 * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
559 (gtk_range_scroll): handle the visual steps
561 * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
564 * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
565 steps, not the logical ones.
567 * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
568 (scroll_vertical): handle up/down steps
570 2001-02-19 Alexander Larsson <alexl@redhat.com>
572 * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
573 Copy data and free data with free().
575 * gdk-pixbuf/gdk-pixbuf.c:
576 * gdk-pixbuf/io-jpeg.c:
577 * gdk-pixbuf/io-png.c:
578 Use g_try_malloc/g_free instead malloc/free.
580 * gdk-pixbuf/test-gdk-pixbuf.c:
581 Must... initialize... gobject...
583 * gdk-pixbuf/pixops/timescale.c:
585 Use g_malloc instead of malloc.
587 2001-02-19 Alexander Larsson <alla@lysator.liu.se>
590 Comment out property assignments, these don't work yet.
592 2001-02-17 Havoc Pennington <hp@pobox.com>
594 * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
597 2001-02-17 Havoc Pennington <hp@pobox.com>
599 * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
600 shadowed variables that had broken size request in some cases,
601 leading to bogus tooltips (#50996)
603 2001-02-06 Jon K Hellan <hellan@acm.org>
605 Implement fast browsing of tooltips, bug #50619
607 * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
610 * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
611 use_sticky_delay and last_popdown.
612 (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
614 (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
616 (gtk_tooltips_recently_shown): New static function. Return true
617 if < sticky_delay has elapsed since last popdown.
618 (gtk_tooltips_event_handler): Display window after sticky_delay
619 (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
622 2001-02-17 Havoc Pennington <hp@pobox.com>
624 * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
627 * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
628 G_CONST_RETURN, make it return by reference, #50473
630 Sat Feb 17 06:47:27 2001 Tim Janik <timj@gtk.org>
632 * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
633 generated ENTER_NOTIFY event with 0, otherwise not explicitely
634 setup fields contain garbage (e.g. subwindow, breaking
635 gdk_drawable_ref() upon event copy).
636 (gtk_menu_stop_navigating_submenu_cb): same here.
638 * gtk/gtklist.c (gtk_list_vertical_timeout):
639 * gtk/gtklist.c (gtk_list_horizontal_timeout):
640 * gtk/gtkclist.c (vertical_timeout):
641 * gtk/gtkclist.c (horizontal_timeout): change direct assignment
642 default-zero-intialization for unions to memset(,0,), as unions are
643 not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
644 has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
646 * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
647 g_closure_sink() warning.
649 * gtk/gtktreemodel.c (gtk_tree_model_get_valist):
650 * gtk/gtktreestore.c (gtk_tree_store_set_valist):
651 * gtk/gtkliststore.c (gtk_list_store_set_valist):
652 fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
654 Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
656 * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
657 gtk_*_store_get, and moved to GtkTreeModel.
659 * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
661 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
663 * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
665 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
668 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
669 freeze/thaw notify between setting all the properties for a cell.
671 * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
673 2001-02-15 Havoc Pennington <hp@redhat.com>
675 * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
676 the X coordinates so they're with respect to the line, rather than
677 with respect to the layout.
679 * gtk/gtkalignment.c: Convert to new property API, patch from Lee
682 * gtk/testgtk.c (create_range_controls): add vscale tests,
685 * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix
688 * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
690 * gtk/gtktextiter.h (gtk_text_iter_is_last): rename
693 * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
694 rename gtk_text_buffer_get_end_iter
696 * gtk/testgtk.c (create_labels): Add test for selectable
698 * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
699 the selection stuff. This code is kind of broken since it doesn't
700 use the theme engine.
702 * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region):
703 fix infinite loop and y offset problem
704 (gdk_draw_layout_line_with_colors): fix foreground color handling
706 * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag
707 that makes the label selectable.
709 * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
710 layout when the style is set, since fonts etc. could have changed.
712 Fri Feb 16 14:22:05 2001 Jonathan Blandford <jrb@redhat.com>
714 * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
716 * gtk/gtktreemodelsimple.[ch]: removed.
718 2001-02-16 Alexander Larsson <alexl@redhat.com>
720 * gtk/gtktreemodelmapping.[ch]:
721 New files. Implement GtkTreeModelMapping.
724 Add gtktreemodelmapping.[ch].
727 Add gtktreemodelmapping.h
729 * gtk/treestoretest.c:
730 Test the GtkTreeModelMapping
732 Tue Feb 13 13:16:09 2001 Jonathan Blandford <jrb@redhat.com>
734 * demos/gtk-demo/panes.c (create_pane_options): If we're going to
735 have a demo, we might as well pass in real values. Thanks to
736 clahey for pointing this out.
738 2001-02-14 Havoc Pennington <hp@pobox.com>
740 * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
741 "static" to a private function
742 (gtk_image_menu_item_class_init): remove destroy handler,
743 add "image" object property
745 2001-02-13 Alexander Larsson <alla@lysator.liu.se>
747 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
748 Add a shortcut if the window and the current clip_region doesn't
749 overlap. This is needed when there are a lot of windows in a
750 window. The layout test in testgtk is a good test.
752 * gdk/linux-fb/gdkwindow-fb.c:
755 2001-02-13 Sven Neumann <sven@convergence.de>
757 * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
759 2001-02-13 Alexander Larsson <alexl@redhat.com>
761 * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
762 Don't reference last_cursor if it is null. Fixes crash when rotating
763 the screen before having moved the mouse.
765 * gdk/linux-fb/gdkcc-fb.c: Zapp!
767 * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
769 * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw
770 when using 90 or 270 degrees rotation.
772 2001-02-12 Havoc Pennington <hp@pobox.com>
774 * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where
775 it always set the foreground, even if we were only using
777 (gdk_draw_layout_line_with_colors): new function, allow
779 (gdk_draw_layout_with_colors): new function, allow override
781 (gdk_pango_layout_line_get_clip_region): function to get the clip
782 region for a logical text range
783 (gdk_pango_layout_get_clip_region): get the clip region for a
786 * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
787 (gdk_colormap_new): fix call to gdk_colormap_sync() so it has
788 the right number of arguments.
790 * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
791 enhance the function to check that node data corresponds to a
792 view still belonging to the tree.
794 * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the
796 (gtk_tree_view_inserted): ditto
797 (gtk_tree_view_child_toggled): ditto
799 * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
802 * gtk/gtkcellrenderertext.c (get_layout): fix leak of
805 * demos/gtk-demo/main.c (load_file): Fix leak of a GString
807 * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
809 * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
810 size in the size request
811 (gtk_menu_bar_size_allocate): consider toggle size here
813 * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
814 that displays a widget in the toggle slot
816 * gtk/testgtk.c: test GtkImageMenuItem
818 * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
820 * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
821 request and allocation
823 * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
825 * gtk/gtkcheckmenuitem.c
826 (gtk_check_menu_item_toggle_size_request): ditto
828 Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
830 * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
833 * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
834 and refuse to initialize GTK+ if they fail.
836 Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
838 * configure.in: Add check for gtk-doc version.
840 Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
842 * gtk/gtklabel.c (gtk_label_size_request): Fix bug
843 where the xpad/ypad was only being used on one side!
845 2001-02-11 Tor Lillqvist <tml@iki.fi>
847 * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
848 function, copied from X11 version.
850 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
851 DestroyCursor failures. The reason for the problem (despite the
852 inconsistent messages from GetLastError()) was that
853 DestroyCursor() cannot be called while a cursor is set in a
854 window. Set the new cursor first and then destroy the old one.
855 Thanks to jpe@archaeopteryx.com.
857 * gdk/win32/gdkcc-win32.c: Remove.
859 * gdk/win32/Makefile.am: Remove from here, too.
862 * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
865 * gtk/makefile.mingw.in: Updates.
867 2001-02-08 Havoc Pennington <hp@redhat.com>
869 * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
870 add a widget to a bin that already has a child.
872 * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
874 * docs/Changes-2.0.txt: note that GdkColorContext is gone.
876 * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
878 * gdk/gdk.h: remove gdkcc.h
880 * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
882 * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
883 GdkPixbuf, since the previous implementation was GdkColorContext
886 * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
888 Thu Feb 8 19:00:00 2001 Jonathan Blandford <jrb@redhat.com>
890 * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
893 2001-02-08 Havoc Pennington <hp@redhat.com>
895 * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
898 2001-02-08 Havoc Pennington <hp@redhat.com>
900 * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
903 * demos/gtk-demo/main.c (create_tree): adjust to changes in text
906 * demos/pixbuf-demo.c (timeout): remove deprecated
909 * demos/testpixbuf-save.c (main): remove deprecated
910 gtk_drawing_area_size
912 * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
913 buttons even if the model isn't setup. gtk_tree_view_check_dirty()
914 at the start of the allocation.
915 (gtk_tree_view_check_dirty): handle column->button == NULL, handle
916 unsetup or NULL model.
918 * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the
919 even/odd/sorted cells in the tree view.
921 * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
924 * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
925 backgrounds with draw_flat_box using different detail for even/odd
928 * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
929 row, so we can draw the alternating colors thing
931 * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
932 property from a synonym property, notify for the synonym.
933 Also, nuke the background_gdk_set and foreground_gdk_set synonyms
934 (gtk_text_tag_get_property): Always return the font, even if
935 all its fields aren't set
937 * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
938 store the attr list; it leaves us with no way to change attributes
939 in _render according to the render flags, and no way to implement
940 get_property. Instead store all the specific text attributes.
941 Separate whether an attribute is enabled from its value. Sync all
942 properties with GtkTextTag, make them all consistent, etc.
944 * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
945 renderers can highlight the sort row/column
947 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
948 accessor functions to get values; this has the side effect of
949 showing up which accessor functions were missing. Added those.
951 * gtk/gtktreeviewcolumn.h: Replace set_justification with
952 set_alignment, to be consistent with GtkLabel, GtkMisc
954 * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
957 * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
959 * gtk/gtktreesortable.h: updates in here
961 2001-02-07 Sven Neumann <sven@convergence.de>
963 * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to
964 pango dimensions after painting the background. We used to draw
965 gigantic flat boxes here.
967 Mon Feb 5 22:05:57 2001 Owen Taylor <otaylor@redhat.com>
969 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
970 error introduced with earlier commit) (pointed out by
973 Mon Feb 5 12:25:06 2001 Owen Taylor <otaylor@redhat.com>
975 * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
976 which are no longer necessary.
978 Mon Feb 5 13:22:54 GMT 2001 Tony Gale <gale@gtk.org>
980 * docs/faq/gtk-faq.sgml: s/MISK/MISC/
982 2001-02-04 Tor Lillqvist <tml@iki.fi>
985 * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
986 Provide dummy implementations.
988 Sun Feb 4 07:55:17 2001 Tim Janik <timj@gtk.org>
990 * gtk/gtksignal.h: removed gtk_signal_init() compat define.
992 * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
993 GTypeDebugFlags debug_flags and pass it on to g_type_init ();
994 deprecated this function.
996 * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
999 Sun Feb 4 07:45:45 2001 Tim Janik <timj@gtk.org>
1001 * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1003 2001-02-03 Havoc Pennington <hp@pobox.com>
1005 * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1006 Mikael Hermansson with patch from Mikael (if there was a toggle
1007 start one after the first character in the range, this function
1008 was broken). Bug #50380
1010 Sat Feb 3 11:28:03 2001 Owen Taylor <otaylor@redhat.com>
1012 * configure.in: Remove confusing comment about X11.
1014 Fri Feb 2 19:21:23 2001 Owen Taylor <otaylor@redhat.com>
1016 * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
1017 regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
1019 Fri Feb 2 18:31:54 2001 Owen Taylor <otaylor@redhat.com>
1021 * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
1022 it breaks things on BSD. If you want to compile GTK+ with
1023 -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE
1024 when configuring, since GTK+ simply can't be "pure ANSI"
1025 in the header files it uses. (#8170, Greg Hudson)
1027 2001-02-02 Havoc Pennington <hp@redhat.com>
1029 * gtk/gtkwindow.c: docs
1031 * gtk/gtkwidget.c: docs
1032 (gtk_widget_set_colormap): add a reference to the colormap
1033 (gtk_widget_get_default_colormap): add a reference to the colormap
1035 * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
1037 * gtk/gtktextiter.c: docs
1039 * gtk/gtkmain.c (gtk_propagate_event): docs
1041 * gtk/gtkpaned.c (gtk_paned_get_position): docs
1042 (gtk_paned_set_position): docs
1044 * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
1045 sort interface, no implementation yet.
1047 * demos/testpixbuf.c (new_testrgb_window): replace
1048 gtk_drawing_area_size() with gtk_widget_set_usize()
1050 * demos/testpixbuf-drawable.c (main): ditto
1052 * gtk/testgtk.c: remove use of GtkStatusbarMsg
1054 * gtk/gtktextbuffer.c: docs
1056 * gtk/gtkstock.c: docs
1058 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
1060 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
1062 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
1064 * gtk/gtkimage.c: add some docs in here
1065 (gtk_image_size_request): change name of
1066 gtk_widget_render_stock_icon
1067 (gtk_image_get_icon_set): don't dup returned string
1068 (gtk_image_get_icon_set): don't dup returned string
1070 * gtk/gtkwidget.c (gtk_widget_render_icon): rename from
1071 gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
1072 and gtkiconfactory.h functions
1074 * gtk/gtkiconfactory.c: add some docs in here
1076 * gtk/gtkmain.c (gtk_get_default_language): document
1077 (gtk_get_current_event): document
1078 (gtk_get_current_event_state): document
1079 (gtk_get_event_widget): document
1081 * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
1083 * gtk/gtkcontainer.c: Add some documentation
1084 (gtk_container_add): give a more explanatory warning on adding an
1085 already-parented widget, this is kind of a FAQ and also a common
1086 typo that's easier to debug with a nice warning
1088 * gtk/gtkcellrenderertoggle.c
1089 (gtk_cell_renderer_toggle_get_active): remove, I was on crack
1090 adding this, it's useless
1091 (gtk_cell_renderer_toggle_set_active): remove
1092 (gtk_cell_renderer_toggle_get_radio): add
1094 * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
1095 the NULL cell renderer, that doesn't make any sense to me.
1097 * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
1098 demo code should never use deprecated features.
1100 * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
1101 code should never use deprecated features.
1103 * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
1104 gtk_widget_queue_clear_area deprecated
1106 * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
1109 * gtk/gtklabel.h: mark gtk_label_get() deprecated
1111 * gtk/gtkimage.h: mark the legacy GtkImage functions that took
1112 a GdkImage deprecated, replaced by new consistently-named
1115 * gtk/gtkmain.h: Mark gtk_exit() deprecated
1117 * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
1119 * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string
1122 * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file,
1123 so it won't appear in docs and confuse people.
1125 * gtk/gtkprogressbar.h: Mark all the old methods deprecated
1127 * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
1128 macros deprecated. (can't mark the type itself deprecated, since
1129 GtkProgressBar is not deprecated and we need the type decl to use
1132 * gtk/gtkpixmap.h: Mark deprecated
1134 * gtk/gtkoldeditable.h: Mark deprecated
1136 * gtk/gtklist.h: Mark deprecated
1138 * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used
1139 for anything anymore.
1141 * gtk/gtkctree.h: Mark deprecated
1143 * gtk/gtkclist.h: Mark deprecated
1145 * gtk/gtkpreview.h: Mark deprecated
1147 * gtk/gtkpacker.h: Mark deprecated
1149 * gtk/gtktipsquery.h: Mark deprecated
1151 * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
1153 * gtk/gtkvruler.h: Add comment that it will move out of GTK
1155 * gtk/gtkhruler.h: Add comment that it will move out of GTK
1157 * gtk/gtkruler.h: Add comment that it will move out of GTK
1159 * gtk/gtkgamma.h: Add comment that it will move out of GTK
1161 * gtk/gtkcurve.h: Add comment that it will move out of GTK
1163 Fri Feb 2 17:16:09 2001 Owen Taylor <otaylor@redhat.com>
1165 * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
1166 gdk_colormap_sync private since it was never exported
1169 * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
1170 colormap->colors[] for StaticGray, StaticColor colormaps.
1172 * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
1173 was being used as if it was image->bits_per_pixel.
1175 * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
1176 for the image in the GdkImage structure since it isn't
1177 reconstructable, and we need it to handle packed types
1179 * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
1180 the assumption that on Win32 image->bits_per_pixel == image->depth,
1183 * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
1185 * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
1186 warning message if no converter can be found.
1188 Fri Feb 2 15:09:51 2001 Owen Taylor <otaylor@redhat.com>
1190 * gtk/fnmatch.c (FOLD): Fix problem with passing signed
1191 chars to isupper() / tolower(). (#567)
1193 * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
1194 to clear up 64-bit warnings. (#567)
1196 Fri Feb 2 12:26:50 2001 Owen Taylor <otaylor@redhat.com>
1198 * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
1199 a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
1201 * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
1202 since some people set $(libdir) separately. (#1290, David Kaelbling)
1204 Thu Feb 1 18:25:46 2001 Owen Taylor <otaylor@redhat.com>
1206 * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
1207 defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
1208 MAXPATHLEN, but the code here depends on a fixed value.)
1211 Wed Jan 31 22:01:04 2001 Owen Taylor <otaylor@redhat.com>
1213 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
1214 where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
1216 Wed Jan 31 21:20:39 2001 Owen Taylor <otaylor@redhat.com>
1218 * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
1219 viewable there is no way that moving the node will cause the
1220 focus row to become not viewable, so omit check on the visibility
1221 of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
1223 Wed Jan 31 20:38:17 2001 Owen Taylor <otaylor@redhat.com>
1225 * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
1226 selection before inserting new text.
1228 Wed Jan 31 18:49:33 2001 Owen Taylor <otaylor@redhat.com>
1230 * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
1231 Make the sensitivity of the reparented child track that of
1232 the original parent menu item. (#34218, David Hodson)
1234 * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
1235 the case where the current item is destroyed properly.
1237 * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
1238 some edge cases with child-less menuitems.
1240 Wed Jan 31 17:16:13 2001 Owen Taylor <otaylor@redhat.com>
1242 * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
1243 key pop down window. (#12074, Jon K Hellan)
1245 Wed Jan 31 16:21:42 2001 Owen Taylor <otaylor@redhat.com>
1247 * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
1248 toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan)
1249 The solution here isn't perfect - you get an extraneous
1250 emission of "toggle", which could conceivably confuse an app,
1251 but better than the current situation. LXR search seems to
1252 indicate that no apps in GNOME CVS connect to "toggle".
1254 Wed Jan 31 15:46:13 2001 Owen Taylor <otaylor@redhat.com>
1256 * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
1257 gtk_public_h_sources to directly here to avoid warning when
1258 building srcdir != builddir. (#9656)
1260 Tue Jan 30 19:49:02 2001 Owen Taylor <otaylor@redhat.com>
1262 * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
1263 handlers in gtkrange.c return the proper values (TRUE == handled)
1266 This is just the tip of the iceberg, but gtkrange.c is the
1267 most common place where the propagation is problematical,
1268 and also a place where it is almost certainly safe to change
1269 this in the stable branch.
1271 (You don't want right click popups on a range control or anything...)
1273 Tue Jan 30 18:57:59 2001 Owen Taylor <otaylor@redhat.com>
1275 * gtk/gtktext.c (clear_focus_area): We need to clear the focus
1276 area on focus out, even if a background pixmap isn't set.
1279 Tue Jan 30 18:24:10 2001 Owen Taylor <otaylor@redhat.com>
1281 * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
1282 to deal with setting the shape properly when scrolling arrows are
1283 turned on, but not visible because there is sufficient space.
1286 Tue Jan 30 16:39:25 2001 Owen Taylor <otaylor@redhat.com>
1288 * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
1289 items with submenus, destroy the item along with the submenu.
1290 (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
1293 * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
1296 Tue Jan 30 15:51:25 2001 Owen Taylor <otaylor@redhat.com>
1298 * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
1299 the focus widget sometimes wasn't drawn with the default if there
1300 was no default widget.
1302 * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
1303 unreference pixmaps.
1305 * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
1306 for some extra safety.
1308 Mon Jan 29 19:00:01 2001 Owen Taylor <otaylor@redhat.com>
1310 * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
1311 the text of a cell to the old pointer value better, by
1312 copying the new text before freeing the old text. Some code
1313 cleanup. (#8079, Karl Nelson)
1315 Mon Jan 29 16:50:19 2001 Owen Taylor <otaylor@redhat.com>
1317 * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
1318 gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
1320 Mon Jan 29 15:22:51 2001 Owen Taylor <otaylor@redhat.com>
1322 * gtk/gtkmenu.c (gtk_menu_remove): When removing an
1323 item from a menu, check to see if it matches
1324 menu->old_active_menu_item, and if so, unref and clear
1325 old_active_menu_item (Patch from Pavel Cisler)
1327 * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
1328 menu_shell->active_menu_item, if it is the child being
1329 removed. (Patch based on that of Gene Ragan, #50337)
1331 2001-01-31 Alexander Larsson <alla@lysator.liu.se>
1333 * gdk/linux-fb/gdkselection-fb.c:
1334 * gdk/linux-fb/gdkcolor-fb.c:
1335 * gdk/linux-fb/gdkdrawable-fb2.c:
1336 * gdk/linux-fb/gdkfont-fb.c:
1337 * gdk/linux-fb/gdkim-fb.c:
1338 * gdk/linux-fb/gdkinput.c:
1339 * gdk/linux-fb/gdkkeyboard-fb.c:
1340 * gdk/linux-fb/gdkmain-fb.c:
1341 * gdk/linux-fb/gdkrender-fb.c:
1342 A bunch of whitespace cleanup.
1344 2001-01-30 Havoc Pennington <hp@pobox.com>
1346 * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in
1347 #ifdef GTK_ENABLE_BROKEN.
1349 * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
1350 GTK_ENABLE_BROKEN just before including the broken headers.
1352 * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
1353 deprecated types registered.
1355 * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
1356 we have to test the broken stuff.
1358 * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
1360 2001-01-30 Havoc Pennington <hp@redhat.com>
1362 * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
1363 here where prev pointer was set to the wrong thing
1365 * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
1366 (gtk_tree_path_is_descendant): new function
1368 * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
1370 (gtk_list_store_get_iter): don't modify iter if we can't get the
1373 * gtk/gtkliststore.h (struct _GtkListStore): cache the length
1375 * gtk/gtktreednd.h: add virtual function row_drop_possible() to
1378 * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
1379 was causing segfault
1381 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
1384 * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
1386 * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
1388 (gtk_list_store_iter_children): ditto
1389 (gtk_list_store_iter_nth_child): ditto
1390 (gtk_list_store_iter_nth_child): ditto
1391 (gtk_list_store_iter_parent): ditto
1393 * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
1394 on iter->user_data != NULL instead of silently accepting it.
1395 (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
1396 we are returning TRUE.
1397 (gtk_tree_store_iter_children): ditto
1398 (gtk_tree_store_iter_nth_child): ditto
1399 (gtk_tree_store_iter_parent): ditto
1400 (gtk_tree_store_insert): remove handling of parent->user_data ==
1401 NULL, replace with parent == NULL
1403 * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
1404 and a comment explaining things
1406 * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
1407 interface support to GtkTreeStore.
1409 * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
1410 FALSE if no prev, fix
1412 * gtk/gtktreeview.c (set_source_row): use a row reference
1413 (set_dest_row): use a row reference
1415 Sat Jan 27 15:52:02 2001 Jonathan Blandford <jrb@redhat.com>
1417 * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
1418 stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
1419 (gtk_tree_selection_select_iter): The same as above.
1421 2001-01-26 Havoc Pennington <hp@redhat.com>
1423 * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
1424 which holds a handle to a specific row (particular set of values
1425 in the model, i.e. pointer-identity row).
1427 * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
1428 use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
1429 Still need to use it for the src/dest row saved on the drag context.
1431 2001-01-26 Havoc Pennington <hp@redhat.com>
1433 * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
1435 * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
1436 not offset by TREE_VIEW_HEADER_HEIGHT
1437 (gtk_tree_view_tree_to_widget_coords): fix to not offset by
1438 TREE_VIEW_HEADER_HEIGHT
1440 * configure.in (included_loaders): for me, --with-included-loaders
1441 generates the error "the specified loader yes does not exist",
1442 i.e. the arg defaults to "yes", so change test for value ""
1443 to test for value "yes", and include all loaders in that case.
1445 * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
1447 * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
1448 handle TREE_VIEW_VERTICAL_SEPARATOR
1449 (gtk_tree_view_bin_expose): fix to consider the row offset as
1450 pointing halfway into vertical separator.
1451 (gtk_tree_view_draw_node_focus_rect): ditto
1453 * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
1454 --gtk-debug=updates, which causes gdk_window_set_debug_updates
1455 (TRUE) to be called.
1457 * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
1458 debug mode where the invalid region is colored in on invalidate,
1459 so you can see the flicker and know whether your redraw code is
1462 * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in
1463 tree window coordinates (clip rect is in tree window coords)
1465 * gtk/Makefile.am: add gtktreednd.[hc]
1467 * gtk/gtkliststore.c: implement gtktreednd interfaces.
1469 * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
1470 drag-and-drop data operations on a model (so we can set up tree
1471 drag-and-drop automatically)
1473 * gtk/testgtk.c: Add a window to change sensitivity in the
1474 GtkLabel test; add a way to change the entry frame in GtkEntry
1477 * gtk/gtkentry.c (gtk_entry_set_has_frame):
1478 (gtk_entry_get_has_frame): new functions to remove the frame
1480 (gtk_entry_size_request): shrink requisition if no frame
1481 (gtk_entry_draw_focus): don't draw frame if no frame
1483 * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
1484 checks inside a cell renderer
1485 (gtk_default_draw_option): ditto for options
1487 * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
1488 children from the alignment, not the button
1489 (gtk_tree_view_column_init): ref/sink the column, to emulate
1490 GObject refcounting.
1492 * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
1494 * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1495 Use theme functions to draw the toggles
1497 * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
1499 * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
1500 GdkPangoAttrEmbossed to use in rendering insensitive text
1502 * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
1504 * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
1505 using new GDK features
1507 2001-01-24 Alexander Larsson <alexl@redhat.com>
1510 Splitted gtk_image_clear into gtk_image_clear() and
1511 gtk_image_reset(). Call gtk_image_clear() in ::destroy
1514 * gtk/gtklabel.c (set_markup):
1517 * gtk/gtktextlayout.c:
1518 Always free display->shaped_objects.
1520 * gtk/testgtk.c (create_clist):
1521 Don't leak custom style.
1523 2001-01-23 Alexander Larsson <alexl@redhat.com>
1525 * gtk/gtkcolorsel.c (grab_color_at_mouse):
1526 Don't leak image. Simplify using gdk_colormap_query_color().
1527 (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
1529 * linux-fb/gdkcolor-fb.c:
1530 Implemented gdk_colormap_query_color.
1532 2001-01-23 Alexander Larsson <alexl@redhat.com>
1534 * linux-fb/gdkcursor-fb.c:
1535 Don't leak built-in cursors.
1537 * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
1538 Don't leak tmp_points.
1540 * linux-fb/gdkfont-fb.c (gdk_font_from_description):
1541 Don't modify desc. Don't leak font if the PangoFont
1544 * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
1547 * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
1550 2001-01-20 Havoc Pennington <hp@pobox.com>
1552 * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
1553 from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to
1556 2001-01-22 Havoc Pennington <hp@redhat.com>
1558 * demos/testanimation.c: fix to reflect gdk-pixbuf changes
1560 * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
1562 * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h:
1563 Remove, move back to gdk-pixbuf
1565 * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
1566 to all the word functions
1568 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
1569 before doing anything on NULL layout or if we don't have the focus
1571 * gtk/testtext.c (fill_example_buffer): "justification"
1573 * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
1574 to be called "justification" not "justify"
1576 * demos/gtk-demo/textview.c (create_tags): "justification"
1578 * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
1580 2001-01-22 Alexander Larsson <alexl@redhat.com>
1582 * gdk/gdkwindow.c (gdk_window_invalidate_region):
1583 Don't leak visible_region. Use visible_region instead of region.
1585 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1586 Don't do extra gdk_drawable_ref(). This is not X.
1587 (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
1588 gdk_fb_focused_window is ref:ed.
1589 (gdk_fb_window_send_crossing_events): Watch out for destroyed
1592 2001-01-22 Alexander Larsson <alexl@redhat.com>
1594 * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
1595 Don't leak the PangoFontDescriptor.
1597 Sun Jan 21 09:58:00 2001 Jonathan Blandford <jrb@redhat.com>
1599 * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1601 (gtk_tree_view_scroll_to_cell): Make work when not realized.
1602 (gtk_tree_view_realize): add scroll_to support
1603 (gtk_tree_view_finalize): add a finalize method. Populate.
1604 (gtk_tree_view_insert_column): ref and sink the column.
1605 (gtk_tree_view_append_column): ref and sink the column.
1606 (gtk_tree_view_queue_draw_node): New function to handle redrawing
1607 individual nodes. Should make the code much more efficient, if
1610 2001-01-19 Havoc Pennington <hp@redhat.com>
1612 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1613 byte_offset variable was being used to mean both "offset into
1614 layout" and "offset into buffer line" which was no longer true
1615 with addition of preedit string; fix
1617 2001-01-19 Havoc Pennington <hp@redhat.com>
1619 * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1621 * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1624 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1627 * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
1628 scroll_to_cell, matches TextView scroll functions better
1629 (gtk_tree_view_tree_to_widget_coords): new function
1630 (gtk_tree_view_widget_to_tree_coords): new function
1631 (gtk_tree_view_get_visible_rect): new function
1632 (gtk_tree_view_get_path_at_pos): accept negative coordinates
1633 (gtk_tree_view_draw_node_focus_rect): new function moved from
1634 draw_focus, also, use width of bin_window as width of the focus
1636 (gtk_tree_view_expand_row): fix bug where it didn't recognize
1637 already-expanded rows
1638 (gtk_tree_view_get_cell_rect): new function
1639 (gtk_tree_view_get_path_at_pos): return the click position
1640 relative to the passed-in cell
1641 (gtk_tree_view_set_expander_column): new function
1643 * configure.in: remove gtk-config-2.0 chmod
1645 * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
1646 and properly handle drags with targets we don't understand
1647 (gtk_text_view_drag_end): don't stop scrolling, the source isn't
1649 (gtk_text_view_drag_drop): stop scrolling here though, and set the
1652 * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
1654 (gtk_drag_dest_get_target_list): new function
1655 (gtk_drag_dest_set_target_list): new function
1657 * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
1659 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
1660 related to drag-and-drop
1662 2001-01-19 Alexander Larsson <alexl@redhat.com>
1664 * gdk/linux-fb/gdkprivate-fb.h:
1665 Define EMULATE_GDKFONT.
1666 Add extra pango_font stuff to GfkFontPrivate.
1668 * gdk/linux-fb/gdkdrawable-fb2.c:
1669 * gdk/linux-fb/gdkfont-fb.c:
1670 If EMULATE_GDKFONT defined, implement a slow lame GdkFont
1671 emulation using PangoFont.
1673 2001-01-17 Havoc Pennington <hp@pobox.com>
1675 * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
1676 all the non-deprecated set_foo functions. Added missing object
1677 properties, and added g_object_notify() to setters.
1680 2001-01-18 Tor Lillqvist <tml@iki.fi>
1683 * gtk/gtkrc.c: (Win32) Use the new
1684 g_win32_get_package_installation_(sub)directory() functions.
1686 * config.h.win32.in: New file.
1688 * config.h.win32: Removed.
1690 * configure.in: Output config.h.win32.
1692 * Makefile.am: Add it to EXTRA_DIST.
1694 * gtk/gtk.def: Update.
1696 Wed Jan 17 16:22:54 2001 Owen Taylor <otaylor@redhat.com>
1698 * gtk/gtklabel.c (gtk_label_size_request): Set the
1699 attributes onto the PangoLayout even if they are newly
1700 created from label->pattern.
1702 Tue Jan 9 11:20:48 2001 Owen Taylor <otaylor@redhat.com>
1704 * gdk/x11/gdkdnd-x11.c: Remove unused variable.
1706 * gtk/gtkdnd.c: Encapsulate storing and retrieving info
1707 structures in functions. Fixes bug where gtk_dataset_*
1708 was accidentally still being used in one place, causing
1709 every dest side event to be treated independently.
1711 * gtk/gtkdnd.c: Remove last vestages of handling
1712 ::draw (fixes warning)
1714 * gtk/gtkentry.[ch]: Add drag and drop support.
1716 * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
1717 new function gtk_check_drag_threshhold() for checking
1718 to check if (dx,dy) has exceeded the threshhold for starting
1719 a drag and use it everywhere.
1721 Mon Jan 8 11:58:05 2001 Owen Taylor <otaylor@redhat.com>
1723 * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
1724 add -I{includedir}/gtk-2.0.
1726 * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
1727 gdk/gdk-pixbuf.h: Doc fixups.
1729 * gtk/gtkobject.h: Remove trailing , from enum
1731 2001-01-17 Alexander Larsson <alexl@redhat.com>
1733 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
1734 Doh! Mixed up x and y.
1736 * gdk/linux-fb/gdkglobals-fb.c:
1737 Removed gdk_fb_pointer_grab_window_events,
1738 added _gdk_fb_pointer_grab_owner_events and
1739 _gdk_fb_keyboard_grab_owner_events.
1741 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
1742 Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
1743 crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
1744 (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
1745 Send crossing events after ungrab finished.
1746 (gdk_keyboard_grab): Set ..._owner_events
1747 (type_masks): Move out of function.
1748 (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
1749 gdk_fb_keyboard_event_window): New functions, return the
1750 window an event should be targeted at. Handles grabs and
1751 event propagation. Can return NULL.
1752 (gdk_event_make): Remove event_mask checking. Now always
1755 * gdk/linux-fb/gdkkeyboard-fb.c:
1756 * gdk/linux-fb/gdkproperty-fb.c:
1757 * gdk/linux-fb/gdkselection-fb.c:
1758 Use new event_window/gdk_event_make() behaviour.
1760 * gdk/linux-fb/gdkmouse-fb.c:
1761 Use new event_window/gdk_event_make() behaviour.
1762 Only send motion events if in the same window.
1763 If grabbed, use cursor from window if sibling of grabbed
1764 window, and cursor from grabbed window otherwise.
1766 * gdk/linux-fb/gdkprivate-fb.h:
1767 Update gdk_fb_window_send_crossing_events, gdk_event_make
1768 and grab varaible declarations. Add gdk_fb_*_event_window().
1770 * gdk/linux-fb/gdkwindow-fb.c:
1771 Use new event_window/gdk_event_make() behaviour.
1772 Keep correct track of focus window.
1773 (gdk_window_set_events): Set all specific button motion masks
1774 if GDK_BUTTON_MOTION_MASK set.
1776 * gtk/gtkdnd.c (gtk_drag_update):
1777 Free info->last_event if gdk_drag_motion returned FALSE.
1779 2001-01-16 Tor Lillqvist <tml@iki.fi>
1781 * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
1782 Eliminate redraws when input-only windows are shown or
1783 hidden. Thanks to jpe@archaeopteryx.com.
1785 Tue Jan 16 13:13:13 GMT 2001 Tony Gale <gale@gtk.org>
1787 * docs/faq/gtk-faq.sgml: FAQ update:
1788 - Update to bugzilla
1789 - Add GTK+ and security/SUID/SGID
1792 2001-01-16 Alexander Larsson <alla@lysator.liu.se>
1794 * gdk/linux-fb/gdkdnd-fb.c:
1797 2001-01-15 Havoc Pennington <hp@pobox.com>
1799 * tests/testtreeview.c: add test stuff for CellRendererToggle
1801 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
1804 * gtk/gtkcellrenderertoggle.c: distinguish different event types,
1805 only toggle on button press (would do release like GtkButton, but
1806 we'd need implicit grab code for treeview cells)
1808 2001-01-16 Tor Lillqvist <tml@iki.fi>
1810 * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
1812 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
1813 GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
1815 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
1816 to g_{locale,filename}_{to,from}_utf8 to match current API.
1818 * gtk/makefile.msc.in (gtk_OBJECTS)
1819 * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
1821 * gtk/gtk.def: Update.
1823 2001-01-15 Tor Lillqvist <tml@iki.fi>
1825 * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
1826 implementaion that more closely mimics the events that an X server
1827 would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1828 GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1829 with nested preview widgets, for instance, more responsive when
1830 you move the mouse quickly into them.
1831 (find_window_for_pointer_event): Make it actually compile.
1832 (gdk_event_translate): Set send_event to the value of
1833 InSendMessage (). This doesn't really mean the same as X11's
1834 send_event flag, but is close enough, says jpe@archaeopteryx.com
1836 2001-01-15 Alexander Larsson <alexl@redhat.com>
1838 * gdk/linux-fb/gdkdnd-fb.c:
1839 Implemented drag and drop.
1840 Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
1841 when it tries to free and then copy the same event (info->last_event).
1842 I am not sure about why this happens, but will continue looking.
1844 2001-01-15 Alexander Larsson <alexl@redhat.com>
1846 * gdk/linux-fb/gdkwindow-fb.c:
1847 Use gdk_window_invalidate_rect instead of
1848 gdk_window_invalidate_rect_clear to minimise flashing.
1849 When hiding windows you need to clear the root window though.
1851 2001-01-15 Alexander Larsson <alexl@redhat.com>
1853 * gdk/linux-fb/gdkdrawable-fb2.c:
1854 For optization, add an full_shapes argument to gdk_fb_clip_region.
1855 If this is false, only the cliprects of the shapes are used.
1857 * gdk/linux-fb/gdkprivate-fb.h:
1858 Export gdk_fb_window_peek_shape.
1859 Add full_shapes to gdk_fb_clip_region.
1861 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1862 When moving a window, don't clear everything under the it, just the
1863 root window. Makes stuff faster and flash less.
1864 (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1865 USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1866 offset of the shape.
1869 2001-01-12 Havoc Pennington <hp@redhat.com>
1871 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the
1872 current invalid region, fixes redraw bug while scrolling the
1875 * gtk/gtktextview.c, gtk/gtktextview.h:
1876 Rearrange the scrolling/validation/etc. code in a major way,
1877 so it seems to make sense to me. Probably isn't genuinely that
1880 * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1883 * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1885 2001-01-12 Alexander Larsson <alla@lysator.liu.se>
1887 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1888 Hide mouse pointer while rotation. Show it afterwards.
1890 2001-01-12 Alexander Larsson <alexl@redhat.com>
1892 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1893 windows in consideration when generating clip region.
1895 * gdk/linux-fb/gdkfb.h:
1896 Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1898 * gdk/linux-fb/gdkprivate-fb.h:
1899 Add shape to GdkWindowFBDatat.
1900 exported gdk_fb_window_get_abs_shape().
1901 removed gdk_fb_draw_lines declaration.
1903 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1904 Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1905 send focus changes when there is a grabbed window.
1906 (gdk_window_get_pointer): Handle shaped windows.
1907 (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1908 (gdk_fb_window_peek_shape): Returns the shape for a window,
1909 handles GDK_FB_USE_CHILD_SHAPE.
1910 (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1911 offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1912 (gdk_window_shape_combine_mask): Implement.
1914 * gtk/gtkwindow-decorate.c:
1915 HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1916 setting the shape of a window makes the window transparent.
1918 2001-01-11 Havoc Pennington <hp@redhat.com>
1920 * gtk/gtktreemodelsimple.h: Oops, broke some macros
1922 2001-01-10 Havoc Pennington <hp@redhat.com>
1924 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1925 add this function, bug 40251
1927 * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1930 2001-01-11 Alexander Larsson <alexl@redhat.com>
1933 Added ENABLE_SHADOW_FB
1936 Added --disable-shadowfb
1938 * gdk/linux-fb/gdkcursor-fb.c:
1939 Update shadowfb when updating cursor
1941 * gdk/linux-fb/gdkdrawable-fb2.c:
1942 Added wrappers for shadowfb that calls the normal drawable
1943 methods, but calls gdk_shadow_fb_update(bounding box) when
1944 GdkWindows are drawed to.
1945 Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1946 which also returns the bounding box.
1948 * gdk/linux-fb/gdkfb.h:
1949 Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1951 * gdk/linux-fb/gdkgeometry-fb.c:
1952 Update shadowfb when scrolling window.
1954 * gdk/linux-fb/gdkglobals-fb.c:
1955 Add _gdk_fb_screen_angle.
1957 * gdk/linux-fb/gdkkeyboard-fb.c:
1958 Test code for screen rotation. Shift-F2 in the xlate driver
1961 * gdk/linux-fb/gdkmain-fb.c:
1962 Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1964 * gdk/linux-fb/gdkmouse-fb.c:
1965 Use fb_width/height instead of modeinfo.xres/yres.
1967 * gdk/linux-fb/gdkprivate-fb.h:
1968 Added fb_men, fb_width, fb_height & fb_stride. When using
1969 shadow fb these can differ from the framebuffer stuff.
1970 Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1971 gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1972 _gdk_fb_screen_angle. Removed CM, RP.
1974 * gdk/linux-fb/gdkrender-fb.c:
1975 Added code for shadowfb handling and screen rotation using
1978 * gdk/linux-fb/gdkwindow-fb.c:
1979 Use fb_mem, fb_stride, fb_width, fb_height.
1980 Added recompute_rowstride to reset the rowstride of all windows.
1981 Added gdk_fb_recompute_all() which recomputes rootwindow size,
1982 window abs positions and window rowstrides. Usefull when the
1983 rotation has changed.
1985 Thu Jan 11 13:16:50 GMT 2001 Tony Gale <gale@gtk.org>
1987 * docs/faq/gtk-faq.sgml: update to make web site updating easier
1989 2001-01-10 Havoc Pennington <hp@redhat.com>
1991 * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
1992 where sibling == iter
1993 (gtk_tree_store_insert_after): handle sibling == iter
1994 (gtk_tree_store_prepend): remove stamp checks
1995 (gtk_tree_store_insert_before): ditto
1996 (gtk_tree_store_append): ditto
1997 (gtk_tree_store_get_path): ditto
1998 (gtk_tree_store_get_value): ditto
1999 (gtk_tree_store_iter_has_child): ditto
2000 (gtk_tree_store_iter_n_children): ditto
2001 (gtk_tree_store_iter_nth_child): ditto
2002 (gtk_tree_store_insert_after): ditto
2003 (gtk_tree_store_is_ancestor): ditto
2004 (gtk_tree_store_iter_depth): ditto
2005 (gtk_tree_store_insert_before): assert that sibling's parent is
2006 the same as the passed-in parent
2007 (gtk_tree_store_insert_after): assert that sibling's parent is
2008 the same as the passed-in parent
2011 * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience
2012 function to get the first iterator in a model
2014 * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
2015 conventionally the "root" in this sense is just NULL afaict.
2017 * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
2018 where sibling == iter
2019 (gtk_list_store_insert_after): handle case where sibling == iter
2021 * tests/testtreeview.c (run_automated_tests): fairly lame basic
2022 automated tests for ListStore, TreeStore
2024 * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
2025 (gtk_list_store_insert): update tail pointer, and fix it to work
2026 (gtk_list_store_insert_before): update tail pointer, and fix it to work
2027 (gtk_list_store_append): use tail to be faster
2028 (gtk_list_store_prepend): fix it, update tail pointer
2029 (gtk_list_store_insert_after): fix it, update tail pointer
2031 * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for
2034 2001-01-09 Havoc Pennington <hp@redhat.com>
2036 * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
2037 is NULL due to a pending resize
2039 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
2040 column width to values less than 1
2042 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
2043 width to be between min/max width, and still set the width
2044 even if autosize is turned on, so the tree view can use this
2045 function in order to autosize.
2046 (gtk_tree_view_column_init): set initial width to 1 not 0
2048 * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
2049 setter function to modify column width, so we get notification
2050 (gtk_tree_view_insert_iter_height): ditto
2051 (gtk_tree_view_calc_size): ditto
2052 (gtk_tree_view_check_dirty): ditto
2054 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
2055 properties to change all the interesting attributes of the tree
2057 (gtk_tree_view_column_set_header_clickable): rename set_clickable
2058 (gtk_tree_view_column_get_clickable): add
2059 (gtk_tree_view_column_set_cell_renderer): don't unset the current
2060 attributes; assume a cell renderer with equivalent object
2061 properties has been swapped in. Do g_object_notify().
2062 (gtk_tree_view_column_set_visible): g_object_notify
2063 (gtk_tree_view_column_get_sizing): rename from get_col_type
2064 (gtk_tree_view_column_set_sizing): g_object_notify
2065 (gtk_tree_view_column_set_width): add g_object_notify
2066 (gtk_tree_view_column_set_min_width): ditto
2067 (gtk_tree_view_column_set_max_width): ditto
2068 (gtk_tree_view_column_set_title): ditto
2069 (gtk_tree_view_column_set_clickable): ditto
2070 (gtk_tree_view_column_set_widget): ditto
2071 (gtk_tree_view_column_set_justification): ditto
2073 2001-01-09 Havoc Pennington <hp@redhat.com>
2075 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
2076 there are no rows in the model
2078 * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
2079 NULL, then return the start of the list
2081 * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
2082 if we can't get any rows from an empty model
2084 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
2085 extraneous * after function pointer typedef usage
2087 * Makefile.am: don't specify full path to cp and rm
2089 * gtk/gtkcellrenderertextpixbuf.c
2090 (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
2091 NULL before dereferencing, fixes a segfault that happened from
2094 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
2095 use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
2096 and reindent the function
2097 (gtk_cell_renderer_pixbuf_get_size): indentation
2099 * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
2101 (gtk_dialog_add_buttons_valist): add g_return_if_fail
2102 (gtk_dialog_set_default_response): New function, to set default
2104 (gtk_dialog_set_response_sensitive): New function, to set
2105 sensitivity of buttons
2107 * gtk/gtkcellrendererpixbuf.c
2108 (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
2109 (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
2111 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2112 handle any G_TYPE_OBJECT subclass, not just the base class, and
2114 (_gtk_tree_data_list_value_to_node): ditto
2116 * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if
2119 * gtk/gtkmain.c: add GTK_DEBUG_TREE
2121 * gtk/gtkdebug.h: add GTK_DEBUG_TREE
2123 2001-01-09 Tor Lillqvist <tml@iki.fi>
2125 * gdk/win32/gdkevents-win32.c: Implement better mouse
2126 capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
2127 (find_window_for_pointer_event): New function.
2128 (gdk_event_translate): Use it when handling mouse events.
2130 2001-01-09 Alexander Larsson <alla@lysator.liu.se>
2133 Added --with-included-loaders option
2135 * gdk-pixbuf/Makefile.am:
2136 * gdk-pixbuf/gdk-pixbuf-io.c:
2137 Add support for including selected gdk-pixbuf loaders only.
2139 * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
2140 gtk_window_set_has_frame):
2141 Added inline documentation.
2143 * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
2144 * docs/reference/gdk/tmpl/windows.sgml:
2145 Added inline documentation.
2147 Mon Jan 8 14:42:06 2001 Jonathan Blandford <jrb@redhat.com>
2149 * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
2150 realizing buttons that have already been realized.
2152 Mon Jan 8 14:06:29 2001 Jonathan Blandford <jrb@redhat.com>
2154 * tests/testtreeview.c (main): Show menu items before adding to
2157 * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
2158 around if we kill them.
2160 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2161 Return if we pass in a NULL model.
2163 2001-01-08 Havoc Pennington <hp@redhat.com>
2165 * tests/testtreeview.c: hack on this some
2167 * gtk/gtktreestore.c (gtk_tree_store_setv): rename
2168 gtk_tree_store_set_valist, v is for arrays, valist for varargs
2170 (gtk_tree_store_getv): rename gtk_tree_store_get_valist
2172 * gtk/gtkliststore.h: Add varargs set() and get() convenience
2175 2001-01-08 Alexander Larsson <alexl@redhat.com>
2177 * gtk/gtkwindow-decorate.[hc]:
2179 New files. Contains an implementation of a minimal WM for
2183 Add the possibility for GtkWindows to specify a frame. This
2184 is used for the window decoration code, but could concievably
2185 be used for X programs too (xmms style windows).
2186 GtkWindow->frame is the toplevel window if the window is framed.
2187 The signal frame_event gets all events that are targeted to
2189 (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
2192 Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
2193 Call out to gtkwindow-decorate.c for WM support in linx-fb.
2195 2001-01-08 Alexander Larsson <alexl@redhat.com>
2197 * docs/README.linux-fb:
2198 Correct filename ~/.pangoft2_aliases
2201 Added new function gdk_window_get_decorations.
2203 * gdk/linux-fb/gdkfb.h:
2204 Removed _gdk_window_get_decorations declaration.
2205 Renamed _gdk_window_set_child_handler to
2206 gdk_fb_window_set_child_handler.
2208 * gdk/linux-fb/gdkwindow-fb.c:
2209 Renamed _gdk_window_set_child_handler to
2210 gdk_fb_window_set_child_handler.
2212 * gdk/x11/gdkwindow-x11.c:
2213 New function gdk_window_get_mwm_hints().
2214 Implemented gdk_window_get_decorations.
2216 * docs/reference/gdk/tmpl/windows.sgml:
2217 * docs/reference/gdk/gdk-sections.txt:
2218 Added gdk_window_get_decorations docs.
2220 2001-01-08 Alexander Larsson <alla@lysator.liu.se>
2222 * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
2223 gdk_fb_window_find_focus, gdk_fb_send_focus_change,
2224 gdk_fb_window_send_crossing_events):
2225 Possibly send focus events when the mouse moves from one
2228 2001-01-07 Tor Lillqvist <tml@iki.fi>
2230 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
2231 gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
2232 to match current API.
2234 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
2235 environment variable is set, don't call g_error when on a
2236 palettized (PseudoColor) display. Some people want to use GTK+
2237 in 256-colour mode even though works only partially.
2241 * gtk/makefile.mingw.in: Update.
2243 2001-01-05 Havoc Pennington <hp@redhat.com>
2245 * tests/testtreeview.c: hack on this a bit
2247 * gtk/gtktextlayout.c (gtk_text_layout_class_init):
2248 s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
2250 * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS):
2251 was spelled incorrectly
2252 (GTK_IS_TREE_MODEL_SIMPLE): ditto
2254 * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
2255 from gtk_tree_view_set_headers_active
2258 (gtk_text_tag_get_property): handle PROP_DIRECTION
2259 (gtk_text_tag_set_property): g_object_notify when we toggle the _set
2260 properties, bug 40235
2262 * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
2265 Fri Jan 5 16:16:29 2001 Owen Taylor <otaylor@redhat.com>
2267 * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
2268 modules/input/gtkimcontextxim.c: Adapt to new prototypes
2269 for unicode,locale,filename conversion functions.
2271 2001-01-05 Havoc Pennington <hp@redhat.com>
2273 * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
2274 broken if called on the first position in the buffer.
2276 * gtk/gtktextlayout.c (line_display_index_to_iter): fix
2277 forward_to_delimiters to be called only if we aren't already at
2280 2001-01-05 Havoc Pennington <hp@redhat.com>
2282 * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2284 2001-01-05 Alexander Larsson <alexl@redhat.com>
2286 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
2287 colormap in here. Sync from X port.
2288 (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
2290 (gdk_fb_clip_region): Comment out g_warning about empty clip region.
2291 This happens now and then, and i don't think it is a bug.
2292 (gdk_fb_draw_polygon): Correctly add extra point if startpoint
2294 (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
2297 * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
2298 some of the fields filled in at least.
2300 * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
2301 miLineArcD is no more, remove it from the function definition.
2303 2001-01-04 Havoc Pennington <hp@redhat.com>
2305 * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
2308 * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
2309 user_data instead of tree_node
2311 * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
2312 TREE_VIEW_COLUMN_SIZE
2314 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
2315 "size" field to "width" finishes bug 40061
2317 * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
2318 for bitfields, bug 40268
2320 2001-01-04 Havoc Pennington <hp@redhat.com>
2324 s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
2326 s/GtkModelSimple/GtkTreeModelSimple/g;
2327 s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
2328 s/gtk_model_simple/gtk_tree_model_simple/g;
2329 s/gtkmodelsimple/gtktreemodelsimple/g;
2331 s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
2333 s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
2334 s/column_set_col_type/column_set_sizing/g;
2336 s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
2337 s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
2339 s/GtkCellRendererType/GtkCellRendererState/g;
2341 * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
2342 (gtk_cell_renderer_toggle_class_init): change "state" property to
2343 "active", to match GtkToggleButton
2344 (gtk_cell_renderer_toggle_get_active): new function, bug
2346 (gtk_cell_renderer_toggle_set_active): new function
2347 (gtk_cell_renderer_toggle_set_property): route changes to toggle
2348 state through gtk_cell_renderer_set_active
2350 Thu Jan 4 15:46:18 2001 Jonathan Blandford <jrb@redhat.com>
2352 * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
2353 temporarily until they work again. Brought up to date with
2354 changes in the model.
2355 * gtk/gtkmodelsimple.h: Brought up to date with changes in the
2358 2001-01-04 Havoc Pennington <hp@redhat.com>
2360 * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
2361 equal to the line length, then position iterator before paragraph
2362 separators. Fixes crash reported by Mikael Hermansson when
2363 pressing left arrow from the start of a line.
2365 * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
2366 about byte indexes off the end
2367 (iter_set_from_char_offset): add g_error about char offsets
2370 2001-01-03 Havoc Pennington <hp@redhat.com>
2372 * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
2374 * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
2375 of private functions; remove inclusion of private headers.
2377 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
2378 function, so we don't need private functions in gtktextdisplay.c
2380 * gtk/gtktextiterprivate.h: underscore-ification
2382 * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
2383 to instead say "only useful to implement widgets"
2385 * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
2386 GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
2387 GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
2389 * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
2390 This function was completely broken
2392 * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
2394 * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
2396 * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
2398 * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
2400 * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
2402 * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
2404 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
2407 * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
2410 * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
2411 Progress on bug 40103. Add draw_layout to draw a PangoLayout.
2412 (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
2413 which were not implemented.
2415 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
2416 insert_pixbuf signal. Rename delete_text to delete_range since it
2417 also deletes pixbufs and child anchors. This almost closes bug
2418 40245 (still need to deal with child anchors)
2420 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
2421 insert_pixbuf, change signal names as appropriate, change types of
2422 signals taking marks/tags to have the specific type, not just
2425 * gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
2428 * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
2429 unnecessary remove_contents() call
2430 (gtk_option_menu_class_init): add a "changed" signal, closes
2432 (gtk_option_menu_update_contents): emit "changed" if the
2433 active menu item changes
2435 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
2436 cast to GtkObject, reported by Jonas Borgstrom
2437 (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
2438 we can't do stuff with side effects in finalize. Instead, spew a
2439 warning if the loader isn't closed.
2441 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
2442 colormap in here, non-X ports probably need to sync to this change
2444 * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
2445 assertion that colormap != NULL, you can set the colormap to NULL
2448 * Makefile.am: remove gtk-config-2.0
2450 * configure.in: Use pkg-config to locate GLib. Remove
2451 separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
2452 and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
2453 Use pkg-config to locate Pango. Output correct Pango libs to
2454 gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
2456 * Makefile.am (pkgconfig_DATA): install only target-specific pc
2458 (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
2461 * gtk+-2.0.pc.in (Requires): require the GDK for the current target
2464 2001-01-03 Alexander Larsson <alla@lysator.liu.se>
2467 Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2469 Tue Jan 2 16:23:05 2001 Owen Taylor <otaylor@redhat.com>
2471 * gtk/gtktextlayout.c
2472 (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
2473 variable when moving back onto a single line.
2475 2001-01-01 Havoc Pennington <hp@redhat.com>
2477 * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2479 * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2481 * configure.in (LIBTOOL_EXPORT_OPTIONS): define
2482 LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2484 2001-01-01 Havoc Pennington <hp@redhat.com>
2486 * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
2488 * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for
2491 * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug
2493 (gtk_text_attributes_copy_values): rename from
2494 gtk_text_attributes_copy
2495 (gtk_text_attributes_copy): a more standard GTK copy function,
2496 which returns a new object
2498 2001-01-01 Havoc Pennington <hp@redhat.com>
2500 * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
2502 * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
2503 don't fill in tree_view->priv->selection, kind of an unexpected
2506 * gtk/gtkcellrenderertext.c: Remove definition of _ and include
2509 * gtk/gtkcellrenderer.c: Remove definition of _ and include
2511 (gtk_cell_renderer_get_property): remove calls to g_value_init
2513 * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
2516 * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
2517 and include gtkintl.h
2518 (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
2521 * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
2523 (_gtk_tree_selection_new_from_with_view): rename, return
2525 (_gtk_tree_selection_set_tree_view): rename with uscore
2526 (gtk_tree_selection_get_selected): fill in the "model" out param
2527 first, so it gets filled in even if we return at the top of the
2529 (gtk_tree_selection_real_select_all): add a comment and an else{}
2530 to clarify this a bit
2531 (gtk_tree_selection_real_unselect_all): add the same else{}
2533 * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
2534 set_tree_view to have underscore prefixes, move them to the
2535 private header, fix return type of new_with_tree_view
2536 (struct _GtkTreeSelection): mark struct
2539 * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
2540 GtkTreeModelFlags, not a guint
2541 (gtk_tree_path_prev): return gboolean not gint
2542 (gtk_tree_path_up): return gboolean not gint
2544 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
2545 return GtkTreeModelFlags, not a guint
2547 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
2548 that child model is non-null before unrefing it
2549 (g_value_int_compare_func): make this a qsort compare func, not
2552 * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
2553 (add -umn to the end), and mark it unimplemented
2554 (gtk_tree_model_sort_resort): remove, this wasn't implemented, and
2555 I don't see what it's for - doesn't the model always sort itself?
2556 (gtk_tree_model_sort_set_compare): this had the wrong signature
2558 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
2559 Fix the docs to say that it destructively replaces existing
2560 attributes (previously said that it added attributes).
2561 (gtk_tree_view_column_set_visible): canonicalize bool before
2562 equality testing. Also, check for realization before
2563 hiding/showing the tree_column->window; if this window could exist
2564 before realization, then it's busted and needs fixing, we can't
2565 create GDK resources pre-realization. Also, remove
2566 superfluous queue_resize(), since set_size() does that for us.
2567 (gtk_tree_view_column_set_col_type): check realization before
2568 using tree_column->window
2570 * gtk/gtktreedatalist.c: fix filename in copyright notice
2572 2000-12-31 Havoc Pennington <hp@pobox.com>
2574 * gtk/gtktextview.c: Rearrange all the
2575 scroll-while-dragging-or-selecting code to be different, not
2576 necessarily better. ;-)
2577 (gtk_text_view_scroll_to_mark): Change this
2578 function to take within_margin as a fraction instead of a pixel
2579 value, and to take alignment arguments (indicating where to align
2580 the mark inside the visible area)
2582 * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
2585 * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
2586 behavior so that offsets past the end of the line are not
2587 allowed, and an offset equal to the line length moves the iterator
2589 (gtk_text_iter_set_line_index): make parallel change
2590 (gtk_text_iter_get_bytes_in_line): add this function
2592 * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
2593 of byte indexes off the end of the line; byte index at the end of
2594 the line now returns FALSE and doesn't fill in the requested
2595 values, byte index past the end of the line is an error. Also,
2596 don't allow -1 offset anymore, since its meaning is unclear.
2598 This change exposes some bug in visual cursor motion, where we
2599 end up with a huge invalid byte index; needs fixing. Symptom of
2600 bug is a crash when you hit up arrow.
2602 (_gtk_text_line_char_locate): match the change to byte_locate
2604 * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2605 from start of line properly. fixes bug reported by Mikael
2606 Hermansson where backspace would delete all text before the
2609 2000-12-30 Tor Lillqvist <tml@iki.fi>
2611 * gdk/win32/gdkwindow-win32.c
2612 (gdk_window_impl_win32_get_visible_region): New function, as in
2614 (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2615 instead of duplicating the same code here.
2617 * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2620 * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2622 (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2625 * gtk/gtk.def: Update.
2627 * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
2629 2000-12-30 Havoc Pennington <hp@pobox.com>
2631 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
2632 colormap on input only windows, to avoid special cases all over
2633 the code for these windows.
2635 2000-12-26 Tor Lillqvist <tml@iki.fi>
2637 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
2638 we are on a palettized display ("PseudoColor" in X11), as the code
2639 for that doesn't work anyway, and never has.
2641 2000-12-22 Alexander Larsson <alexl@redhat.com>
2643 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
2644 Don't use isprint() for chars > 255.
2646 2000-12-21 Havoc Pennington <hp@redhat.com>
2648 * tests/testtreeview.c: more work
2650 2000-12-21 Alexander Larsson <alexl@redhat.com>
2652 * docs/README.linux-fb:
2653 Update the docs to the new pangoft2 way.
2655 2000-12-21 Alexander Larsson <alexl@redhat.com>
2658 For linux-fb get the pangoft2 cflags and libs. This needs a recent
2660 Remove modules/linux-fb/Makefile.
2662 * gdk/linux-fb/gdkdrawable-fb2.c:
2663 Render glyphs using freetype.
2665 * gdk/linux-fb/gdkfb.h:
2666 Add new fb-specific functions needed for managing windows.
2668 * gdk/linux-fb/gdkmain-fb.c:
2669 Remove gdk_font_init/fini() calls.
2671 * gdk/linux-fb/gdkpango-fb.c:
2672 Remove old implementation. Use pangoft2 instead.
2674 * gdk/linux-fb/gdkprivate-fb.h:
2675 Remove PangoFBFont and related stuff.
2677 * gdk/linux-fb/gdkwindow-fb.c:
2678 Implement drawable->get_visible_region.
2679 Implement support for _gdk_window_set_child_handler () and
2680 _gdk_window_get_decorations().
2682 * modules/Makefile.am:
2683 Remove linux-fb subdir.
2685 * modules/linux-fb/*:
2688 2000-12-20 Jonathan Blandford <jrb@redhat.com>
2690 * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
2691 calls, as they are no longer needed.
2693 * gtk/gtktreemodelsort.c: Fix up the comparison code.
2695 * gtk/gtktreemodel.h: Start work on ::reordered signal. Need to
2696 figure out how to emit a signal on an interface.
2698 2000-12-20 Havoc Pennington <hp@redhat.com>
2700 * tests: new directory to contain tests, gtk/test* should move
2701 here sometime (with appropriate on-cvs-server hackery)
2703 * tests/testtreeview.c, tests/Makefile.am: a test
2705 * configure.in (AC_OUTPUT): add tests/Makefile
2707 * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
2708 and "invisible_set" which were missing
2710 * gtk/gtkrbtree.h: some cheesy indentation fix
2712 2000-12-20 Alexander Larsson <alexl@redhat.com>
2714 * gtk/gtkinvisible.c (gtk_invisible_realize):
2715 Attach the style to the window so that the style it is not
2716 leaked when unrealizing the window.
2718 2000-12-18 Havoc Pennington <hp@redhat.com>
2720 * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
2721 begin/end user action where appropriate
2722 (gtk_text_view_commit_handler): add begin/end user action
2724 * gtk/gtktextbuffer.c: add begin/end user action signals, and
2725 bracket interactive operations with begin/end user action pair.
2727 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
2728 "interactive" arg from insert_text and delete_text signals.
2729 Add begin_user_action, end_user_action signals
2730 (gtk_text_buffer_begin_user_action):
2731 (gtk_text_buffer_end_user_action): New functions to delimit
2732 a user-visible action
2734 * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
2737 2000-12-18 Havoc Pennington <hp@redhat.com>
2739 * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
2740 was pretty non-working.
2742 * gtk/testtext.c (fill_file_buffer): make this a bit more robust
2743 by passing the length to g_utf8_validate().
2745 2000-12-16 Havoc Pennington <hp@pobox.com>
2747 * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
2748 Port to GObject, can go back in gdk-pixbuf after setting up
2749 a gdk-pixbuf-marshal.h header over there.
2751 * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
2752 (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
2754 (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
2756 (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
2757 here, do it when we create the buttons later
2758 (gtk_tree_view_realize_buttons): add some g_return_if_fail
2759 (gtk_tree_view_map): paranoia checks that column->button is shown
2761 (gtk_tree_view_size_request): only request visible children.
2762 Move header size calculation in here, for cleanliness, and
2763 to maintain invariants for child widgets if we eventually
2764 let users set different children inside the buttons
2765 (gtk_tree_view_map_buttons): factor out code to map buttons,
2766 since it was being called several times
2767 (gtk_tree_view_size_allocate_buttons): move_resize the drag
2768 windows instead of just moving them; their height may change
2769 if we allow random widgets in there, or the theme changes.
2770 (gtk_tree_view_size_allocate): move button size allocation
2771 above emitting the scroll signals, to ensure a sane state when we
2773 (gtk_tree_view_button_release): remove queue_resize after
2774 tree_view_set_size(), set_size() will handle any resize queuing
2776 (gtk_tree_view_focus_in): just queue a draw, don't fool with
2778 (gtk_tree_view_focus): use gtk_get_current_event() and
2779 gdk_event_get_state()
2780 (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
2781 (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
2783 (gtk_tree_view_create_button): show the button here
2784 (gtk_tree_view_button_clicked): actually emit the clicked signal
2786 (_gtk_tree_view_set_size): return right away if the size is
2787 unchanged, as a cheesy optimization
2788 (gtk_tree_view_setup_model): rename set_model_realized to
2789 setup_model to match the flag that indicates whether we've
2791 (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
2792 exist, because set_scroll_adjustment does that and it shouldn't
2793 matter what order you call these in
2794 (gtk_tree_view_get_vadjustment): ditto
2795 (gtk_tree_view_set_headers_visible): canonicalize the bool,
2797 (gtk_tree_view_set_headers_visible): call
2798 gtk_tree_view_map_buttons() instead of using cut-and-paste code
2799 (gtk_tree_view_append_column): clarify whether the return value
2800 is the count of columns before or after, and do the increment
2801 separately from the return statement so you can tell from the code.
2802 (gtk_tree_view_remove_column): ditto
2803 (gtk_tree_view_insert_column): ditto
2804 (gtk_tree_view_get_column): remove g_return_if_fail for columns
2805 outside the existing range, the docs say that outside-range
2806 columns are allowed, so we handle them as documented. (Presumably
2807 this allows a nice loop with column != NULL as test.)
2808 (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
2809 mean (left/right/center etc.).
2810 (gtk_tree_view_collapse_all): only queue a draw if we're mapped
2811 (gtk_tree_view_expand_row): add docs
2812 (gtk_tree_view_collapse_row): add docs
2814 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
2815 function to emit the clicked signal on a column
2817 * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
2819 (gdk_event_get_time): don't treat GDK_SCROLL
2820 as a button event, remove default case from switch so gcc
2821 will whine if we don't explicitly handle all event types
2823 * gtk/gtktreeselection.h: added some FIXME
2825 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
2826 "columns" to "n_columns" and "column" to "columns" for clarity
2828 2000-12-16 Havoc Pennington <hp@pobox.com>
2830 * gtk/gtktextiter.c: General cleanup of the log attr iteration
2831 stuff. This should make e.g. the delete key work again in the
2833 (gtk_text_iter_forward_cursor_positions): handle negative count
2834 (gtk_text_iter_backward_cursor_positions): handle negative count
2835 (gtk_text_iter_forward_word_ends): handle negative count
2836 (gtk_text_iter_backward_word_starts): handle negative count
2838 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
2839 gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c,
2840 gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to
2841 GObject. No doubt will cause breakage.
2843 * demos/gtk-demo/textview.c: remove hacks around
2844 non-GObject-ification of the text objects
2846 * demos/gtk-demo/main.c (main): use g_object_set() to manipulate
2849 2000-12-14 Havoc Pennington <hp@pobox.com>
2851 * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2852 that we have Xrender
2854 Thu Dec 14 20:22:31 2000 Owen Taylor <otaylor@redhat.com>
2856 * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2857 Add two virtualized functions gdk_drawable_get_clip_region - to
2858 get the clip region when drawing.
2860 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2861 use invalidate_region.
2863 * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2866 * acconfig.h configure.in: Check for Xft. For now, assume
2867 that if Xft is found, Pango was compiled with Xft support
2870 * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
2871 gdk_colormap_query_color().
2873 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2874 with Xft if appropriate.
2876 * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2877 a pangoxft context if we have XFT and the environment
2878 variable GD_USE_XFT is set.
2880 * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2881 and also possibly an XftDraw structure.
2883 * gtk/gtkfontsel.c: Handle the case where the font from the
2884 style doesn't match any of the fonts a bit better.
2886 * gtk/testgtk.c: Add tabs between directional segments for
2887 hebrew/arabic test. (Not really necessary, just a little
2890 2000-12-14 Havoc Pennington <hp@redhat.com>
2892 * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2895 2000-12-14 Havoc Pennington <hp@redhat.com>
2897 * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2898 unused call to get_last_line()
2900 * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2901 here until boxed is working (and maybe after that - we should
2902 really not gratuitously break old code)
2904 * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2905 specific types for font_desc and tabs args, move them to
2906 GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get
2907 fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2909 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2910 use GTK_TYPE_POINTER for signal signatures as a hack-around
2912 * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2915 * gtk/gtktextlayout.c (line_display_iter_to_index):
2917 (line_display_index_to_iter): make static
2919 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2920 to marshal a string not a boxed
2922 * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2924 * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2925 since the UTF-8 isn't validated yet
2927 * gtk/gtktextsegment.c (char_segment_check_func): don't require
2928 lines to end in '\n'
2930 * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2931 forward_to_delimiters, and grapheme boundaries
2932 (gtk_text_view_delete_from_cursor): properly handle non-newline
2933 delimiters, and grapheme boundaries
2935 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2936 to gtk_text_iter_forward_to_delimiters, and make it work properly
2937 if empty lines end with a character other than '\n'
2939 * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2942 2000-12-15 Tor Lillqvist <tml@iki.fi>
2944 * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2947 * gdk/gdk.def: Update.
2949 * gdk/win32/gdkmain-win32.c
2950 * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2951 gdkmain-win32.c here.
2953 * gdk/win32/makefile.mingw.in (all): No need to make
2954 gdk-win32res.o here, the makefile one step up will call us to make
2957 * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2960 * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2962 * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2963 call to g_source_add().
2965 * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2966 leak. Thanks to Andreas Kemnade.
2968 2000-12-13 Havoc Pennington <hp@pobox.com>
2970 * gtk/gtktextbtree.h: Remove double _ in front of some functions
2972 * gtk/gtktext*.[hc]: update accordingly
2974 2000-12-13 Havoc Pennington <hp@pobox.com>
2976 * gtk/gtktextbtree.h: Put _ in front of every function in this
2979 * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2981 2000-12-13 Alex Larsson <alexl@redhat.com>
2983 * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2984 Add support for ps2 intellimouse.
2987 Move shift-F1 repaint handling to xlate handler only.
2989 * docs/README.linux-fb:
2991 Document the new refresh keys.
2993 Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
2995 * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
2997 * gtk/gtkbox.c: change property types from (u)long to (u)int for
2998 ::position and ::padding.
3000 * gtk/gtkcontainer.c: make ::border_width an INT property.
3002 * gtk/gtkpacker.c: make ::position an INT property.
3004 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3005 guard against NULL h/v scrollbars, since this is used at construction
3008 * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3009 internal gtk_clist_constructor().
3011 * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3012 gtk_ctree_constructor().
3014 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
3015 ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
3017 * docs/reference/Makefile.am: fun stuff, disabled docs generation
3018 again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
3020 * gtk/gtkwidget.[hc]:
3021 removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
3022 and gtk_widget_get().
3023 (gtk_widget_new): use g_object_new_valist().
3024 (gtk_widget_set): use g_object_set_valist().
3026 * gtk/gtkobject.[hc]:
3027 removed gtk_object_arg_get_info(), gtk_object_getv(),
3028 gtk_object_query_args(), gtk_object_newv(),
3029 gtk_object_class_add_signals(),
3030 gtk_object_class_user_signal_new(),
3031 gtk_object_class_user_signal_newv(),
3032 gtk_object_arg_set(), gtk_object_arg_get(),
3033 gtk_object_args_collect(),
3034 gtk_object_default_construct(),
3035 gtk_object_constructed(),
3036 GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
3037 removed nsignals, signals and n_args members from GtkObjectClass.
3038 (gtk_object_new): use g_object_new_valist().
3039 (gtk_object_set): use g_object_set_valist().
3040 (gtk_object_get): use g_object_get_valist().
3042 * gtk/gtkcompat.h: define gtk_object_default_construct().
3044 * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
3047 * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
3048 fucntions, cleaned up method assignments (make sure your structures
3049 are setup properly before calling out). removed all GTK_CONSTRUCTED
3052 Tue Dec 12 11:52:16 2000 Owen Taylor <otaylor@redhat.com>
3054 * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
3055 off-by-one error in checks. (Dave Lambert)
3057 2000-12-12 Alexander Larsson <alexl@redhat.com>
3059 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
3060 Don't free gdk_fb_keyboard twice.
3062 Tue Dec 12 08:24:42 2000 Tim Janik <timj@gtk.org>
3066 (create_statusbar): get rid of object_signal:: GtkObject argument uses,
3067 use GObject swapped_signal:: properties instead.
3069 * gtk/gtkcellrenderertoggle.c:
3070 * gtk/gtkcellrenderertextpixbuf.c:
3071 * gtk/gtkcellrenderertext.c:
3072 * gtk/gtkcellrendererpixbuf.c:
3073 * gtk/gtkcellrenderer.c:
3074 * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
3075 missing warnings for invalid property ids, install properties
3076 with g_object_class_install_property() now.
3079 (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
3081 Wed Oct 25 14:17:43 2000 Owen Taylor <otaylor@redhat.com>
3083 * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
3084 to determine if a window is the focus widget within
3087 * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
3090 * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
3091 of the case where the container CAN_FOCUS to here instead
3092 of having it in each individual move-the-focus place.
3094 * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
3095 focusing to be geometric in a much more obvious sense. Arrowing
3096 around is still non-intuitive because it isn't perfect and
3097 because entries, etc, grab the arrow keys, but it at least
3098 usually will do what you expect now.
3100 * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
3103 * gtk/gtknotebook.c: Change tabs to be a single item in
3104 the focus chain. Make movement of focus on tabs with arrow
3107 * gtk/gtknotebook.c (gtk_notebook_find_child): Add
3108 CHECK_FIND_CHILD macro to give informative error messages
3109 instead of silent returns.
3111 * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
3112 flag since we handle GdkReturn on the tabs.
3114 * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
3115 windows rather than sending expose events directly.
3117 * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
3118 definition for GtkNotebookPage into .c file, since it is private.
3120 * gtk/testgtk.c (create_notebook): Add option for
3121 testing borderless notebook.
3123 * gtk/testgtk.c (page_switch): Removed egregious poking
3124 around in GTK+ internals.
3126 * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
3128 * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
3129 properly through gtk_clist_focus. Make the title headers a
3130 single item in the tab-focus chain, and make left-right wrap
3133 * gtk/gtkwindow.c (gtk_window_focus): Add a custom
3134 focus method so that wrapping around works properly.
3136 * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
3137 that is handled for the widget now.
3139 Mon Dec 11 11:41:12 2000 Owen Taylor <otaylor@redhat.com>
3141 * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
3142 widgets as TOPLEVEL.
3144 * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
3145 TOPLEVEL widgets are containers.
3147 * gtk/gtkinvisible.h: Remove useless include.
3149 2000-12-11 Havoc Pennington <hp@redhat.com>
3151 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3152 Handle chopping off \r\n and 0x2029 in addition to \n before
3153 passing to PangoLayout
3155 * gtk/gtkimcontextsimple.c
3156 (gtk_im_context_simple_get_preedit_string):
3157 return an empty string if no match is pending
3159 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
3160 assertion that the returned preedit string was sane
3162 * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
3163 s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
3164 s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
3166 Mon Dec 11 10:02:26 2000 Owen Taylor <otaylor@redhat.com>
3168 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize):
3169 Fix up finalizer to chain to its parent.
3171 2000-12-11 Alexander Larsson <alexl@redhat.com>
3173 * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
3174 Clearified the difference between the keyboard types. Wrote a note
3175 about the magic sysrq key to get out of raw mode.
3177 2000-12-09 James Henstridge <james@daa.com.au>
3179 * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
3180 member to hold masks for detecting the start of a protocol packet.
3181 (mouse_devs): add packet start masks for ps2 and ms device types.
3182 Left the mask for fidmour blank, as I have no idea what it should
3184 (handle_mouse_io): skip bytes until we get to the start of a
3185 packet. My Logitech mouse seems to be passing an extra NULL pad
3186 byte, and GPM does a similar thing here.
3187 (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
3188 this is the ms mouse driver.
3189 (gdk_fb_mouse_ms_packet): fix up button handling, which was
3190 completely broken except for button1. It was checking the wrong
3191 bit in the packet for the status of the right mouse button, and
3192 wrongly assuming right == button2 rather than 3. I fixed that and
3193 also added support for middle button (button2).
3195 2000-12-08 Havoc Pennington <hp@redhat.com>
3197 * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
3198 that cause a segfault on text insertion
3200 * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix
3203 * gtk/gtktextiter.c (test_log_attrs): use
3204 _gtk_text_buffer_get_line_log_attrs to speed things up a bit
3206 * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs):
3207 Get log attrs for a line, using a cache stored on the buffer
3209 * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
3210 reported by Jeff Franks
3212 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
3214 * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
3215 /dev/ttyS0 -> /dev/mouse
3217 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
3219 * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
3220 Added dummy gdk_fontset_load.
3222 2000-12-08 Alexander Larsson <alexl@redhat.com>
3224 * docs/README.linux-fb:
3228 * gdk/linux-fb/Makefile.am:
3229 Define GDK_DATA_PREFIX.
3231 * gdk/linux-fb/gdkmain-fb.c:
3233 Change default display to /dev/fb0.
3235 * gdk/linux-fb/gdkpango-fb.c:
3236 Add $(prefix)/share/fonts/ to font path.
3238 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
3240 * gdk/linux-fb/gdkkeyboard-fb.c:
3241 New file containing the abstracted keyboard driver. Most code
3242 taken from gdkinput-ps2.c
3244 * gdk/linux-fb/gdkinput-ps2.c:
3247 * gdk/linux-fb/Makefile.am:
3248 Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
3250 * gdk/linux-fb/gdkcolor-fb.c:
3251 display->fb was renamed to display->fb_fd.
3253 * gdk/linux-fb/gdkcursor-fb.c:
3254 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3256 * gdk/linux-fb/gdkinput.c:
3257 Moved gdk_input_init here from gdkinput-ps2.c
3259 * gdk/linux-fb/gdkmain-fb.c:
3260 display->fb was renamed to display->fb_fd.
3261 Now the tty and the console is opened here instead
3262 of in the keyboard driver. Also check GDK_VT to see what
3264 Move gdk_beep () here from gdkinput-ps2.c
3265 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3267 * gdk/linux-fb/gdkmouse-fb.c:
3269 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3270 Return correct keyboard modifiers.
3271 GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
3273 * gdk/linux-fb/gdkprivate-fb.h:
3274 Add tty and vt info to display.
3275 Add orignal modeinfo storage to display
3276 Update global functions
3278 * gdk/linux-fb/gdkwindow-fb.c:
3279 Added gdk_fb_window_find_focus().
3280 gdk_mouse_get_info -> gdk_fb_mouse_get_info
3282 2000-12-07 Havoc Pennington <hp@pobox.com>
3284 * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of
3285 function, noticed by Alex
3287 2000-12-06 Elliot Lee <sopwith@redhat.com>
3289 * configure.in: Detect freetype properly
3291 * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
3294 2000-12-06 Alexander Larsson <alexl@redhat.com>
3296 * gdk/linux-fb/Makefile.am:
3299 * gdk/linux-fb/gdkmouse-fb.c:
3300 New file. Abstracted the mouse drivers a bit.
3302 * gdk/linux-fb/gdkcursor-fb.c:
3303 The cursor hide/show functions was moved here from gdkinput-ps2.c.
3305 * gdk/linux-fb/gdkinput-ps2.c:
3306 Removed old mouse handling code. Moved cursor handling code
3307 to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
3308 gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
3311 * gdk/linux-fb/gdkmain-fb.c:
3312 Pass NULL pointers for x,y in gdk_mouse_get_info call.
3314 * gdk/linux-fb/gdkprivate-fb.h:
3315 Removed public gdk_fb_find_common_ancestor, added and renamed
3316 functions for the new mouse handling code.
3318 * gdk/linux-fb/gdkwindow-fb.c:
3319 Moved gdk_fb_window_send_crossing_events here. added global
3320 variable gdk_fb_window_containing_pointer. made
3321 gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
3322 renamed to gdk_mouse_get_info.
3324 2000-12-06 Alexander Larsson <alexl@redhat.com>
3326 * gdk/linux-fb/gdkevents-fb.c:
3327 Update to match latest gmain/gsource changes.
3329 * gdk/linux-fb/gdkinput-ps2.c:
3330 Bogus gdk_keymap_get_entries_for_keycode implementation so that
3331 it links. Will be implemented later.
3333 2000-12-03 Havoc Pennington <hp@pobox.com>
3335 * gdk/Makefile.am: add gdkkeys.[hc]
3337 * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
3338 files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
3340 * acconfig.h, configure.in: add checks and command line options
3343 * gdk/x11/gdkkeys-x11.c: Implement the above functions
3345 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
3346 and group in the key event
3348 * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
3349 field with the low-level hardware key code, and a group
3350 field with the keyboard group
3352 * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
3353 and declare a couple globals used for keymap handling
3355 * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
3356 hold down Shift-Control and type a hex number to get a Unicode
3357 character corresponding to the hex number
3358 (gtk_im_context_simple_get_preedit_string): Fix cursor position
3359 (return bytes not chars)
3361 2000-12-05 Elliot Lee <sopwith@redhat.com>
3363 * gdk/gdkcolor.h: Make GdkColor specify element sizes
3364 to avoid waste on 64-bit platforms.
3366 Tue Dec 5 15:49:31 2000 Owen Taylor <otaylor@redhat.com>
3368 * INSTALL: Fix link to PNG home, remove reference
3371 * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
3373 * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
3376 * gtk/gtkcheckmenuitem.c: Permanently turn on
3379 * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
3380 be NULL. (Vladimir Klebanov, #26545)
3382 * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
3383 some signed/unsigned comparison problems. (#6510,
3386 * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
3387 return type to boolean (Oskar Liljeblad, #18648)
3389 2000-12-05 Alexander Larsson <alexl@redhat.com>
3391 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
3392 Remove bogus colormap setting.
3394 2000-12-05 Alexander Larsson <alexl@redhat.com>
3396 * gdk/linux-fb/gdkcolor-fb.c:
3397 More complete colormap handling. Now GdkRGB work in 8 bpp modes.
3399 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
3402 Tue Dec 5 13:17:53 GMT 2000 Tony Gale <gale@gtk.org>
3404 * docs/tutorial/gtk-tut.sgml: DND updates
3406 2000-12-05 Alexander Larsson <alla@lysator.liu.se>
3408 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3409 Remove old debug g_warning().
3410 (gdk_fb_draw_drawable): The src argument can be either a wrapper
3411 or an implementation, just pass the implementation to draw_drawable_2.
3413 * gdk/linux-fb/gdkprivate-fb.h:
3414 Added GDK_IS_DRAWABLE_IMPL_FBDATA()
3416 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3417 clear and invalidate area when window is destroyed.
3418 (send_map_events): Remove old commented out code.
3420 2000-12-05 Alexander Larsson <alexl@redhat.com>
3422 * gdk/linux-fb/gdkpango-fb.c:
3423 Use italic instead of oblique in font aliases.
3425 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
3426 _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
3427 other unsupported functions.
3429 2000-12-04 Havoc Pennington <hp@redhat.com>
3431 * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
3433 * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
3435 * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
3437 * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary
3438 hack to avoid infinite loops (synthetic expose event) -
3439 Owen has more appropriate fixes in a branch he'll check in later.
3441 * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
3442 separator, CR, and CRLF as line ends
3444 * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
3445 into lines using pango_find_paragraph_boundary(); other bits of
3446 the widget are still going to be broken if the boundary isn't '\n'
3449 2000-12-04 Alexander Larsson <alexl@redhat.com>
3451 * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
3454 * gdk/linux-fb/gdkpango-fb.c:
3455 Copied some 26.6 scaling macros from pango to clean up the rounding.
3456 (pango_fb_font_get_glyph_info): Correct sign on x value.
3458 * gdk/linux-fb/gdkprivate-fb.h:
3459 Removed unreferenced external functions.
3461 * modules/linux-fb/Makefile.am: Use ` instead of '.
3463 * modules/linux-fb/basic.c:
3464 Remove dead code. In particular the dummy lang engine which broke all
3465 pango layouts in GtkFB. Don't include tables-big.i anymore.
3467 * modules/linux-fb/tables-big.i:
3468 Upgrade to latest version from pango. Left for reference, basic_ranges
3471 2000-12-04 Havoc Pennington <hp@redhat.com>
3473 Fix bugs Alex found:
3475 * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
3478 * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
3480 * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
3482 * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw()
3483 implementation in here, apparently the expose() implementation was
3486 2000-12-04 Alexander Larsson <alexl@redhat.com>
3488 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3489 Return positive descent.
3491 2000-12-02 Havoc Pennington <hp@pobox.com>
3493 * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
3496 * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
3497 calls gdk_window_process_updates() to push the exposes through
3498 (gtk_widget_class_init): No more draw signal, no
3499 gtk_widget_real_draw()
3501 * gtk/gtkbin.c (gtk_bin_draw): remove
3503 * gtk/gtkbox.c (gtk_box_draw): remove
3505 * gtk/gtkbutton.c (gtk_button_draw): remove
3507 * gtk/gtkcalendar.c (gtk_calendar_draw): remove
3509 * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
3511 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
3513 * gtk/gtkclist.c (gtk_clist_draw): remove
3515 * gtk/gtkentry.c (gtk_entry_draw): remove
3517 * gtk/gtkeventbox.c (gtk_event_box_draw): remove
3519 * gtk/gtkfixed.c (gtk_fixed_draw): remove
3521 * gtk/gtkframe.c (gtk_frame_draw): remove
3523 * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
3525 * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
3527 * gtk/gtklayout.c (gtk_layout_draw): remove
3529 * gtk/gtklist.c (gtk_list_draw): remove
3531 * gtk/gtklistitem.c (gtk_list_item_draw): remove
3533 * gtk/gtkmenu.c (gtk_menu_draw): remove
3535 * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
3537 * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
3539 * gtk/gtknotebook.c (gtk_notebook_draw): remove
3541 * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
3543 * gtk/gtkpacker.c (gtk_packer_draw): remove
3545 * gtk/gtkrange.c (gtk_range_draw): remove
3547 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
3549 * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
3551 * gtk/gtktable.c (gtk_table_draw): remove
3553 * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
3555 * gtk/gtktext.c (gtk_text_draw): remove
3557 * gtk/gtktextview.c (gtk_text_view_draw): remove
3559 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
3561 * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
3563 * gtk/gtktree.c (gtk_tree_draw): remove
3565 * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
3567 * gtk/gtktreeview.c (gtk_tree_view_draw): remove
3569 * gtk/gtkviewport.c (gtk_viewport_draw): remove
3571 * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
3573 * gtk/gtkvscale.c (gtk_vscale_draw): remove
3575 * gtk/gtkwindow.c (gtk_window_draw): remove
3577 2000-20-01 Anders Carlsson <andersca@gnu.org>
3579 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
3580 a GtkToggleButton is both insensitive and active, it was being
3581 drawn by the GtkButton draw handler which doesn't check the
3582 state. Now it's calling gtk_toggle_button_paint instead.
3584 2000-12-01 Havoc Pennington <hp@redhat.com>
3586 * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
3587 dangling pointers to the appearance attributes from the
3590 * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
3591 width/height to mean "full width/height of drawable"
3593 * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
3594 click to select word/line
3596 * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters
3597 when getting log attrs. Get a slice, so that pixmaps and stuff
3598 are properly handled.
3600 * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3601 paste into the selection (replaces selection now, previously
3602 crashed or added to selection). Reveals longstanding btree bug -
3603 select multiple lines, middle-click on the selection, boom. This
3604 isn't related to my changes though.
3606 * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3607 PangoLogAttrs changes
3608 (gtk_entry_move_backward_word): ditto
3610 * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3611 functions return bool whether the iter moved onto a
3612 dereferenceable position.
3614 * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3615 functions for motion in terms of display lines.
3617 * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3618 get the buffer a mark is inside
3620 2000-12-01 Alexander Larsson <alexl@redhat.com>
3622 * gdk/linux-fb/Makefile.am:
3623 * modules/linux-fb/Makefile.am:
3624 Freetype 2 final uses freetype-config
3626 * gdk/linux-fb/gdkpango-fb.c:
3627 Upgrade to use Freetype 2 final.
3628 More flexible support for font aliases, this also fixes a bug with
3629 GtkFontSelector, as the aliases must be visible in the font/family list,
3630 or GtkFontSelector reads uninitialized memory.
3632 2000-11-30 Hidetoshi Tajima <tajima@eng.sun.com>
3634 * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
3635 XGetIMValues to properly terminate variable argument list, and do
3636 NULL return check for ic_values and xim_styles.
3638 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
3639 Restore preedit state after XmbResetIC().
3641 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
3642 XvaCreateNestedList() should take XvaNestedList, but not
3645 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
3646 preedit_draw_callback, preedit_caret_callback): Match
3647 "preedit-changed" signal name to "preedit_changed" to be
3648 consistent to the spec.
3650 * gtk/gtkimcontextsimple.c (check_table):
3651 Match "preedit-changed" to "preedit_changed" to be consistent
3654 Thu Nov 30 23:03:04 2000 Owen Taylor <otaylor@redhat.com>
3656 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
3657 gc->clip_region == NULL>
3659 2000-11-30 Tor Lillqvist <tml@iki.fi>
3661 Changes by Hans Breuer:
3663 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3664 Dont't use negative width and height as max_hints. This fixes
3665 Owen's recent testgtk changes for win32.
3667 * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
3668 gdk_win32_hdc_release): These are exported and may be called with
3669 other drawable types than our GdkDrawableImplWin32 (?).
3671 * gdk/gdkwindow.c: Backing store appears to work on Windows now,
3672 so always #define USE_BACKING_STORE.
3674 * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
3675 of printf for debugging output.
3677 * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
3679 * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
3681 * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
3684 * gtk/gtktexttypes.h: Ditto.
3686 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
3687 (GDK_VoidSymbol) also if in case of arg check failure.
3689 * gtk/gtkimcontextsimple.c
3690 (gtk_im_context_simple_get_preedit_string): Don't assign cursor
3691 position to the pointer, but to the variable it points to.
3693 * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
3695 * gtk/gtk.def: Updates.
3697 2000-11-29 Elliot Lee <sopwith@redhat.com>
3699 * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
3700 GTK_TYPE_TREE_MODEL.
3702 2000-11-29 Alexander Larsson <alexl@redhat.com>
3704 * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
3705 Set the size of the font from the description.
3706 (gdk_text_width): Gross hack that calculates the width
3707 of text by text_length * size/2. This is necessary because
3708 GtkLabel does some ugly gtk_string_width call to calculate
3710 (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
3712 Wed Nov 29 13:39:19 GMT 2000 Tony Gale <gale@gtk.org>
3714 * docs/tutorial/gtk-tut.sgml: DND updates
3716 2000-11-29 Alexander Larsson <alexl@redhat.com>
3718 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3719 If you pass width or height == 0 to gdk_window_clear_area they
3720 should be calculated from the window size.
3722 2000-11-29 Alexander Larsson <alexl@redhat.com>
3724 * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
3725 a grab, but no grab-cursor, use the cursor from the grabbed
3726 window. (gdk_fb_window_send_crossing_events): Send normal
3727 enter/leave notifications if grab and owner_events == TRUE.
3729 2000-11-29 Alexander Larsson <alexl@redhat.com>
3731 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3732 Do implicit button grabs, even if the window doesn't
3734 (gdk_fb_window_send_crossing_events): If there is a
3735 grab, only the grabbed window gets normal enter/leave
3736 notifications. On ungrab go from grabbed window to current.
3737 Don't send any notification to b when propagating from c -> b.
3738 If setting a grab on window, don't set prev_window.
3739 (handle_mouse_input): Send enter/leave events to the window the
3740 mouse is over, not the grabbed one.
3742 2000-11-28 Elliot Lee <sopwith@redhat.com>
3744 * gdk/gdkregion-generic.c: Zap warning.
3745 * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
3746 * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
3748 2000-11-28 Alexander Larsson <alla@lysator.liu.se>
3750 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3751 The cursor should be hidden if it is part of either the
3752 source or destination region. Not only if it is in both.
3753 (gdk_window_set_transient_for): Silence warnings.
3755 2000-11-28 Alexander Larsson <alexl@redhat.com>
3757 * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
3758 The default mode in X is Pie Arcs, therefore that is
3761 2000-11-28 Alexander Larsson <alexl@redhat.com>
3763 * gdk/linux-fb/gdkinput-ps2.c:
3764 Implement correct EnterNotify/LeaveNotify:
3765 (gdk_fb_window_send_crossing_events): New function that sends
3766 all GdkCrossingEvents from the last mouse-window to the specified
3768 (gdk_fb_window_visibility_crossing): Removed function.
3769 (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
3770 (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
3771 instead of gdk_window_get_pointer() for better readability.
3773 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
3774 gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
3776 * gdk/linux-fb/gdkprivate-fb.h:
3777 removed gdk_fb_window_visibility_crossing, added
3778 gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
3780 gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
3781 New function that finds the least common ancestor of two windows.
3782 (gdk_window_show, gdk_window_hide):
3783 Use gdk_fb_window_send_crossing_events.
3784 (gdk_fb_window_move_resize): Send configure events to toplevel
3785 windows. Use gdk_fb_window_send_crossing_events.
3787 2000-11-27 Havoc Pennington <hp@redhat.com>
3789 * gtk/gtkprivate.h (enum): Remove a trailing comma
3791 2000-11-27 Federico Mena Quintero <federico@helixcode.com>
3793 * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
3794 the "changed" callback of the adjustment. We need to redraw the
3795 spin button's arrows when the adjustment's range changes.
3796 (adjustment_changed_cb): Draw the arrows.
3797 (gtk_spin_button_value_changed): Draw the arrows.
3799 2000-11-23 Alexander Larsson <alexl@redhat.com>
3801 * gdk/linux-fb/gdkselection-fb.c:
3802 Initial selection implementation.
3804 * gtk/gtkselection.c:
3805 if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
3806 requestor in gtk_selection_request.
3808 * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
3809 Added gdk_selection_property atom.
3811 * gdk/linux-fb/gdkprivate-fb.h:
3812 Export _gdk_selection_window_destroyed.
3813 Removed mask_off_x/y from GdkCursorPrivateFB.
3814 Removed hbearing, added top, left to PangoFBGlyphInfo.
3816 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3817 Call _gdk_selection_window_destroyed
3818 (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
3819 the root window has been created.
3820 (static_dx_hack, static_dy_hack, compare_draw_rects,
3821 gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
3822 in region. They are already sorted. Instead just traverse them in
3823 reverse if draw_direction < 0.
3825 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3826 Double-clicks must be sent after the normal button_press.
3827 (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3829 * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
3830 Pass _gdk_fb_screen_gc instead of NULL.
3832 * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3833 Initialize gdk_selection_property.
3834 (gdk_event_make): Remove unused code.
3836 * gdk/linux-fb/gdkcursor-fb.c:
3837 Make the pixmap for the cursor the same size as the mask. Also remove
3838 the mask_off_x/y fields in GdkCursorPrivateFB and combine
3839 _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
3840 Now the whole cursor is visible.
3842 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3843 Fix bug where xdest+height instead of ydest+height was used
3844 to calculate if the source and dest overlapped. This fixes the
3845 redraw bug when the main window in testgtk was scrolled when
3846 partially covered by a tall window.
3847 Copy rectangles in region in order depending on draw_direction.
3848 Also moved the draw_direction flipping of start_y and end_y into
3849 the gc functions, as this might not be what all of them want.
3850 (gdk_fb_draw_lines): Support dashed lines.
3851 (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3852 so that the text is positioned correctly (was 1 pixel high).
3854 gdk/linux-fb/gdkgc-fb.c:
3855 Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3856 all lines were drawn a pixel to short. Also checked the default of
3857 the rest of the values, and they're the same as X now.
3859 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3860 Clean up pixel positioning of the glyphs. Just use bgy->top and
3861 bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3862 to all divisions to get correct rounding behaviour.
3864 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3865 gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3866 Moved start_y/end_y flip into draw_drawable implementations.
3867 Flip also x rendering when draw_direction < 0.
3868 Remove unneccesary multiply with draw_direction.
3870 Wed Nov 22 14:11:19 GMT 2000 Tony Gale <gale@gtk.org>
3872 * docs/tutorial/gtk-tut.sgml:
3873 - get rid of gtk_toggle_button_toggled FUD
3874 - start DND section - needs work - based on:
3875 http://wolfpack.twu.net/docs/gtkdnd/
3877 2000-11-22 Alexander Larsson <alexl@redhat.com>
3879 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3880 Correct calculation of font metrics. Now GtkEntrys have sane
3883 2000-11-22 Alexander Larsson <alexl@redhat.com>
3886 Add new type GdkSpan
3888 * docs/reference/gdk/gdk-sections.txt,
3889 docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3891 Implement and document gdk_region_spans_intersect_foreach.
3893 * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3894 Add new file gdkrender-fb.c which contains all core
3896 Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3897 gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3898 (optimized rectangle fillers).
3900 * gdk/linux-fb/gdkdrawable-fb2.c:
3901 Move all rendering code to gdkrender-fb.c.
3902 Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3903 Use the new span intersection functions in gdk_fb_fill_spans.
3904 gdk_fb_draw_rectangle() clips filled rectangles and calls
3905 gc->fill_rectangle with the result.
3906 gdk_fb_fill_spans() gets extra argument "sorted".
3908 * gdk/linux-fb/gdkevents-fb.c:
3909 Remove unused includes and defines.
3910 New function gdk_fb_get_time() to get correct time for events.
3912 * gdk/linux-fb/gdkinput-ps2.c:
3913 Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3914 Make sure to set the time of all events.
3916 * gdk/linux-fb/gdkmain-fb.c:
3917 Use gdk_fb_get_time ().
3919 * gdk/linux-fb/gdkprivate-fb.h:
3920 New virtual GC calls: fill_span & fill_rectangle.
3921 Export gdk_fb_get_time().
3922 gdk_fb_fill_spans() gets extra argument "sorted".
3924 * gdk/linux-fb/mi*.c:
3925 Use GdkSpan instead of GdkRectangle.
3926 Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3927 from XFree 4 source)
3929 2000-11-22 <jrb@redhat.com>
3931 * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3932 reversing the order in an if statement will do. Doing so managed
3933 to make the treemodelsort half work. Other half will follow after
3934 I get the insert function fully fixed.
3936 2000-11-21 Elliot Lee <sopwith@redhat.com>
3937 * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3938 more than 2 bits. Besides, I need to implement an evil hack. :)
3940 Tue Nov 21 14:17:51 GMT 2000 Tony Gale <gale@gtk.org>
3942 * docs/tutorial/gtk-tut.sgml: minor corrections
3944 2000-11-20 Jonathan Blandford <jrb@redhat.com>
3945 * gtk/gtktreemodelsort.h: Add convertion functions to let you
3946 convert to and from relative path's and iters.
3948 * gtk/treestoretest.c: move to having a sorted/unsorted view. Start
3949 testing sorting functions a bit better. Currently broken -- will
3952 2000-11-20 Havoc Pennington <hp@redhat.com>
3954 * gtk/gtkwidget.c: Documented a bunch of functions in here
3955 (gtk_widget_realize): Warn if you try to realize
3956 a widget with no parent that isn't a toplevel
3957 (gtk_widget_intersect): return a gboolean
3959 2000-11-20 Havoc Pennington <hp@redhat.com>
3961 * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3962 gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3963 scrolling to be implemented in GDK to finish. Also, right now
3964 we just size_allocate all children on every layout change,
3965 which is pretty lame. Test commented out of testtext.c,
3966 until it works better.
3968 2000-11-20 Alexander Larsson <alla@lysator.liu.se>
3970 * gdk/linux-fb/gdkdrawable-fb2.c:
3971 Removed unused arguments from gdk_fb_drawable_get_pixel().
3973 * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3974 Renamed fidur specific mouse packet data in MouseDevice to
3975 generic. Used it in ps2 mouse handling code to avoid blocking
3978 Sat Nov 18 18:00:17 2000 Jonathan Blandford <jrb@redhat.com>
3980 * demos/gtk-demo/main.c: Changed to have the list become
3981 non-italic when the demo window is destroyed through an external
3982 event (like a close button). Doing so found three bugs in the
3985 * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
3987 * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
3988 we actually set the cell.
3990 * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
3992 * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
3993 free a leaked path. Thanks memprof.
3995 Sat Nov 18 11:58:17 2000 Owen Taylor <otaylor@redhat.com>
3997 * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix
3998 off-by-one error when destroying allocated segments
3999 on failure. (Elliot)
4001 Sat Nov 18 11:45:09 2000 Owen Taylor <otaylor@redhat.com>
4003 * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4004 memleaks found by Evan Martin.
4006 Fri Nov 17 20:14:20 2000 Owen Taylor <otaylor@redhat.com>
4010 * NEWS: Updates for 1.3.2
4012 2000-11-17 Tor Lillqvist <tml@iki.fi>
4014 * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
4015 but in general for window system specific events.
4018 * gtk/makefile.mingw.in
4019 * gtk/makefile.msc.in: Update.
4021 * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
4023 Thu Nov 16 16:11:39 2000 Owen Taylor <otaylor@redhat.com>
4025 * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
4026 distribute gtk.immodules.
4028 * gtk/Makefile.am (install-data-local): Don't install the
4029 gtk.immodules file created for the uninstalled modules;
4030 instead run gtk-query-immodules after install
4032 Wed Nov 15 21:51:31 2000 Owen Taylor <otaylor@redhat.com>
4034 * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4035 -rpath to the right install location.
4037 * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
4040 * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
4043 2000-11-15 Havoc Pennington <hp@pobox.com>
4045 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
4046 patch from Mikael Hermansson to temporarily stop blinking while
4047 the user is using the keyboard to type or navigate.
4049 Also, when blinking, stay on for longer than we stay off. Also,
4050 return from start_cursor_blink if !cursor_visible, to save
4051 checking that flag all over the place before we call
4054 Thu Nov 16 01:25:51 2000 Robert Brady <robert@suse.co.uk>
4056 * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
4057 only contain a "fontset" line, which is now ignored.
4059 * gtk/gtkentry.c (gtk_entry_button_release): Make
4060 double-click-to-select-word work.
4062 Wed Nov 15 20:16:54 2000 Owen Taylor <otaylor@redhat.com>
4064 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end):
4065 Don't move back one char when we are actually at the end of the
4068 2000-11-15 Robert Brady <robert@suse.co.uk>
4070 * modules/input/iminuktitut.c (inuktitut_compose_seqs):
4073 * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
4074 bind_textdomain_codeset.
4076 (gtk_init_check): Make the warning about translating default:LTR
4079 Wed Nov 15 18:39:40 2000 Owen Taylor <otaylor@redhat.com>
4081 * **/Makefile.am : remove unecessary rules for win32-specific
4082 config-substituted targets. If you want these rules, use
4083 --enable-maintainer-mode (called automatically by autogen.sh).
4084 Stops a lot of unneccessary make-time warnings.
4086 * gtk/gtktext{layout,display}.c: Factor in total width as
4087 well as screen when figuring alignment for word-wrap as well as
4088 no wrap; this is necessary to handle lines that cannot be wrapped
4091 2000-11-15 Havoc Pennington <hp@redhat.com>
4093 * gtk/testtext.c: Implement essential color cycling feature
4095 2000-11-15 Havoc Pennington <hp@redhat.com>
4097 * gtk/gtktextview.c (changed_handler): Invalidate the side windows
4098 when we invalidate the main window.
4100 * gtk/testtext.c (create_view): Get rid of text_changed_callback,
4101 GtkTextView will now invalidate the side windows for us when text
4104 Wed Nov 15 16:02:20 2000 Owen Taylor <otaylor@redhat.com>
4106 * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
4107 unconditionally, since we may need to update the horizontal
4108 scrollbars even if the height didn't change.
4110 * gtk/gtktextlayout.c (add_preedit_attrs): Always get
4111 the extra attrs, since some of them affect size.
4113 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
4116 2000-11-15 Havoc Pennington <hp@redhat.com>
4118 * gtk/gtktextlayout.c (set_para_values): If indent is negative,
4119 don't move the first line out into the margin, instead move the
4120 whole paragraph in order to make space for the first line within
4123 2000-11-15 Havoc Pennington <hp@redhat.com>
4125 * gtk/gtktextview.c (changed_handler): offset redraw rect by
4126 xoffset in addition to yoffset, so horizontal scrolling doesn't
4129 2000-11-15 Havoc Pennington <hp@redhat.com>
4131 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
4133 (render_layout_line): fix reversed test that caused weird
4134 underlines to get drawn
4136 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
4138 * gdk/linux-fb/gdkprivate-fb.h:
4141 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
4143 * gdk/linux-fb/gdkprivate-fb.h:
4144 Added virtual functions set_pixel, get_color,
4145 fill_span and draw_drawable to the GC.
4146 Added global _gdk_fb_screen_gc to use instead of
4147 NULL when drawing to the screen.
4148 Added _gdk_fb_gc_calc_state() prototype.
4150 * gdk/linux-fb/gdkgc-fb.c:
4151 Call _gdk_fb_gc_calc_state() on any gc state change.
4153 * gdk/linux-fb/gdkglobals-fb.c:
4154 Add _gdk_fb_screen_gc
4156 * gdk/linux-fb/gdkdrawable-fb2.c:
4157 _gdk_fb_gc_calc_state() calculates best functions
4158 for the GC state and depth.
4159 Moved bpp specialized code to separate functions.
4160 Added optimized 24 bpp AA draw_drawable.
4162 * gdk/linux-fb/gdkevents-fb.c:
4163 Silence gcc warning.
4165 * gdk/linux-fb/gdkimage-fb.c:
4166 Use _gdk_fb_screen_gc
4168 * gdk/linux-fb/gdkwindow-fb.c:
4169 Init and use _gdk_fb_screen_gc
4171 * gdk/linux-fb/mitypes.h:
4172 Remove unused types.
4174 2000-11-14 Havoc Pennington <hp@pobox.com>
4176 * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
4179 2000-11-14 Havoc Pennington <hp@pobox.com>
4181 * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
4183 * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
4184 unknown char, no real reason we were using a variable.
4185 Remove gtk_text_unknown_char variable. Fix all the text widget
4188 * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC,
4189 since the Unicode spec seems to prefer that character for our
4192 Wed Nov 15 02:18:01 2000 Robert Brady <robert@suse.co.uk>
4194 * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return
4195 value of g_getenv() isn't freeable, so g_strdup it.
4197 * modules/input/inuktitut.c: Inuktitut input method.
4199 * modules/input/Makefile.am: Build this.
4201 2000-11-14 Elliot Lee <sopwith@redhat.com>
4203 * gtk/Makefile.am: Install gtk.immodules, needed for operation
4206 Tue Nov 14 20:13:06 2000 Owen Taylor <otaylor@redhat.com>
4208 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
4209 reversed > that was causing Home to go to end of previous line.
4211 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
4212 modified-keypresses (leave for bindings.)
4214 * modules/input/Makefile.am: Remove useless -export-dynamic
4215 from module LDFLAGS.
4217 2000-11-14 Havoc Pennington <hp@redhat.com>
4219 * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
4222 * gtk/gtktextdisplay.c (render_layout_line): Take rise into
4223 account. Also, render rise, underline, background, etc. for
4224 pixbufs as well as text. Also, draw underlines one pixel higher.
4226 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
4227 PangoAttribute for the rise, so it gets drawn properly. Also,
4228 add the GtkTextAppearance attribute for pixbuf/widget segments
4229 as well; we should go ahead and have rise, underline, background,
4230 stipple work for those
4232 * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
4235 2000-11-15 Tor Lillqvist <tml@iki.fi>
4237 * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
4239 * gtk/gtk.def: Update.
4241 * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
4243 (gtk_rc_get_im_module_file): Use run-time installation directory
4246 * gdk/win32/rc/gdk.rc: Remove.
4247 * gdk/win32/rc/gdk.rc.in: New file.
4248 * gdk/win32/rc/Makefile.am: New file
4249 * gdk/win32/Makefile.am: Corresponding changes.
4251 * gtk/gtk.rc: Remove.
4252 * gtk/gtk-win32.rc.in: New file.
4253 * gtk/Makefile.am: Corresponding changes.
4255 * configure.in: Corresponding changes.
4257 * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
4258 has a built gtkcompat.h. Developers using CVS code on Win32 can
4259 hand-edit it from gtkcompat.h.in.
4261 * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
4262 gtkcompat.h from gtkcompat.h.win32.
4264 2000-11-14 Havoc Pennington <hp@redhat.com>
4266 * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
4267 to default to GDK_ACTION_MOVE if the drag is within a single
4268 widget. Defaults to GDK_ACTION_COPY between widgets.
4270 Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
4272 * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
4274 * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
4276 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
4279 * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
4281 * configure.in (GTK_VERSION): Up to 1.3.2
4283 * modules/input/Makefile.am (im_xim_la_SOURCES): Add
4286 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
4287 missing doc comment.
4289 2000-11-14 Alexander Larsson <alexl@redhat.com>
4291 * modules/linux-fb/basic.c:
4292 Use the glib iconv wrappers.
4294 2000-11-13 Havoc Pennington <hp@pobox.com>
4296 * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
4299 * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
4300 scroll the GdkWindows before realization.
4302 2000-11-13 Havoc Pennington <hp@redhat.com>
4304 * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug
4305 where GC didn't always get updated properly
4307 * demos/gtk-demo/textview.c (create_tags): Use subattributes
4308 of fonts instead of setting the entire font
4310 * gtk/testtext.c (fill_example_buffer): Use "size" instead of
4313 * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
4315 * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into
4316 a bunch of individually-settable font attributes. You can still
4317 use the "font" and "font_desc" args, they just set all the font
4320 2000-11-13 Elliot Lee <sopwith@redhat.com>
4322 * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
4324 Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
4326 * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
4327 * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
4329 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
4332 2000-11-13 Havoc Pennington <hp@redhat.com>
4334 * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of
4337 * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
4340 * gtk/testtext.c: Test pixels above/below/inside paragraphs
4343 * gtk/gtktextview.c: Implement object args and setters/getters for
4344 all the aspects of the GtkTextAttributes that are not set from
4345 GtkWidget attributes. This is spacing, justification, margins,
4348 (gtk_text_view_set_arg)
4349 (gtk_text_view_get_arg): implement get/set for editable, wrap mode
4351 (gtk_text_view_class_init): Add args for justify, left_margin,
4352 right_margin, indent, and tabs
4355 * gtk/gtktextlayout.c (set_para_values): fix to display indent
4358 * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute,
4359 replace with indent attribute
4361 * gtk/gtktextlayout.c (set_para_values): multiply indent by
4364 * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
4365 rearranging code to do that
4366 (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
4367 i.e. don't subtract the top_margin first, just to keep
4368 all margin-futzing in one place.
4370 * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
4372 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
4373 special case of last line, Pango now handles this itself.
4374 (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the
4376 (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
4377 (find_display_line_above): wasn't moving the byte index as it
4378 iterated over lines, so always returned byte 0. Also, port to use
4380 (find_display_line_below): same problem as
4381 find_display_line_above. Also, port to use PangoLayoutIter.
4383 2000-11-13 Alexander Larsson <alexl@redhat.com>
4385 * gdk/linux-fb/*.[ch]:
4386 Massive reindent to gtk+ standard. My hands hurt.
4388 * gdk/linux-fb/gdkcolor-fb.c:
4389 Move GdkColorPrivateFB from inherited to windowing_data
4391 * gdk/linux-fb/gdkcursor-fb.c:
4392 _gdk_cursor_new_from_pixmap made static
4394 * gdk/linux-fb/gdkdnd-fb.c:
4395 GdkDragContextPrivate moved to windowing_data
4397 * gdk/linux-fb/gdkdrawable-fb2.c:
4398 Removed endian.h, use glib endianness macros instead
4399 Some cleanups in the usage of GDK_DRAWABLE_FBDATA
4400 and GDK_DRAWABLE_IMPL_FBDATA
4402 * gdk/linux-fb/gdkfont-fb.c:
4403 Add empty gdk_font_load(). Needed for linking of Gtk+.
4405 * gdk/linux-fb/gdkimage-fb.c:
4406 Removed endian.h, use glib endianness macros instead
4407 Moved GdkImagePrivateFB to windowing_data
4408 gdk_image_new_bitmap didn't always allocate enough
4411 * gdk/linux-fb/gdkinput-ps2.c:
4412 Added semi-working support for MS serial mice.
4414 * gdk/linux-fb/gdkprivate-fb.h:
4415 s/GdkWindowPrivate/GdkWindowObject/
4416 Removed GdkWindowPrivate typedef
4417 s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
4418 Removed GDK_DRAWABLE_P
4419 Move GdkColorPrivateFB from inherited to windowing_data
4420 Moved GdkImagePrivateFB to windowing_data
4422 * gdk/linux-fb/gdkvisual-fb.c:
4423 Removed some unused debug code.
4425 * gdk/linux-fb/gdkwindow-fb.c:
4426 Use stock cursors instead of including X headers.
4427 s/GdkWindowPrivate/GdkWindowObject/
4429 * gdk/linux-fb/mitypes.h:
4430 Removed unused types.
4432 * modules/linux-fb/basic.c:
4433 Use the pango fribidi wrappers.
4435 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4437 * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
4438 gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
4439 gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
4440 gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
4441 GEqualFunc where applicable.
4443 * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
4444 pango_font_description_equal as changed in pango.
4446 * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
4448 * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
4450 * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
4452 * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
4454 * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
4456 * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
4458 * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
4459 gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
4461 * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
4462 gtk_rc_styles_compare -> gtk_rc_styles_equal.
4464 2000-11-12 Havoc Pennington <hp@pobox.com>
4466 * demos/gtk-demo/Makefile.am (democodedir): change demo install
4467 dir to datadir/gtk+-2.0/demo
4469 * demos/gtk-demo/textview.c: Text widget demo; reveals all
4470 sorts of text widget and Pango font bugs. Urgh.
4472 * demos/gtk-demo/Makefile.am (demos): Add textview.c
4474 * demos/gtk-demo/main.c (create_tree): Add instructions at top of
4475 tree that you should double click to see the demo. Fix
4476 types of variables to reflect changed return values from
4477 GtkTreeStore and GtkTreeViewColumn constructors.
4479 * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
4480 newly-created buffer to prepare for GObject semantics
4482 * gtk/testtext.c: don't leak the buffer with GObject semantics
4484 * gtk/testtextbuffer.c: ditto
4486 2000-11-12 Havoc Pennington <hp@pobox.com>
4488 Rename this testgtk to gtk-demo to avoid confusion, and
4489 install it so people can use it as a supplement to
4492 * demos/gtk-demo: Moved from demos/testgtk
4494 * demos/testgtk: Removed
4496 * configure.in: make Makefile in gtk-demo
4498 * demos/gtk-demo/Makefile.am: Install sample source to
4499 datadir/gtk-demo (maybe there's a better place?), and
4500 rename the binary to gtk-demo
4502 * demos/gtk-demo/main.c (load_file): Load installed sample
4503 source if source isn't found in pwd.
4505 2000-11-09 Havoc Pennington <hp@pobox.com>
4507 * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char"
4508 argument to set the char displayed when visibility == FALSE
4509 (gtk_entry_create_layout): If !entry->visible, replace
4510 all chars with the "invisible char"
4512 * gtk/testgtk.c: Test the invisible_char deal
4514 Mon Nov 13 02:16:33 2000 Robert Brady <robert@suse.co.uk>
4516 * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
4517 can't get a native font in the right encoding.
4519 Mon Nov 13 00:09:29 2000 Robert Brady <robert@suse.co.uk>
4521 * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
4524 Sun Nov 12 19:11:42 2000 Owen Taylor <otaylor@redhat.com>
4526 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
4527 Fix warning when moving between paragraphs.
4529 * gtk/gtkentry.[ch]: Change move => move_cursor,
4530 delete => delete_from_cursor, insert => insert_at_cursor
4532 Sun Nov 12 22:52:51 2000 Robert Brady <robert@suse.co.uk>
4534 * modules/input/imviqr.c: A vietnamese VIQR-based input method.
4536 * modules/input/imthai-broken.c: A Thai input method for use if
4537 Thai keys are really generating Latin1 keysyms.
4539 * modules/input/Makefile.am: Build these.
4541 Sun Nov 12 22:15:35 2000 Robert Brady <robert@suse.co.uk>
4543 * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c:
4544 g_filename_{to,from}_utf8 now takes an extra parameter.
4546 * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
4547 strftime into UTF-8.
4549 (column_from_x, gtk_calendar_paint_day_names): Support RTL
4552 (gtk_calendar_paint_day_names): Draw day names in the right
4555 Sun Nov 12 14:10:09 2000 Owen Taylor <otaylor@redhat.com>
4557 * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
4558 problem with using result of g_get_charset() backwards -
4559 pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
4561 * gtk/gtkwindow.c (gtk_window_compute_hints): Support
4562 negative min_width/height and max_width/height to
4563 mean "requisition"; this allows setting a window
4564 to be user-resizable in only one direction easily.
4566 * gtk/testgtk.c (create_main_window): Remove hard-coded
4567 usize - set a default size in the vertical direction.
4569 Sun Nov 12 13:33:01 2000 Owen Taylor <otaylor@redhat.com>
4571 * gtk/gtkrange.c: Add some missing casts. Support
4572 2 and 3 button clicks on the arrows to mean
4573 "move by pages" and "jump to end". (Like gtkspinbutton)
4575 2000-11-12 Hans Breuer <Hans@Breuer.Org>
4577 * gdk/win32/makefile.msc : reflect build module changes
4579 * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
4580 from GdkPixmap*, cast implementation member instead.
4582 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
4583 passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src
4584 maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
4585 more Gdi functions return value checking.
4586 (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
4587 GdkImagePrivateWin32 *.
4589 * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
4590 menus useable again. Add #pragma message to keep reminded on this issue.
4591 (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
4592 windows. This allows to enable backing store on Win32!
4594 * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
4595 in drawable is of impl type. Correct specific type checks appropriate.
4597 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check
4598 GDK_WINDOW_DESTROYED before allocating new resources.
4600 * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4602 * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4603 (gdk_window_foreign_new) initialize parent handle.
4604 (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4606 * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4607 Let the GDI invalidate the window on MoveWindow call to fix scrolling
4608 problems (e.g. main buttons in testgtk).
4610 Sat Nov 11 23:07:30 2000 Owen Taylor <otaylor@redhat.com>
4612 * gtk/gtkentry.c (gtk_entry_key_press): Call
4613 gtk_widget_activate for GDK_Return.
4615 * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4616 of preedit cursor position.
4618 Sun Nov 5 04:24:53 2000 Owen Taylor <otaylor@redhat.com>
4620 * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4623 Tue Sep 19 10:54:22 2000 Owen Taylor <otaylor@redhat.com>
4625 * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4626 out support for multiple locales; that simple doesn't
4627 work reliably with current Xlib
4629 * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
4630 gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
4631 Add support for positioning the cursor within the preedit string.
4633 Mon Sep 18 23:56:32 2000 Owen Taylor <otaylor@redhat.com>
4635 * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
4636 at XIM input method module.
4638 * gtk/gtktextview.c: Check for bindings after passing
4639 events to im context filter.
4641 Mon Sep 18 11:50:51 2000 Owen Taylor <otaylor@redhat.com>
4643 * gtk/gtktextlayout.c (add_preedit_attrs): Handle
4644 empty attribute lists properly.
4646 Sun Sep 17 10:08:16 2000 Owen Taylor <otaylor@redhat.com>
4648 * gtk/queryimmodules.c (main): Return non-zero exit
4649 status if errors were encountered querying any
4652 * modules/input/Makefile.am (moduledir): remove
4653 leftover bin program target.
4655 * docs/make-todo: Fix typo in error message.
4657 Sat Sep 16 14:04:30 2000 Owen Taylor <otaylor@redhat.com>
4659 * configure.in: Add modules/input/Makefile
4661 Sat Sep 16 14:01:52 2000 Owen Taylor <otaylor@redhat.com>
4663 * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
4664 don't include gtkthemes.h.
4666 * gtk/testgtk.c gtk/testtext.c: Set environment variables
4669 * gtk/Makefile.am: Add new .c and .h files, build
4670 gtk-query-immodules and use it to create a gtk.immodules
4671 file for use of test programs.
4673 * gtk/gtkpreview.c: remove extra blank line.
4675 Sat Sep 16 13:21:04 2000 Owen Taylor <otaylor@redhat.com>
4677 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
4678 Add the ability to add extra tables beyond the default
4679 one, and also the ability to have compose sequences
4680 that are prefixes of other compose sequences.
4682 * gtk/gtkimcontextsimple.c: Export a preedit string which
4683 consists of possible candidates for keystrokes that have
4684 been entered but not yet committed.
4686 * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
4687 gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
4689 * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
4690 Add a function to add input-method switching menu items
4693 * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
4694 when switching input methods.
4696 * gtk/gtkimcontextsimple.[ch]: Change the format of
4697 the compose table to allow compose tables of different
4700 Sat Sep 16 13:05:48 2000 Owen Taylor <otaylor@redhat.com>
4702 * gtk/gtkimmodule.[ch]: Support routines for loading
4703 GtkIMContext implementations dynamically at runtime.
4705 * modules/input/imcyrillic-translit.c: A sample input
4706 method (based on GtkIMContextSimple with an extra table),
4707 which demonstrates preedit strings and the module
4708 system for input modules
4710 * gtk/queryimmodules.c: Program to query the available
4711 input modules and write the results into a file.
4713 * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
4714 extra config options "im_module_file" (cache file for
4715 input method modules), and "im_module_path" - path
4716 to look for modules when generating cache file.
4720 Sat Sep 16 13:09:06 2000 Owen Taylor <otaylor@redhat.com>
4722 * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
4723 generic code from gtkthemes into a new abstraction
4724 GtkModule which has the logic for implementing
4725 a loadable module which implements a number of
4728 Sat Sep 16 13:07:13 2000 Owen Taylor <otaylor@redhat.com>
4730 * gtk/gtkeditable.[ch]: Convert GtkEditable from
4731 a class into an interface
4733 * gtk/gtkoldeditable.[ch]: Move the old editable
4734 implementation into here, so legacy widgets can
4735 still rely on the implemenation. GtkOldEditable
4736 exports GtkEditable. Make selection handling
4737 code use new text conversion functions (and
4738 handle UTF-8 as a side-effect). Use GtkClipboard
4741 * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
4742 Adopt to match above changes.
4744 * gtk/gtkentry.[ch]: Implement GtkEditable directly,
4745 avoid GtkOldEditable implementation. Restructure
4746 to reduce number of places that modify state directly.
4747 Move to GtkBindingSet. Display the preedit string.
4748 Queue recomputation of PangoLayout and scroll position
4749 to improve effiency of doing complex changes naively.
4750 Add a menu with cut/copy/paste and input method selection.
4752 Thu Sep 14 22:11:05 2000 Owen Taylor <otaylor@redhat.com>
4754 * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
4755 to set preedit string and attributes; display preedit string by
4756 inserting string and attributes at cursor when creating the
4759 * gtk/gtktextlayout.c: Move all conversions between byte
4760 positions in PangoLayout and GtkTextIter into new functions
4761 line_display_iter_to_index/index_to_iter that properly
4762 handle the preedit string.
4764 * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
4765 it to return const char * (eventually will end up
4766 as GCONST char *, most likely.)
4768 * gtk/gtktextview.[ch]: Handle the preedit string, call
4769 gtk_im_context_reset() as necessary, add a menu to switch
4772 * gtk/gtktextlayout.[ch]: Remove useless
4773 gtk_text_layout_get_log_attrs() function.
4775 2000-11-11 Tor Lillqvist <tml@iki.fi>
4778 * gtk/gtk.def: Update.
4780 * gdk/win32/*.c: Add last argument to g_type_register_static()
4783 * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
4785 * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
4786 generated by older wheel mouse drivers. Get the correct y
4787 coordinate from WM_MOUSEWHEEL messages.
4789 * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
4790 gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
4791 gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
4792 Debugging functions.
4794 * gdk/win32/gdkprivate-win32.h: Declare them.
4796 * gdk/win32/gdkinput-win32.h: Add declaration for
4797 gdk_input_window_destroy().
4799 * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
4801 Fri Nov 10 19:06:41 2000 Jonathan Blandford <jrb@redhat.com>
4803 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
4804 function to help handle keeping things in sync.
4806 Fri Nov 10 12:10:34 2000 Jonathan Blandford <jrb@redhat.com>
4808 * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
4811 * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
4812 (gtk_list_store_class_init): use the new BOXED marshallers.
4814 * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
4815 new_with_values to new_with_types.
4816 (gtk_tree_store_get_column_type): add this.
4817 (gtk_tree_store_class_init): use the new BOXED marshallers.
4819 * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
4820 mirror some POINTER marshallers.
4822 Thu Nov 9 11:23:22 2000 Jonathan Blandford <jrb@redhat.com>
4824 * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
4825 allow more interesting iterators. Also, made the lifecycle of
4826 iterators more explicit.
4828 * gtk/gtktreemodelsort.[ch]: New model for sorting.
4830 * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
4833 2000-11-09 Alexander Larsson <alexl@redhat.com>
4835 * demos/testgtk/menus.c:
4836 Changes to make the new testgtk compile after
4837 gtk_menu_append was removed.
4839 * gdk/linux-fb/gdkdrawable-fb2.c
4840 (gdk_fb_get_depth, gdk_fb_get_visual,
4841 gdk_drawable_impl_fb_class_init): Implement
4842 these drawable functions. Now GtkImages work again.
4844 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
4846 * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4848 * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4849 gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4850 Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4851 GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4853 2000-11-08 Havoc Pennington <hp@pobox.com>
4855 * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4856 visible_set args, don't know where these had gone, I thought they
4859 * gtk/testtext.c: Add a menu item to apply invisibility tag;
4860 now we can test the feature and see that it's totally broken.
4862 2000-11-08 Havoc Pennington <hp@pobox.com>
4864 Make DND copy pixbufs and tags when source and target share a
4867 * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4868 in-process GTK_TEXT_BUFFER_CONTENTS target
4869 (gtk_text_view_drag_data_received): Paste from
4870 GTK_TEXT_BUFFER_CONTENTS if we receive it.
4872 2000-11-08 Alexander Larsson <alexl@redhat.com>
4874 * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4877 * gtk/gtkmenu.c: Add support for scrolling menus.
4878 Remove gtk_menu_append/prepend/insert, these have been moved to
4879 gtkcompat.h as #defines.
4881 * gtk/gtkcompat.h.in:
4882 Add compatibility #defines for gtk_menu_append/prepend/insert
4884 * gtk/gtkmenu.h: Add data needed for scrolling menus.
4885 GtkMenuPositionFunc gets an extra argument push_in.
4886 gtk_menu_append/prepend/insert removed.
4888 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4889 positioning behaviour to fit to scrolling menus.
4891 * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4892 into menuitem->submeny. That is wrong, and broke torn
4893 off submenus of torn off menus, since they were unrealized
4894 when the first menu was unrealized.
4896 * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4897 gtk_menu_shell_select_item() since these need to be overridden in
4900 * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4901 positioning behaviour to fit to scrolling menus.
4902 (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4903 the current item so that it is prelighted when the menu pops up.
4904 This is a workaround to the fact that the menu doesn't get the
4905 initial enter event (due to grabs).
4907 * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4908 s/gtk_menu_append/gtk_menu_shell_append/
4910 * gtk/gtknotebook.c:
4911 s/gtk_menu_insert/gtk_menu_shell_insert/
4913 * gtk/testgtk.c (create_menu, create_menus):
4914 Create the first menu with 50 items so that menu scrolling
4918 Patch from Jonathan Blandford <jrb@redhat.com>
4920 * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4921 system to handle size requests. First, we ask what the size of
4922 the toggle is. Then, when allocating the size, we allocate the
4923 toggle_size first. This way we can have multiple menu-item
4924 classes w/o needing a seperate class for each.
4926 * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4927 * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4929 * gtk/gtkcheckmenuitem.c
4930 (gtk_check_menu_item_toggle_size_request): New function to handle
4931 the toggle size-request.
4933 2000-11-07 Havoc Pennington <hp@redhat.com>
4935 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4936 Half-ass somewhat fix this function, so that scrolling to the
4937 insertion point works. Pango hacking is in the future to really
4940 * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4941 length of data, no longer used.
4943 * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4944 method contents in here, get rid of destroy method
4945 (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4946 that were backward. Remove debug spew.
4947 (cut_or_copy): Make the clipboard work with insert_range to
4948 preserve tags and pixbufs, not just the primary selection.
4950 2000-11-07 Havoc Pennington <hp@redhat.com>
4952 * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename
4953 to gtk_text_mark_get_visible
4955 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4956 bug that was generating an invalid iterator
4958 * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4959 ensure_char_offsets() in front of code placing the iter in an
4962 * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4963 make override_location arg const
4964 (paste): Replace the selection if we paste into the
4967 * gtk/gtkselection.h: Remove "GtkSelectioData"
4968 (struct _GtkSelectionData): move the definition here.
4970 * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4971 Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4973 * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4975 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4976 (gtk_text_buffer_insert_range_interactive): implement
4977 (gtk_text_buffer_get_tags): Remove, replaced by
4978 gtk_text_iter_get_tags()
4980 * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4981 limit parameter, to avoid infinite linear scan.
4982 (gtk_text_iter_backward_search): Add search limit
4983 (gtk_text_iter_forward_find_char): Add search limit
4984 (gtk_text_iter_backward_find_char): Add search limit
4986 2000-11-07 Alexander Larsson <alla@lysator.liu.se>
4988 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4989 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
4990 gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
4991 gdk/linux-fb/gdkwindow-fb.c:
4992 use g_object_new() instead of g_type_create_instance() which
4993 is a private function for fundamental type implementations.
4995 * gdk/linux-fb/gdkinput-ps2.c:
4996 Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
4997 instead just store the current modifier state. Add a (somewhat broken)
4998 keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
4999 Rename exported function gdk_input_ps2_get_mouseinfo to
5000 gdk_input_get_mouseinfo.
5002 * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5003 gdk/linux-fb/gdkwindow-fb.c:
5004 gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5007 2000-11-02 Havoc Pennington <hp@redhat.com>
5009 * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5010 use stock buttons. Should be 100% source compatible, appropriate
5011 filesel fields now point to dialog->vbox and dialog->action_area.
5012 On the bizarre side, dialog->action_area and filesel->action_area
5013 are not the same widget.
5014 (gtk_file_selection_init): Put some padding around the selection
5015 entry, so it isn't touching the GtkDialog separator.
5017 * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog,
5018 use stock buttons, etc. Should also be source compatible.
5019 Set the dialog default title in _init not _new().
5021 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
5022 Use stock buttons; don't put a button box inside the existing
5023 dialog button box. Don't bother with push/pop colormap anymore.
5025 * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more
5026 specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
5027 for message dialog, and necessary for the font selection and color
5028 selection with help and apply buttons.
5030 * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer
5031 to the created button widget. Set GTK_CAN_DEFAULT on the button.
5032 (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
5033 between buttons, put less padding around the action area.
5034 (gtk_dialog_run): Exit on unmap rather than on destroy.
5035 This will also exit the loop if the widget is hidden.
5036 (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
5037 instead of GTK_RESPONSE_NONE; since we're already adding a bunch
5038 of GTK_RESPONSE_* stuff, this seems cleaner, and lets you
5039 special-case delete event.
5041 * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
5044 Sun Nov 5 05:32:39 2000 Tim Janik <timj@gtk.org>
5046 * gtk/testgtk.c (uposition_stop_configure): provide a toggle
5047 button to temporarily disable position recording in the
5048 "saved position" test.
5050 Sat Nov 4 05:37:17 2000 Tim Janik <timj@gtk.org>
5052 * gtk/gtkthemes.c: added compat code that temporarily implements
5053 GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
5054 going to be revamped by owen's upcoming GtkModule patches, but
5055 untill then people want gtk to build, right? ;)
5057 2000-11-04 Havoc Pennington <hp@pobox.com>
5059 * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
5062 * docs/Changes-2.0.txt: Add note about
5063 gtk_container_get_toplevels()
5065 * gtk/gtktextview.h: formatting
5067 * gtk/gtktextview.c: don't start descriptions with "Returns",
5070 Sat Nov 4 10:12:27 2000 Owen Taylor <otaylor@redhat.com>
5072 * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
5073 look for glib-2.0.m4 not glib.m4. (Ali Abdin)
5075 2000-11-03 Havoc Pennington <hp@redhat.com>
5077 * gtk/gtktexttagtable.c: Docs
5078 (gtk_text_tag_table_size): return a signed int
5080 * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
5081 (gtk_text_tag_event): make the event_object a GObject
5083 * gtk/gtktextview.c: Write API docs for all functions.
5085 * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
5086 for gtk_text_view_get_window_type() called on one of the private
5089 * gtk/gtktextview.c: Instead of accessing text_view->buffer
5090 directly, call get_buffer() which demand-creates a default
5091 buffer. So gtk_text_view_new() can be used to create a view with a
5092 default buffer in it, if you just want an empty text box users can
5093 put data in. Useful for GUI builders also.
5095 2000-11-03 Pablo Saratxaga <pablo@mandrakesoft.com>
5097 * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
5098 the charset encodign portion MUST be in lowercase.
5099 * gtk/gtkrc.az: added file for Azeri language
5101 2000-11-03 Havoc Pennington <hp@redhat.com>
5103 Get widgets working on the btree/buffer side. Display of them
5106 * gtk/gtktextview.c: start implementing child widget stuff
5108 * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
5110 * gtk/gtktextlayout.c: handle embedded widgets
5112 * gtk/gtktextdisplay.c: handle embedded widgets
5114 * gtk/gtktextchild.c: Implement all the child anchor goo
5116 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
5119 * gtk/gtktextbtree.c: Add child anchor table to the btree struct
5120 (insert_pixbuf_or_widget_segment): abstract out common portions of
5121 creating a child anchor or a pixbuf segment.
5122 (gtk_text_btree_create_child_anchor): new function
5123 (gtk_text_btree_unregister_child_anchor): new function
5125 * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
5126 allocate_child signal on GtkTextLayout
5128 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
5130 (gtk_text_iter_get_child_anchor): new function
5132 * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
5133 default handler for the changed signal, which calls
5134 gtk_text_buffer_set_modified(), instead of just always emitting
5135 changed then calling set_modified() manually. I guess this is
5136 maybe more flexible. It seems logical.
5138 Fri Nov 3 08:58:38 2000 Tim Janik <timj@gtk.org>
5140 * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
5143 * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
5145 Thu Nov 2 14:10:51 2000 Owen Taylor <otaylor@redhat.com>
5147 * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
5150 2000-11-02 Havoc Pennington <hp@redhat.com>
5152 * gtk/testgtk.c (create_labels): had a test backward
5154 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
5155 fields, so the dest GC ends up with the correct clip origin,
5156 etc. Fixes a bug where colored labels didn't redraw
5159 2000-11-02 Alexander Larsson <alexl@redhat.com>
5161 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5162 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
5163 gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
5164 Add last argument to t_type_register_static call.
5166 * gdk/linux-fb/gdkdrawable-fb2.c:
5167 Add last argument to t_type_register_static call.
5168 export the get_image drawable virtual function.
5170 * gdk/linux-fb/gdkimage-fb.c:
5171 Add last argument to t_type_register_static call.
5172 rename gtk_image_get to _gdk_fb_get_image and
5173 export it for use by gdkdrawable-fb2.
5175 * gdk/linux-fb/gdkprivate-fb.h:
5176 export _gdk_fb_get_image.
5178 * gdk/linux-fb/gdkselection-fb.c:
5179 Add new api call stubs.
5182 Missing ( in linux-fb part.
5184 * modules/linux-fb/Makefile.am:
5185 Must link with gdk_pixbuf or get unresolved symbol.
5187 2000-11-01 Havoc Pennington <hp@pobox.com>
5189 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use
5190 GTK_TYPE_TEXT_ITER and BOXED marshallers
5192 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
5194 * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
5196 * gtk/gtk-boxed.defs: add GtkTextIter
5198 * gtk/gtkmarshal.list: Add marshallers for text widget that
5199 properly use OBJECT and BOXED
5201 2000-11-01 Havoc Pennington <hp@redhat.com>
5203 * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
5205 * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
5206 before returning it.
5208 2000-11-01 Havoc Pennington <hp@redhat.com>
5210 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5211 Clip the rectangle to be rendered to the drawable, since
5212 get_from_drawable() requires a region within the drawable
5214 2000-11-01 Havoc Pennington <hp@redhat.com>
5216 * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
5219 Wed Oct 25 20:10:57 2000 Owen Taylor <otaylor@redhat.com>
5221 * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
5224 2000-11-01 Havoc Pennington <hp@pobox.com>
5226 * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
5228 (gtk_label_finalize): unref the attr list if any.
5230 * gtk/testgtk.c (create_get_image): close test on second click
5231 (make_message_dialog): close dialog if it exists
5233 * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
5235 * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
5238 * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
5239 from Pango markup format
5240 (gtk_label_set_markup_with_accel): ditto but with accelerator
5243 * gtk/gtkimage.c (gtk_image_expose): reformatting.
5245 * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
5246 reflect current state of GDK - use gdk_drawable_get_colormap, etc.
5247 Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
5248 call gdk_window_get_origin().
5250 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5251 implement GDK_PIXBUF_ALPHA_FULL
5253 Wed Nov 1 03:43:42 2000 Tim Janik <timj@gtk.org>
5255 * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
5256 g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
5257 g_signal_handlers_disconnect_matched to block/unblock and disconnect
5258 multiple handlers respectively, instead of only treating the
5259 first handler found (bug reported by owen).
5261 Mon Oct 30 19:23:50 2000 Jonathan Blandford <jrb@redhat.com>
5263 * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
5265 * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
5267 * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
5268 gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
5269 gtk/gtktreeviewcolumn.h: Fixed inline docs.
5271 * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
5272 widget. Needs writing someday.
5274 * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
5277 2000-10-30 Havoc Pennington <hp@redhat.com>
5279 * gtk/gtktextview.h, gtk/gtktextview.c:
5280 Rename delete_at_cursor delete_from_cursor, and
5281 move to move_cursor.
5283 2000-10-30 Havoc Pennington <hp@redhat.com>
5285 * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
5286 gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
5287 gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
5288 gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
5289 gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
5290 gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
5291 gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
5292 gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
5293 gtktexttypes.h, gtktextview.c, gtktextview.h:
5295 Massive reindentation and reformatting. Arg alignment and comments
5296 still need fixing in various places.
5298 2000-10-30 Havoc Pennington <hp@redhat.com>
5300 * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
5301 to be named insert_at_cursor and delete_at_cursor so C++ can
5304 2000-10-28 Tor Lillqvist <tml@iki.fi>
5306 * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
5307 to get a double directory separator in case the home directory
5308 ends with one. This would cause trouble especially on Windows,
5309 where the path will be confused with the syntax for an an UNC
5310 (network share) path \\server\share\path.
5311 (gtk_rc_add_initial_default_files): Ditto.
5313 Sat Oct 28 02:33:09 2000 Robert Brady <robert@suse.co.uk>
5315 * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
5317 * gtk/gtktextview.c: Use correct marshallers.
5319 Fri Oct 27 17:56:26 2000 Jonathan Blandford <jrb@redhat.com>
5321 * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to
5322 use new iter stuff, and added all the appropriate signals et al.
5324 * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
5325 code is internal to gtk only.
5327 2000-10-28 Tor Lillqvist <tml@iki.fi>
5330 * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
5331 glib-genmarshal etc.
5333 Fri Oct 27 20:15:00 2000 Tim Janik <timj@gtk.org>
5335 * gtk/Makefile.am: added dependancies for testtextbuffer which broke
5338 Fri Oct 27 18:51:44 2000 Tim Janik <timj@gtk.org>
5340 * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
5342 2000-10-27 Robert Brady <robert@suse.co.uk>
5344 * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic),
5345 en_GB (British), ia (Interlingua).
5347 2000-10-26 Havoc Pennington <hp@redhat.com>
5349 * gtk/gtktextiter.c (my_strrstr): fix constness warning
5352 nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
5354 * gtk/gtktextsegment.c (char_segment_new): rename
5355 (_char_segment_new_from_two_strings): rename
5356 (_toggle_segment_new): rename
5358 * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
5359 (make_clipboard_widget): make it static
5360 (text_get_func): static
5361 (text_clear_func): static
5363 * gtk/gtkcolorsel.c (adjustment_changed): make this function
5365 (hex_changed): make it static
5366 (hsv_changed): make it static
5367 (opacity_entry_changed): make it static
5369 * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
5370 (toggle_segment_check_func): rename with _gtk
5372 * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
5373 (_widget_segment_new): rename
5374 (_widget_segment_add): rename
5375 (_widget_segment_remove): rename
5376 (_widget_segment_ref): rename
5377 (_widget_segment_unref): rename
5379 * gtk/gtktextmark.c (_mark_segment_new): Rename
5380 _gtk_mark_segment_new
5382 2000-10-26 Havoc Pennington <hp@redhat.com>
5384 * gtk/gtkmarshal.list: add new marshallers used by the text widget
5385 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5388 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
5391 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
5392 gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
5393 license on these files.
5395 * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
5398 * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to
5399 runtime random number different for each tree, instead of
5400 a constant I made up.
5402 Thu Oct 26 07:36:16 2000 Tim Janik <timj@gtk.org>
5404 * gtk/Makefile.am: buncha cleanups, kludged build sources
5405 dependencies with a Makefile: oldest-source-stamp dependancy
5406 for the moment. automake is really fighting us here, with
5407 intentionally not allowing user-defined rules or dependancies
5408 prior to it's -include $(DEP_FILES) statement. sucks rocks!
5410 * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
5411 to public headers. tehy have a comment stating that they are
5412 "semi-public" aren't included by gtk.h and if enums popup there,
5413 they can be /*< skip >*/-ed.
5415 * gtk/gtktextlayout.h:
5416 * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
5417 added LGPL... <SIGH>
5419 Wed Oct 25 20:40:25 2000 Jonathan Blandford <jrb@redhat.com>
5421 * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
5422 GtkTreeIter. Added iterators everywhere.
5424 * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
5426 * gtk/gtktreeviewselection.c: Changed to use the iterators.
5428 * gtk/gtktreestore.c: Changed to use the iterators.
5430 * gtk/gtkliststore.c: Commented out the code. Will convert to
5433 * gtk/gtkmodelsimple.c: Commented out the code. Will convert to
5436 * gtk/treestoretest.c: Changed to use iterators.
5438 * demos/testgtk/main.c: Moved to use the new iterator system.
5440 Thu Oct 26 02:10:32 2000 Tim Janik <timj@gtk.org>
5442 * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
5443 localization misbehaviour.
5445 * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
5446 a useless type without copy/free.
5448 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
5449 of GTK_TYPE_CTREE_NODE.
5451 Thu Oct 26 00:51:52 2000 Tim Janik <timj@gtk.org>
5454 (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
5457 * gtk/gtk-boxed.defs (GtkSelectionData): specify
5458 gtk_selection_data_copy and gtk_selection_data_free
5459 do GtkSelectionData work as params in signals.
5461 Wed Oct 25 20:47:41 2000 Tim Janik <timj@gtk.org>
5463 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
5464 implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
5465 couldn't they at least give it a non-standard name?
5467 * gtk/gtktextlayout.c: arg! yet another implementation of
5468 gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
5470 * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
5471 gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
5472 home. now i know this _is_ a conspiracy.
5474 * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
5477 * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
5478 (gtk_accel_group_create_add): marshaller signature fixups.
5480 * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
5481 pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
5483 * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
5486 Tue Oct 24 23:59:21 2000 Tim Janik <timj@gtk.org>
5488 * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
5489 due to the signal system changes, it wouldn't build currently. to
5492 * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
5494 * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
5495 so it needs gtk_marshal_VOID__ENUM() instead of
5496 gtk_marshal_NONE__UINT().
5498 * gdk/gdk*.c: adapted type registration functions.
5500 * gtk/gtkbindings.c:
5501 * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
5504 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
5507 (gtk_object_destroy):
5508 (gtk_object_shutdown): fixed recursion guards. basically we have to
5509 catch the case where any of GObject.shutdown() or gtk_object_destroy()
5510 is called during ::destroy, and avoid recursion there.
5512 * gtk/gtktypeutils.c:
5513 * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
5514 boxed_copy/boxed_free. this needs a more general solution based on a
5515 publically installed code-generator utility.
5517 * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
5518 glib's gobject has support for that now.
5519 define GtkSignalMarshaller in terms of GSignalCMarshaller.
5521 Mon Oct 23 09:36:42 2000 Tim Janik <timj@gtk.org>
5523 * gtk/gtksignal.[hc]:
5524 * gtk/gtkmarshal.[hc]:
5525 * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
5526 compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
5527 removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
5530 * *.c: marshaller name fixups.
5532 * gtk/gtkmarshal.list: added a comment briefing the format.
5534 Sun Oct 22 23:14:39 2000 Tim Janik <timj@gtk.org>
5536 * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
5537 compatibility macros here now. more specifically, most of
5538 the API is preserved (yes, _most_, nonwithstanding the
5539 following exceptions listed, the API is stil lHUGE ;)
5540 things that got removed completely:
5541 GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
5542 gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
5543 gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
5544 gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
5545 gtk_signal_remove_emission_hook().
5546 non-functional functions variants:
5547 gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
5548 the GtkCallbackMarshal argument to gtk_signal_connect_full() is
5549 not supported anymore.
5550 (gtk_signal_compat_matched): new internal function to aid
5551 implementation of the compatibility macros, it provides
5552 functionality to block/unblock/disconnect handlers based
5555 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
5557 * *.c: adaptions to new type registration API signatures.
5559 Fri Oct 20 15:26:33 2000 Tim Janik <timj@gtk.org>
5561 * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
5563 2000-10-25 Robert Brady <robert@suse.co.uk>
5565 * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
5566 gdk_property_delete): If window == NULL, assume the root window.
5567 (restoring the behaviour that was in 1.2).
5569 * gtk/testtext.c (save_buffer): Allow creation of new files when
5572 (fill_file_buffer): Don't die if a UTF-8 sequence is split across
5575 2000-10-25 Tor Lillqvist <tml@iki.fi>
5577 * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
5579 * gdk/win32/gdkdrawable-win32.c
5580 * gdk/win32/gdkimage-win32.c
5581 * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
5584 * gdk/win32/gdkcc-win32.c
5585 * gdk/win32/gdkcolor-win32.c
5586 * gdk/win32/gdkfont-win32.c
5587 * gdk/win32/gdkinput-win32.c
5588 * gdk/win32/gdkmain-win32.c
5589 * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
5591 2000-10-24 Havoc Pennington <hp@redhat.com>
5593 * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
5594 it a static function
5596 * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5597 redraw text when a tag is applied to it.
5599 * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5600 (gtk_text_tag_affects_nonsize_appearance): private functions to
5601 see if a tag requires various kinds of redraw/layout to be queued
5604 * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5606 * gtk/testtext.c (fill_example_buffer): Put the cursor
5607 at the start of the buffer, so search works by default
5609 * gtk/gtktextiter.c (lines_match): init match_start always
5611 * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5612 function, get iter at a line + a byte index
5614 * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5615 to set byte position within a line
5616 (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5618 2000-10-23 Havoc Pennington <hp@redhat.com>
5620 * gtk/testtext.c: Re-enable the "find" dialog
5622 * gtk/testgtk.c: Add test for gdk_drawable_get_image
5624 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5625 the arguments to gdk_draw_drawable were in the wrong order
5626 (gdk_window_paint_init_bg): This function was ignoring the
5627 init_region, instead of clipping to it, so the entire backing
5628 pixmap was cleared on every begin_paint()
5629 (gdk_window_begin_paint_region): Hmm, the same list-walking bug
5630 was in here again, the loop kept using the same GtkWindowPaint
5632 (gdk_window_begin_paint_region): Fix a bug where we had two
5633 x_offset instead of x_offset and y_offset
5635 * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
5636 before we get the image.
5637 (gdk_draw_drawable): get the composite before we draw the drawable.
5638 (gdk_drawable_real_get_composite_drawable): default
5639 get_composite_drawable implementation that returns the drawable
5642 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
5643 get_composite_drawable virtual function
5645 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
5648 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
5649 make this work if the source drawable is a GdkDrawableImplX11
5650 instead of a public drawable type. This is really broken; the
5651 problem is that GdkDrawable needs a virtual method get_xid(), but
5652 of course that doesn't work in practice. Enter RTTI.
5654 Also, improve mismatched depth message.
5656 * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
5659 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
5660 install _gdk_x11_get_image as our implementation of get_image
5662 * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
5663 _gdk_x11_get_image and export for use in gdkdrawable-x11.c
5665 * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
5666 gdk_drawable_get_image
5668 * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
5670 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
5673 * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
5674 trailing semicolon after for loop
5676 Mon Oct 23 12:07:57 2000 Owen Taylor <otaylor@redhat.com>
5678 * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
5679 where font_desc for widget's context lagged widget's font_desc by
5682 2000-10-22 Tor Lillqvist <tml@iki.fi>
5684 * gdk/win32/gdkgc-win32.c
5685 * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
5687 * gtk/makefile.mingw.in
5688 * gtk/gtk.def: Updates.
5690 * gtk/testgtk.c: sleep() is called _sleep in MS's C
5693 * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
5695 * gtk/makefile.msc: Remove
5697 * gtk/makefile.msc.in: New file, like makefile.mingw.in.
5699 * gtk/Makefile.am: Add it.
5701 * configure.in: Generate it.
5703 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
5704 * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
5705 something even if not implemented, to satisfy picky MSVC.
5707 Patches by Hans Breuer:
5709 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
5710 SetBkMode() and SetTextAlign() before calling
5711 pango_win32_render().
5713 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
5714 Set hcliprgn to NULL after destroying it.
5715 (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
5717 * gdk/win32/gdkgeometry-win32.c
5718 (_gdk_windowing_window_queue_antiexpose): More effective
5721 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
5722 depth as default, not the visual's.
5724 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
5725 against empty title.
5727 * gdk/win32/gdkprivate-win32.h: Define a helper macro,
5730 * gdk/win32/gdkimage-win32.c: Use it.
5732 2000-10-22 Robert Brady <robert@suse.co.uk>
5734 * configure.in: Check for bind_textdomain_codeset
5736 * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset
5737 present, make use of it.
5739 Add a translatable string "default:LTR" which, if translated
5740 to "default:RTL", will cause the default direction to be
5743 * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget
5744 direction if marked as flippable.
5746 * gtk/gtkhscale.c: Mark widget as flippable.
5748 2000-10-04 Havoc Pennington <hp@redhat.com>
5750 * gtk/testgtk.c (create_buttons): create some stock buttons
5751 with the default accel group
5752 (create_image): test some new GtkImage features
5753 (make_message_dialog): test GtkMessageDialog
5754 (create_modal_window): fix someone's bizzarro indentation
5756 * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement
5757 GTK_WIN_POS_CENTER_ON_PARENT.
5758 Add "destroy with parent" setting, which means the window goes
5759 away with its transient parent.
5760 (gtk_window_get_default_accel_group): get the default accel group
5762 (gtk_window_set_destroy_with_parent): set/unset destroy with
5764 (gtk_window_read_rcfiles): invalidate icon set caches
5765 after reloading rcfiles
5767 * gtk/gtkenums.h (GtkWindowPosition): add
5768 GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog
5769 on its parent window when the dialog is mapped for the first time.
5771 * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add
5772 a simple message dialog class
5774 * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event
5775 handler to emit response signal, and maybe later it would
5776 honor a hide_on_delete flag - though that isn't there yet.
5777 Set border width on the vbox to 2, so we get some padding.
5778 Use a button box for the action area.
5779 (gtk_dialog_key_press): synthesize a delete event if Esc
5780 is pressed and the GtkWidget key press handler didn't
5781 handle the escape key.
5782 (gtk_dialog_new_with_buttons): new function creates a dialog
5783 with some default buttons in it.
5784 (gtk_dialog_add_action_widget): add an activatable widget
5785 as a button in the dialog - you can also add a non-activatable
5786 widget by accessing the action area directly.
5787 (gtk_dialog_add_button): add a simple button - stock ID or
5788 label - to the action area
5789 (gtk_dialog_response): emit response signal
5790 (gtk_dialog_run): block waiting for the dialog, return
5791 the response. Override normal delete_event behavior, so that
5792 delete_event does nothing inside gtk_dialog_run().
5794 * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
5795 emitted when an action widget is clicked or the dialog gets
5798 * gtk/gtk.h: add gtkmessagedialog.h
5800 * gtk/Makefile.am: add gtkmessagedialog.[hc]
5802 2000-10-18 Havoc Pennington <hp@redhat.com>
5804 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
5805 where any number of empty lines would get skipped
5807 * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
5810 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
5811 warning about invalid iterators (explain more thoroughly)
5812 (gtk_text_iter_in_region): rename gtk_text_iter_in_range
5814 * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
5817 * demos/*.c: Add error handling
5819 * gtk/gtktextbuffer.c: don't modify const iterators
5821 * gtk/gdk-pixbuf-loader.c: Add full error handling here
5823 * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
5826 * gtk/gtkiconfactory.c: Update to reflect addition of error
5827 handling to gdk-pixbuf loaders
5829 Wed Oct 18 11:14:05 2000 Owen Taylor <otaylor@redhat.com>
5831 * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
5832 move to new modularized testgtk.
5834 2000-10-17 Jonathan Blandford <jrb@redhat.com>
5836 * gtk/gtktreeview.c: Draw the arrows correctly.
5838 * gtk/gtktreemodel.c: Added user docs.
5840 * gtk/gtk.h: remove gtktreedatalist.h.
5842 * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
5843 parent when generating my type.
5845 * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5846 POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5848 2000-10-16 Jonathan Blandford <jrb@redhat.com>
5850 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5851 GtkTreeModel from object to interface.
5853 2000-10-16 Havoc Pennington <hp@redhat.com>
5855 * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing
5858 2000-10-16 Jonathan Blandford <jrb@redhat.com>
5860 * gtk/gtktreeselection.c: Add API documentation to all public
5863 * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5866 2000-10-15 Jonathan Blandford <jrb@redhat.com>
5868 * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5869 proposed by Guy Harris <gharris@flashcom.net>. Also, added API
5870 docs to all public functions.
5872 * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5873 gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5874 gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5875 gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5876 gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5879 2000-10-14 Robert Brady <robert@suse.co.uk>
5881 * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5883 2000-10-12 Jonathan Blandford <jrb@redhat.com>
5885 * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5886 values other then G_TYPE_STRING.
5887 * gtk/gtktreeselection.c: Minor commenting updates.
5888 * gtk/gtktreeview.c: Format updates.
5890 2000-10-09 Tor Lillqvist <tml@iki.fi>
5892 * README.win32: Update.
5894 * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5895 lines that had been deleted by mistake (?).
5897 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5898 also the case fg==white and bg==black (but still not randomly
5899 coloured cursors). Thanks to Wolfgang Sourdeau.
5901 * gdk/win32/*.c: Silence gcc -Wall.
5903 * gtk/gtk.def: Add missing entry points.
5905 Fixes by Hans Breuer:
5908 * gdk/win32/makefile.msc: Update.
5910 * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5911 some MSVC thing, presumably), cause breakpoint on failures. Add
5912 GDK_NOR case. Call g_log_set_always_fatal.
5914 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5915 should be pased by reference.
5917 * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5919 * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5921 * gdk/win32/gdkevents-win32.c
5922 * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5924 * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5925 implementation object.
5927 * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5930 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5931 Use the wrapper object.
5933 2000-10-06 Havoc Pennington <hp@redhat.com>
5935 * Makefile.am (SRC_SUBDIRS): contrib subdir
5937 * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5938 so it can be used in Xlib version
5940 * demos/testpixbuf.c (update_timeout): error checking from 1.0
5943 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5944 change from 1.0 tree that returns first frame of animation
5945 if the loaded file is an animation.
5947 * contrib: add new directory to hold stuff that comes with GTK+
5948 but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5950 * configure.in: add contrib/*
5952 2000-10-05 Havoc Pennington <hp@redhat.com>
5954 * demos/testpixbuf-save.c: add pixbuf save test
5956 * demos/Makefile.am: add testpixbuf-save.c
5958 2000-10-05 Jonathan Blandford <jrb@redhat.com>
5960 * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5961 GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5962 * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5963 * gtk/gtktreeselection.[ch]: Replaced
5964 "node_selected"/"node_unselected" signal with "selection_changed"
5967 2000-10-04 Jonathan Blandford <jrb@redhat.com>
5969 * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5972 2000-10-04 Jonathan Blandford <jrb@redhat.com>
5974 * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5977 Wed Oct 4 15:52:15 2000 Owen Taylor <otaylor@redhat.com>
5979 * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5980 Move list pointer forwards before removing item from
5981 list. (Crash reported by Salmaso Raffaele)
5983 * gdk/gdkwindow.h: Remove spurious trailing ,
5985 * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
5986 dependencies on uninstalled libraries, sorry folks.
5988 2000-10-04 Havoc Pennington <hp@redhat.com>
5990 * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5991 gtk/gtkiconfactory.c: Fix copyrights
5993 * demos/testpixbuf.c: add inline pixbuf test
5995 Mon Sep 25 15:05:17 2000 Owen Taylor <otaylor@redhat.com>
5997 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
5998 Add gdk_window_iconify.
6000 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6001 (gdk_window_set_geometry_hints): Add win_gravity
6002 to geometry structure.
6004 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6005 Implement _NET_WM_PING.
6007 * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6008 Set _NET_WM_PID on the client leader.
6010 * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6011 Handle UTF-8 better.
6013 * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6014 UTF-8 better, set _NET_WM_NAME as well. Only set
6015 icon name if it hasn't previously been explicitely
6018 2000-10-03 Havoc Pennington <hp@redhat.com>
6020 * gtk/testtextbuffer.c: clean up trailing whitespace,
6021 add extensive tests for tag toggle iteration.
6023 * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
6026 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6027 optimize case where the tag root is on level 1
6028 (gtk_text_line_previous_could_contain_tag): attempt to implement
6029 (gtk_text_line_next_could_contain_tag): Abstract out node_compare
6032 * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
6033 Implement this, though not very efficiently.
6035 * gtk/gtktextiterprivate.h: reformat
6037 * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
6040 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
6041 this to properly revalidate the iterators.
6043 * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
6044 properly at the end of the line (and therefore on empty lines)
6046 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
6047 maybe we should return a value...
6049 2000-10-03 Tor Lillqvist <tml@iki.fi>
6051 * config.h.win32: Guard definition of alloca(). glib.h now handles
6055 * gtk/gtk.def: Add new entry points.
6057 Changes just to make GTK+ build without errors on Win32. No hope
6058 of it working in its current state, though...:
6060 * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add
6061 some functions from the X11 backend, just to make GTK+ build.
6063 * gdk/makefile.mingw.in
6064 * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
6065 number. Add new object files.
6067 * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
6068 GetMessageTime to get timestamp (where on X11 uses
6069 gdk_x11_get_server_time()).
6071 2000-10-02 Havoc Pennington <hp@pobox.com>
6073 * gtk/gtktextview.c: text_window_* weren't static and should have
6075 Start work on child widgets; not yet complete, syncing to
6078 * gtk/gtktextchild.h: change this to contain a public interface,
6079 starting work on child interfaces.
6080 * gtk/gtktextchildprivate.h: move private interfaces here
6082 * gtk/Makefile.am: update to reflect gtktextchildprivate.h
6084 * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
6085 gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
6086 gtk/gtktextmark.c: copyright notices
6088 * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
6091 * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
6094 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6097 2000-09-30 Havoc Pennington <hp@pobox.com>
6099 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
6100 NULL start/end pointers
6102 * gtk/gtktextbuffer.c: Write some docs
6103 (gtk_text_buffer_get_selection_bounds): Allow start/end to be
6104 NULL, so you can just check whether there's a selection.
6106 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
6107 cleanup_line or segments_changed ourselves, it gets done
6110 * gtk/gtktextmark.h:
6111 s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
6113 * gtk/gtktextsegment.h: Clean up some indentation and naming mess
6115 * gtk/gtktextmark.c: delete some more old Tk cruft
6117 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
6118 mark before removing it, so we can emit MARK_DELETED with a valid
6120 (gtk_text_buffer_mark_set): hold ref across signal emission
6122 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
6123 whining about attempts to delete special marks
6125 * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
6126 underscore, since it's internal.
6128 * gtk/gtktextbuffer.h: Remove find_string prototype, this is
6129 now implemented in terms of iterators in gtktextiter.h
6131 * gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
6132 New function, destructively sets contents of buffer. Also
6133 a convenient way to clear the buffer by setting text to ""
6135 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
6136 multiline string literal
6138 * gtk/testtext.c (text_changed_callback): Redraw line numbers if
6141 * gtk/gtktextiter.c (forward_char): Return FALSE if new location
6142 is not dereferenceable
6143 (gtk_text_iter_forward_lines): fix return value
6145 2000-09-29 Havoc Pennington <hp@redhat.com>
6147 * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
6149 * gtk/gtktextview.c: Implement drag thresholding; change functions
6150 that set border window size to have nicer name
6151 (gtk_text_view_mark_set_handler): Fix this to have the
6154 * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
6156 * gtk/testtext.c: Update with API changes, put line numbers on
6159 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
6162 * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
6163 pixbuf; delete a big block of #if 0 Tk code
6165 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
6166 insert_pixmap with insert_pixbuf
6168 2000-09-29 Martin Baulig <baulig@suse.de>
6170 * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
6171 confusion with the GdkPixbuf of the GNOME 1.x platform.
6173 2000-09-29 Havoc Pennington <hp@pobox.com>
6175 * gtk/gtktextview.c: Implement the side windows.
6177 * gtk/testtext.c: Implement simple line numbering in the
6178 left side window; seems to make scrolling sloooow. Oops.
6179 Also, cursor blink is for some reason causing redraws
6180 of the line numbers. Should investigate...
6182 2000-09-28 Havoc Pennington <hp@redhat.com>
6184 * gtk/gtktextview.c: Set up infrastructure to deal with lots of
6185 scrolling child windows, and draw focus rectangle properly.
6187 (gtk_text_view_buffer_to_window_coords):
6188 Coordinate transformation to deal with all these freaking windows
6190 (gtk_text_view_window_to_buffer_coords): transform the other way
6192 * gtk/testtext.c (create_buffer): Update to match Pango API change
6194 * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
6196 (foreach_unref): don't emit remove signal from finalize, just
6197 set tag's parent to NULL
6199 2000-09-26 Havoc Pennington <hp@redhat.com>
6201 * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
6204 2000-09-26 Havoc Pennington <hp@redhat.com>
6206 * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
6207 headers into the private header list
6209 * Makefile.am (pkgconfig_DATA): install pkg-config files
6211 * configure.in: add pkg-config files
6213 * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
6215 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
6216 outstanding icon caches on theme change.
6218 * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
6221 (GtkIconSource): Specification for creating a pixbuf
6222 appropriate for a direction/state/size triplet from
6223 a source pixbuf or filename
6225 (GtkIconSet): List of GtkIconSource objects that are used to
6226 create the "same" icon (e.g. an OK button icon), and cache for
6229 (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
6230 up the icon set for a given stock ID. GTK maintains a stack of
6231 GtkIconFactory to search, and applications or libraries can add
6232 additional icon factories on top of the stack
6234 * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
6235 the set of GtkIconSource specified for a given stock ID into
6236 a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
6237 RcStyle, under the specified stock ID.
6239 * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
6240 render_icon used to derive a GdkPixbuf from a GtkIconSource.
6241 This allows people to theme how prelight, insensitive, etc. are
6244 (gtk_style_lookup_icon_set): Look up a stock ID in the list of
6245 icon factories for a style, and return the resulting
6248 (gtk_style_render_icon): Render an icon using the render_icon
6249 method in the GtkStyleClass.
6251 * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
6252 Use the style for a given widget to look up a stock ID, get the
6253 icon set, and render an icon using the render_icon method
6256 * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
6257 (contains information about a stock item), the built-in stock item
6258 IDs, and functions to add/lookup stock items.
6260 * gtk/stock-icons/*: Stock icons that come with GTK
6262 * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
6263 a button based on a GtkStockItem
6264 (gtk_button_new_accel): Takes a uline string and accel group, and
6265 installs the accelerator.
6267 * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
6268 image-display widget.
6270 2000-09-25 Havoc Pennington <hp@redhat.com>
6272 * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
6274 * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
6275 Fix a bug when removing node data, we didn't properly
6276 re-splice the linked list after removing the data.
6278 * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
6279 GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
6281 * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
6283 * gtk/gtktextlayout.c (set_para_values): Set tab array
6284 for the layout from the GtkTextTag.
6286 * gtk/gtktexttypes.h: delete tab and search cruft,
6287 remove g_convert() in favor of GLib version
6289 * gtk/gtktexttypes.c: remove tab implementation from here,
6292 * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
6293 tab stuff using new PangoTabArray from Pango
6295 * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
6296 unused border_width stuff
6298 Thu Sep 14 12:21:12 2000 Owen Taylor <otaylor@redhat.com>
6300 * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
6301 glib) and now useless utf_to_latin1() latin1_to_utf()
6303 * gtk/gtktextview.[ch]: Change ::move_insert and
6304 ::delete_text action signals to ::move and ::delete;
6305 create the signals with the right enumeration type,
6306 not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
6307 C-v bindings, change Home, End to move to beginning/end
6308 of line, Add C-Home C-End to move to beginning/end
6309 of buffer. Change ::cut_text to ::cut_clipboard, etc;
6310 combine ::scroll_text into ::move; use new GtkSelectionData
6311 functions to simplify DND text handling.
6313 * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
6314 deletion enumerations here, rename enumeration values to
6315 be consistently plural.
6317 * gtk/gtktextbuffer.c: Use new clipboard interfaces
6318 for cut/copy/paste and primary selection.
6320 * gtk/gtktextbuffer.[ch]: Remove excess time and
6321 'interactive' arguments from cut/copy/paste;
6322 rename cut to cut_clipboard, etc; remove
6323 gtk_text_buffer_get_clipboard_contents().
6325 * gtk/gtktextlayout.[ch]: Add
6326 gtk_text_layout_move_iter_to_line_end() to move the iter to
6329 * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
6330 Functions to set or get a UTF-8 string on the selection
6333 * gtk/gtkclipboard.[ch]: New, simplified selection handling
6336 * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
6337 created widgets - one of these is useless if we don't.
6339 * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
6340 a public function clear all targets registered for the
6343 * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
6344 Never call gtk_widget_realize() - that was just asking
6345 for bizarre side-effects.
6347 * gtk/gtkselection.c (gtk_selection_owner_set): Call
6348 gdk_selection_owner_set even if the widget is the
6349 same so that we reliably update the timestamp on
6352 * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a
6353 gdk_x11_get_server_time() function.
6355 * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
6356 gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
6357 Add some tricky filtering on serial numbers for
6358 selection clear events to fix up long-standard
6359 race condition FIXME's in gtkselection.c.
6361 * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
6362 routines to convert from utf8 to compound text or
6363 STRING and from a text property to UTF-8.
6365 * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add
6366 a convenience function gdk_get_current_event_time().
6368 * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
6369 and free selection_data->data properly
6371 Sat Sep 9 10:23:53 2000 Owen Taylor <otaylor@redhat.com>
6373 * gtk/gtkthemes.c: Remove some unecessary includes.
6375 2000-09-08 Jonathan Blandford <jrb@redhat.com>
6377 * gtk/gtktextdisplay.c
6378 * gtk/gtktextlayout.c
6381 * gtk/testtext.c: Change the overstrike property to strikethrough,
6382 to closer match pango.
6384 Fri Sep 8 14:28:00 2000 Owen Taylor <otaylor@redhat.com>
6386 * gtk/gtktextview.c: Fix up visibility so that focus,
6387 cursor_visible and blink interact properly. Reenable cursor blink
6388 which had been roughly disabled. Make blink and focus
6391 * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
6392 Add a flag for whether to display insertion cursor and
6393 a function to set the flag.
6395 * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
6396 get_line_y() to get_line_yrange(), to be a bit more generally
6399 Thu Sep 07 20:54:33 2000 George Lebl <jirka@5z.com>
6401 * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region
6402 do stop_navigating_submenu, to clear last timeout properly.
6403 Also in gtk_menu_motion_notify move ignore_enter above
6404 the conditional to make it always happen as suggested by Owen
6406 2000-09-07 Tor Lillqvist <tml@iki.fi>
6408 * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
6410 * gdk/win32/gdkwin32.h: Add more definitions missing from the free
6413 * gdk/win32/gdkprivate-win32.h: Add a couple of missing
6416 * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
6417 (gdk_win32_get_colormap): A line had been deleted by mistake.
6419 * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
6420 (gdk_event_translate): Handle more virtual keycodes to be able to
6421 generate GDK events for Control-comma, Control-period, etc.
6423 * gtk/gtk.def: Add some missing entry points.
6425 Thu Sep 7 11:47:02 2000 Owen Taylor <otaylor@redhat.com>
6427 * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
6428 Doc comment fixing. (Mostly non-matching parameter names.)
6430 * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
6431 comments a little to avoid looking like a doc comment.
6433 * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
6434 GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
6435 conversions be changed to GError?)
6437 * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT):
6438 Move private #defines into .c file.
6440 * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
6441 order of argument addition, remove duplicates.
6443 * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
6444 parent class is FrameClass, not BinClass.
6446 * gtk/gtk.h: Add gtkinvisible, which was missing.
6447 (It's occasionalyl useful for client apps, if seldom.)
6449 * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
6452 Wed Sep 6 09:53:15 2000 Owen Taylor <otaylor@redhat.com>
6454 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
6455 coordinates when creating window, instead of GDK-space
6456 coordinates. (Avoid BadValue on too large windows.)
6458 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6460 * configure.in (use_mmx_asm): Remove conftest* after use along the
6461 lines of AC_TRY_COMPILE.
6463 * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
6464 of g_dirname, which is deprecated.
6465 (gtk_rc_parse_any): Removed calls to
6466 g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
6468 * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
6469 Removed calls to g_hash_table_{freeze,thaw}, as they are
6472 * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
6473 instead of g_basename.
6475 2000-09-04 Elliot Lee <sopwith@redhat.com>
6477 * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
6480 Sun Sep 03 00:47:08 2000 George Lebl <jirka@5z.com>
6482 * gtk/gtkwidget.h: Add some documenting comments about
6483 GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
6484 just as owen said on irc.
6486 * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly
6487 set HAS_DEFAULT. Only set it if there isn't another window
6488 holding it (a focus window which RECEIVES_DEFAULT) and only unset
6489 it if the widget is not the focused window with RECEIVES_DEFAULT.
6490 This fixes weird double default bugs in dialogs which has things
6491 call gtk_window_set_default at times.
6493 Fri Sep 1 22:39:07 2000 Owen Taylor <otaylor@redhat.com>
6495 * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
6496 Nils Barth and David Santiago to improve submenu
6497 navigation. The patch does this by creating a triangular
6498 region from the point where the pointer leaves the
6499 menu to the submenu. While the pointer is in
6500 that region and a timeout has not expired, events
6501 that would cause the active submenu to change are
6504 Fri Sep 1 15:34:46 2000 Owen Taylor <otaylor@redhat.com>
6506 * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
6507 moving a toplevel window immediately after sizing it would
6508 result in it being sized back to the old size since
6509 impl->width, impl->height aren't updated until we hear
6510 back from the server. There is still a (longstanding) bug
6511 here that gdk_window_get_size() will give the wrong size
6512 until we do hear back.
6514 2000-08-31 Havoc Pennington <hp@redhat.com>
6516 * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h,
6517 gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c,
6518 gtk/gtktexttagprivate.h, gtk/gtktextview.c:
6519 Rename GtkTextStyleValues to GtkTextAttributes
6521 2000-08-31 Havoc Pennington <hp@pobox.com>
6523 * gtk/gtktextbtree.c (GtkTextBTree): cache end line,
6524 for rapid testing whether an iterator is the end iterator
6525 (gtk_text_btree_new): init end line cache
6526 (gtk_text_line_is_last): use fast cached line to
6527 see if we're the last line.
6528 (get_last_line): use cached line here too, should
6529 speed up some random unrelated code.
6531 2000-08-30 Havoc Pennington <hp@pobox.com>
6533 * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
6536 * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
6537 delete_text signals. This allows the signals to be used for
6540 * gtk/gtktextbuffer.c: Change signal handler signatures;
6541 provide "interactive" argument when emitting insert_text or
6544 2000-08-30 Havoc Pennington <hp@pobox.com>
6546 * gtk/gtktextbuffer.c: Docs
6548 Fri Aug 25 12:16:15 2000 Owen Taylor <otaylor@redhat.com>
6550 * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
6551 from switch statements, since Tor removed the enumeration
6554 * gdk/x11/gdkimage-x11.c (gdk_image_get):
6555 s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
6557 2000-08-29 Elliot Lee <sopwith@redhat.com>
6558 * */*.h: Use G_GNUC_CONST.
6560 2000-08-27 Havoc Pennington <hp@pobox.com>
6562 * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
6563 minor indentation fixes, inserted some FIXME about stuff I
6564 realized was broken while documenting it.
6565 (gtk_text_iter_get_pixmap): allow out params to be NULL, following
6568 Tue Aug 22 12:33:24 2000 Owen Taylor <otaylor@redhat.com>
6570 * gtk/testgtk.c (create_styles): Fix double free of
6573 Mon Aug 21 22:39:18 2000 Owen Taylor <otaylor@redhat.com>
6575 * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
6577 * gtk/testgtk.c (create_styles): Add a test for modifying
6578 the style through gtk_widget_modify_*.
6580 * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
6581 a function to get the current modifier style.
6583 * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
6584 of the passed in GtkRcStyle instead of ref'ing it.
6586 * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
6588 2000-08-20 Tor Lillqvist <tml@iki.fi>
6591 * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
6592 shared memory image+pixmap GdkImage type, or
6593 gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
6596 * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6597 actually call gtk_init_abi_check(), passing also
6598 sizeof(GtkWindow). Ditto for gtk_init_check().
6601 * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6602 New functions, used to check that the GTK+-using code has been
6603 compiled using the correct compiler and switches. In particular,
6604 with gcc one has to use the -fnative-struct switch as GTK+ is
6607 Fri Aug 18 17:27:46 2000 Owen Taylor <otaylor@redhat.com>
6609 * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6610 ->prev fields when merging lists. (Found simultaneously
6611 by Pawel Salek and Jakub Jelinek)
6613 2000-08-12 Tor Lillqvist <tml@iki.fi>
6616 * gtk/gtk.def: Add missing entries.
6618 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6619 OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6621 * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6622 function. Dummy implementation at this point.
6624 * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6625 rules. Undefine GTK_COMPILATION when compiling the test programs.
6627 * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
6629 2000-08-11 Tor Lillqvist <tml@iki.fi>
6631 * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
6632 to convert back and forth from UTF-8 and the "system" (or "current
6633 locale") charset when necessary. Indentation/spacing cleanup.
6635 2000-08-10 Havoc Pennington <hp@redhat.com>
6637 * Makefile.am (snapshot): Change the format of the snapshot
6638 version to match glib
6640 * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
6641 from EXTRA_DIST since it doesn't seem to exist
6643 2000-08-10 Tor Lillqvist <tml@iki.fi>
6645 * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
6646 version of the directory name (not the UTF-8 one) when building
6647 the path name to stat().
6649 2000-08-03 Elliot Lee <sopwith@redhat.com>
6651 * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
6652 PANGO_ATTR_SHAPE set.
6654 Thu Aug 3 09:17:06 2000 Owen Taylor <otaylor@redhat.com>
6656 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
6657 Peter Osterlund to simplify the code while keeping the
6658 functionality the same.
6660 Wed Aug 2 14:57:38 2000 Owen Taylor <otaylor@redhat.com>
6662 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
6663 is_viewable() test further inside the function, since removing the
6664 window from the redraw list without clearing ->update_area
6665 was also very broken.
6667 2000-08-02 Tor Lillqvist <tml@iki.fi>
6669 * configure.in: Check for <unistd.h>.
6671 2000-08-01 Martin Baulig <baulig@suse.de>
6673 * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
6674 to display the message that this is a development version of GTK+.
6676 Mon Jul 31 18:37:36 2000 Owen Taylor <otaylor@redhat.com>
6678 * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
6679 was depending on widget->allocation instead of the width of text_area,
6680 which was incorrect for subclasses like GtkSpinButton.
6682 * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
6683 with width == 1 tests that should be width == -1.
6685 Mon Jul 31 16:45:48 2000 Owen Taylor <otaylor@redhat.com>
6687 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken,
6688 (broken, Elliot, every single window blank on X) custom code with call
6689 to gdk_window_is_viewable() which a) prevents code duplicate and
6692 2000-07-31 Elliot Lee <sopwith@redhat.com>
6694 * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
6695 to get the GDK_PARENT_ROOT() macro to work.
6696 * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
6697 * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
6698 of, windows that aren't shown.
6699 * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
6702 Mon Jul 31 13:53:16 BST 2000 Tony Gale <gale@gtk.org>
6704 * docs/gtkfaq.sgml docs/gtk-faq.sgml:
6705 s/gtk_main_iteration/g_main_iteration/
6707 Did this already in change:
6708 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
6709 don't know how it got reverted.
6711 2000-07-31 Stanislav Brabec <utx@penguin.cz>
6713 * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
6714 gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
6716 * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
6719 2000-07-30 Pablo Saratxaga <pablo@mandrakesoft.com>
6721 * configure.in,po/{sp,sr}.po: Added Serbian files
6723 2000-07-30 Tor Lillqvist <tml@iki.fi>
6725 * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
6727 * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
6728 Remove the g_pipe_readable_msg stuff. Not needed with new GLib
6729 GIOChannel implementation.
6731 * gdk/win32/gdkinput.c
6732 * gdk/win32/gdkpango-win32.c: Update license name here, too.
6734 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
6735 definition to match prototype.
6737 * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
6739 2000-07-27 Elliot Lee <sopwith@redhat.com>
6741 * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
6742 function, to allow handling image formats that cannot be detected
6743 by looking at content alone.
6745 Thu Jul 27 13:13:21 BST 2000 Tony Gale <gale@gtk.org>
6747 * docs/tutorial/*.gif *.jpg *.eps
6748 Update these to the same look-n-feel.
6749 Why does including images in DocBook suck so badly?
6751 Thu Jul 27 05:06:29 2000 Tim Janik <timj@gtk.org>
6753 * gtk/gtktable.c: applied patch from Phil Thompson
6754 <phil@river-bank.demon.co.uk> that enables space settings for
6755 the last row/columns as well.
6757 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
6759 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
6760 updates the license headers to the GNU Lesser General Public License,
6761 as well as updating the copyright year to 2000.
6763 2000-07-26 Robert Brady <rwb197@zepler.org>
6765 * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
6766 and po/Makefile, was installing and looking for them under gtk20
6767 and gtk2 respectively.
6769 2000-07-25 Havoc Pennington <hp@redhat.com>
6771 * gtk/testtext.c: Comment out some stuff that depends on the rest
6774 2000-07-25 Havoc Pennington <hp@redhat.com>
6776 * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
6779 2000-07-25 Havoc Pennington <hp@redhat.com>
6781 * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
6784 * gtk/gtktextview.h: To be consistent with usage of "line"
6785 throughout the API to mean "newline-terminated thingy", change
6786 MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
6789 (GtkTextView): Add flags for default editability, and whether to
6790 show the cursor. Add functions to get/set that. Add
6792 (gtk_text_view_get_iter_location): new function
6794 * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
6796 (g_convert): Add g_convert temporarily, will go in glib in a bit
6798 * gtk/gtktexttagtable.h: include gtktexttag.h, and define
6799 GtkTextTagTableForeach instead of brokenly using GHFunc.
6800 Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
6802 * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
6803 moved to public header.
6805 * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
6806 "invisible", since "elide" was a bad name.
6807 (gtk_text_tag_get_priority): Added
6809 (GtkTextStyleValues): put this in public header, along with
6810 functions to use it.
6812 * gtk/gtktextmarkprivate.h: Include more headers, since we no
6813 longer include gtktextbtree.h.
6815 * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
6816 gtk_text_mark_deleted
6818 * gtk/gtktextlayout.h: Don't include the "really private" headers,
6819 only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
6820 to make this possible. Now we only need to install
6821 gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
6822 (However the Makefile.am isn't changed yet because of the
6823 logistics of merging gtk-hp-patches piecemeal)
6825 * gtk/gtktextiterprivate.h: include btree header, so it compiles;
6826 rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6827 gtk_text_iter_get_line is now used in the public API for a
6830 * gtk/gtktextiter.h: Clean up function names to be more
6831 consistent. Always call char offset "offset" and byte index
6832 "index". A "line" is always a line number.
6834 (gtk_text_iter_is_last): new function, more efficient than
6835 the existing way to check
6836 (gtk_text_iter_is_first): new function, also more efficient
6838 (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
6840 (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
6841 gtk_text_iter_forward_char, etc.
6843 (gtk_text_iter_forward_to_tag_toggle): Renamed from
6844 forward_find_tag_toggle, since this isn't a linear search
6846 (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6848 (gtk_text_iter_forward_search, gtk_text_iter_backward_search):
6849 New functions, search for a buffer substring.
6851 * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6852 interactive and default editable (since we need to store that info
6853 until we receive the selection data).
6855 Remove all the _at_char and at_line etc. versions of functions;
6856 only have iterator versions.
6858 Add _interactive() versions of functions, that consider the
6859 editability of text. (FIXME add interactive flag to the
6860 insert/delete signals per Darin's suggestion)
6862 (gtk_text_buffer_get_tag_table): new function, demand-creates the
6863 tag table if necessary
6865 Remove declaration of gtk_text_buffer_get_iter_from_string
6867 (_gtk_text_buffer_get_btree): private/internal function, added.
6870 * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6871 (gtk_text_line_is_last): new function
6873 2000-07-25 Havoc Pennington <hp@redhat.com>
6875 * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6876 using GtkProgressBar. See Changes-2.0.txt for details.
6878 * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6879 "pulse_step" which are the equivalent of
6880 gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6883 * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6884 (use_text_format) to mark whether text set on the progress bar is
6885 a format string. Deprecate entire GtkProgress interface.
6887 * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6888 (gtk_progress_build_string): make this a no-op if use_text_format
6891 * docs/Changes-2.0.txt: Describe progress bar changes.
6893 2000-07-25 Tor Lillqvist <tml@iki.fi>
6895 * Makefile.am: Include the build directory.
6897 * configure.in: Generate build/Makefile, build/win32/Makefile,
6898 gdk/, gdk/win32/, and gtk/makefile.mingw.
6900 * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6901 Add GETTEXT_PACKAGE.
6904 * gtk/gtk.def: Updates.
6907 * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6908 need them any longer.
6910 * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6912 * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6913 PANGOWIN32_LIBS and gdk_pixbuf.
6915 * gdk/win32: Compiles, but no doubt doesn't work at all.
6917 * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION.
6919 * gdk/win32/gdkinput.c: New file, temporarily.
6921 * gdk/win32/gdkinput-win32.h: New file
6923 * gdk/win32/gdkinputprivate.h: Remove.
6925 * gdk/win32/gdkpango-win32.c: New file.
6927 * gtk/makefile.mingw.in: New file
6929 * gtk/makefile.cygwin: Removed
6931 * gtk/Makefile.am: Update accordingly.
6933 * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6934 made externally visible.
6936 * gtk/gtkmain.c: Use it.
6938 * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6941 * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6943 2000-07-24 Elliot Lee <sopwith@redhat.com>
6944 * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6945 individual backends already.
6946 * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6947 again. Yes, there really is a good reason for this, if you are using the gdkregion
6948 internals, and if you're not, why do you care?
6949 * gdk/gdkwindow.c: Fix inverted condition
6950 * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6951 * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6952 * gtk/gtkrange.c: Redraw trough when moving.
6953 * gtk/gtktypeutils.c: Fix warning by adding const cast.
6954 * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6956 2000-07-23 Tor Lillqvist <tml@iki.fi>
6958 * configure.in: Check for mkstemp and sigsetjmp. Output
6959 gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6961 More work on GDK for Win32. Still in an intermediate state.
6963 * gdk/makefile.cygwin
6964 * gdk/win32/makefile.cygwin: Removed.
6966 * gdk/makefile.mingw.in
6967 * gdk/win32/makefile.mingw.in: New files.
6970 * gdk/win32/Makefile.am: Generate and distribute them.
6972 * gdk/win32/gdkwindow-win32.h
6973 * gdk/win32/gdkdrawable-win32.h
6974 * gdk/win32/gdkpixmap-win32.h: New files.
6976 * gdk/win32/gdkcolor-win32.c
6977 * gdk/win32/gdkcursor-win32.c
6978 * gdk/win32/gdkdrawable-win32.c
6979 * gdk/win32/gdkgc-win32.c
6980 * gdk/win32/gdkimage-win32.c
6981 * gdk/win32/gdkprivate-win32.h
6982 * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6983 Rename fields and variables called xcursor, xid, etc (these names
6984 were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
6986 Sat Jul 22 17:41:26 2000 Owen Taylor <otaylor@redhat.com>
6988 * gtk/gtkentry.[ch]: Fix some problems with vertical
6991 * gtk/gtkentry.c (gtk_entry_find_position): Fix
6992 char/byte confusion.
6994 Sat Jul 22 11:16:05 2000 Owen Taylor <otaylor@redhat.com>
6996 * gtk/gtktextview.c (changed_handler): Fix bug where
6997 redraw wasn't being done properly when height of
6998 dirty region changed.
7000 * demos/Makefile.am: Remove various references to
7003 Fri Jul 21 15:28:13 2000 Owen Taylor <otaylor@redhat.com>
7005 * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7006 PangoAttrShape to reserve space for pixmaps, add
7007 GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7008 in the display functions.
7010 * gtk/testgtk.c (create_layout): Set some more exotic
7011 scrolled window options
7013 * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7014 Add function to set the shadow type of a window, to allow
7015 putting a shadow around widgets such as GtkLayout or GnomeCanvas
7016 which don't draw their own frame.
7018 Fri Jul 21 16:34:42 BST 2000 Tony Gale <gale@gtk.org>
7020 * docs/tutorial/package-db-tutorial.sh: New file for
7021 packaging DocBook format tutorial
7023 Fri Jul 21 14:23:51 BST 2000 Tony Gale <gale@gtk.org>
7025 * docs/tutorial/gtk-tut.sgml: Minor updates
7027 * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
7029 2000-07-19 Tor Lillqvist <tml@iki.fi>
7031 * gtk/gtksignal.c: Fix C++ comment.
7033 * gtk/gtkimmulticontext.c
7034 * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
7035 don't return value from void functions.
7037 * gtk/gtk.def: Add gtk_rc_style_unref.
7039 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7041 * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
7042 gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
7043 gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
7044 gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
7045 gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
7046 gtk/gtktypeutils.h: Include files outside of the extern "C"
7047 block. Makes some C++ compiler happy. Reported by Denis Vakatov
7048 <vakatov@peony.nlm.nih.gov>.
7050 Wed Jul 19 14:07:57 BST 2000 Tony Gale <gale@gtk.org>
7052 * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
7053 Completes first pass. Hurrah!
7055 Tue Jul 18 17:17:55 BST 2000 Tony Gale <gale@gtk.org>
7057 * docs/tutorial/gtk-tut.sgml: More clean ups.
7059 Mon Jul 17 18:52:38 2000 Owen Taylor <otaylor@redhat.com>
7061 * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
7062 paint the background of the text area which was accidentally
7063 removed at some point.
7065 * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:
7067 - Move most of the functionality from the theme vtable
7068 into GtkRcStyleClass and GtkStyleClass. The moved
7069 vtable functions were changed a bit in the move to
7070 work better in their new home.
7072 - Get rid of the engine and engine_data fields from
7073 GtkRcStyle and GtkStyle; instead the theme
7074 engine derives theme-specific subclasses of GtkRcStyle
7077 - Add extra dlsym() found entry point to themes,
7078 theme_create_rc_style().
7080 * gtk/gtkstyle.c: Copy xthickness, ythickness fields
7081 in gtk_style_real_copy.
7083 * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
7084 to register a type associated with an engine. (The engine
7085 won't be unloaded as there is an instance of the type.)
7088 Mon Jul 17 18:19:06 BST 2000 Tony Gale <gale@gtk.org>
7090 * docs/tutorial/gtk-tut.sgml: Clean ups.
7092 Mon Jul 17 13:59:29 BST 2000 Tony Gale <gale@gtk.org>
7094 * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
7095 of cleaning up to do.
7097 2000-07-15 Tor Lillqvist <tml@iki.fi>
7099 * gdk/testgdk.c: New file, quick hack to test backends for
7100 pixel-by-pixel correctness of the most simple graphic operations.
7102 Fri Jul 14 20:30:25 2000 Owen Taylor <otaylor@redhat.com>
7104 * Really release 1.3.1
7106 * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
7109 Fri Jul 14 18:40:39 2000 Owen Taylor <otaylor@redhat.com>
7113 Fri Jul 14 16:21:26 2000 Owen Taylor <otaylor@redhat.com>
7115 * gtk/gtktextlayout.c: use FALSE for size_only most
7116 of the time when calling gtk_text_layout_get_line_display()
7117 to avoid causing double reshapes when a redraw follows
7120 Tue Jul 11 11:13:40 2000 Owen Taylor <otaylor@redhat.com>
7122 * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
7123 appropriate region and gdk_window_process_updates() so trough
7124 updating doesn't lag behind the window being scrolled.
7126 * gdk/gdkgc.c: Make parent_class pointer static.
7128 Sun Jul 9 21:31:23 2000 Owen Taylor <otaylor@redhat.com>
7130 * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
7133 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
7134 cut-and-paste error in computing memory offset for 4 channels.
7136 Fri Jul 14 14:05:02 2000 Owen Taylor <otaylor@redhat.com>
7138 * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
7139 gtk_rc_append_default_pixmap_path(), since it wasn't
7140 adding an interesting path and we don't have a meaningful
7141 default for this value.
7143 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
7145 * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
7146 gtk-config to gtk-config-2.0 move gtk_.m4 to
7149 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7150 gdk/Makefile.am demos/Makefile.am: Change
7151 library names to libgtk-1.3.la, etc, so that we
7152 can distinguish gtk-1.2 and gtk-2.0 on the linkline.
7154 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7155 gdk/Makefile.am gdk/x11/Makfile.am
7156 Move include files into /usr/include/gtk-2.0,
7157 /usr/lib/gtk-2.0/include/
7159 * autogen.sh acconfig.h configure.in gtk/gtkmain.c
7160 gtk/gtkintl.h: Change package for gettext from
7161 gtk+ to gtk20. Put hack in autogen.sh to modify
7162 po/Makefile.in.in after gettextize to make this
7165 * gtk+.spec: Some updates, not tested.
7167 * gdk-pixbuf/Makefile.am: Move loaders into
7168 $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
7170 * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
7171 $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
7172 to THEMENAME/gtk-2.0/. Move engine directory to
7173 $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
7175 2000-07-12 Tor Lillqvist <tml@iki.fi>
7177 Win32 changes, still doesn't build though.
7179 * gdk/makefile.cygwin
7180 * gdk/win32/makefile.cygwin
7181 * gtk/makefile.cygwin: Updates.
7183 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
7184 default values for fg and bg pixel as X11 does (0 and 1), not
7185 black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
7186 Use 0 for pen width by default (treated as 1 anyway later, but for
7187 apps that might check the value in the GdkGC).
7188 (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
7189 interface to gdk_gc_predraw and _postdraw.
7191 * gdk/win32/gdkwin32.h
7192 * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
7194 * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
7195 extraneous semicolon.
7197 * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
7199 * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
7200 not the Win32 bitspixel value.
7202 * gdk/win32/gdkcc-win32.c:
7203 * gdk/win32/gdkcolor-win32.c
7204 * gdk/win32/gdkprivate-win32.h
7205 * gdk/win32/gdkwin32.h: Changes to make compilable, with new
7206 GDK object structure.
7208 Tue Jul 11 20:59:35 2000 Tim Janik <timj@gtk.org>
7210 * docs/tutorial/gtk_tut_12.es.sgml (name):
7211 * docs/tutorial/gtk_tut_it.sgml (name):
7212 * docs/tutorial/gtk_tut_fr.sgml (name):
7213 * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
7214 outdated email adress: s/timj@psynet.net/timj@gtk.org/.
7216 Tue Jul 11 13:10:57 BST 2000 Tony Gale <gale@gtk.org>
7218 * docs/faq/gtk-faq.sgml: Cleanup indenting and various
7221 Tue Jul 11 08:04:58 2000 Tim Janik <timj@gtk.org>
7223 * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
7224 a bug here, never been here and never fixed anything ;(
7225 (don't segfault if tree->root_tree is NULL, which happens prior
7226 to widget realization, but puke instead).
7228 Tue Jul 11 06:38:42 2000 Tim Janik <timj@gtk.org>
7230 * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
7231 add the necessary tokens.
7233 * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
7234 (gtk_rc_style_to_style): copy thicknesses.
7235 (gtk_rc_init_style): apply thicknesses.
7236 (gtk_rc_parse_style): parse xthickness and ythickness.
7238 * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
7240 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
7242 (_gdk_windowing_window_init):
7243 * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
7244 (gdk_pixmap_create_from_data):
7245 (gdk_bitmap_create_from_data):
7247 * gdk/x11/gdkimage-x11.c (gdk_image_get):
7249 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
7250 * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
7251 * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
7252 (gdk_colormap_get_system):
7254 * gdk/gdkwindow.c (gdk_window_init):
7255 * gtk/gtkstyle.c (gtk_style_new):
7256 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
7257 * gdk/gdkpixmap.c (gdk_pixmap_init):
7258 * gtk/gtkrc.c (gtk_rc_style_new):
7259 use g_object_new() instead of g_type_create_instance() which
7260 is a private function for fundamental type implementations.
7262 Thu Jul 6 16:12:14 2000 Owen Taylor <otaylor@redhat.com>
7264 * configure.in: Add check for db2html
7266 Thu Jul 6 14:53:05 2000 Owen Taylor <otaylor@redhat.com>
7268 * gtk/gtktypeutils.c (gtk_type_init): Add a temporary
7269 hack to set glib_debug_objects based on gtk_debug_flags.
7271 Thu Jul 6 14:12:13 2000 Owen Taylor <otaylor@redhat.com>
7273 * INSTALL.in: Update the Prerequisites section.
7275 * Makefile.am demos/Makefile.am docs/Makefile.am
7276 docs/tutorial/Makefile.am gdk/x11/Makefile.am
7277 gdk/linux-fb/Makefile.am: Dist fixes
7279 Thu Jul 6 12:26:03 2000 Owen Taylor <otaylor@redhat.com>
7281 * NEWS: 10,000 foot view of 1.3.1 changes.
7283 Thu Jul 6 11:54:03 2000 Owen Taylor <otaylor@redhat.com>
7285 * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
7286 gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
7287 gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
7288 gdk/x11/gdkmain-x11.c:
7290 Patch from George Lebl to add a GdkGrabStatus enumeration to use
7291 as a return value of gdk_*_grab(). Previously, we just
7292 returned the X11 values directly.
7294 Thu Jul 6 11:27:44 2000 Owen Taylor <otaylor@redhat.com>
7296 * gdk/x11/Makefile.am: Patch from George Lebl to
7297 install all the headers in the right place.
7299 Tue Jul 4 13:13:01 BST 2000 Tony Gale <gale@gtk.org>
7301 * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
7302 initial conversion to DocBook.
7304 2000-07-04 Tor Lillqvist <tml@iki.fi>
7306 * README.win32: Improve a bit.
7308 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
7309 WM_SYSCHAR, and other changes to get handling of Alt+nnn or
7310 Alt+0nnn on the numpad (used to enter characters by numeric code
7311 from current DOS or ANSI codepage) working correctly, as in other
7314 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
7315 same argument validity tests as in X11 version.
7316 (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
7318 * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
7319 definitions in case missing from headers.
7321 * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
7322 destroy the window-specific cursor.
7323 (RegisterGdkClass): Use the global gdk_ProgInstance instead of
7324 calling GetModuleHandle(NULL).
7325 (gdk_window_set_cursor): Reworked to always copy the passed cursor
7326 with CopyCursor before setting it as the window-specific
7327 cursor. It is OK for the caller to destroy the GdkCursor (and thus
7328 also its Windows cursor) after calling this function. Destroy any
7329 previous window-specific cursor.
7331 Mon Jul 3 17:54:49 2000 Owen Taylor <otaylor@redhat.com>
7333 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7334 font charset is iso8859-1, not iso-8859-1.
7336 Mon Jul 3 17:08:14 2000 Owen Taylor <otaylor@redhat.com>
7338 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7339 Use g_get_charset() instead of g_get_codeset().
7341 * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
7342 Comment out some strdup'ing functions to keep timj
7343 happy until we finish fighting this out.
7345 Mon Jul 3 14:24:16 2000 Owen Taylor <otaylor@redhat.com>
7347 * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
7350 * gtk/gtktable.c (gtk_table_attach): Fix missed merge
7351 from 1.2 for parent/child states.
7353 * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
7356 * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
7357 event structures, replace with a generic axes field. Replace
7358 deviceid/sourec with GdkDevice *device.
7360 * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
7361 to extract particular axis use value from event. (Also
7362 can be used for normal X/Y.)
7364 * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
7365 allow for arbitrary number of axes, namespace everything
7366 as gdk_device_*. Replace guint32 deviceid with GdkDevice *
7369 * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
7370 Get rid of the gdk_input_vtable setup if favor of simply
7371 defining the functions in gdkinput-none/gxi/xfree.c in
7372 a similar fashion to the way that the port structure is
7375 * gtk/gtkdnd.c: Fix fields of synthesized button press event
7376 for new event structures.
7378 * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
7379 new device interfaces.
7381 Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
7383 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
7384 set the initial text.
7386 * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
7387 gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
7388 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
7389 gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
7391 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7392 pango_layout_set_font_description to simplify.
7394 Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
7396 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7397 pango_layout_set_font_description to simplify.
7399 Sun Jul 2 17:06:40 2000 Owen Taylor <otaylor@redhat.com>
7401 * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
7402 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
7403 pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
7405 * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
7406 PANGO_PIXELS() macro.
7408 Sun Jul 2 15:24:41 2000 Owen Taylor <otaylor@redhat.com>
7410 * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
7411 that returns a PangoContext owned by the widget and updated to
7412 match future changes in the widget. Also, make
7413 gtk_widget_create_pango_layout() use this context. If we ever
7414 add a ::changed signal to PangoContext, this will make things
7415 much more convenient.
7417 * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
7418 in the appropriate places instead of destroying the layouts and
7421 * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
7422 in a few strategic places.
7424 Sun Jul 2 14:37:58 2000 Owen Taylor <otaylor@redhat.com>
7426 * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call
7427 gtk_widget_size_request() on reparented child, if one. Otherwise,
7428 queue_resize() on the child never results in it getting size-requested
7431 * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
7432 in option menus, so that (with luck) people won't copy it into
7433 their apps in the future.
7435 * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
7436 to gtk_option_menu_calc_size. This isn't perfect, but should fix
7437 a lot of problems with changing the size of the menu's menu
7438 items after adding it to the option menu.
7440 * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
7442 * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
7443 the text direction for a widget changes.
7445 * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
7446 ::direction_changed to get rid of various hacks.
7448 Sun Jul 2 13:19:12 2000 Owen Taylor <otaylor@redhat.com>
7450 * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
7453 Sun Jul 2 13:06:26 2000 Owen Taylor <otaylor@redhat.com>
7455 * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
7456 flag to the structure. Do not call XFreePixmap on pixmaps created
7457 by gdk_pixmap_foreign_new().
7459 Sun Jul 2 12:45:50 2000 Owen Taylor <otaylor@redhat.com>
7461 * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
7462 value using GdkRGB functionality given GdkColormap and GdkColor.
7463 (name not final, waiting for inspiration.)
7465 * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
7466 set the foreground/background of a GC using the GC's colormap
7467 and GdkRGB. (name not final, waiting for inspiration.)
7469 * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from
7470 gdk_rgb_get_cmap(), put #define in gdkcompat.h.
7472 * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
7473 gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
7474 purely a function of the corresponding colormap. Make
7475 gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
7477 * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
7478 gdk_pixbuf_*create_from_xpm_* in terms of
7479 gdk_pixbuf_new_from_xpm_data(), move into platform independent
7482 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
7483 advantage of the new draw_rgb_32_image_dithalign.
7485 * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
7487 * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
7490 * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
7492 * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
7493 which we initialize from the drawable when the GC is created,
7494 if the drawable has a colormap.
7496 * gdk/x11/gdkgc-x11.c: include string.h for memset.
7498 * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
7500 * gtk/gtklayout.[ch]: Remove unsed configure serial member.
7502 Sat Jul 1 16:28:32 2000 Owen Taylor <otaylor@redhat.com>
7504 * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
7505 actually returning expose events, make sure to set
7506 the count field properly.
7508 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
7509 accidentally reintroced bug which always cleared
7510 the graphics_exposures value.
7512 Wed Jun 28 18:03:09 BST 2000 Tony Gale <gale@gtk.org>
7514 * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
7516 Wed Jun 28 17:49:05 BST 2000 Tony Gale <gale@gtk.org>
7518 * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
7520 Wed Jun 28 13:31:55 BST 2000 Tony Gale <gale@gtk.org>
7522 * docs/faq/gtk-faq.sgml: Start of Section 6.
7524 Mon Jun 26 19:37:04 2000 Owen Taylor <otaylor@redhat.com>
7526 * configure.in: Put 1.3.1 in warning message, not 1.3.0.
7528 (Fixes problem with drawing childless frames. Pointed out
7529 by and a first patch from Anders)
7531 * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
7532 compute a child_allocation, even if we don't have a child.
7534 * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
7535 Always chain to the parent's impl, even if we don't have a child.
7537 Mon Jun 26 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
7539 * gdk/gdkrgb.c: If possible, create only a single shm segment and
7540 use multiple parts of it instead of creating a bunch of separate
7541 segments, since the maximum number of segments per system is not
7542 large. (This might be worth backporting to GTK+-1.2.x if we make a
7545 * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
7546 structure in preparation for per-colormap GdkRGB.
7548 * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
7549 to False when we get EINVAL from shmget so that the caller of
7550 gdk_image_new can retry with a smaller segment size.
7552 Mon Jun 26 13:01:16 BST 2000 Tony Gale <gale@gtk.org>
7554 * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
7556 Fri Jun 23 17:54:23 2000 Tim Janik <timj@gtk.org>
7558 * configure.in: make the current version number 1.3.1 (binary age 0,
7561 * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
7562 gtkcompat.h is all we want.
7564 * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
7565 GLib primitive types. fixed g_type_register_fundamental() argument
7568 * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
7571 * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
7572 object code cleanup, comment trigraph fixes, etc...
7574 2000-06-23 Havoc Pennington <hp@redhat.com>
7576 * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark
7577 instead of making up a bogus name for first_para_mark
7579 * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow
7582 Thu Jun 22 17:43:51 BST 2000 Tony Gale <gale@gtk.org>
7584 * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
7586 2000-06-21 Havoc Pennington <hp@pobox.com>
7588 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
7589 we didn't check window->bg_pixmap != GDK_NO_BG.
7591 * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
7594 Thu Jun 22 14:02:19 BST 2000 Tony Gale <gale@gtk.org>
7596 * docs/faq/gtk-faq.sgm: Move file to here.
7597 TODO: Update Makfile.am
7599 Thu Jun 22 13:41:09 BST 2000 Tony Gale <gale@gtk.org>
7601 * docs/gtk-faq.sgm: Add Section 2
7603 Thu Jun 22 08:43:45 BST 2000 Tony Gale <gale@gtk.org>
7605 * docs/gtk-faq.sgm: New file. Start of DocBook
7608 Wed Jun 21 23:04:17 2000 Owen Taylor <otaylor@redhat.com>
7610 * configure.in (GDK_PIXBUF_MAJOR): Define version
7611 numbers for GDK_PIXBUF_*, as they get substituted
7612 into a header file. Need to consider versioning
7613 for gdk-pixbuf more carefully later.
7615 2000-06-21 Raja R Harinath <harinath@cs.umn.edu>
7617 Work with srcdir != builddir.
7618 * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use
7619 <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7620 * demos/testpixbuf.c: Likewise.
7621 * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7622 * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use
7624 * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h". Don't include
7626 * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7628 Wed Jun 21 19:45:02 2000 Owen Taylor <otaylor@redhat.com>
7630 * TODO.xml: Change 1.4 version numbers to 2.0.
7632 Wed Jun 21 19:29:08 2000 Owen Taylor <otaylor@redhat.com>
7634 * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
7635 fixups to GTK+ standard.
7637 Wed Jun 21 16:38:13 2000 Owen Taylor <otaylor@redhat.com>
7639 * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
7642 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
7645 * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
7646 gdk-pixbuf with GDK dependencies moved into GDK.
7648 * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
7649 move gdk-pixbuf-loader here until GObject has signals.
7651 * demos/: New directory of demos. Move demos from
7654 * demos/pixbuf-init.c: Small bit of code to check for
7655 loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
7656 set GDK_PIXBUF_MODULEDIR appropriately.
7658 * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
7659 define which no longer makes sense.
7661 2000-06-21 Havoc Pennington <hp@redhat.com>
7663 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
7664 gtk_get_default_language
7666 * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language):
7667 new function to get the default language
7669 * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c:
7670 s/gtk_text_view_style_values/gtk_text_style_values/
7672 * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
7673 Add a "language" field to tags.
7675 (gtk_text_tag_set_arg): Fix bug in setting
7676 "bg_full_height_set" tag.
7678 2000-06-21 Havoc Pennington <hp@redhat.com>
7680 * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
7683 * gtk/gtktexttypes.c: Remove UTF functions, use glib
7684 stuff instead when possible.
7686 * gtk/gtktexttypes.h: Delete some unused constants
7688 * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
7689 testtextbuffer.c: use glib instead of custom unicode routines
7691 Wed Jun 21 12:50:58 2000 Owen Taylor <otaylor@redhat.com>
7693 * docs/es/: Removed mistakenly added generated sgml
7695 * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
7696 Remove outdated info files.
7698 * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
7699 Moved tutorial files into subdir
7701 * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
7704 * docs/man/gtk_button.pod: Remove. (contents will be
7705 integrated into gtk-reference button page.)
7707 * configure.in docs/Makefile.am docs/tutorial/Makefile.am
7708 docs/faq/Makefile.am: Adjust for new organization
7710 2000-06-21 Christopher Blizzard <blizzard@redhat.com>
7712 * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
7713 not $(MKINSTALLDIRS)
7715 Wed Jun 21 12:24:28 2000 Owen Taylor <otaylor@redhat.com>
7717 * gtk/testgtk.c (create_text): Finish the job Elliot started
7718 of removing font setting test for text widget. (Since text widget
7719 and GdkFont are not deprecated, and cause portability problems.)
7721 Wed Jun 21 11:41:43 2000 Owen Taylor <otaylor@redhat.com>
7723 * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
7724 gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
7725 Remove use of libunicode in favor of new GLib functions.
7727 * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
7728 nano-x, framebuffer. The X11 include is just a hack until we get
7729 the necessary functions in gdkcolor.h, so there is no reason to
7730 add other includes of platforms.
7732 * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert
7733 window bigger than the screen change.
7735 * gtk/testgtk.c: Revert some random changes from Elliot
7736 that had no particular point and were causing testgtkrc
7737 not to function correctly.
7739 * gdk/gdkregion-generic.h: Revert change from Elliot. Just
7740 because GdkSegment and GdkRegionBox have the same fields,
7741 it doesn't mean that 'typedef GdkSegment GdkRegionBox'
7742 results in clearer code.
7744 * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
7745 gdk_input_translate_coordinates): Fix missed GdkObjectification
7747 2000-06-18 Elliot Lee <sopwith@redhat.com>
7749 * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
7750 * gtk/gtk{plug,socket}.h: Missed commits from previous.
7752 2000-06-20 Havoc Pennington <hp@redhat.com>
7754 * modules/linux-fb/Makefile.am: Make this compile
7755 without framebuffer enabled
7757 * gdk/linux-fb/Makefile.am: Add conditional to not build
7758 framebuffer unless specified in configure
7760 * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
7761 the size of the target instead of source if -1 was passed for
7764 * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
7765 width/height confusion.
7767 2000-06-19 Havoc Pennington <hp@redhat.com>
7769 * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
7770 GDK_DRAWABLE_XID. In the future, we probably want to make it
7771 faster with G_DISABLE_CHECKS turned on.
7773 2000-06-14 Havoc Pennington <hp@redhat.com>
7775 * gdk/Makefile.am: add gdkpixmap.c
7777 * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
7778 s/gdk_image_init/_gdk_windowing_image_init
7780 * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
7783 * gdk/gdkcolor.h: make GdkColormap a GObject subclass
7785 * gdk/gdkcompat.h: remove GdkWindowType compat, since
7786 GdkWindowType is now non-deprecated;
7787 change gdk_window_get_type() compat to be
7788 gdk_window_get_window_type().
7790 * gdk/gdkdnd.h: make GdkDragContext a GObject.
7792 * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
7793 virtual GObject. Make all functions call into the vtable.
7794 Move gdk_image_put() guts in here. Remove GdkDrawableType
7795 and gdk_drawable_get_type(), these are now GdkWindow-specific.
7796 draw_image, get_depth, get_size, set_colormap, get_colormap,
7797 get_visual added to the vtable.
7799 * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
7800 GObject. Virtualize everything.
7801 (gdk_gc_new_with_values): remove check for destroyed window,
7802 because now GdkWindow::create_gc will check this.
7803 (gdk_gc_set_values): New function to set GC values, this
7804 was already implemented but wasn't in the header
7806 * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
7808 * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
7809 _gdk_window_draw_image(), remove _gdk_windowing_window_class,
7810 remove _gdk_window_class; add _gdk_window_impl_get_type() and
7811 _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
7812 _gdk_windowing_window_init, rename gdk_image_init to
7813 _gdk_windowing_image_init.
7815 * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
7816 (gdk_draw_layout): Remove check for destroyed window,
7817 because all the drawable methods already check it.
7819 * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
7820 Add gdkpixmap.c which contains implementation of GdkDrawable
7821 virtual table (by chaining to a platform-specific implementation
7824 * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
7825 GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
7826 GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7827 GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7830 * gdk/gdktypes.h: #include <glib-object.h>
7832 * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
7833 Move most functionality to platform-specific implementation
7834 object. GdkWindow itself now handles the backing store, then
7835 chains to the platform-specific implementation.
7836 (gdk_window_get_window_type): return GdkWindowType of the window.
7837 (gdk_window_peek_children): New routine, returns the children of
7839 (gdk_window_get_children): Was in X11-specific code and did
7840 XQueryTree. Changed to simply return a copy of window->children;
7841 so it can go in cross-platform code.
7843 * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
7845 * gdk/x11/gdkcolor-x11.c: implement X-specific parts of
7846 GdkColormap; just changed to use the new private data instead
7847 of casting to GdkColormapPrivate.
7849 * gdk/x11/gdkcursor-x11.c: added a couple typechecks to
7852 * gdk/x11/gdkdnd-x11.c: Change the way we access private fields
7853 (private data member in the GObject).
7854 (xdnd_manager_source_filter): Function had broken
7855 error handling, fix it (use gdk_error_trap_push).
7857 * gdk/x11/gdkdrawable-x11.c: This file now implements
7858 a base class for GdkWindowImplX11/GdkPixmapImplX11. This
7859 base class is purely for the convenience of the X port,
7860 and not part of the interface to cross-platform GDK.
7862 * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7864 * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7865 specific to X, and returned by the create_gc virtual method
7866 of GdkDrawableImplX11.
7867 (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7868 rather than gchar, this was also changed in the GdkGC vtable.
7869 (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7870 mask is 0, return immediately, instead of checking every flag.
7871 This is faster, and keeps us from segfaulting if values is NULL
7872 and the mask contains some nonzero flags.
7874 * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7877 * gdk/x11/gdkglobals-x11.c: change type of grab window, since
7878 GdkWindowPrivate is gone.
7880 * gdk/x11/gdkim-x11.c: rename things that got renamed.
7882 * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
7883 remove the image_put stuff that got transferred to GdkDrawable.
7885 * gdk/x11/gdkinput.c: renamings
7887 * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7889 * gdk/x11/gdkpixmap-x11.c: GObject conversion
7891 * gdk/x11/gdkprivate-x11.h: indentation fixes
7893 * gdk/x11/gdkproperty-x11.c: renamings
7895 * gdk/x11/gdkselection-x11.c: renamings
7897 * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
7898 implements the platform-specific "impl" object.
7899 Moved gdk_window_get_children to gdk/gdkwindow.c
7901 * gdk/x11/gdkx.h: Remove all the private structs and private datas
7902 that no longer exist. Add declaration of GdkGCX11 object here.
7903 Fix all the macros to still work.
7905 * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7906 GdkDragContext from the boxed types since they are now GObjects.
7908 * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7909 moved xthickness/ythickness into the instance. GtkStyleClass
7910 functions are now in the standard vtable for GtkStyle, so you have
7911 to create a GObject subclass to write a theme engine.
7912 (gtk_style_copy): fixed a leaked PangoFontDescription
7913 (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7914 can be the standard GObject function.
7917 s/style->klass->[xy]thickness/style->[xy]thickness
7918 s/pango_layout_unref/g_object_unref/
7920 * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7922 * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
7923 accessing GDK internals.
7925 * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
7926 accessing GDK internals.
7928 2000-06-18 Elliot Lee <sopwith@redhat.com>
7930 * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7932 * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7933 problem by calculating event position relative to the trough
7934 rather than the slider.
7935 * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7937 * gdk/gdkgc.h: Add GDK_NOR.
7939 * configure.in, Makefile.am: Add modules top level dir
7940 * configure.in: Only use pangox library if building x11 target.
7941 * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7943 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
7945 * gtk/gtkcolorsel.c: Change private class member to be named
7946 private_data throughout the file.
7948 * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7949 private_data to avoid clashing with keyword.
7951 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
7953 * gdk/gdkdnd.h: Add comment to remove warning.
7955 Sun Jun 18 15:35:35 2000 Pablo Saratxaga <pablo@mandrakesoft.com>
7957 * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7958 Byelorussian language; changed the Makefile and file names
7961 Mon Jun 12 16:58:40 2000 Owen Taylor <otaylor@redhat.com>
7963 * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7964 rather than gdk_window_hide; this makes things work
7965 correctly if the window is programmatically hidden while
7968 Sun Jun 11 12:46:19 2000 Owen Taylor <otaylor@redhat.com>
7970 * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7971 cut and paste typo where wrong pixmap was being
7972 unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7974 Sun Jun 11 10:22:36 2000 Owen Taylor <otaylor@redhat.com>
7976 * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7977 Add helper function to compute format / bytes
7978 relationship. Use in a couple places to fix up
7979 errors which assume 8 * format.
7981 * gtk/gtkselection.c (gtk_selection_request): Use 32
7982 rather than 8 * sizeof (GdkAtom), to work correctly
7985 Thu Jun 8 21:54:51 2000 Christopher Blizzard <blizzard@redhat.com>
7987 * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
7989 (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
7992 * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
7993 checking macros return NULL since the function has a return value.
7995 Wed Jun 7 15:44:42 2000 Owen Taylor <otaylor@redhat.com>
7997 * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
7998 GTK+ from building at all.
8000 * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8002 Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8004 * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8005 gtk/Makefile.am: make it possible to configure gtk for different
8006 targets on the same platform. The library name is now
8007 libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8008 flag. Only the x11 target compiles right now.
8009 * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8010 gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8011 * gdk/nanox/gdk*generic*: delete generic region code.
8012 * gdk/linux-fb/gdk*generic*: delete generic region code.
8013 * README.nanox: update information.
8015 Tue Jun 6 10:53:59 2000 Owen Taylor <otaylor@redhat.com>
8017 * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
8018 prepend not append. (Pointed out by Brett Hall.)
8020 Tue Jun 6 01:59:57 2000 Owen Taylor <otaylor@redhat.com>
8022 * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
8024 Mon Jun 5 16:00:09 2000 Owen Taylor <otaylor@redhat.com>
8026 * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
8027 need this later, and this makes sure that the atexit for
8028 glib gets called after that for GDK, so atexits are
8029 properly ordered for object leak checking.
8031 * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
8033 * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call
8034 pango_x_shutdown_display()
8036 * gtk/simple.c (main): Close window on destroy.
8038 Mon Jun 5 11:50:02 2000 Owen Taylor <otaylor@redhat.com>
8040 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
8041 to treat initial creation different from setting with
8042 regards to the graphics-exposures parameter, so add a parameter
8043 indicating whether this is initial or not.
8045 Mon Jun 5 13:29:31 2000 Owen Taylor <otaylor@redhat.com>
8047 * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
8048 to sort of work by adding an extra return_exposes arg
8049 to gdk_event_translate() - it might be better to simply
8050 deprecate the function altogether and force people to rewrite
8051 without it. gdk_window_scroll() handles most of it, and where
8052 gdk_window_scroll() doesn't work, simply redrawing more does.
8054 * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
8057 * gtk-config.in: Include PANGO_CFLAGS/LIBS.
8059 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a
8060 bunch of pretty much useless /* Print debugging info */ comments
8061 which had drifted away from the code they were commenting.
8063 2000-06-02 Havoc Pennington <hp@pobox.com>
8065 * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
8066 is in working order.
8068 * gtk/testtext.c: Change to reflect anonymous mark API
8070 * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
8072 * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
8073 field, which was unused.
8075 * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
8078 * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*
8080 * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
8081 flag on the insertion point and selection bound
8083 Throughout, use GtkTextMark instead of GtkTextLineSegment, and
8084 make mark-manipulation functions take a GtkTextMark* instead of a
8087 * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
8088 GtkTextMarkBody; will be used to detect attempts to delete
8089 the permanent marks (insert and selection bound)
8091 * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer
8093 Fri Jun 2 12:56:01 2000 Owen Taylor <otaylor@redhat.com>
8095 * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
8098 * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event):
8099 Honor DOUBLE_BUFFRED_FLAG
8101 * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
8102 function to set the DOUBLE_BUFFERED flag.
8104 * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
8105 or not exposes done on the widget should be double-buffered.
8107 * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
8108 to be what would be expected. (Fixes problem with a
8109 g_return_if_fail() validating a TextDirection enumeration)
8111 Thu Jun 1 23:05:13 2000 Owen Taylor <otaylor@redhat.com>
8113 * gtk/gtkwidget.c: Remove all references to
8114 offscreen flag which was no longer used.
8116 * gtk/gtkprivate.h (enum): Remove unused flags and compress.
8118 * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
8119 for non-null label_widget->parent.
8121 * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
8122 which no longer was used.
8124 * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
8126 * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
8129 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
8130 check for destroyed windows.
8132 Thu Jun 1 13:48:45 2000 Owen Taylor <otaylor@redhat.com>
8134 * gtk/gtkimmulticontext.c: Add a finalize method and unref
8135 the slave context there.
8137 * gtk/gtkinvisible.[ch]: Make reference counting behavior
8138 identical to GtkWindow.
8140 Thu Jun 1 01:54:11 2000 Owen Taylor <otaylor@redhat.com>
8142 * Makefile.am gdk/gdkpango.c: Copy the layout render function from
8143 pangox to here, so we can write them independent of rendering
8144 system, using GDK primitives.
8146 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
8147 gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
8148 since we have a rendering-system independent implementation in
8149 terms of draw_glyphs().
8151 * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
8152 function to render a single line.
8154 * gdk/x11/gdkpango.c: Move the guts of this file mostly
8155 into ../gdkpango.c, which simplifies things, since we
8156 don't have to deal with raw X gc's.
8158 Fri May 19 04:28:16 2000 Owen Taylor <otaylor@redhat.com>
8160 * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
8161 get the logical attributes for a given GtkTextLine.
8163 Tue May 30 16:05:39 2000 Owen Taylor <otaylor@redhat.com>
8165 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
8166 g_locale_get_codeset() to g_get_codeset() change.
8168 Tue May 30 15:03:19 2000 Owen Taylor <otaylor@redhat.com>
8170 * gtk/testcalendar.c (calendar_font_selection_ok): Use font
8173 * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
8176 * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
8177 redoing (vastly simplifying) for Pango. Still needs quite
8178 a bit of work. (Size selection is currently poor. List of
8179 predefined sizes is not a good idea, since all of these
8180 sizes won't necessarily be distinct.)
8182 Tue May 30 13:50:19 2000 Owen Taylor <otaylor@redhat.com>
8184 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
8185 CODESET results for LANG=C.
8187 Mon May 29 15:49:10 2000 Owen Taylor <otaylor@redhat.com>
8189 * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
8190 which takes a stringized pango font description;
8191 ignore the older 'font' and 'fontset' declarations.
8193 * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
8194 field with a GdkFont derived via gdk_font_from_description(),
8195 for compatibility. (Should we just remove it entirely?
8196 Probably too much compatibility breakage, but people
8197 should be migrating to the new Pango stuff as quickly
8200 Mon May 29 15:47:41 2000 Owen Taylor <otaylor@redhat.com>
8202 * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
8204 Mon May 29 15:44:46 2000 Owen Taylor <otaylor@redhat.com>
8206 * gtk/gtkcalender.c: Roughly pango-ized. Really needs
8207 redoing; there are some bugs in size allocation right
8208 now, the semi-existant distinction between header / day
8209 fonts was removed, but, with Pango, could actually
8210 be made functional in a nice way.
8212 * gtk/testcalender: Move calender from examples into this
8213 directory as a test program. (We really need to restrcture
8214 testgtk into a whole directory full of tests for every
8215 widget or functionality group, separated into multiple .c
8218 Mon May 29 15:19:56 2000 Owen Taylor <otaylor@redhat.com>
8220 * gtk/testgtk.c (file_exists): Fix stupid typo that
8221 was keeping RC file from being loaded.
8223 * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
8226 Mon May 29 14:31:27 2000 Owen Taylor <otaylor@redhat.com>
8228 * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
8229 Add function to load a GdkFont from a PangoFontDescription.
8231 2000-05-29 Tor Lillqvist <tml@iki.fi>
8233 * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
8234 variable should be of type GdkEventPrivate.
8236 Fri May 26 17:16:40 2000 Owen Taylor <otaylor@redhat.com>
8238 * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
8239 to have any widget for the label, use a GtkLabel widget
8240 to display the text. (Based partially on a patch from
8243 (Quite a bit of code reorganization - strip 90% of the
8244 guts out of gtkaspectframe and add a single virtual
8245 func to GtkFrameClass - compute_child_allocation.)
8247 Fri May 26 12:00:02 2000 Owen Taylor <otaylor@redhat.com>
8249 * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
8250 (Removed clist->row_center_offset field because caching
8251 it wasn't saving time or code, added private function
8252 _gtk_clist_create_cell_layout()).
8254 Wed May 24 15:59:37 2000 Owen Taylor <otaylor@redhat.com>
8256 * gtk/gtkaccellabel.c: Pangoized.
8258 * gtk/[hv]ruler.c: Pangoized
8260 Mon May 22 19:23:59 2000 Owen Taylor <otaylor@redhat.com>
8262 * gtk/gtkfilesel.c (gtk_file_selection_init):
8263 Use gtk_clist_set_column_auto_resize() to remove need
8264 need for manual column width computations.
8266 Mon May 22 18:50:26 2000 Owen Taylor <otaylor@redhat.com>
8268 * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
8269 ensuring Pango correctness, and considerably simplifying the
8272 * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
8274 * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
8275 getting of numbers of lines.
8277 * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
8278 to the actual requested width of the lable, not to the wrap
8281 * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
8283 * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
8284 gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
8286 * gtk/gtktextview.c: Fix structure inheritance.
8288 * gtk/gtkprogressbar.c: Pangoize.
8290 Mon May 22 15:47:30 2000 Owen Taylor <otaylor@redhat.com>
8292 * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
8295 * gtk/gtktextlayout.c (find_display_line_above): Fixed
8296 bug with computing line tops.
8298 * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
8300 Thu May 18 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
8302 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
8303 and y_offset coordinates to do what we need now. (The offset between
8304 buffer and layout coordinates has been reintroduced, but is a
8305 bit different than before.)
8307 * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
8308 handle the adjustments ourselves, and scroll as necessary using
8309 the new gdk_window_scroll().
8311 The advantage of this is that when we are incrementally revalidating,
8312 we are essentially rearranging things around the visible portion
8313 of the screen. With the old setup, the visible portion of the
8314 screen was moved around in the layout, so scrolling and redrawing
8315 to track that caused jumping of the display. Since we now
8316 control the scrolling ourselves, we can suppress this and
8317 only redraw when things actually change.
8319 Thu May 18 18:47:25 2000 Owen Taylor <otaylor@redhat.com>
8321 * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
8322 the region not just redisplay it after-all, since we store the
8323 cursors in the LineDisplay. (Ugly interactions here between
8324 GtkLayout and GtkTextBTree here.)
8326 * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
8328 Thu May 18 18:43:21 2000 Owen Taylor <otaylor@redhat.com>
8330 * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
8331 Added function to scroll contents of a window while keeping the
8332 window constant. Works by XCopyArea or guffaw-scrolling depending
8333 on the details of how the window is set up. (guffaw-scrolling
8334 still needs to be filled in.)
8336 Wed May 17 22:36:53 2000 Owen Taylor <otaylor@redhat.com>
8338 * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
8339 move the debugging that was tied to a global variable
8342 * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
8344 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
8345 validated flag, in line data instead of setting height/width to
8346 -1. This allows us to perform operations with partially invalid
8347 buffer (using the old size for invalid lines) and thus to do
8348 incremental vaidation. Keep height/width aggregates up to date
8349 when deleting text and rebalancing the tree.
8351 * gtk/gtktextbtree.[ch]: Add functions validate a line
8352 (gtk_text_btree_validate_line), and to validate up
8353 to a number of pixels (gtk_text_btree_validate).
8355 * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
8356 that indicates that something is changed and a revalidation
8357 pass is needed. Change ::need_repaint to ::changed, and
8358 make it take old and new yranges instead of a rectangle.
8360 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
8361 the line_data_destroy() function from
8362 gtk_text_btree_add_view() to a virtual function in
8365 * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
8366 since we are handling partial repaints in a different fashion
8369 * gtk/gtktextbtree.[ch]: Only repaint the changed portion
8370 of the selection instead of queueing a repaint on the
8373 * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
8374 get_selection_bounds() down to btree, make the function
8375 in buffer a wrapper around the btree function.
8377 * gtk/gtktextlayout.[ch]: Add functions to check if the
8378 layout is valid and to recompute either a range of pixels
8379 aroudn a line or a certain total number of pixels.
8381 * gtk/gtktextlayout.[ch]: Cache a single line display;
8382 now that we only redraw the needed portions, the hit rate
8383 for this cache is quite high.
8385 * gtk/gtktextview.[ch]: Keep track of the first paragraph
8386 on the screen so that when re-laying-out the buffer, we can
8387 keep the same place. This requires connecting to ::value_changed
8390 * gtk/gtktextview.[ch]: Add idle functions to revalidate
8391 the buffer after we receive an ::invalidated signal.
8393 Wed May 17 22:10:47 2000 Owen Taylor <otaylor@redhat.com>
8395 * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
8396 to max of allocation and layout size, not just to the
8399 * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
8400 Invalidate window so it gets redrawn properly.
8402 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
8403 to mean the entire window.
8405 * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
8408 Mon May 15 14:51:31 2000 Owen Taylor <otaylor@redhat.com>
8410 * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
8411 to get the name of a mark.
8413 * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
8414 to find the paragraph from a y position.
8416 Thu May 11 12:57:20 2000 Owen Taylor <otaylor@redhat.com>
8418 * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
8419 nodes have width/height >= 0, not > 0.
8421 Tue May 9 21:29:06 2000 Owen Taylor <otaylor@redhat.com>
8423 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
8424 Add a size_only flag, so when we only need the size, we don't create
8425 useless appearance attributes.
8427 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
8428 duplicate setting of font description.
8430 * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
8432 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
8434 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
8435 EXTRA_DIST. It does not work well when the file that
8436 everything depends on is not in the tarball.
8438 Wed Apr 26 00:56:14 2000 Owen Taylor <otaylor@redhat.com>
8440 * gtk/testgtk.c: Some hacks and fixes so that it basically
8441 works when not sitting in the GTK+ build tree.
8443 2000-05-03 Havoc Pennington <hp@redhat.com>
8445 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8446 Properly determine the ordering of the tag root and the current
8447 line within the tree. Previous algorithm only worked if the tag
8448 root's immediate parent was the common root of both the current
8449 line and the tag root.
8451 Wed Apr 26 00:43:00 2000 Owen Taylor <otaylor@redhat.com>
8453 * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
8456 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
8457 the widget text directional dynamically.
8459 * gtk/gtktextview.[ch]: Added functions to get and set default
8462 Tue Apr 25 23:47:38 2000 Owen Taylor <otaylor@redhat.com>
8464 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
8465 in cursor location computation.
8467 Tue Apr 25 23:22:59 2000 Owen Taylor <otaylor@redhat.com>
8469 * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
8470 vadjusment values properly when layout gets smaller.
8472 * gtk/gtktextview.c (need_repaint_handler): Areas being
8473 passed in are far completely inaccurate, and sometimes
8474 too small, so, for now, just queue a redraw on the
8475 whole visible region.
8477 2000-04-25 Havoc Pennington <hp@redhat.com>
8479 * gtk/gtktextbtree.c (summary_destroy): new function to
8480 destroy tag summary nodes
8481 (gtk_text_line_next_could_contain_tag): this function was
8482 totally broken if the line passed in wasn't below the tag
8484 (gtk_text_btree_first_could_contain_tag): In the tag == NULL
8485 "wildcard" case, we have to do a linear scan. Blah.
8486 (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
8487 we have to do the linear scan
8488 (tag_removed_cb): When a tag is removed from the tag table,
8489 remove the GtkTextTagInfo node from the btree.
8490 (gtk_text_btree_spew): Implement the spew function, for
8491 our debugging pleasure.
8493 Tue Apr 25 19:40:18 2000 Owen Taylor <otaylor@redhat.com>
8495 * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
8496 a problem with referring to the wrong buffer.
8498 * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
8500 * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
8501 font description to gtk_style_new() - otherwise things
8502 don't work without a .gtkrc file.
8504 * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
8505 tags table if we create it ourself, too.
8507 * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
8508 it was conflicting with XKB modifiers.
8510 * gtk/gtktextview.[ch]: Add simple support for
8513 Mon Apr 24 19:34:18 2000 Owen Taylor <otaylor@redhat.com>
8515 * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
8516 with deletion from last commit.
8518 Mon Apr 24 19:29:40 2000 Owen Taylor <otaylor@redhat.com>
8520 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
8521 in the context from the current locale.
8523 * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
8524 context, not hardcoded value.
8526 * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
8529 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
8531 * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
8532 attributes - that doesn't handle partial-glyph selection
8533 properly. Instead use new pango_layout_line_get_x_ranges()
8534 functionality to draw the selection.
8536 * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
8537 now properly handles out-of-range coordinates.
8539 * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
8541 * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
8544 * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
8545 for paragraphs opposite to the base direction of the widget.
8547 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
8549 * gtk/gtktextlayout.c: Don't split segments on marks, since that
8550 causes Arabic words to reshape as you cursor through.
8552 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
8553 cursor position when moving vertically with the arrow keys and
8554 scrolling with page-up/page-down. (Arrow keys save only the X,
8555 scrolling saves both X and Y.)
8557 This means you can line-up / line-down or page-up / page-down
8558 without losing your place, and also that moving vertically
8559 with the cursor keys keeps the same X position, not the same
8562 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
8563 arrow keys move by display lines, not paragraphs.
8565 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
8567 * gtk/gtklayout.c: Make sure that the bin window is at least
8568 as big as the allocation. (Should we also make sure that the
8569 bin window is big enough to completely cover widget->window?)
8571 * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
8572 function to get the onscreen rectangle.
8574 * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
8575 for offsets in window coordinates.
8577 Sun Apr 16 16:13:27 2000 Owen Taylor <otaylor@redhat.com>
8579 * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
8582 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
8583 from the widget direction.
8585 * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
8586 Add a "direction" attribute.
8588 * gtk/gtktextview.c: global s/tkxt/text_view/.
8590 * gtk/testtext.c: Added long block of text in Arabic, to test out
8591 the direction attributes. (Some problems with the shaping system
8592 for arabic become obvious - like the fact the cursor splits words
8593 into unjoined pieces.)
8595 Fri Apr 14 12:54:34 2000 Owen Taylor <otaylor@redhat.com>
8597 * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8599 * gtk/gtktextlayout.c: Fix up alignment.
8601 * gtk/testtext.c: Add some tests for centering, wrapping.
8603 Fri Apr 14 09:26:22 2000 Owen Taylor <otaylor@redhat.com>
8605 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8606 Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8607 If we wrote GTK+-specific layout-render function this could just replace
8608 the draw_layout() operation in the vtable.
8610 * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
8611 pango_layout_get_cursor_pos() and use that function.
8613 * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8614 is a non-static symbol.
8616 * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8617 with gtk_text_btree_find_line_by_y()
8619 * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8620 renderer that handles GtkTextAppearance attributes.
8622 * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
8624 - Move the values in the style that don't affect geometry into a
8625 GtkTextAppearance structure.
8626 - Change underline to take a PangoUnderline and "font" a string
8627 representation of a font description
8628 - Add a "font_desc" attribute which takes a FontDescription structure.
8630 * gtk/gtktextlayout.[ch]:
8632 - Get rid of the display-line list per each line. Instead, we
8633 generate, on demand, a GtkTextLineDisplay structure which]
8634 contains a PangoLayout * and other necesary information
8635 (offsets, cursor locations) for displaying a paragraph.
8636 - Get rid of the code to wrap lines, create display chunks,
8637 etc. Instead, we just go through a paragraph and convert
8638 it into the necessary inputs to a PangoLayout.
8639 - Implement a new attribute type, GtkTextAttrAppearance. This
8640 holds a GtkTextAppearance, and is used to pass colors,
8641 stipple, etc, through from the layout to the display without
8642 having to use lots and lots of individual attributes.
8643 - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
8644 in terms of PangoLayout functions.
8646 * gtk/gtktextview.c:
8648 - Handle passing the necessary PangoContext to the layout
8649 - Some fixups in painting to deal with the automatic backing store
8650 and offsetting of GTK+-1.4
8651 - Add a style_set handler so that the default style reacts
8652 properly to theme changes.
8654 * gtk/gtktext?*.[ch]: Random code-style fixes.
8656 * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
8658 Mon Apr 10 10:33:45 2000 Owen Taylor <otaylor@redhat.com>
8660 * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
8661 in original form preparatory to Pango-ization and gdkimcontext-ization.
8663 Thu Apr 6 19:25:39 2000 Owen Taylor <otaylor@redhat.com>
8665 * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
8666 so that we can derive from gtkimcontext in language bindings properly.
8668 Thu Apr 6 16:02:52 2000 Owen Taylor <otaylor@redhat.com>
8670 * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
8671 Add a compose table including (almost) all the compose combinations
8672 from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
8673 data in the XIM implementation.
8675 * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
8676 Moved functions to convert keyvalues from and to unicode here from
8677 the win32 port and made them public.
8679 Wed Apr 5 16:37:29 2000 Owen Taylor <otaylor@redhat.com>
8681 * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
8683 Wed Apr 5 16:27:45 2000 Owen Taylor <otaylor@redhat.com>
8685 * gtk/gtkimcontext.[ch]: Base class for new input context system
8687 * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
8688 the real input context implementation to be loaded from modules
8689 and switched on the fly.
8691 * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
8692 context that just does direct keysymbol => unicode translation.
8694 * gtk/gtkentry.[ch]: Start switching editing over to using
8695 GtkInputContext. (No handling of preedit yet.)
8697 Wed Apr 5 15:48:41 2000 Owen Taylor <otaylor@redhat.com>
8699 * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
8700 many substitutions. (klass should not be subsituted.)
8702 Wed Apr 5 00:18:14 2000 Owen Taylor <otaylor@redhat.com>
8704 * configure.in: Add checks for Pango
8706 * configure.in docs/Makefile.am: Add test for sgml2html
8707 and allow 'make dist' without building html, but print out
8708 warnings in that case. (For making snapshots)
8710 * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
8711 Add Pango libraries and C flags
8713 * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8714 Add function (gdk_draw_layout) to draw a pango layout.
8716 * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
8717 for getting Pango contexts for GDK.
8719 * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
8721 * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
8724 * gtk/gtkentry.c: Hack in simple Hebrew input with direct
8725 keysym => unicode translations. More languages can be added
8726 here, but real input-method support is needed.
8728 * docs/Changes-1.4.txt: Added note about entry behavior.
8730 * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
8731 to set the reading direction for a widget and the global direction.
8732 Add test which allows toggling the global direction. Two private
8733 flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
8735 * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
8736 gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
8738 * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
8740 * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
8741 underlining now handled by Pango.
8743 * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
8744 to RCStyle and Style. (Having both this and the old font name and GdkFont
8747 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
8748 convenience functions for creating contexts and layouts for widgets.
8750 * gtk/testgtk.c: Enhance label tests with multilingual labels.
8752 2000-05-29 Jonathan Blandford <jrb@redhat.com>
8754 * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
8755 titles to be active, even if they aren't visible.
8756 (gtk_clist_column_titles_passive): Ditto.
8758 2000-05-21 Nils Barth <nils_barth@post.harvard.edu>
8762 * gtktypeutils.h: Spelling/grammar fixes in comments.
8764 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
8766 * gdk/nanox/*.h: add missing header files.
8768 Fri May 19 11:52:59 2000 Tim Janik <timj@gtk.org>
8770 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
8772 (gtk_drawing_area_size): queue a resize.
8774 Sun Mar 26 03:21:28 2000 Tim Janik <timj@gtk.org>
8776 * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
8777 the handlers, also invalidate them. bug nailed down by Karl Nelson
8778 <kenelson@ece.ucdavis.edu>.
8780 Fri May 19 06:49:23 2000 Tim Janik <timj@gtk.org>
8782 * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
8783 "(nil)" foundries, patch from Grigorios Magklis.
8785 * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
8786 on non-available fonts, based on a patch by Grigorios Magklis
8787 <maglis@cs.rochester.edu>.
8789 2000-05-18 Elliot Lee <sopwith@redhat.com>
8791 * gdk/x11/gdkregion-generic.c: If a region does not have any
8792 rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
8793 instead of GDK_OVERLAP_RECTANGLE_IN.
8795 2000-05-17 Jonathan Blandford <jrb@redhat.com>
8797 * gtk/gtklayout.c (gtk_layout_map): Remove references to
8798 OFFSCREEN, as it is no longer necessary.
8800 Wed May 17 10:52:12 2000 Owen Taylor <otaylor@redhat.com>
8802 * gtk/gtkcolorsel.c: Patch from David Santiago
8803 <mrcooger@cyberverse.com> to change things so that the
8804 indicator of the active palette entry is done independently,
8805 not via the focus, since it should always be visible.
8807 2000-05-17 Tor Lillqvist <tml@iki.fi>
8809 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
8810 refcount leaks as in the X11 backend.
8812 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
8815 * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
8816 backend. Add _gdk_windowing_window_destroy().
8818 * gtk/gtkcolorsel.c: Include correct backend-specific header.
8819 Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
8820 either, but these probably do exist on nanox?)
8822 * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
8823 which isn't necessarily defined by <math.h>.
8825 * gtk/gtkobject.c (gtk_object_init): Don't go up the class
8826 ancestry past GtkObject.
8828 * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8831 * gtk/gtk.def: Update corresponding to recent changes.
8833 * gtk/makefile.{cygwin,msc}: Updates.
8835 Fri May 12 18:46:51 2000 Owen Taylor <otaylor@redhat.com>
8837 * docs/Changes-1.4.txt: A bit of editing.
8839 * gdk/gdkwindow.c (_gdk_window_clear_update_area)
8840 * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
8841 to clear the update area for the window, and clear it
8842 when hiding a window.
8844 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
8845 if window destroyed.
8847 * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8849 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
8850 gdk_window_destroy() to the generic code, since there was a lot of
8851 window-system-independent logic it in. Add a function:
8853 _gdk_window_destroy()
8855 to the internal API to destroy a window without unreferencing it.
8858 _gdk_windowing_window_destroy()
8860 That does the windowing-system-dependent part of destroying
8863 Fri May 12 11:07:41 2000 Owen Taylor <otaylor@redhat.com>
8865 * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8867 Fri May 12 11:06:10 2000 Owen Taylor <otaylor@redhat.com>
8869 * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
8870 Make gtk_widget_shape_combine_mask() keep a reference count on
8871 the pixmap since it keeps it around.
8873 Fri May 12 10:53:29 2000 Owen Taylor <otaylor@redhat.com>
8875 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8878 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8879 leak with event filters.
8881 Thu May 11 14:29:44 2000 Owen Taylor <otaylor@redhat.com>
8883 * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8884 signal handlers with the right data arguments. (Fixes
8885 some warnings when a widget was repeatedly set as a drag
8888 * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8889 window so we can avoid avoid setting the DND properties on the
8890 toplevel window repeatedly.
8892 2000-05-13 Tor Lillqvist <tml@iki.fi>
8894 * gdk/win32/gdkwin32.h: Define more message types missing from
8897 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8898 call gdk_window_destroy_notify(). It was never called. This
8899 probably meant that the GdkWindow was never freed. Thanks Owen for
8902 * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8903 window as destroyed before calling DestroyWindow(). DestroyWindow()
8904 causes a call to the window procedure (gdk_WindowProc), which
8905 calls gdk_event_translate(), which calls
8906 gdk_window_destroy_notify(), which gets confused unless the window
8907 is set as destroyed.
8909 * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8910 this function to indicate it's win32 only. Put inside #ifdef
8913 * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8914 debugging function. (gdk_event_translate:) Add a default branch
8915 that uses the above function to print debug messages with all
8916 Windows messages symbolically.
8918 * gdk/win32/gdkprivate-win32.h: Declare it, and
8919 gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8921 Fri May 12 20:07:32 2000 Tim Janik <timj@gtk.org>
8923 * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8926 Fri May 12 17:13:32 2000 Tim Janik <timj@gtk.org>
8928 * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8930 * gtk/gtktext.c: made the adjustments no-construct args, simply
8931 provide default adjustments.
8932 (gtk_text_destroy): release adjustments.
8934 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8935 adjustment argument non-construct.
8937 * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8938 instead of in finalize.
8939 (gtk_progress_get_text_from_value):
8940 (gtk_progress_get_current_text):
8941 (gtk_progress_set_value):
8942 (gtk_progress_get_percentage_from_value):
8943 (gtk_progress_get_current_percentage):
8944 (gtk_progress_set_percentage):
8945 (gtk_progress_configure): ensure an adjustment is present.
8947 Thu May 11 01:24:08 2000 Tim Janik <timj@gtk.org>
8949 * gtk/gtkcolorsel.[hc]:
8950 * gtk/gtkcolorseldialog.[hc]:
8951 * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8952 their parent implementation, use bit fields for boolean values, don't
8953 create unused widgets, usage of glib types, braces go on their own
8954 lines, function argument alignment, #include directives etc. etc. etc..
8956 * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8958 Wed May 10 23:29:52 2000 Tim Janik <timj@gtk.org>
8960 * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8962 * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8965 * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8967 (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8969 * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8970 to NULL when the toplevel is getting destroyed.
8971 (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8973 (gtk_menu_init): store the information of whether we have to
8974 readd the initial child ref_count during destruction in a new
8975 GtkMenu field needs_destruction_ref_count.
8977 * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8978 here, those reading: learn from my mistake! ;)
8979 in order for set_?adjustment to support a default adjustemnt if
8980 invoked with an adjustment pointer of NULL, the code read (pseudo):
8981 if (v->adjustment) unref (v->adjustment);
8982 if (!adjustment) adjustment = adjustment_new ();
8983 if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8984 now imagine the first unref to actually free the old adjustment and
8985 adjustment_new() creating a new adjustment from the very same memory
8986 portion. here, the latter comparision will unintendedly fail, and
8987 all hell breaks loose.
8988 (gtk_viewport_set_hadjustment):
8989 (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
8990 after unreferencing it.
8992 * gtk/gtkcontainer.[hc]: removed toplevel registration
8993 functions: gtk_container_register_toplevel(),
8994 gtk_container_unregister_toplevel() and
8995 gtk_container_get_toplevels() which had wrong semantics
8996 anyways: it didn't reference and copy the list.
8998 * gtk/gtkwindow.c: we take over the container toplevel registration
8999 bussiness now. windows are registered across multiple destructions,
9000 untill they are finalized. the initial implicit reference count
9001 users are holding on windows is removed with the first destruction
9003 (gtk_window_init): ref & sink and set has_user_ref_count, got
9004 rid of gtk_container_register_toplevel() call. add window to
9006 (gtk_window_destroy): unref the window if has_user_ref_count
9007 is still set, got rid of call to
9008 gtk_container_unregister_toplevel().
9009 (gtk_window_finalize): remove window from toplevel list.
9010 (gtk_window_list_toplevels): new function to return a newly
9011 created list with referenced toplevels.
9012 (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9014 * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
9015 adjustment a non-construct arg.
9016 * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
9017 * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
9018 * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
9020 * gtk/gtkrange.c: added some realized checks.
9021 (gtk_range_destroy): get rid of the h/v adjustments in the
9022 destroy handler instead of finalize. remove timer.
9023 (gtk_range_get_adjustment): demand create adjustment.
9025 * gtk/gtkviewport.c: made h/v adjustment non-construct args.
9026 we simply create them on demand now and get rid of them in
9027 the destroy handler.
9028 (gtk_viewport_destroy): get rid of the h/v adjustments in the
9029 destroy handler instead of finalize.
9030 (gtk_viewport_get_hadjustment):
9031 (gtk_viewport_get_vadjustment):
9032 (gtk_viewport_size_allocate): demand create h/v adjustment
9035 * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
9036 gtk_widget_real_destroy () functionality.
9037 (gtk_widget_real_destroy): reinitialize with a new style, instead
9038 of setting widget->style to NULL.
9040 Fri May 5 13:02:09 2000 Tim Janik <timj@gtk.org>
9042 * gtk/gtkcalendar.c:
9043 * gtk/gtkbutton.c: ported _get_type() implementation over to
9044 GType, either to preserve memchunks allocation facilities,
9045 or because Gtk+ 1.0 GtkTypeInfo was still being used.
9047 * gtk/gtkobject.[hc]: derive from GObject. ported various functions
9048 over. prepare for ::destroy to be emitted multiple times.
9049 removed reference tracer magic. chain into GObjectClass.shutdown()
9050 to emit ::destroy signal.
9052 * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
9055 * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
9062 * gtk/gtkargcollector.c:
9063 * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
9064 not being a fundamental anymore, and to work with the new
9065 type system (nuked fundamental type varargs clutter).
9067 * gtk/*.c: install finalize handlers in the GObjectClass
9068 part of the class structure.
9069 changed direct GTK_OBJECT()->klass accesses to
9071 changed direct object_class->type accesses to GTK_CLASS_TYPE().
9073 * gtktypeutils.[hc]: use the reserved fundamental ids provided by
9074 GType. made most of the GTK_*() type macros and Gtk* typedefs
9075 simple wrappers around macros and types provided by GType.
9076 most notably, a significant portion of the old API vanished:
9079 GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
9080 GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
9083 GTK_TYPE_C_CALLBACK,
9087 gtk_type_set_varargs_type(),
9088 gtk_type_get_varargs_type(),
9089 gtk_type_check_object_cast(),
9090 gtk_type_check_class_cast(),
9091 gtk_type_describe_tree(),
9092 gtk_type_describe_heritage(),
9094 gtk_type_children_types(),
9095 gtk_type_set_chunk_alloc(),
9096 gtk_type_register_enum(),
9097 gtk_type_register_flags(),
9098 gtk_type_parent_class().
9099 replacements, where available are described in ../docs/Changes-1.4.txt.
9100 implemented compatibility functions for the remaining API.
9102 * configure.in: depend on glib 1.3.1, use gobject module.
9104 Thu May 11 12:39:50 2000 Owen Taylor <otaylor@redhat.com>
9106 * TODO.xml: Various updates to current status.
9108 Wed May 10 20:25:04 2000 Owen Taylor <otaylor@redhat.com>
9110 * gtk.m4: Print out version when test succeeds.
9112 Wed May 10 16:38:17 2000 Owen Taylor <otaylor@redhat.com>
9114 * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
9115 gtk/gtkhsv.[ch]: Color selection dialog rewrite.
9117 (Original triangle color selector from Simon Budig
9118 <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
9119 from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
9120 Santiago <mrcooger@cyberverse.com>)
9122 * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
9123 out into a separate widget.
9125 * gtk/testgtk.c: Add some checkbuttons for toggling palette
9126 and opacity controls.
9128 Wed May 10 16:08:09 2000 Owen Taylor <otaylor@redhat.com>
9130 * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
9131 snuck in prematurely.
9133 2000-05-07 Tor Lillqvist <tml@iki.fi>
9135 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
9136 had deleted a ! operator by mistake, which caused
9137 GDK_SELECTION_CLEAR events never to be generated, which caused
9138 only the first copy to the clipboard from an gtkeditable to
9139 actually cause a copy to the Windows clipboard.
9141 2000-05-06 Tor Lillqvist <tml@iki.fi>
9143 * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
9144 compilation, too. Current mingw gcc distributions include the
9145 necessary headers. Also the necessary IIDs are now in mingw
9146 headers/libraries, and own definitions unnecessary.
9148 More hacking on OLE2 DND, still doesn't work though, and thus
9151 * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
9154 Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
9156 * gdk/nanox/*: nano-X port work in progress.
9157 * gdk/simple.c: simple test for Gdk.
9158 * README.nanox: notes about the port: read this first!
9159 * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
9162 Fri May 5 11:18:47 2000 Owen Taylor <otaylor@redhat.com>
9164 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
9165 gdk_window_clear() into common code, implement in terms of
9166 gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
9167 not redirected to the backing rectangle.
9169 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
9171 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
9172 EXTRA_DIST. It does not work well when the file that
9173 everything depends on is not in the tarball.
9175 Tue Apr 25 22:20:41 2000 Owen Taylor <otaylor@redhat.com>
9177 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
9178 with recursion where process_updates() is called from
9179 an expose handler. (GtkTextView is highly broken in
9180 doing this, but it should work, so it is a nice test
9183 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
9185 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
9186 handle the case where updates are queued during processing of
9189 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
9191 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
9192 window is on gdk_display - use that instead of segfaulting.
9194 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
9196 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
9197 broken and require an empty arg, give it to them.
9199 Fri Apr 28 19:34:32 2000 Tim Janik <timj@gtk.org>
9201 * gtk/gtklabel.h: indentation fixes.
9203 2000-05-02 Tor Lillqvist <tml@iki.fi>
9205 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
9206 draw too narrow or too low arcs, they seem to fail, at least with
9207 some display drivers.
9209 * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
9211 Large changes to the Win32 backend, partially made necessary by
9212 the changes to the backend-independent internal
9213 structures. Attempts to implement similar backing store stuff as
9214 on X11. The current (CVS) version of the Win32 backend is *not* as
9215 stable as it was before the no-flicker branch was merged. A
9216 zipfile with that version is available from
9217 http://www.gimp.org/win32/. That should be use by "production"
9218 code until this CVS version is usable. (But note, the Win32
9219 backend has never been claimed to be "production quality".)
9221 * README.win32: Add the above comment about versions.
9223 * gdk/gdkwindow.c: Don't use backing store for now on Win32.
9225 * gdk/gdk.def: Update.
9227 * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
9228 presumably be replaced by some more better mechanism as 1.4 gets
9229 closer to release shape.
9231 * gdk/makefile.{cygwin,msc}: Update.
9233 * gdk/win32/*.c: Correct inclusions of the backend-specific and
9234 internal headers. Change code according to changes in these. Use
9235 gdk_drawable_*, not gdk_window_* where necessary.
9237 * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
9240 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
9241 to interpret single characters as UTF-8. Thanks to Hans Breuer.
9242 Use correct function name in warning messages.
9244 * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
9245 GSourceFuncs gdk_event_prepare and gdk_event_check.
9246 (gdk_event_get_graphics_expose): Do implement, use
9247 PeekMessage. Thanks to Hans Breuer.
9248 (event_mask_string): Debugging function to print an GdkEventMask.
9249 (gdk_pointer_grab): Use it.
9251 * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
9252 (old) book I used claimed was Hangul actually is CJK Unified
9253 Ideographs Extension A. Also, Hangul Syllables were missing.
9256 * gdk/win32/gdkgc-win32.c: Largish changes.
9258 * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
9259 g_win32_getlocale() from GLib, and not setlocale() to get current
9262 * gdk/win32/gdkprivate-win32.h
9263 * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
9264 gdkwin32.h, similarily as in the X11 backend.
9266 * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
9267 assignment was used instead of equals in if test. Thanks to Hans
9270 * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
9273 * gdk/win32/makefile.{cygwin,msc}
9274 * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
9275 path to the Win32 headers that works also with the mingw compiler.
9277 * gtk/gtkstyle.c: Include <string.h>.
9279 2000-04-26 Havoc Pennington <hp@redhat.com>
9281 * gtk/gtklabel.c (gtk_label_get_text): Add this function,
9282 replacing the broken gtk_label_get ()
9284 2000-04-15 Havoc Pennington <hp@pobox.com>
9286 * gdk/gdkdnd.h: clean up enum format, remove extra comma,
9287 this keeps scanner scripts from getting confused.
9289 * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
9290 data, rather than void
9292 2000-04-15 Tor Lillqvist <tml@iki.fi>
9294 * gtk/gtkclist.c (gtk_clist_motion)
9295 * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
9296 with is_hint FALSE, get x and y from the event. They used to be
9297 used uninitialised. The Win32 backend never sends motion events
9298 marked as hints. This for instance fixes the annoying file and
9299 font selector behaviour in the Win32 version.
9301 2000-04-14 Tor Lillqvist <tml@iki.fi>
9303 * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
9304 gtk_private_n_signals variables, they are used by some software,
9307 * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
9308 installation directory from the Registry, where the installer
9311 Fri Apr 7 17:19:27 2000 Owen Taylor <otaylor@redhat.com>
9313 * gdk/x11/Makefile.am: Fix problem with installation directory for
9316 * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
9317 <mrcooger@cyberverse.com> so that when selecting menus with the
9318 mouse, the first item will not be selected, but when selecting
9319 with an accelerator, or navigating left-right on a menubar with
9320 the menus popped up, the first item will be selected.
9322 2000-04-05 Dan Damian <dand@dnttm.ro>
9324 * configure.in: Added "ro" to ALL_LINGUAS.
9326 Wed Apr 5 00:08:36 2000 Owen Taylor <otaylor@redhat.com>
9328 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
9331 * Makefile.am (EXTRA_DIST): Fix typo.
9333 * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
9334 to catch gdkconfig.h
9336 * gtk/gtkitemfactory.c: Added FIXME.
9338 2000-03-30 Jonathan Blandford <jrb@redhat.com>
9340 * gtk/gtkpaned.c (gtk_paned_get_position): oops.
9341 s/return_if_fail/return_val_if_fail/g and add a return value.
9343 Mon Mar 27 20:56:14 2000 Owen Taylor <otaylor@redhat.com>
9345 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
9348 * gdk/gdkinput.h: Fix missing line from merge.
9350 Mon Mar 27 20:39:49 2000 Owen Taylor <otaylor@redhat.com>
9352 * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
9353 instead of gdkprivate.h.
9355 Sun Mar 12 15:19:24 2000 Owen Taylor <otaylor@redhat.com>
9357 * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
9358 parent class to correctly be GtkDialogClass.
9360 Thu Feb 24 23:58:21 2000 Owen Taylor <otaylor@redhat.com>
9362 * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
9363 toplevel windows and their immediate children by their parents,
9364 since the size of toplevel windows is out of our immediate
9365 control and we don't get any real benefit from trying to track
9366 this size for clipping.
9368 * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
9369 for input_only windows.
9371 * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
9372 to fix some hacks and make sure that we don't try to set the
9373 background of input only windows.
9375 Thu Feb 24 18:11:46 2000 Owen Taylor <otaylor@redhat.com>
9377 * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
9378 the _really_ internal stuff, and leave gdkprivate.h for the fake private
9379 stuff that we've traditionally exposed.
9381 * gdk/**.c: Use gdkinternals.h where appropriate.
9383 * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
9384 not include gdkprivate-x11.h, move all stuff of conceivable public
9385 interest into gdkx.h; keep all really private stuff in
9386 uninstalled header gdkprivate-x11.h.
9388 * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
9389 image->image_put on windows through a new function _gdk_window_draw_image()
9390 to allow us to do backing store for images. (Sort of ugly)
9392 * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
9393 contexts locally so that we can offset them properly when drawing
9394 onto backing pixmaps.
9396 * gdk/gdkinput.h: Reindented
9398 * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
9399 pixmap or color for the window, so we can properly initialize
9400 our double-buffer pixmaps, and also so that we temporarily set
9401 a background of None while scrolling.
9403 * gdk/gdkregion.h: Revise region boolean operators to have an
9404 interface that is actually convenient - switch from creating new
9405 regions on every op, to "methods" that modify existing regions
9406 (A = A OP B). 3 argument forms which allow dest == src, would also
9407 be possible, but the current interfaces seem to map nicely
9408 onto what needs to be done. (There is quite a lot of region
9411 * gdk/gdkregion.h: Add constructor from rectangle and a copy
9414 * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
9415 gdkpoly-generic.h: Copy region code from Xlib, switch it over
9416 to 32 bit coordinates, modify it to be mostly GTK+ style
9417 and to have interfaces that match gdkregion.h.
9419 * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
9420 double-buffered drawing. gdk_window_begin_paint_{rect,region}()
9421 create a backing pixmap and redirect all drawing to
9422 that backing pixmap until a matching gdk_window_end_paint().
9424 * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
9425 Create a special drawable class for GtkWindow's that
9426 redirects the drawing to the backing pixmap as necessary
9427 and then calls the real operations in _gdk_windowing_window_class.
9429 * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
9430 Store invalid region for each window. Generate expose events for invalid
9431 region in an idle. This replaces both the expose compression
9432 and the redrawing queuing in GTK+. It is both more efficient and
9433 simpler than either one individually and far more so then the
9436 * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
9437 Emulate 32 bit coordinates for windows with 16 bit coordinates
9438 by offsetting drawing, guffaw scrolling techniques and
9439 mapping/unmapping child windows as necessary.
9441 * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
9442 where, when invalid regions are processed, the region is stored,
9443 and if expose events come in that are detectably duplicate
9444 the processed exposes (by comparison of event serial numbers),
9445 the stored region is subtracted out of those exposes.
9447 * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
9448 regions newly exposed when scrolling or resizing windows.
9449 This, combined with forcing processesing of queued invalidated
9450 regions, gives nice flicker-free scrolling.
9452 * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
9453 invalidated regions after every scroll.
9455 * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
9456 emulation in GDK. Its, for all practical purposes just a
9457 GtkViewport/GtkFixed hybrid now.
9459 * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
9460 (16-bit) structures as necessary instead of just casting.
9462 * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
9463 in terms of the structures from gdkregion-generic.c, using appropriate
9464 offsets from GDK to X11 coordinates. Cache clip mask and
9465 origin and ts origin locally and only flush to the server
9466 when drawing, to avoid constantly setting and resetting these
9467 values when offsetting GC's for scrolling and backing pixmaps.
9469 * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
9471 * gtk/gtkcontainer.c: Call process_all_updates at end
9472 of resizing to reduce flicker. (Avoids having redraw
9473 lag arbitrarily behind resize under some circumstances)
9475 * gtk/gtkentry.c: Remove old backing store code, and simply take
9476 advantage of the new backing store capabilities of GDK.
9478 * gtk/gtkmain.c: Simple implementation of widget backing
9479 store - simply push a paint while handling each expose.
9480 (Should really be configurable widget for widget.)
9482 * gtk/gtkwidget.c: Remove all the old complicated redraw
9483 code, and simply invalidate the GDK windows from
9484 gdk_window_queue_clear(), etc. (Sigh, so much carefully
9485 debugged complexity ... gone to the winds.)
9487 Remove all the code for suppressing expose events while
9488 resizes are pending; this isn't needed since the invalid
9489 areas won't be processed until after the resizes are
9490 processed, since they are in a lower priority idle.
9492 Thu Feb 24 15:37:41 2000 Owen Taylor <otaylor@redhat.com>
9494 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
9495 and height of dest rectangle for non-intersecting rectangles.
9497 Sun Feb 20 16:47:31 2000 Owen Taylor <otaylor@redhat.com>
9499 * gtk/gtkwidget.h: Make GtkAllocation just a typedef
9502 Sun Feb 20 11:27:00 2000 Owen Taylor <otaylor@redhat.com>
9504 * gdk/gdk{events,image,private,types,window}.h
9505 gdk/x11/gdkinputprivate.h: Change all coordinates
9506 from int16 to int. Also, Change width and height from
9507 unsigned to signed to avoid all the stupid C
9510 Sat Feb 19 12:01:53 2000 Owen Taylor <otaylor@redhat.com>
9512 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
9513 Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
9514 Add some more detailed checking.
9516 * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
9517 New function to retrieve the depth of a drawable.
9519 * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
9520 field, reorder fields to save memory.
9522 Mon Dec 13 14:06:03 1999 Owen Taylor <otaylor@redhat.com>
9524 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
9525 of the background image instead of scaling the background down to
9528 * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
9529 which temporarily set slider to wrong size.
9531 * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
9534 Wed Nov 17 18:36:05 1999 Owen Taylor <otaylor@redhat.com>
9536 2000-03-23 Jonathan Blandford <jrb@redhat.com>
9538 * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
9540 2000-03-17 Tor Lillqvist <tml@iki.fi>
9542 * gdk/win32/gdkevents-win32.c: Remove the #ifndef
9543 USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
9545 * gdk/win32/gdkfont-win32.c
9546 * gdk/win32/gdkproperty-win32.c
9547 * gdk/win32/gdkselection-win32.c
9548 * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
9551 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
9553 * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
9555 Mon Mar 13 18:37:55 2000 Owen Taylor <otaylor@redhat.com>
9557 * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
9558 is called without trapping X errors.
9560 Fri Feb 25 10:48:53 2000 Owen Taylor <otaylor@redhat.com>
9562 * gtk/gtkrc.*: Fix problem where stray '"' characters found their
9563 way into the fontset lists.
9565 Tue Feb 22 08:52:52 2000 Tim Janik <timj@gtk.org>
9567 * gtk/gtkthemes.h: add extern "C" scope.
9569 Mon Feb 21 20:16:42 2000 Lars Hamann <lars@gtk.org>
9571 * gtk/gtkclist.c: applied patch from Guy Harris <guy@netapp.com>
9572 to make appends to the list constant. (gtk-guy-990901-0.patch)
9574 Mon Feb 14 22:50:10 2000 Tim Janik <timj@gtk.org>
9576 * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
9577 for the typename hash table.
9579 Mon Feb 14 15:01:23 2000 Owen Taylor <otaylor@redhat.com>
9581 * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
9582 to make sure we never divide by zero.
9583 (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
9585 Mon Feb 14 12:29:38 2000 Owen Taylor <otaylor@redhat.com>
9587 * gtk/gtkfontsel.c: Apply patch from
9588 SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
9589 better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
9591 Also, some cleanups in atom handling.
9593 Sun Feb 13 08:02:21 2000 Tim Janik <timj@gtk.org>
9595 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9598 Fri Feb 11 02:19:32 2000 Tim Janik <timj@gtk.org>
9600 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
9601 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
9602 * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9603 more guint wrap-around bugs before going to bed.
9605 Thu Feb 10 16:16:35 2000 Tim Janik <timj@gtk.org>
9607 * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9608 guint wrap arounds in allocation.width.
9610 * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9611 process untill we fit the allocation given.
9613 Tue Feb 8 09:38:29 2000 Tim Janik <timj@gtk.org>
9616 (gtk_widget_unrealize): guard widget access with ref/unref
9617 around signal emission.
9618 (gtk_widget_hide): same here, but also check its destroyed
9619 state before queueing a resize.
9621 Tue Feb 8 03:05:55 2000 Tim Janik <timj@gtk.org>
9623 * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9624 of gtk_default_insensitive_bg as insensitive base color.
9626 * gtk/gtktext.c (gtk_text_style_set): set the background color according
9627 to the widget's state.
9628 (gtk_text_realize): same here.
9629 (gtk_text_state_changed): same here.
9630 (draw_bg_rect): compare background color against base[] from
9631 GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
9633 Mon Feb 7 04:01:55 2000 Tim Janik <timj@gtk.org>
9635 * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
9636 grabs are active, unless a delete event is send to the toplevel
9637 of the currently grab holding widget.
9639 Sun Feb 6 10:13:15 2000 Owen Taylor <otaylor@redhat.com>
9641 * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
9642 debugging g_print's.
9644 Fri Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
9646 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
9647 ever make the scrolled-window requisition ever depend on the
9648 visibility state of the scrollbars for the AUTOMATIC policy.
9649 This breaks the GTK+ requisition model, and causes loops.
9651 Fri Feb 4 15:09:12 2000 Owen Taylor <otaylor@redhat.com>
9653 * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
9654 the default font to avoid problems with XFree86-4.0 where the
9655 default charset is iso10646-1, not iso8859-1.
9657 Thu Feb 3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
9663 * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
9665 * gtk/Makefile.am: minor cosmetic consistency tweak
9667 Thu Feb 3 14:46:01 2000 Owen Taylor <otaylor@redhat.com>
9669 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
9670 the activate_time to 0, so that we handle a quick
9671 press/release press/release properly and don't suppress
9672 the second release. (Red Hat bug #7545)
9674 Wed Feb 2 22:25:17 2000 Tim Janik <timj@gtk.org>
9676 * gtk/gtkctree.c (row_delete):
9677 (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
9678 bugs with destruction notifier, *always* update internal
9679 structures *before* calling user code.
9681 Sun Jan 30 20:10:52 2000 Lars Hamann <lars@gtk.org>
9683 A few more fixes for bug #5487, #2051, #2677.
9685 (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is
9686 not GDK_BUTTON_PRESS.
9687 (resync_selection): resync only if selection_mode is
9688 GTK_SELECTION_EXTENDED
9689 * gtk/gtkctree.c (resync_selection): same here
9691 Sun Jan 30 12:29:20 2000 Owen Taylor <otaylor@redhat.com>
9693 * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
9694 gdk_drag_get_selection() and gtk_menu_detach().
9696 [ From Jeroen Ruigrok/Asmodai ]
9698 Sat Jan 29 10:11:56 2000 Owen Taylor <otaylor@redhat.com>
9700 * gtk/gtknotebook.c (gtk_notebook_size_request):
9701 page->tab_label can be NULL.
9703 2000-01-25 Havoc Pennington <hp@pobox.com>
9705 * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
9708 * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
9710 * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
9712 * gdk/gdkproperty.c (gdk_property_get): return boolean
9714 * gdk/gdkinput.c (gdk_input_set_mode): return boolean
9716 * gdk/gdkim.c (gdk_im_ready): return boolean
9718 * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
9720 * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
9721 glib clash, should fix glib)
9723 * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
9724 (gdk_get_show_events): return gboolean, and canonicalize
9727 * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
9729 (gdk_colors_alloc): gboolean whether to be contiguous
9730 (gdk_color_equal): return gboolean since we are a predicate
9731 and not a qsort() (this looks semi-wrong due to glib breakage,
9732 IMO glib should be fixed)
9734 * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
9735 (gdk_get_use_xshm): return gboolean
9736 (gdk_pointer_is_grabbed): return gboolean
9738 * gdk/gdk.h: Change prototypes to match all the above changes,
9739 and re-run egtk-format-protos as required.
9741 Fri Jan 28 12:28:17 2000 Owen Taylor <otaylor@redhat.com>
9743 * gtk/gtkctree.c (resync_selection):
9744 * gtk/gtkclist.c (resync_selection):
9746 Return immediately if clist->drag_pos < 0. This is a workaround
9747 for the corrupt state that the clist gets into when a
9748 GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
9750 Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
9752 * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
9753 variable from recent commit.
9755 Thu Jan 27 15:22:09 2000 Owen Taylor <otaylor@redhat.com>
9757 * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
9759 Thu Jan 27 18:00:55 2000 Tim Janik <timj@gtk.org>
9761 * gtk/Makefile.am: prefix all autogenerated source that get build in
9762 $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
9763 in builddir. since we subsequently cd into srcdir for autogeneration,
9764 the paths have to be stripped from the target file names, thusly we
9765 use $(@F) as target names now.
9766 put a comment about configure.in's --disable-rebuilds option,
9767 which can be used for non-writable source directories, for development
9768 setups though, srcdir has to be *writable*.
9770 hu Jan 27 00:15:03 2000 Owen Taylor <otaylor@redhat.com>
9772 * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
9773 Finish the job of allowing event to be NULL.
9774 (Fixes bug #4283, reported by Chris Blizzard)
9776 * gtk/gtkentry.c (entry_adjust_scroll): When calculating
9777 things so that the cursor appears on screen, properly
9778 take into account INNER_BORDER.
9779 (Fixes bug #4754, reported by Antonio Campos)
9781 Wed Jan 26 23:12:28 2000 Owen Taylor <otaylor@redhat.com>
9783 * gtk/gtknotebook.c (gtk_notebook_map): Don't
9784 show the tab_label unless it itself is visible.
9786 gtk/gtknotebook.c (gtk_notebook_size_request):
9787 Do a better job of making sure that the visibility
9788 of the tab label corresponds to whether it should
9791 Wed Jan 26 21:17:03 2000 Owen Taylor <otaylor@redhat.com>
9793 * gtk/gtkoptionmenu.c (gtk_option_menu_position):
9794 Use the requisition, not the allocation, since the
9795 allocation has not necessarily been computed yet.
9796 (Pointed out by Eugene Osintsev)
9798 Wed Jan 26 19:44:25 2000 Owen Taylor <otaylor@redhat.com>
9800 * gtk/gtkstyle.c (gtk_style_new): Dont' set
9801 style/base[GTK_STATE_INSENSITIVE] both to
9802 gtk_default_insensitive_bg!
9803 (Bug #2187, reported by Jonathan Blandford)
9805 * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
9806 Add Alt_L, Alt_R to list of invalid accelerators.
9807 (Bug #3736, reported by Vlad Harchev)
9809 Wed Jan 26 19:01:56 2000 Owen Taylor <otaylor@redhat.com>
9811 * gtk/gtkfilesel.c (open_ref_dir): Fix several
9812 bugs which occured after an attempt to open
9813 invalid home directory left cmpl_state->reference_dir == NULL.
9815 - completion on files in home directory didn't work
9816 - completion on an empty string caused segfault
9818 (Bug #3678, reported by Steve Ratcliffe)
9820 * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
9821 cut and paste error that was causing scales to
9822 be incorrectly positioned.
9824 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
9826 2000-01-27 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
9828 * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9829 when checking for dcgettext, if we've found we needed
9832 Wed Jan 26 18:06:07 2000 Owen Taylor <otaylor@redhat.com>
9834 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9835 queue_clear on NO_WINDOW widgets during a reparent,
9836 since at that point the window and widget heirarchies
9837 are out of sync. This stops crashing in some cases
9838 (the scrolled window reparent test, for instance), and
9839 _probably_ won't cause drawing errors.
9841 * gtk/testgtk.c: Make the reparenting-a-scrolled-window
9842 test do what it was supposed to do and be robust against
9843 window closings, etc. (Bug #2443)
9845 Wed Jan 26 16:56:54 2000 Owen Taylor <otaylor@redhat.com>
9847 * gtk/gtkentry.c: Fix return values on mouse events.
9848 (Bug #2686, Sky <seb_sky@yahoo.com>)
9850 * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9851 (pointed out by George Lebl)
9853 * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9854 (From Ettore Perazzoli <ettore@helixcode.com>)
9856 Mon Jan 24 10:44:48 2000 Owen Taylor <otaylor@redhat.com>
9858 * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9859 clicks between rows or outside calender area correctly.
9860 (Patch from Damon Chaplin)
9862 * gtk/gtkclist.c (gtk_clist_set_row_data_full):
9863 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
9864 Call destroy function when overwriting existing data.
9865 (Pointed out by Damon Chaplin)
9867 Tue Jan 25 09:55:41 2000 Owen Taylor <otaylor@redhat.com>
9869 * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9870 which was causing problems on various systems with Xmu.
9871 This hasn't been needed for a very long time.
9874 Sun Jan 23 22:27:36 2000 Owen Taylor <otaylor@redhat.com>
9876 * gdk/gdki18n.h: Include <ctype.h> when defining
9877 gdk_isw* in terms of is* as a fallback.
9878 (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9880 Sun Jan 23 22:12:36 2000 Owen Taylor <otaylor@redhat.com>
9882 * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9883 realize the widget when it is size allocated!
9886 * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9887 Removed unused call to gdk_window_get_size() that
9888 showed up when the above was fixed.
9890 Sat Jan 22 15:44:30 2000 Owen Taylor <otaylor@redhat.com>
9892 * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9893 fix up widget->window when the widget is a
9894 NO_WINDOW container widget.
9896 Sat Jan 22 12:40:48 2000 Owen Taylor <otaylor@redhat.com>
9898 * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9899 to account for the fact that feof() does _not_
9900 return TRUE on errors, and thus avoid infinite loops
9901 when trying to use gdk_pixmap_create_from_xpm()
9902 on unreadable values.
9904 Fri Jan 21 18:32:43 2000 Owen Taylor <otaylor@redhat.com>
9906 * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9908 Fri Jan 21 16:24:08 2000 Owen Taylor <otaylor@redhat.com>
9910 * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9911 gdk_gc_set_dashes to take gint8 instead of gchar to
9912 make it clearer that it is _not_ a NULL terminated string.
9914 * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9915 gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9916 gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9919 Thu Dec 30 04:51:05 1999 Tim Janik <timj@gtk.org>
9921 * gtk/gtkvscale.c (gtk_vscale_pos_background):
9922 * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9923 background size relative to our allocation, guard against small
9924 allocations, we may have not yet been size allocated.
9926 Thu Dec 2 10:59:14 1999 Owen Taylor <otaylor@redhat.com>
9928 * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9929 not just version == 3. We implement all 3 + most of 4 -
9930 (we don't support matching text/plain;charset=iso-8859-1
9931 to a dest that expects text/plain). We'll still advertise
9932 3 to be safe, but any client implementing version >= 3
9933 must interoperate with 3.
9935 Tue Mar 14 11:53:31 2000 Owen Taylor <otaylor@redhat.com>
9937 * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9938 background and gc members, add a warning in gtk_tooltips_set_color()
9939 indicating that this function is deprecated.
9941 Thu Mar 9 22:10:56 GMT 2000 Tony Gale <gale@gtk.org>
9943 * docs/gtkfaq.sgml: FAQ Update:
9944 - Minor cleanups (Emmanuel, me)
9946 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9947 How can I retrieve the text from a GtkMenuItem? (timj)
9948 How do I validate/limit/filter the input to a GtkEntry? (me)
9949 Memory does not seem to be released when I free the list
9950 nodes I've allocated (timj)
9952 2000-03-07 Tor Lillqvist <tml@iki.fi>
9954 * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9955 (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9956 for which it is no use to call GetLastError onWin9x.
9957 (gdk_other_api_failed) New function, for general error
9958 reporting without calling GetLastError.
9959 (gdk_win32_api_failed) OTOH, this function always calls
9960 GetLastError. (gdk_win32_last_error_string) Remove this function,
9961 GLib has the equivalent now.
9963 * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9964 call them with function name, file name and line number in the
9967 * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9970 * gtk/gtk.def: Add some missing entry points.
9972 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9973 gtk_paned_set_gutter_size, which don't exist any longer, as void.
9975 Fixes by Hans Breuer:
9977 * gdk/makefile.msc: Update for debugging.
9979 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9980 implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9981 PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9984 * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
9987 * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
9989 * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
9991 2000-03-04 Tor Lillqvist <tml@iki.fi>
9993 * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
9994 just pixel value of background colour.
9996 * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
9997 containing code snippet previously duplicated in a couple of
10000 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10001 gdk_colormap_color.
10003 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10004 GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10005 events for autorepeated Shift, Control and Alt keys. Use
10006 gdk_colormap_color.
10008 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10009 pointer is inside the window the cursor of which we are setting,
10010 call SetCursor immediately.
10012 * gdk/win32/makefile.cygwin
10013 * gtk/makefile.cygwin: If we don't have the build number stamp
10016 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10017 gtk_paned_set_gutter_size as empty.
10019 * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
10021 Tue Feb 29 13:10:00 GMT 2000 Tony Gale <gale@gtk.org>
10023 * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
10024 gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
10025 docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
10026 docs/gtk_tut.sgml docs/gtk.texi TODO:
10028 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
10030 Sat Feb 26 11:46:25 GMT 2000 Tony Gale <gale@gtk.org>
10032 * gtk/gtkcalendar.c: Implement num_marked_dates,
10033 and don't emit mutiple day_selected signals on
10036 2000-02-25 Jonathan Blandford <jrb@redhat.com>
10038 * docs/make-todo (lineno): let title and logo be configurable so
10039 that GNOME can use this script too.
10041 * TODO.xml: added logourl and a title
10043 Fri Feb 25 11:12:00 2000 Owen Taylor <otaylor@redhat.com>
10045 * TODO.xml: Added some UI items, and an explanatory
10046 comment at the top of the file.
10048 Thu Feb 24 09:07:28 2000 Tim Janik <timj@gtk.org>
10050 * TODO.xml: some updates, added abunch of new entries.
10051 a note for those fiddeling with this file, when done
10053 $ ./docs/make-todo TODO.xml >/dev/null
10054 and correct output errors before comitting changes.
10056 Wed Feb 23 22:59:50 2000 Owen Taylor <otaylor@redhat.com>
10058 * TODO.xml: Added XML-structured TODO file.
10059 * docs/make-todo: python script to turn TODO.xml into
10062 2000-02-23 Jonathan Blandford <jrb@redhat.com>
10064 * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
10065 the function to let it draw the seven dots, instead of the old,
10066 much maligned, method.
10067 (draw_dot): New function to draw a dot.
10069 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
10070 to draw the handle inside the border width as opposed to outside.
10071 Use paint function instead of gdk_draw_point.
10073 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
10074 to draw the handle inside the border width as opposed to outside.
10075 Use paint function instead of gdk_draw_point.
10077 * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
10078 Change indenting to be more GTK like.
10080 Wed Feb 23 10:54:14 GMT 2000 Tony Gale <gale@gtk.org>
10082 * docs/gtk_tut.sgml: New section on GtkCalendar
10083 * examples/calendar: Update example code
10085 Tue Feb 22 13:54:12 GMT 2000 Tony Gale <gale@gtk.org>
10087 * docs/gtkfaq.sgml: FAQ Update
10089 2000-02-19 Anders Carlsson <andersca@gnu.org>
10091 * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
10092 to prevent the scroll event to be propagated upwards.
10094 Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
10096 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
10097 OwnerGrabButtonMask from button entries for
10098 GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
10100 * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
10101 to the event mask (which will result in button/press release
10102 being added to the event mask on Unix) so scrolling works
10103 for layouts in scroll windows.
10105 * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
10107 Patch from Anders Carlsson <andersca@gnu.org> to add
10110 * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
10111 scrolling to the "Test Scrolling" part of testgtk.
10113 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
10115 * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
10116 it against GDK_SCROLL.
10118 * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
10119 way of mouse wheel scrolling.
10121 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
10123 * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
10125 * gtk/gtkmain.c: Removed previous mouse wheel hack.
10127 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
10128 gdk_event_mask_table.
10130 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
10131 GdkEventScroll handler.
10133 * gdk/gdkevents.h: Added GdkEventScroll structure.
10135 Thu Feb 17 17:10:12 2000 Owen Taylor <otaylor@redhat.com>
10137 * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
10138 and Anders Carlsson to change the Paned widgets so that they
10139 can be dragged from anywhere along the length. Also change
10140 the way that this is drawn to make this apparent.
10142 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
10143 from George Lebl to check that option_menu->menu is present
10144 before getting history.
10146 2000-02-14 Tor Lillqvist <tml@iki.fi>
10148 * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
10149 before the assertion for non-NULL segment list.
10151 * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
10152 Seems that pattern brushes *must* be 8x8 pixels! At least on my
10153 machine, but it might be display driver dependent. Sigh, so make
10154 sure the stipple is that size. Does Windows suck or what?
10156 * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
10159 2000-02-13 Havoc Pennington <hp@pobox.com>
10161 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
10163 (gdk_cursor_new): init refcount to 1
10165 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
10167 2000-02-13 Tor Lillqvist <tml@iki.fi>
10169 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
10170 so that we don't have to do unnecessary settings to the HDC.
10172 * gdk/win32/gdkdrawable-win32.c
10173 * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
10176 * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
10177 the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
10178 GDI paths, call WidenPath to get the outline of the stroken path,
10179 and then fill the outline (with the brush that was built from the
10182 * gdk/win32/gdkgc-win32.c: Factor out common code from
10183 _gdk_win32_gc_new and gdk_win32_gc_set_values into
10184 gdk_win32_gc_values_to_win32values. Use correct colour for
10185 SetBkColor() (Until now the code actually used a random colour in
10186 the call to SetBkColor()... but that didn't show up as not many
10187 GDI APIs use the background colour. Pattern (opaque stippled)
10190 * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
10191 gdk_win32_api_failed): New functions for error logging.
10193 * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
10194 WIN32_API_FAILED to call them, passing function or file name and
10197 * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
10199 * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
10200 GdkColor for foreground and background in GdkGCWin32Data.
10202 * gdk/makefile.cygwin: Link in the resource object separately.
10204 * gdk/win32/rc/gdk.rc
10205 * gtk/gtk.rc (New file)
10206 * gdk/win32/makefile.cygwin
10207 * gtk/makefile.cygwin: Update build number in DLLs automatically,
10210 Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org>
10212 * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
10213 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
10214 * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
10215 * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
10216 parameters given and cursor->ref_count. coding style fixups.
10218 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10221 * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
10222 fix up widget macros and add _GET_CLASS() variant.
10224 * gtk/*.c: some GtkType fixups.
10226 2000-02-09 Tor Lillqvist <tml@iki.fi>
10228 * gdk/win32/gdkproperty-win32.c
10229 * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
10232 2000-02-04 Tor Lillqvist <tml@iki.fi>
10234 * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
10235 g_filename_to_utf8 to convert the font names Windows gives us from
10236 whatever is the default codepage to UTF-8.
10237 (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
10238 in the other direction.
10240 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
10241 error in debugging output.
10243 2000-02-02 Tor Lillqvist <tml@iki.fi>
10245 * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
10246 and height parameters to gdk_window_clear_area(). Not minus one.
10248 Wed Feb 2 11:58:05 2000 Owen Taylor <otaylor@redhat.com>
10250 * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
10251 checks if the widget passed to gtk_drag_get_data() was not the
10254 2000-02-01 Tor Lillqvist <tml@iki.fi>
10256 * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
10257 g_filename_from_utf8 functions (which were added a moment ago to
10258 GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
10261 gtk_file_selection_get_filename returns the filename in the C
10262 runtime encoding. It calls g_filename_from_utf8, but copies the
10263 returned string to a static buffer, which is returned. I think
10264 this is better than returning the result from g_filename_from_utf8
10265 directly, which would mean all apps that use it would have to free
10266 the return value. Or should this function care about this issue at
10267 all? Maybe a new function with clearly defined semantics.
10269 * gtk/gtkfilesel.h: Add comment about
10270 gtk_file_selection_get_filename returning the filename in the C
10271 runtime's encoding.
10275 * gdk/makefile.{cygwin,msc}
10276 * gtk/gtk.def: Updates.
10278 * gdk/gdkcursor-win32.c: Initialise refcount.
10280 2000-01-31 Yuan-Chung Cheng <platin@linux.org.tw>
10282 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
10284 2000-01-30 Havoc Pennington <hp@pobox.com>
10286 * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
10289 * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
10291 * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then
10292 implemented in platform-specific code
10294 * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
10296 * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
10297 underscore in front
10299 * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
10300 put an underscore in front
10302 * gdk/gdkcursor.c: new file, implements
10303 gdk_cursor_ref/gdk_cursor_unref
10305 * gdk/gdkcursor.h: Refcount GdkCursor
10307 * gdk/gdkcompat.h (gdk_cursor_destroy): compat
10309 2000-01-29 Tor Lillqvist <tml@iki.fi>
10312 * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
10314 Tue Jan 25 11:43:21 2000 Owen Taylor <otaylor@redhat.com>
10316 * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
10317 structures to properly inherit from GtkWidget not GtkBin.
10319 Sun Jan 23 20:28:24 2000 Owen Taylor <otaylor@redhat.com>
10321 * gtk+.spec.in: Added lib/gtk+/include/* to %files
10322 (bug #5178 - Peter Wainright)
10324 * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
10325 so that it will be installed.
10326 (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
10328 Fri Jan 21 16:29:28 2000 Owen Taylor <otaylor@redhat.com>
10330 * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
10331 for the GtkStyleClass vtable const.
10333 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
10334 take a const string argument like GtkTranslateFunc. This will
10335 require changes in use code.
10337 2000-01-19 Tor Lillqvist <tml@iki.fi>
10339 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10340 semantics (to mimic the X11 backend, which just calls XClearArea)
10341 is to check for zero width (and height), and in that case use the
10342 window's width minus x (height minus y). This fixes for instance
10343 some redraw problems with gtkclist, which were easily noticeable
10344 in the gtk file selection widget.
10346 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
10349 2000-01-13 Tor Lillqvist <tml@iki.fi>
10353 * gdk/x11/Makefile.am
10354 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
10356 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
10359 2000-01-09 Tor Lillqvist <tml@iki.fi>
10361 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
10362 WM_MOVE for iconified or invisible windows. This fixes various
10363 problems when minimising windows. Thanks to Bernd Herd.
10365 2000-01-05 Tor Lillqvist <tml@iki.fi>
10367 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
10368 backend's draw_lines method, not draw_points.
10370 2000-01-02 Tor Lillqvist <tml@iki.fi>
10372 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
10373 before Owen's reorganisation: Don't have queued_events and
10374 queued_tail statics in this file, but use gdk_queued_events and
10375 gdk_queued_tail. This makes exposure event compression work again.
10377 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
10380 1999-12-30 Tor Lillqvist <tml@iki.fi>
10382 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
10383 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
10384 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
10385 doesn't do anything.
10387 * gdk/gdk.def: Add gdk_xid_table_insert.
10389 * gdk/win32/gdkprivate-win32.h
10390 * gdk/win32/gdkevents-win32.c
10391 * gdk/win32/gdkinput-win32.c
10393 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
10394 extension_events field in the GdkWindowWin32Data struct. Use only
10395 the extension_events field in GdkWindowPrivate. Previously one was
10396 set, and the other one tested, which broke tablet
10397 functionality. Thanks to Keishi Suenaga for pointing this out.
10399 1999-12-18 Tor Lillqvist <tml@iki.fi>
10401 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
10402 When handling a single character (text length == 1), don't handle
10403 it as if it was UTF-8.
10405 1999-12-11 Tor Lillqvist <tml@iki.fi>
10407 * Makefile.am: Distribute README.win32.
10410 * gdk/win32/Makefile.am: Distribute Win32 files.
10412 * gdk/makefile.msc: New file.
10414 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
10417 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
10418 gdk_error_code as GDKVAR, as they are referred outside GDK.
10420 * gdk/win32/makefile.msc: Update.
10422 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
10423 tweaks. Check only if at least one of those Unicode subrange bits
10424 we care for is set. If no code page bits are set, guess (wildly)
10425 based on the charset.
10427 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
10429 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
10435 * gtk/gtkselection.c
10437 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
10438 appropriate. There must be a cleaner way to handle this?
10440 * gtk/gtkrc.c: Must include windows.h on Win32.
10442 * gtk/testgtk.c: No need to include gdkx.h.
10444 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
10446 1999-12-07 Tor Lillqvist <tml@iki.fi>
10448 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
10449 the rbearing is set to the same as the width, but this should be
10452 1999-12-06 Tor Lillqvist <tml@iki.fi>
10454 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
10455 function. If Windows doesn't tell us what Unicode subranges a font
10456 covers, guesstimate based on the codepages it covers. This will
10457 hopefully help those Windows versions or fonts that don't give us
10458 any useful Unicode subrange information with GetTextCharsetInfo.
10459 Call this function in gdk_font_load_internal.
10461 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
10464 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
10466 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
10467 New function, long needed.
10469 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
10471 * gdk/gdkproperty.h x11/gdkproperty.c: Change
10472 only_if_exists argument of gdk_atom_intern to
10475 1999-11-25 Tor Lillqvist <tml@iki.fi>
10477 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
10478 Fix two copy&paste errors.
10480 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
10483 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
10484 GdkWin32SingleFont struct.
10486 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
10487 subranges of loaded fonts. Clear font signature first, in case
10488 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
10489 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
10491 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
10492 Unoffset clip region.
10494 1999-11-23 Tor Lillqvist <tml@iki.fi>
10496 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
10497 event->any.window before calling filter functions.
10499 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
10501 * gtk/gtkgamma.h: Adapt cast macros to standard.
10503 [ Merges from 1.2 ]
10505 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
10507 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
10508 If translation does not include a '/', use entire
10509 translation instead of crashing.
10511 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
10513 * docs/gtk_tut.sgml:
10514 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
10516 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
10518 * gtk/gtkselection.c (gtk_target_list_remove): Use
10519 g_list_remove_link, not g_list_remove.
10521 [ From Geert Bevin <gbevin@thunderstorms.org> ]
10523 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
10525 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
10526 statement upon unselection (how the heck did that slip in?).
10528 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
10530 * gtk/gtktext.c (gtk_text_freeze):
10531 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
10532 in frozen state (and aparently crashes). patch provided by Anders
10533 Melchiorsen <and@kampsax.dtu.dk>.
10535 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
10537 * fix insensitive default/focus widget activation,
10538 reported by Matt Goodall <mgg@isotek.co.uk>.
10540 * gtk/gtkwindow.c (gtk_window_key_press_event):
10541 (gtk_window_activate_default):
10542 (gtk_window_activate_focus):
10543 return handled=FALSE for actiavtion of insensitive default
10544 widgets. return handled=TRUE for activation of insensitive
10545 focus widgets. don't activate in either case.
10547 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
10549 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
10550 and $glib_cflags to match library order and in the
10551 theory that an old version of GLib is more likely to
10552 be in the include directory for X then vice-versa.
10555 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
10557 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
10558 to determine the locale for fontsets, not LC_MESSAGES;
10559 the user may want English messages with a handling
10560 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
10561 will still be broken) (Bug #2891)
10563 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
10565 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
10567 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
10569 * gtk/gtkrc.ko: Changed the Korean default fontset.
10571 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
10573 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
10574 where when scrolling to the left or top double exposes
10575 were done, causing major slowdowns.
10577 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
10579 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
10580 names to lowercase and alphanumeric, before looking
10583 * gtk/Makefile.am: Install codeset variant gtkrc files
10584 with normalized names.
10586 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
10588 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
10589 popup menus when the menu is already visible, but its parent
10590 is still hidden, (happens after tornoff window got hidden).
10592 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
10594 * gtk/Makefile.am (install-data-local): Fix
10595 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10596 deleted, causing error messages on install.
10598 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
10600 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10601 the handle as well, since we now sometimes ignore
10602 exposes on the handle while resizing.
10604 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
10606 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10607 extra g_free introduced in one of the last one or two
10610 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
10612 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10613 consistent, put each style that a gtkrc.* file creates
10614 in a unique namespace, remove old files before installing.
10616 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
10618 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10619 gtk_rc_init is called multiple times. (Yes, people who
10620 do that have bugs in their code.)
10622 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10624 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10625 Remove it since it's generated by the Makefile anyway
10627 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
10629 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
10630 device->info.axes for core pointer.
10632 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
10634 * gtk/testgtk.c (destroy_idle_test): Rename idle to
10635 idle_id, to deal with obsolete, broken C libraries.
10637 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
10639 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
10640 allocation->x/y twice!
10642 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
10643 consistent with gtk_vscale_pos_trough().
10645 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
10647 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
10648 be queueing a resize on a toplevel container between
10649 the time we show it and when we map it. So, we need
10650 to test GTK_WIDGET_VISIBLE() for toplevels, and only
10651 use GTK_WIDGET_DRAWABLE() for child windows.
10653 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
10655 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
10658 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
10660 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
10661 container DRAWABLE (instead of VISIBLE), so we don't queue
10662 resizes on non-toplevel containers.
10664 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
10666 * gtk/gtkselection.[ch]: Make the data argument
10669 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
10671 * gtk/gtkwindow.c: Try to behave sensibly if
10672 the focus widget is the window itself. (Should
10673 we allow this at all?)
10675 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
10677 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
10678 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
10679 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
10680 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
10681 in prototypes and implementations consistent (Tomas Ogren).
10683 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
10684 before the widget is unparented (reported by damon).
10686 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
10687 since we provide unsigned data anyways.
10689 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
10691 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
10692 the call to gtk_tooltips_layout_text() until later.
10694 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
10695 Call gtk_widget_ensure_style() before using the style.
10697 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
10699 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
10700 for old widgets that don't propagate draws to all
10701 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
10703 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
10705 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
10706 for a redraw but just the widget that requested the resize.
10708 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
10710 * gtk/gtkcontainer.c: added new widget level method
10711 gtk_container_set_reallocate_redraws() and a GtkContainer flag
10712 reallocate_redraws : 1 to reflect the setting, exported this through
10713 the argument system as a boolean ::reallocate_redraws.
10715 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
10716 on the widget because the allocation changes, do so as well for
10717 widget->parent if the parent has reallocate_redraws set to TRUE.
10718 with that containers requesting reallocation redraws get automatically
10719 redrawn if their children changed allocation (this unfortunately
10720 affects also other children that didn't change allocation, but we
10721 cannot work around that before 1.3).
10723 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
10725 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
10726 _and_ height are >0 (not _or_).
10728 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
10729 instead of gtk_container_queue_resize(), which is a core gtk internal
10730 function (must have been on crack when i queued that).
10732 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
10733 we can check more reliably if we want to discard expose events.
10734 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
10737 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
10738 we simply trust these events. for deciding whether to discard exposes,
10739 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
10741 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
10743 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10744 queues of areas that are completely off screen.
10746 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
10747 logic for handleboxes.
10749 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
10750 check on width/height.
10752 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
10754 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
10755 we are fine with using $@ the way we do (if we actually encounter
10756 brokeness with $@ in VPATH builds because of additional path prefixes,
10757 we need to use $(@F) actually).
10759 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
10761 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
10762 short lived bugs, that would allow language bindings to do surgeries
10765 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
10767 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
10768 where comparison was being done against an uninitialized
10769 value causing intermittant results depending on
10770 compiler flags. Also make it clearer that we aren't
10771 ever initializing the child as 0x0 (though this will
10772 be caught in gtk_widget_size_allocate())
10774 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
10776 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
10777 gtk_window_unset_transient_for() call after we do checks
10778 involving the old transient parent.
10779 [ From Lance Capser <lmc@cyberhighway.net> ]
10781 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
10783 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
10786 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
10788 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
10789 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
10791 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
10793 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
10794 `$@' is valid only in the build dir, not after we've done
10795 `cd $srcdir'. Also use `test -f' instead of less portable
10798 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
10800 * gtk/gtktext.c (correct_cache_insert): Rewrite
10801 for simplicity, and hopefully correctness.
10802 (Fixes bug #1322, which was a segfault when
10803 on some insertions with the properties around
10804 the insertion set up just wrong.)
10806 * gtk/gtktext.c (gtk_text_adjustment): When we receive
10807 a "changed" signal, clamp the new value to the adjustment
10808 bounds to avoid segfaulting if someone tries to change
10809 the adjustment to a bogus value. (Bug #1795)
10811 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
10813 * gtk/gtkmain.c: Ignore unexpected destroy notifies
10814 for children, for toplevel windows handle them
10817 * gtk/gtkplug.c: Add an unrealize handler so that
10818 we unref plug->socket_window when we are done
10821 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
10823 * gtk/gtktext.c (clear_area): Fix stupid signedness
10824 problem that was causing background to sometimes
10827 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
10829 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
10831 * gtk/gtkmenu.c (gtk_menu_position): Make
10832 sure we never position menus with negative x, y,
10833 since gtk_widget_set_uposition() can't handle that.
10835 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
10836 Modify the positioning code a bit so that we always
10837 put the top-left corner onscreen. (This is for
10838 UI reasons, gtk_menu_position() now takes care of
10839 gtk_widet_set_uposition() brokeness.)
10841 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
10843 * gtk/Makefile.am: fixed up things for -jx, x > 1.
10845 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
10847 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10848 RC style that is passed in. The lack of the ref
10849 before was a bug. If people worked around this
10850 bug, this will introduce a slight memory leak
10851 in their code. The code should typically look like:
10853 rc_style = gtk_rc_style_new ();
10855 gtk_widget_modify_style (widget, rc_style);
10856 gtk_rc_style_unref (rc_style);
10858 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10859 the style if it was already set.
10861 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10862 style if it was set before.
10864 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
10866 * gtk/testgtk.c (main): Add a check to see if we
10867 are being run from the correct directory and
10868 to quit nicely if we are not.
10870 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10873 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
10875 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10878 queue resizes unconditionally (gtk_widget_queue_resize will figure
10879 what to do if the window is not realized).
10880 (gtk_window_move_resize): only recenter the window
10881 for GTK_WIN_POS_CENTER_ALWAYS.
10882 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10883 the same way as GTK_WIN_POS_CENTER.
10885 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
10887 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10888 with (!(info->last_flags & GDK_HINT_POS)) instead of
10889 (!info->last_flags & GDK_HINT_POS).
10891 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10892 new_height unconditionally, because we use these values even if
10893 !default_size_changed && !hints_changed.
10894 comented the (default_size_changed || hints_changed) case with
10895 respect to resize rejects from the window manager.
10897 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10898 in the zvt condition hack, since this includes the window hints, set
10899 the hints after the handling_resize case.
10901 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10902 window is initially shown with to the geometry.
10904 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
10906 * gtk/gtkwindow.c (gtk_window_move_resize):
10907 s/size_changed/default_size_changed/g so i know what's
10908 really going on (frying brain on smaller flame now).
10910 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
10912 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10913 we have size_changed upon handling_resize. this is a gross
10914 workaround for the broken zvt widget and should be removed in
10915 1.3 again (search for FIXME).
10916 Owen provided an accurate comment for this:
10918 /* We could be here for two reasons
10919 * 1) We coincidentally got a resize while handling
10921 * 2) Our computation of size_changed was completely
10922 * screwed up, probably because one of our children
10923 * is broken. It's probably a zvt widget.
10925 * For 1), we could just go ahead and ask for the
10926 * new size right now, but doing that for 2)
10927 * might well be fighting the user (and can even
10928 * trigger a loop). Since we really don't want to
10929 * do that, we requeue a resize in hopes that
10930 * by the time it gets handled, the child has seen
10931 * the light and is willing to go along with the
10932 * new size. (this happens for the zvt widget, since
10933 * the size_allocate() above will have stored the
10934 * requisition corresponding to the new size in the
10937 * This doesn't buy us anything for 1), but it shouldn't
10938 * hurt us too badly, since it is what would have
10939 * happened if we had gotten the configure event before
10940 * the new size had been set.
10943 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
10945 * gtk/gtkrc.c: deal properly with the fact that RC
10946 style lists may include rc styles more than once.
10948 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10949 unused static function.
10951 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10952 stack of directories of RC files currently being
10953 parsed and implicitely add them to pixmap path.
10955 This fixes a bug where the directory would get
10956 appended then overwritten by pixmap_path declarations.
10958 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10960 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10961 theme's exit function. (Patch from Peter Wainwright,
10964 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10965 Add a destroy() handler to take care of removing
10966 group for menu item. (Fixes bug #1197)
10968 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10969 in warning message.
10971 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
10973 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10974 roundtrip to figure window's width and height, since we know that
10975 anyways from widget->allocation.
10977 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
10979 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10980 the hints after we request the new size.
10982 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
10984 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
10985 GTK_WIDGET_REALIZED() assertion - we can compute the
10986 hints before we are realized.
10988 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
10989 hint changing so that we have a value of hints_changed
10990 when we decide whether to constrain the window size.
10992 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
10994 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
10995 change back to G_MAXINT.
10997 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
10999 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11000 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11001 contain uncluttered values.
11002 (gtk_window_compute_hints): simply assert that window is realized
11003 and that geometry_info is valid, since we rely on this anyways.
11004 (gtk_window_constrain_size): major cleanups to the code.
11005 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11006 for the base size, instead of the minimums. use 32767 as max width
11007 and height (like in gtkwindow.c) instead of G_MAXINT.
11009 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
11011 * cleaned up the GtkContainer.need_resize flag handling mess, we
11012 only need to force resize requests when we were prematurely
11013 realized, or our widget tree was modified when we were temporarily
11014 hidden. handling these cases directly upon showing the window (i.e.
11015 while the GdkWindow is still unmapped) avoids the need to wait for
11016 a configure event response and therefore makes the GUI more snappier
11017 and avoids blank windows during the roundtrip.
11021 (gtk_widget_show): don't queue resizes on toplevels, they know how
11022 to deal with matters.
11024 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
11025 flag directly for not visible resize containers and spare us unecessary
11029 (gtk_window_realize): if we need to enforce premature size allocation,
11030 queue a container resize so we are correctly resized later on.
11032 (gtk_window_size_request):
11033 don't freak around with the ->need_resize flag,
11034 gtk_container_queue_resize() will care about that.
11036 handle initial resizing issues here, we can handle matters better in
11037 this place, especially since we know that our GdkWindow is still
11039 (gtk_window_move_resize):
11040 don't care about ->need_resize at all.
11041 handle size changes properly that occoured while we waited for a
11044 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
11046 * gtk/gtkwidget.c (gtk_widget_set_uposition):
11047 * gtk/gtkwindow.[hc] (gtk_window_reposition):
11048 Move the hint setting code from gtk_widget_set_uposition
11049 to here; set the hints so that we respect any previously
11050 set geometry hints.
11052 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
11053 change the window hints here or move the window here,
11054 let that happen in gtk_window_move_resize().
11056 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
11058 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
11059 to already queued resizes (and therefore redraws) on a widget, check
11060 its anchestry as well.
11062 * gtk/gtkcontainer.c:
11063 (gtk_container_queue_resize): clear resize widgets for resize
11064 containers before aborting prematurely. this is especially important
11065 for toplevels which may need imemdiate processing or their resize
11066 handler to be queued.
11067 (gtk_container_dequeue_resize_handler): added new internal function for
11070 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
11071 configure event, take possible changes in window position into account
11073 if we request a new window size, queue up a resize handler that will
11074 last until the configure event response arrives.
11075 combined the ->need_resize case (initial show) with the general size
11076 (hints) changed case and added even more comments.
11077 if !auto_shrink, only revert to the old allocation if the new size
11078 is smaller than the current allocation.
11080 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
11082 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
11083 gtk_window_set_geometry_hints
11084 gtk_window_set_default_size):
11085 When hints are set, queue a resize so that the hints will
11086 be eventually reset on the toplevel.
11088 * gtk/gtkwindow.c (gtk_window_show): Use
11089 gtk_window_compute_default_size(). Clear the need_resize flag
11090 on the initail map so that we don't unnecessarily trigger the
11093 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
11094 into separate functions. Compare the hints we are setting
11095 with what we set last time so that we can accurately
11096 tell when we need to reset the hints.
11098 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
11099 function to figure out the size from requisition
11102 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
11103 from fvwm to constrain a size to the geometry hints.
11105 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
11106 to compare two sets of geometry hints.
11108 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
11109 from gtk_window_set_hints(), just compute the hints,
11112 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
11113 code from gtk_window_move_resize() to separate function,
11116 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
11118 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
11119 structure into a new private structure.
11121 * gtkrc.c: Split GtkRcStyle into public/private.
11122 In the private part, add a list of pointers to the
11123 RcStyle lists this RcStyle participates in.
11125 * gtkrc.c: When a RcStyle is free, remove all
11126 lists referencing it from the
11127 realized_style_ht hash, and free those lists.
11129 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
11130 gtk_rc_init(), since that adds the default styles
11131 to the list of parsed RC files again.
11133 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
11135 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
11137 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
11138 checks that ensure that a widget's allocation is at least 1 in width
11139 and height. (GNOME note: this doesn't affect old panel code anymore,
11140 because GtkSocket will request width and height of at least 1 since
11143 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
11144 allocated yet (happens if the user realizes the window prematurely),
11145 size request and allocate it.
11146 (gtk_window_size_allocate): guard against guint underflows.
11148 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
11150 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
11151 in gtk_built_sources, so gtk.defs gets built prior to all other
11154 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
11157 invoke indent on gtkmarshal.*.
11158 rewrote source generation rules, use COPYING as oldest source tag for
11159 a piggyback rule to generate all sources from (don't touch it ;).
11160 major cleanups, strip spaces on build rules for GNU Make.
11162 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
11163 source and target files from commandline arguments. don't invoke indent.
11165 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
11167 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11168 notebook after switch to avoid drawing problems.
11169 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11171 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
11173 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11175 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
11177 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11178 notebook after switch to avoid drawing problems.
11179 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11181 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
11183 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11185 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
11188 we use window->need_resize from configure_event now, to indicate that
11189 the gtkwindow should keep its allocation (e.g. because the user resized
11190 the window through window manager handles). resize_count is now reliably
11191 used to figure whether we got the allocation we requested from the
11193 configure events get queued as resizes now, the real stuff (size
11194 computation and allocation) now only goes on in gtk_window_move_resize().
11195 GtkWindow's requisition now contains its *real* requisition (like all
11196 other widgets), *not* taking usize into account.
11197 geometry_info->last_{width|height} is now updated from set_hints() only
11198 so it always contains the last hints we set for the window manager.
11199 made some event handlers return TRUE instead of FALSE.
11200 the overall code should be much more straight forward now, and the
11201 significant code portions are accompanied by comments now.
11202 (gtk_window_set_hints):
11203 removed requisition argument and made it
11204 fetch the requisition through gtk_widget_get_child_requisition.
11205 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
11208 ensure that the widget is realized before calling
11209 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
11210 ensure that we got properly size requested and allocated before
11212 (gtk_window_configure_event):
11213 ignore plain window moves, or reallocate the widget tree through the
11214 resize queue otherwise.
11215 (gtk_window_move_resize):
11216 mostly rewrote this function to figure window manager hints more
11217 reliably, coalesce window moves and resizes to reduce configure events
11218 and do actuall size allocations.
11220 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
11222 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
11223 that have a resize pending, because a redraw is already queued for them.
11225 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
11226 hack to clear resize_widgets.
11228 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
11229 for resize containers prior to size allocation. (this is also a bit
11230 ugly, but avoids side effects for stopped emissions and is thus more
11232 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
11234 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
11235 function from gtk_tooltips_expose, as we connect to ::expose_event
11238 1999-08-18 Federico Mena Quintero <federico@redhat.com>
11240 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
11242 (gtk_target_list_unref): Likewise.
11244 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
11246 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
11248 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
11249 guard against division by zero. (Fixes bug #1339)
11251 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
11253 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
11254 Prevent the trivial leak of information of allowing
11255 word motion when the entry is not visible.
11257 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
11259 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
11260 modality to error dialog as well as confirmation dialogs.
11261 (Bug #1803, reported by Rosanna Wing Sze Yuen)
11263 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
11265 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
11267 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
11269 * gtk/Makefile.am (install-data-local): Solaris apparently
11270 has various troubles with ln -f; use rm first instead.
11271 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
11273 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
11275 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
11276 use `cp' followed by `rm' (the `rm' was already there).
11278 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11280 * configure.in: Fix autoconf warnings about cross compilation by
11281 trying to provide sane defaults for AC_TRY_RUN.
11282 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
11283 put them into $(srcdir) when generated. Also add a dependency of
11284 gtksignal.h on gtkmarshal.h for -j builds.
11285 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
11287 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
11289 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
11290 GDK_THREADS_{LEAVE,ENTER} pair.
11291 (From Paul Fisher <pnfisher@redhat.com>)
11293 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
11295 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
11296 width and height are always >0 (owen).
11298 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
11300 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
11301 change that assured that a widget's allocated with and height are
11302 always >1, since this breaks *buggy* panel code. unfortunately this
11303 back-breaks the gimp's color selector.
11305 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
11306 allocation is always >0 in width and height, before sending the
11307 configure event; this is a *gross* hack to get the gimp back to work.
11309 * marked both cases with TODO-1.3
11311 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
11313 * gtk/gtktext.c: Don't display wrap indicators when
11314 text is not editable and word wrap is on.
11316 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
11318 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
11319 option menus here as they are not derived from menu shell, assure that
11320 the option menu has a menu we can add items to.
11322 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
11324 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
11325 width/height to (gint) before calculations and check against < 0 to
11326 avoid guint wraparounds.
11328 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
11330 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
11331 width and height is never zero. sanity check both dimensions against
11332 32767 and issue a warning if the allocation is greater than that.
11334 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
11336 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
11337 to g_main_pending() as well.
11339 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
11341 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
11342 call to g_main_iteration() - since that will regrab
11343 GTK+ lock to process events.
11345 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
11348 - Regularize with the rest of GTK+ by making widget->requisition
11349 not reflect the set_usize()
11350 - Always recompute geometry hints, then check if they
11351 changed before sending them to the X server. The
11352 previous checks for changes would fail in a number
11355 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
11357 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
11359 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
11363 - Instantaneously update on modifier key presses
11364 - Allow cancellation of the drag with Escape.
11366 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
11368 * gtk/testgtk.c (create_handle_box): Set the policy
11369 to auto_shrink - otherwise the appearance is rather
11370 strange when flipping between horizontal and vertical.
11372 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
11374 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
11375 (gtk_window_set_default_size): don't change a value if it's < 0.
11378 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
11380 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
11382 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
11384 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
11385 add an extra "/" when concating "/" + filename.
11386 (From Matt Grossman <mattg@oz.net>)
11388 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
11390 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
11391 for fg_gc if we set it for drawing pixmap.
11393 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
11395 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
11397 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
11398 already set, call old engine's destroy function and
11399 unref the old engine.
11401 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
11403 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
11405 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
11407 * gtk/gtkaccelgroup.h: mark certain functions as internal.
11409 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
11411 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
11412 expand behaviour changed.
11414 * gtk/gtklabel.c (gtk_label_set_pattern):
11415 (gtk_label_set_justify):
11416 (gtk_label_set_line_wrap):
11417 don't bother invoking queue_clear, the reallocation does
11418 that for us, always free_words so the upcoming resize will
11419 relayout the label's contents.
11421 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
11423 * applied argument implementation patches from Elena Devdariani
11426 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
11427 ::space_style, ::relief
11428 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
11429 * gtk/gtkpreview.c: ::expand
11430 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
11431 * gtk/gtknotebook.c: ::homogeneous
11432 * gtk/gtklabel.c: ::wrap
11433 * gtk/gtklist.c: ::selection_mode
11434 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
11435 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
11436 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
11437 * gtk/gtkclist.c: ::sort_type
11438 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
11439 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
11441 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
11443 * gtk/gtkstyle.c: Removed ill-thought-out part of last
11446 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
11448 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
11449 counting right when we have to attach a new style
11450 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
11452 * gtk/gtkstyle.c: Documented the refcounting
11453 peculularities of gtk_style_attach.
11455 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
11457 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
11460 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
11461 of GTK_TOPLEVEL for creating the window.
11463 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
11465 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
11466 the last argument (reported by Per Winkvist).
11468 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
11470 Fixes for invisible XOR lines (Frank Loemker
11471 <floemker@TechFak.Uni-Bielefeld.DE>)
11473 * gtk/gtkclist.c (gtk_clist_realize): Always use
11474 a non-zero pixel for GDK_XOR.
11476 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
11477 Use GDK_INVERT instead of GDK_XOR.
11479 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
11481 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
11482 signals if h/voffsets differ from adjustment values.
11483 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
11485 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
11487 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
11488 ::selection-done emissions up to the topmost menu shell.
11490 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
11492 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
11493 the user data on the window before destroying it.
11495 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
11496 unrealize handler to take care of destroying
11497 notebook->panel properly.
11498 (Bug #1198 - Morten Welinder <terra@diku.dk>)
11500 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
11501 of g_new and g_realloc to stop memory leak. (Actually,
11502 we could just use g_realloc(), but I'm not 100% sure
11504 (Bug #1196 - Morten Welinder <terra@diku.dk>)
11506 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
11508 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
11510 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11513 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
11514 with bin/button confusion.
11516 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
11518 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
11519 and show how preselection of radio items is done.
11521 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
11523 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
11524 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
11525 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
11526 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
11527 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
11528 * gtk/gtktable.c (gtk_table_attach):
11529 * gtk/gtklist.c (gtk_list_insert_items):
11530 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
11531 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
11532 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
11533 * gtk/gtkbin.c (gtk_bin_add):
11534 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
11535 * gtk/gtkfixed.c (gtk_fixed_put):
11536 * gtk/gtklayout.c (gtk_layout_put):
11537 general fixups to container_add logic. always realize child if
11538 child->parent is realized, only map the child and queue a resize
11539 if child and child->parent are both visible.
11541 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
11543 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
11544 instead of gtk_container_foreach to walk and unrealize children, so
11545 composite children get also unrealized.
11546 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
11547 (gtk_widget_map): assert that the widget is visible (basic constrain).
11548 (gtk_widget_real_map): assert that the widget is realized (basic
11551 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
11553 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
11555 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
11557 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
11558 file for iso-8859-2 locales.
11560 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
11562 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
11564 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
11565 (Pointed out by andy@rz.uni-karlsruhe.de and others).
11566 Remove some suspicious and useless lines.
11568 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
11570 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
11571 width,height = 0, 0 to mean - here to edge of window,
11572 instead of -1, -1, since the former is all we support.
11574 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
11576 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
11577 when removing from quit_functions list.
11579 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
11581 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
11583 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
11585 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
11586 When redrawing characters on non-visible entry, use appropriate
11587 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
11589 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
11591 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
11592 from drag coordinates.
11593 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
11594 use drag_dest_cell.
11596 * gtk/gtktree (drag_dest_cell)
11597 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11600 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
11602 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11603 translate_* fields.
11604 (gtk_item_factory_finalize): invoke translate_notify independant from
11606 (gtk_item_factory_set_translate_func): likewise.
11607 (gtk_item_factory_destroy): only remove ifactory pointer from those
11608 widgets that belong to us (stupid me).
11610 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
11612 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11613 rc_style list when lookup succeeeds.
11615 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
11617 * gtk/gtkctree.c (resync_selection):
11618 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11619 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11622 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
11624 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11625 Add some missing GDK_THREADS_ENTER()/LEAVE around
11626 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11628 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
11630 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
11631 rather than emit_by_name.
11633 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
11634 on the widget across multiple signal emissions.
11635 (gtk_editable_delete_text): same here.
11636 (gtk_editable_class_init): set widget_class->activate_signal after
11637 editable_signals[ACTIVATE] has been created.
11639 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
11641 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
11642 position here prematurely -- we might not have the
11643 right ->min_position and ->max_position yet.
11645 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
11647 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
11648 Add error traps so if the other end of the connection
11651 * gtk/gtkselection.c (gtk_selection_notify): Clean
11652 up properly when selection property retrieval fails.
11654 * gtk/gtkselection.c (gtk_selection_request): Correctly
11655 reject SelectionRequest notifies where the handler
11658 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
11660 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
11661 when we've previously highlighted.
11663 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
11664 emit two "drag_leave" signals for Motif drops.
11666 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
11667 back the correct status messages when dropping from
11668 Motif onto a proxy window that is rejecting the
11671 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
11673 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
11674 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
11675 to compare two argument values. added gtk_arg_to_valueloc() to set a
11676 variable from an arg through its location (pointer).
11678 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
11679 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
11680 as gfloat*, uchars are collected as guchar*, ints are collected as
11683 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
11685 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
11686 Include <string.h> instead of <strings.h>.
11688 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
11689 (actually, a lot more duplicate includes occur if
11690 you trace through the sequence of #include's)
11691 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
11693 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
11695 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11696 gtk-a-higuti-990322-[0-3]
11698 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11699 that was causing -DX_LOCALE not to work.
11701 * gtk/gtkrc.c (gtk_rc_init):
11702 X_LOCALE will never have LC_MESSAGES defined
11704 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
11706 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
11707 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
11709 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
11710 left/right as well (gtk-michael-980726-0.patch.gz).
11712 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
11713 for pointer values, use gchar instead of char. fixed uline allocation
11714 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
11715 chunks instead of G_ALLOC_ONLY.
11716 (gtk_label_size_request): always alter requisition as passed and leave
11717 widget->requisition alone.
11718 (gtk_label_set_text): allow NULL strings.
11719 (gtk_label_new): likewise.
11721 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
11723 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
11725 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
11727 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
11728 *and* mapped (i.e. drawable).
11729 (gtk_bin_expose): only send exposes to drawable children.
11731 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
11732 (gtk_box_expose): only send exposes to drawable children.
11734 * gtk/gtkhscale.c (gtk_hscale_draw):
11735 * gtk/gtkvscale.c (gtk_vscale_draw):
11736 hm, this is an ugly one. we first compute the size of our trough area
11737 here (window relative) and then check intersection with the draw_area
11738 which is parent relative because we're a NO_WINDOW widget, so we need
11739 to offset the trough area by allocation.x and allocation.y before the
11740 check. (this must not be done for the background area though, since
11741 that's already computed parent relative).
11743 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
11745 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
11746 unrealize title buttons.
11748 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
11750 * gtk/gtkclist.c (gtk_clist_column_title_passive)
11751 (gtk_clist_column_title_active):
11752 only connect/disconnect to GtkWidgetClass::event to block mouse events.
11754 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
11755 zero initialize event, removed superfluous gdk_window_get_pointer call
11757 * gtk/gtklist.c (gtk_list_vertical_timeout)
11758 (gtk_list_horizontal_timeout): removed superfluous
11759 gdk_window_get_pointer call
11761 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
11763 * plugging problems reported by "Bruce Mitchener, Jr."
11764 <bruce@puremagic.com> due to a purify session.
11768 (gtk_style_unref): assert ref_count to be > 0.
11770 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
11772 (gtk_clist_set_shift): likewise.
11774 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
11777 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
11778 event before sending it and set send_event to TRUE (which needs to
11779 be done for *all* synthesized events).
11780 (gtk_list_vertical_timeout): likewise.
11782 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
11785 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
11786 to TRUE when synthesizing events.
11788 [ *** end of merges from 1.2 *** ]
11790 1999-11-21 Tor Lillqvist <tml@iki.fi>
11792 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
11793 (or copied from gdkconfig.h.win32 on Win32, sigh).
11795 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
11797 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
11799 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
11801 * gdk/gdkconfig.h.win32: New file.
11803 * gdk/win32/makefile.cygwin: Build just a static archive here.
11805 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
11806 for the DLL from the static archive built above.
11808 * gdk/gdk.def: Moved here from the win32 subdirectory.
11810 * gdk/win32/*: Adapt for the changed private struct organisation.
11812 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
11814 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
11816 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
11817 for wheel mice (buttons 4 and 5).
11819 1999-11-18 Tor Lillqvist <tml@iki.fi>
11821 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
11822 drawables use just the pixel field in the foreground and
11823 background GdkColor of the GdkGC.
11825 gdk_gc_set_{fore,back}ground() are called in the GIMP with
11826 GdkColors containing uninitialized (red,green,blue) fields, and
11827 just the pixel field filled in, and furthermore in the
11828 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11829 It thus turns out that we really don't need to have the full
11830 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
11831 it later to have just the pixel values.
11833 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
11835 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
11837 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
11839 * docs/gtkfaq.sgml: threads example from Erik Mouw.
11840 New question on GtkLabel background colors.
11842 * docs/gtk_tut.sgml:
11843 - Correct the example code callback
11844 function definitions.
11845 - Update the gtkdial example code, from Frans van Schaik.
11846 - Update setselection.c to current API.
11848 * examples/Makefile examples/*/*.c: Update to code
11849 listed in tutorial.
11851 1999-11-10 Tor Lillqvist <tml@iki.fi>
11853 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11854 subrange table (from the "Developing International Software for
11855 WIndows 95 and Windows NT" book) was missing the Hangul syllable
11856 block... Get the loaded font's charset correctly.
11858 (Note that this, and the other *-win32.c files, still really are
11859 the old ones, the win32 subdirectory is not ready for compilation
11860 yet after the reorg.)
11862 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
11864 * gtk/gtkclist.c: Fix off-by-one bug in parameter
11867 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
11869 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11870 on results of XQueryDeviceState().
11872 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
11874 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11875 we need to accesss only ->children. We need an accessor
11878 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11879 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11880 to get rid of gdkx.h include.
11882 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11883 and random references to 'None'.
11885 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11886 Get rid of unused #include <gdk/gdkx.h>
11888 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11889 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11892 1999-11-08 Tor Lillqvist <tml@iki.fi>
11894 * gdk/win32/gdkdraw.c
11895 * gdk/win32/gdkfont.c
11896 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11897 following yesterday's changes. (Unrelated to Owen's reorg.)
11899 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
11901 * gdk/x11/gdkinput-gxi.c: Add missing include,
11902 fix GdkWindowPrivate => GdkDrawablePrivate.
11904 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11906 * gdk/x11/Makefile.am (xinput_sources): Add missing
11907 backslash to fix building with --with-xinput=none
11909 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
11911 Move all X specific code into the x11/ directory.
11912 Aside from shuffling things around, did the following:
11914 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11915 gdk_arg_context_* - a simple argument parsing system
11916 in the style of popt.
11918 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11919 gdk/x11/gdkprivate-x11.h:
11920 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
11921 add ->klass and ->klass_data fields. The klass_data
11922 field points to an auxilliary structure that is
11923 windowing system dependent.
11925 * gdk/gdkfont.c: Make most of the measurement functions
11926 simply wrappers around gdk_text_extents().
11928 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
11929 _gdk_font_strlen() function that hides the weird
11930 behavior in gtk+-1.[02] where a string is interpreted
11931 differently for 8-bit and 16-bit fonts.
11933 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11934 to store common code for synthesizing double/triple
11937 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11938 Make all the function that modify an existing GC
11939 simply wrappers around gdk_gc_set_values().
11941 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11942 for throwing out later.
11944 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11945 GdkImagePrivate and GdkColormapPrivate to have a
11946 windowing system dependent part (GdkFontPrivateX etc.)
11947 that "derives" from the system-independent part.
11949 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11950 Got rid of the included-source-files for XInput in
11951 favor of automake conditionals. (Which didn't exist
11952 when XInput support was originally added.)
11954 * gdk/gdkrgb.c: Remove the visual id from the debugging
11955 statements since that is X11 specific; print out
11956 type/depth info instead.
11959 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
11961 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11962 loading duplicates of hashed fonts.
11964 * gdk/gdk.c (gdk_keysym_convert_case): rename
11965 gdk_XConvertCase to gdk_keysym_convert_case, allow
11966 results to be NULL in the GTK+ style.
11968 * gdk/gdkcompat.h: Started compatibility header
11971 1999-11-07 Tor Lillqvist <tml@iki.fi>
11973 * gdk/win32/gdkprivate.h: New font private structures, related to
11976 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11977 gdk_font_list_free(). On X11, will just be wrappers to
11978 XListFonts() and XFreeFontNames(). On Win32, the code previously
11979 in gtkfontsel.c is now here.
11981 New function gdk_font_xlfd_create(). On X11 will get the FONT
11982 property of the font (for GDK_FONT_FONTs), or call
11983 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11984 builds a XLFD style name from the font information in the LOGFONT
11987 New function gdk_font_xlfd_free(), which correspondingly frees the
11988 string returned by gdk_font_xlfd_create().
11990 Implement fontsets on Win32. Add a function that iterates over a
11991 wide char string and calls a callback function for each substring
11992 of wide chars from the same Unicode subrange (and thus probably
11993 available in the same real font).
11995 Improve the XLFD emulation a bit.
11997 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
11999 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12000 Beta3, WM_IME_CHAR messages don't seem to contain the composed
12001 multi-byte char as with the Active IMM on Win9x. Oh well, handle
12002 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12003 ImmGetCompositionStringW() to get the composed Unicode chars.
12005 * gdk/win32/gdkgc.c
12006 * gdk/win32/gdkdraw.c: Changes needed because of the font private
12009 * gdk/win32/gdk.def: Add the new functions.
12011 1999-11-04 Tor Lillqvist <tml@iki.fi>
12013 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12014 get the Platform SDK to get <dimm.h>.
12016 * gdk/win32/gdkevents.c: More event handling fixes and
12017 simplification. Never generate motion events with is_hint true. We
12018 used to do that on bogus grounds earlier. Windows sends
12019 WM_MOUSEMOVE messages on button events even if the mouse hasn't
12020 moved, ignore these.
12022 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
12024 * gdk/win32/gdkglobals.c
12025 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
12026 the TrackMouseEvent function, and use it.
12028 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
12029 char before calling WideCharToMultiByte in order to get a string
12030 for the window title.
12032 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
12034 * gdk/win32/gdk.def: Remove obsolete functions.
12036 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
12037 /nodefaultlib and /defaultlib switches.
12039 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
12041 1999-10-31 Tor Lillqvist <tml@iki.fi>
12043 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
12046 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
12047 same type as GdkWChar, especially on Win32.
12049 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
12051 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
12052 before passing to Windows GDI for drawing etc. Convert to the
12053 system default codepage before passing to Windows as window
12056 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
12057 support changing input locale on the fly.
12059 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
12060 on-the-fly changes. Convert incoming characters from the current
12061 codepage to Unicode (and then to a UTF-8 multi-byte string) based
12062 on the current input language. Use keysym<->Unicode mapping tables
12063 and functions borrowed from xterm sources.
12065 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
12066 editions of Win9x, use the ActiveX-based Active IMM (Input Method
12067 Manager) if available. IMEs and the Active IMM are available under
12068 the disguise of Chinese, Korean and Japanese support for IE and
12069 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
12070 support is present in all editions (as long as you install it).
12072 Call DispatchMessage from gdk_events_queue() (and thus
12073 gdk_WindowProc()), instead of duplicating the code in
12076 Reworked the grab handling and propagation code, factored out
12077 duplicated code snippets into separate functions. Other cleanups,
12080 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
12081 the <dimm.h> header describing the Active IMM.
12083 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
12084 just do the same as for "single" fonts.
12086 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
12087 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
12088 the new keysyms from gdkkeysyms.h.
12090 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
12091 fontset, so that gtkentry uses wide characters.
12093 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
12094 GTk+'s system directory "gtk+", not "gtk".
12096 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
12098 * docs/gtkfaq.sgml: FAQ update
12100 1999-10-21 Tor Lillqvist <tml@iki.fi>
12102 * gdk/win32/gdkprivate.h: Add more font private data.
12104 * gdk/win32/gdkfont.c
12105 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
12106 fonts and strings. Now works much better. You still have to
12107 have a correct font selected, though. No fontset emulation yet.
12109 1999-10-19 Tor Lillqvist <tml@iki.fi>
12111 * gtk/maketypes.awk: Use G_OS_WIN32.
12113 * gtk/gtk.def: Add some missing entry points. Also some non-public
12114 ones, but PyGTK porter claims to need them.
12116 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
12117 built-in type generation.
12119 1999-10-14 Tor Lillqvist <tml@iki.fi>
12121 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
12122 GDK_FONT_FONT fonts (which is all we have for now, we don't
12123 emulate fontsets). The X11 version uses plain XDrawString in that
12124 case, too. The string passed to gdk_draw_text_wc seems to be in
12125 fact (at least, when used by gtkentry and gtktext) either in a
12126 single-byte charset, or a DBCS. Not Unicode.
12128 This fixes the problem in gtkfontsel, where even if you had
12129 selected a font with a non-Latin1 charset (windows-greek, for
12130 instance), the preview still used Latin-1 glyphs.
12132 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
12133 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
12134 (gdk_font_load): Recognize the demibold etc weights, even if we
12135 don't have the corresponding constants in the headers.
12136 (gdk_font_hash_insert): Use same hash mechanism as in the X11
12137 version. Should save font resources a bit, when we don't have
12138 multiple HFONTs for the same font.
12140 * gdk/win32/gdkprivate.h: Add the names field as in the X11
12143 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
12145 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
12148 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
12150 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
12151 layout support (as mentioned on
12152 http://www.jcinteractive.com/gnome-ui/software/widgets/)
12154 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
12157 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
12159 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
12161 * configure.in (ALL_LINGUAS): Added Galician (gl)
12163 1999-10-05 Tor Lillqvist <tml@iki.fi>
12165 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
12167 * gdk/win32/gdkcompat.c: New file, actually provide an
12168 implementation for the deprecated functions. (Just temporarily.)
12170 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
12172 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
12174 * gdk/win32/gdk.def gtk/gtk.def: Updates.
12176 1999-10-05 Kjartan Maraas <kmaraas@online.no>
12178 * configure.in: Added "uk" to ALL_LINGUAS.
12180 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
12182 * configure.in: correct checking for BeOS check
12187 * gtk/gtkitemfactory.c
12189 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
12191 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12193 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
12194 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
12195 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
12198 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
12200 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
12201 Fix a reference to window_private->destroyed.
12203 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
12204 (ugly) setting of an internal GdkWindow member to use
12205 a _slightly_ cleaner macro.
12207 * gdk/gdkprivate.h: Split GdkWindowPrivate into
12208 GdkDrawablePrivate and GdkWindowPrivate.
12209 Add extra macros for accessing GDK_DRAWABLE_ components.
12211 * *.[ch]: Massive adjustments for the above, use the
12212 new macros in a lot of places.
12214 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
12216 * gdk/gdktypes.h: Make GdkDrawable the base type,
12219 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
12221 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
12223 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
12225 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
12227 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
12229 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
12230 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
12232 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
12234 * docs/gtk-config.1: Now autogenerated.
12235 * docs/Changes-1.4.txt: started
12237 1999-10-03 Tor Lillqvist <tml@iki.fi>
12239 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
12240 to #ifdef also here.
12242 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
12243 Owen did to the X11 backend.
12245 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
12246 ScrollWindowEx when blitting inside a window, it can't be correct
12247 in the general case.
12249 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
12250 WM_GETMINMAXINFO is easier.
12252 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
12253 depth equal to the bitspixel value, not the visual's depth.
12255 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
12256 to 24 even if the bitspixel value is 32.
12258 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
12259 need to check for depth==32 when bpp==32, depth will always be 24.
12261 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
12263 * docs/Changes-1.4.txt: Started
12265 * gtk/Makefile.am (gdk_headers): Include all the new headers.
12267 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
12269 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
12272 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
12273 header to gdkinputprivate.h.
12275 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
12276 unused since before 1.2.
12278 1999-09-30 Tor Lillqvist <tml@iki.fi>
12280 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
12281 expand possible hex escapes in the font family (put there by
12282 logfont_to_xlfd if the font name isn't a legal XLFD font family,
12283 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
12284 On Win32, add hex escapes here, too.
12286 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
12288 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
12289 to #ifdef GDK_WINDOWING_X11.
12291 [ Merges from gtk-1-2 ]
12293 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
12295 * configure.in: fixed "GNU Make" check to pass with new make version
12298 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
12300 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
12301 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
12302 AM_PATH_GTK() macros don't get confused by the -pre1.
12304 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
12306 * configure.in (REBUILD): Change check for perl5
12307 to check explicitely for v >= 5.002. (5.001
12308 does not work with our scripts.)
12310 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
12312 * configure.in: evaluate $PERL for the perl version check. added
12313 --disable-rebuilds to give the user an option to completely disable
12314 any source autogeneration rules.
12316 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
12318 * configure.in: evaluate $ac_make when checking for GNU Make.
12320 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
12322 * docs/Makefile.am: added generation.txt.
12324 * Makefile.am: require automake 1.4, build README from README.in and
12325 INSTALL from INSTALL.in in dist-hook.
12328 * INSTALL.in: new files to autogenerate README and INSTALL from.
12330 * configure.in: figure whether we have GNU Make
12332 * docs/generation.txt: minor additions/corrections.
12334 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
12336 * docs/gtkfaq.sgml: FAQ Update
12338 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12340 * configure.in: Fix autoconf warnings about cross compilation by
12341 trying to provide sane defaults for AC_TRY_RUN.
12343 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
12346 * ltmain.sh: upgrade to libtool 1.3.3
12348 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
12350 * INSTALL: Indicate that the --with-glib= configure
12351 time flag is unsupported.
12353 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
12355 * docs/generation.txt: Added a file that gives
12356 documenation about the autogeneration process for
12357 various autogenerated files.
12359 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
12361 * configure.in (LIBS): Look for libgmodule in the
12364 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
12366 * docs/gtk_tut.sgml: Removed references to
12367 code examples in my directory on gtk.org as
12368 they should all be in the tutorial now.
12370 * docs/gtk_tut.sgml: Added sources for dial-test
12371 and scribble-xinput programs that were previously
12374 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
12376 * TODO: Added entry about menu keyboard navigation, removed
12377 some finished items.
12379 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
12381 * acinclude.m4: Standardize on func_dgettext
12382 not func_gettext, so that the checks for dgettext
12383 actually are paid attention to.
12385 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
12387 * configure.in (LIBS): Add $INTLLIBS into $LIBS
12388 directly, rather than repeating the checks for
12391 * INSTALL: Added information about gettext and
12394 * acinclude.m4 (LIBM): Check for dgettext, not
12395 just gettext. This should hopefully fix things wrt
12396 systems with old versions of GNU gettext installed.
12398 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
12400 * configure.in (LIBS): Look for libgmodule in the
12403 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12405 * autogen.sh: add --enable-maintainer-mode
12407 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
12409 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
12411 * docs/gtk-config.1.in:
12413 configure.in: gtk-config is now generated.
12415 * docs/gtk-config.1: Removed, now generated.
12417 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
12419 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
12420 handle CreateNotify itself, still put out a debuging message for
12421 --gdk-debug=events. made the ReparentNotify debugging message more
12423 wrap xcoords translation for ConfigureEvents into an error trap,
12424 a destroy event may already be pending, and in that case, the
12425 actuall coordinate values are not at all critical.
12427 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
12429 * gdk/gdkcc.c: Stop leaking the color_hash all over
12430 the place. Simplify and improve the logic.
12432 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
12434 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
12435 for prototypes and function implementations consistent (reported
12438 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
12440 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
12441 send_event set in debugging output.
12442 (gdk_compress_exposures): default initialize the event so we don't
12443 operate on bogus values (namely send_event).
12445 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
12447 * gdk/gdkwindow.c: When we receive an unexpected
12448 destroy notify on one of our windows, don't just
12449 warn about it, also mark our windows as destroyed.
12451 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
12453 * gdk/gdkfont.c (gdk_font_hash_insert): Add
12454 name => font and name => fontset hashes. The
12455 name => fontset hash is a _big_ win since we
12456 weren't previously caching fontsets at all and loading
12457 fontsets is expensive. The name => font hash
12458 is less of a win, but it does save us from doing
12459 repeated XQueryFont calls on the same font.
12461 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
12462 list so we can remove font/fontset from hash.
12464 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
12466 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
12467 and slightly confusing test. [ XInternAtom (,,TRUE)
12468 will never return None ].
12470 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
12472 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
12473 gdk/gdkwindow.c (gdk_window_set_hints):
12475 Don't omit setting the properties if flags == 0 -
12476 there may be an existing set of properties there
12477 already. (Very old bug. Would it be better to
12478 delete the property instead?)
12480 * gdk/gdkselection.c (gdk_selection_property_get): Fix
12481 spelling error in comment.
12483 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
12485 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
12486 to avoid stomping over gdk_error_warnings.
12488 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
12489 as (bits_per_pixel + 7) / 8. This gives the same
12490 result as before for multiples of 8, but actually
12491 a "reasonable" value for 1bit or 4bit displays.
12493 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
12495 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
12498 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
12500 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
12501 discarding configure events.
12503 1999-08-18 Federico Mena Quintero <federico@redhat.com>
12505 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
12506 refcount is greater than zero.
12508 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
12510 * gdk/gdkfont.c (gdk_font_unref): Likewise.
12512 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
12514 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
12516 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
12518 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
12519 that format 32 => sizeof(item) == 4. It really is
12522 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
12524 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
12525 core dump at all on X IO errors, only core dump
12526 if --enable-debug for X errors.
12528 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
12530 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
12531 unknown window:" message. disabled ConfigureNotify discarding code,
12532 because it led to events being processed out of order.
12534 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
12536 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
12538 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
12539 we export this function, supress error warnings and don't reset the
12540 error code in the first half of this function.
12542 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
12543 code (instead of just -1) so gdk_error_trap_pop() reveals something
12544 actually informative about the error that happened.
12547 don't rely on gdk_error_code being -1 if an error occoured, but just
12548 gdk_error_code != 0.
12550 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
12552 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
12553 pointer *before* invoking the filter function, so we at least don't
12554 crash if a filter is removed that is currently executed. window filters
12555 *really* need to be made truely reentrant at some point.
12557 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
12559 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
12560 PropertyNotify debug messages.
12562 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
12564 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
12566 * gdk/gdkim.c: Fix cut-and-paste errors for
12567 x/y and PreeditAttributes/StatusAttributes.
12569 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
12571 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
12572 G_MAXINT to 2^16 to alleviate overflow problems in
12573 various window managers.
12575 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
12577 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12580 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
12582 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
12583 Initialize size_hints.x and size_hints.y because kwm
12584 brokenly pays attention to them.
12585 (Bug #1181 - Lars Heete <hel@admin.de>)
12587 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
12589 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
12590 return value of gdk_list_visuals().
12591 (Bug #1193 - Morten Welinder <terra@diku.dk>)
12593 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
12595 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12596 XSetIMValues to (void *) when comparing to NULL, to workaround
12597 the problem of some compilers barfing since older X headers don't
12598 have the prototype for it.
12600 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
12602 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12603 for pseudocolor where colormap->colors was double
12606 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12607 color value in the hash table with the pixel filled
12608 in so when we do later hash table lookups, the color
12611 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12613 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12616 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
12618 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12619 pointed out by Morten Welinder <terra@diku.dk>.
12621 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
12623 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12624 default filter from the list
12626 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
12628 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12629 default filter from the list
12631 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
12633 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
12635 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
12636 g_strdup_printf instead of calcing the length separately
12638 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
12640 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
12641 that we don't do in many other places. (Fixing duplicate
12642 #include of config.h)
12644 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
12645 Otherwise, #ifndef XINPUT_NONE check in the latter
12646 doesn't work. (Bug #546)
12648 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
12650 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
12651 "None" case insensitive.
12653 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
12655 * gdk/gdkselection.c:
12656 Add error traps so if the other end of the connection
12659 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
12661 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
12662 dest_xid field into two fields - one for the window
12663 to send in messages, one to indicate the last looked
12664 up window for caching purposes. This is needed, so
12665 that Leave messages get the correct window.
12667 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
12669 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
12670 Fix warning created by people mucking around
12671 with the gsource API.
12673 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
12674 Change mapping between GIOCondition and GdkInputCondition
12675 to match the way the Linux kernel does it. This should
12676 fix problems where closed pipes were no longer signalling
12677 GDK_INPUT_READ on systems with a native poll().
12679 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
12681 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
12682 explicitly for the string "None" - it is in the XPM
12683 spec and some servers treat unknown colors in odd ways
12684 (like asking the user!)
12686 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12688 * gdk/gdkevents.c: made "->" into a "." of previous change so
12691 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
12693 * gdk/gdkevents.c (gdk_compress_exposures): Set the
12694 window field of the event structure before calling
12697 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
12699 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
12700 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
12702 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
12704 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
12705 intermediate text property - prevents major memory
12706 leak when gdk_use_mb.
12707 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
12709 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
12711 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12712 gtk-a-higuti-990322-[0-3]
12714 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
12715 sizeof(wchar_t) != sizeof (GdkWChar)
12717 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12718 that was causing -DX_LOCALE not to work.
12720 * gtk/gtkrc.c (gtk_rc_init):
12721 X_LOCALE will never have LC_MESSAGES defined
12723 * gdk/gdk.c (gdk_init_check):
12724 Remove --xim-preedit and --xim-status from argv properly.
12726 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
12727 that the client window is present on the X server
12728 before we pass it to the input method.
12730 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
12732 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
12733 if --display is specified on the command line, than
12734 the drag window will not be created on that display.
12736 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
12738 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
12739 lookups with only_if_exists == TRUE were inserting
12740 bogus values into the atom cache.
12742 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
12744 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
12745 then reset it to NULL.
12749 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
12750 key for g_hash_table_remove() in both functions, this prevents us
12751 from accessing possibly uninitialized portions of a GdkColor structure
12752 where we are only interested in its pixel value.
12754 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
12756 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12757 font hash table, if we have a GdkFontPrivate entry for this font
12758 already, simply increment its reference count, provided by Olaf Dietsche
12759 <olaf.dietsche+list.gtk@netcologne.de>.
12761 1999-09-21 Tor Lillqvist <tml@iki.fi>
12763 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
12766 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
12767 unused variables, leftovers from the X11 version.
12769 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
12771 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
12772 downcase fields on X11.
12774 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12776 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
12777 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
12779 1999-09-17 Tor Lillqvist <tml@iki.fi>
12781 * gdk/win32/gdk.def: Add gdk_threads_mutex.
12783 * gtk/makefile.msc: Correct path to libintl.
12785 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
12786 use of gint vs. int, and gint vs. gboolean in headers and
12787 definitions. Use GtkType for the *_get_type functions. Note that
12788 these changes preserve binary compatibility.
12792 * gdk/gdk.h: Fix inconsistencies: gint vs int.
12796 * gtk/gtkmenufactory.c
12797 * gtk/gtknotebook.c
12798 * gtk/gtkwidget.c: Fix inconsistencies, also gint
12801 * gtk/gtkcolorsel.[ch]
12802 * gtk/gtkcombo.[ch]
12803 * gtk/gtkdrawingarea.[ch]
12804 * gtk/gtkgamma.[ch]
12805 * gtk/gtkhandlebox.[ch]
12806 * gtk/gtkhpaned.[ch]
12807 * gtk/gtkhruler.[ch]
12809 * gtk/gtkpreview.[ch]
12810 * gtk/gtkruler.[ch]
12811 * gtk/gtksocket.[ch]
12812 * gtk/gtkstatusbar.[ch]
12813 * gtk/gtktoolbar.[ch]
12814 * gtk/gtkvbbox.[ch]
12815 * gtk/gtkvpaned.[ch]
12816 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
12819 * gtk/gtkgamma.h: Fix bug, missing () in call of
12820 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
12822 1999-09-14 Tor Lillqvist <tml@iki.fi>
12824 * gdk/gdkcolor.c (gdk_colormap_new)
12825 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
12826 colormap->colors was allocated twice.
12828 * gdk/win32/gdk.c: Remove some unused stuff.
12830 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
12833 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
12834 * gtk/gtklabel.h (gtk_label_get_type)
12835 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
12836 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
12837 in a couple of places, not guint.
12839 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12841 * configure.in,po/et.po: added Estonian language file
12843 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12845 * configure.in,po/da.po: added Danish file
12847 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12849 * docs/gtkfaq.sgml: Minor FAQ Update
12851 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12853 * docs/gtkfaq.sgml: FAQ update
12855 1999-08-27 Tor Lillqvist <tml@iki.fi>
12857 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12858 way to get window contents continually refreshed while resizing. I
12859 didn't like the effects myself, so it's not on by default.
12861 * gdk/win32/gdkprivate.h: New flag variable
12862 gdk_event_func_from_window_proc, FALSE by default.
12864 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12865 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12866 are passed --gdk-event-func-from-window-proc.
12868 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12869 and we have am event_func, call it instead of enqueing the event.
12871 1999-08-23 Tor Lillqvist <tml@iki.fi>
12873 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12874 Kelley: Set expose_count in GdkEventExposes correctly.
12876 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12877 MULTIPLE_WINDOW_CLASSES).
12879 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12880 for bug in NT, apparently NT *does* draw the end pixel, too, in
12881 LineTo with a one-pixel pen, so we don't have to do it ourselves.
12883 1999-08-21 Tor Lillqvist <tml@iki.fi>
12885 Improvements by Hans Breuer:
12887 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12889 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12890 CS_?REDRAW flags as they cause lots of (late) redraws when "show
12891 window contents while dragging" is turned on. Allocate at least
12892 one unique class for every GdkWindowType. If support for single
12893 window-specific icons is ever needed (eg. Dialog specific), every
12894 such window should get its own class.
12896 1999-08-19 Tor Lillqvist <tml@iki.fi>
12898 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12899 error that caused crashes.
12901 1999-08-17 Tor Lillqvist <tml@iki.fi>
12903 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12904 window, use ScrollWindowEx, and call UpdateWindow. This prevents
12905 bugs when for instance part of the window was outside the
12906 display. Thanks to Philippe Colantoni for finding and fixing this.
12908 1999-08-16 Tor Lillqvist <tml@iki.fi>
12910 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12911 endpoint calculations which were totally wrong. (A little RTFMing
12914 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12915 from a separate directory, not from gettext, because of licensing
12916 issues (we want to use the LGPL version).
12918 * README.win32: Mention the intl from glibc vs from gettext issue.
12920 1999-08-13 Tor Lillqvist <tml@iki.fi>
12922 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12923 in the key event handling: Now AltGr chars work again. Also,
12924 now Alt-digits are passed up as well as Control-digits.
12925 Pass keypad plus and minus as normal plus and minus.
12927 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
12929 * docs/gtkfaq.sgml: FAQ Update
12931 1999-07-25 Tor Lillqvist <tml@iki.fi>
12934 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12937 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12938 OK, but getting closer. Guard against bogus tilt data from Wacom
12939 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12940 enable easier building without Wintab.
12942 * gdk/win32/gdkinput.h
12943 * gdk/win32/gdkevents.c
12944 * gdk/win32/gdkwindow.c: Minor changes related related to above.
12946 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12947 code. As we have just one visual on Win32, no sense to have it in a
12948 table, and no need for the hash table.
12950 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12951 better on white background.
12953 1999-07-21 Tor Lillqvist <tml@iki.fi>
12955 * README.win32: Update gcc build instructions. Mention gettext is
12958 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12959 supported cursor size with GetSystemMetrics.
12961 * gdk/win32/gdkfont.c
12962 * gtk/gtkfontsel.c: Guard against some font weight and charset
12963 symbols being undefined (in mingw32 headers).
12965 * gdk/win32/makefile.cygwin
12966 * gtk/makefile.cygwin
12967 * gtk/gtkthemes.c: No longer need to have differently named
12968 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12970 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12972 * docs/gtkfaq.sgml: Long awaited FAQ update.
12974 1999-07-15 Tor Lillqvist <tml@iki.fi>
12976 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12977 it. Obscure bit manipulation needed.
12979 * gdk/win32/gdkevents.c: Logging.
12981 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12982 style (file name include compiler name) for theme engines.
12984 1999-07-13 Tor Lillqvist <tml@iki.fi>
12986 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
12988 * gdk/win32/gdkevents.c: Fix long-standing bug in key
12989 events. The key.string wasn't zero-terminated, still we strdup'ed
12990 it in gdk_event_copy(). Synthesize crossing events for button
12991 events before possible propagation.
12993 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
12995 * gdk/win32/makefile.cygwin
12996 * gtk/makefile.cygwin: Use new DLL naming style for the
12999 * gdk/win32/makefile.msc
13000 * gtk/makefile.msc: Cosmetics mostly.
13002 * gtk/gtk.def: Add missing entry points.
13004 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13006 1999-07-09 Tor Lillqvist <tml@iki.fi>
13008 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13009 or height is zero. Don't print a warning if Pie or Arc fails, they
13010 always fail (?) for very narrow ellipses.
13012 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13013 the part or the destination window corresponding to source area
13014 outside of the source drawable's boundary.
13016 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
13017 anything if less than two points.
13019 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
13020 return NULL. Gtk cut-and-paste inside a single program works
13021 better this way. (It always gets the clipboard contents from
13022 Windows, not from its own copy, which is cleared anyway. I can't
13023 say I fully understand what happens... Emulating the X selection
13024 and property stuff is a bit of a mess.)
13026 * gdk/win32/gdkevents.c
13027 * gdk/win32/gdkproperty.c: A bit more verbose logging.
13029 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
13030 that never got deleted). Revamp gdk_region_shrink.
13032 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
13035 * gtk/gtk.def: Add some missing entry points.
13037 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
13040 1999-07-04 Tor Lillqvist <tml@iki.fi>
13042 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
13043 Control-digits specially.
13045 1999-07-03 Tor Lillqvist <tml@iki.fi>
13047 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
13049 1999-06-28 Tor Lillqvist <tml@iki.fi>
13051 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
13052 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
13055 1999-06-01 Jose H Mercado <jmercado@mit.edu>
13057 * gtk+.spec.in: Corrected some typos in files section.
13059 1999-06-15 Tor Lillqvist <tml@iki.fi>
13061 * README.win32: Mention using GNU gettext.
13062 * config.h.win32: Enable NLS stuff.
13063 * gtk/makefile.msc: Use GNU gettext.
13064 * gdk/win32/gdkdnd.c: Minor header reorg.
13065 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
13067 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
13068 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
13070 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
13076 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
13078 1999-05-30 Tor Lillqvist <tml@iki.fi>
13080 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
13081 SafeAdjustWindowRectEx. Don't override all calls to
13082 AdjustWindowRectEx by it, but use it only in two places: When
13083 creating a new top-level window and when moving a top-level
13086 Use screen coordinate rectangle, not client rectangle, in
13087 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
13088 when we try to place a window so that the decoration (mainly,
13089 title bar) isn't visible.
13091 These changes fix the bug that showed up for instance as the
13092 GIMP's saved top-level windows moving right and down (by an amount
13093 equal to the window decoration) for each session. This bug showed
13094 up also in testgtk's "Saved Position".
13096 gdk_window_resize also redone a bit.
13098 1999-05-25 Tor Lillqvist <tml@iki.fi>
13100 * gtk/testgtkrc: Add (commented out) Windows-style theme
13103 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
13105 1999-05-18 Tor Lillqvist <tml@iki.fi>
13107 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
13108 gdkx.h to a gdk subdirectory, so that applications can include
13109 these with <gdk/*.h> without trouble.
13111 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
13112 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
13113 have their bitmap destroyed.
13115 * gdk/win32/gdk.def: Add gdk_root_parent.
13117 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
13123 gtk/Makefile.am: changes to compile nicely (with xlib)
13126 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
13132 * ltmain.sh: upgrade to libtool 1.3
13134 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
13137 * gtk/gtkctree.c: merges from gtk-1-2
13139 1999-04-25 Tor Lillqvist <tml@iki.fi>
13141 Support added for building using a GNU toolchain on Win32,
13142 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
13144 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
13145 * config.h.win32: Changes for gcc.
13146 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
13147 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
13148 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
13149 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
13150 Protect shl stuff unavaiilable with mingw32 headers.
13151 * gdk/win32/gdkevents.c: Fix typo.
13152 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
13153 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
13154 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
13155 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
13156 the mingw32 headers.
13157 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
13158 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
13159 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
13160 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
13161 Test for NATIVE_WIN32, not _MSC_VER.
13162 * gtk/gtkmain.c: No use warning about developer version on Win32,
13163 there aren't any non-developer versions anyhow.
13164 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
13165 * gtk/makefile.msc: Use pthread from another directory. Minor other
13168 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
13170 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13171 default filter from the list
13173 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
13175 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
13176 when gtk_widget_grab_default() is called for a widget that
13177 is not within a GtkWindow.
13179 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
13181 * docs/gtk_tut.sgml, examples/clist.c: use a
13182 scrolled window in the clist example. Minor
13185 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
13187 * docs/gtk_tut.sgml: Style check from David King
13188 <dking@youvegotmail.net>
13190 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
13192 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
13193 compile with unknown value of GDK_WINDOWING
13195 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
13197 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
13198 after the rule is fired.
13199 (install-exec-local): Install gdkconfig.h only if the contents are
13200 different from the currently installed gdkconfig.h.
13202 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
13204 * gdk/Makefile.am (configexecincludedir): Rename from
13205 configincludedir so that gdkconfig.h will be installed
13206 as part of `make install-exec'.
13208 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
13214 * ltmain.sh: upgrade to libtool 1.2f
13216 * autogen.sh: libtool is not required to autogen gtk+
13218 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
13221 1999-03-18 Tor Lillqvist <tml@iki.fi>
13223 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
13224 declaring gdk variables exported/imported from the DLL. New image
13225 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
13226 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
13227 GDK_DRAG_PROTO_OLE2.
13229 * gdk/gdk.h: Merge in Win32 version: Two new functions,
13230 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
13231 declared only for the Win32 version, but could be in the X11
13232 version as well. (Needed for a Xlib-less gdk_imlib.)
13233 gdk_color_hash should have only one parameter. Declare
13234 gdk_threads_mutex with GDKVAR.
13236 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
13237 just one parameter.
13239 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
13240 per pixel, not bits.
13242 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
13243 Fetch bpp (which means bits-per-pixel here) from another place on
13244 Win32. Accept also depth==32 (which we might get on Win32) with
13247 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
13248 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
13249 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
13250 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
13251 in the backend-dependent directory, not in the common gdk
13254 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
13257 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
13259 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
13260 want to use the Gtk+ devel version (which is true, and yes - even i am
13261 currently working with the 1.2.x branch). so everyone reading this, you
13262 probably want to issue
13263 cvs checkout -r glib-1-2 glib
13265 cvs checkout -r gtk-1-2 gtk+
13266 as your next two comands.
13268 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
13270 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
13271 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
13273 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
13274 file. strongly deprecated the GTK_HAVE_* macros, we provide
13275 GTK_CHECK_VERSION() for people that need to check for certain
13278 * gtk/gtkcompat.h: removed this from CVS.
13279 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
13280 idea right from the start, it just didn't seem like that back then.
13282 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
13284 * merges from gtk-1-2:
13286 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
13288 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
13289 item factory class has been created.
13290 (gtk_item_factory_parse_rc): likewise.
13293 keep proper references for old_active_menu_item.
13294 (gtk_menu_reparent): unset the usize of the new parent,
13295 so the menu can sanely be size requested and we don't get nasty screen
13296 artefacts upon next reparentation.
13297 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
13298 enter notify. only synthesize enter notifies if the pointer really is
13299 inside the event window.
13300 (gtk_menu_popdown): use gtk_menu_shell_deselect().
13301 (gtk_menu_popup): move the background setting stuff into
13302 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
13304 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
13305 gtk_menu_shell_select_item() to select the new item.
13306 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
13307 do the right thing for deselection as well.
13309 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
13311 * gtk/gtkwidget.[hc]:
13312 (gtk_widget_accelerators_locked): return whether a widget's accelerators
13315 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
13316 existing accelerators if the widget's accelerators are locked.
13318 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
13320 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
13322 * gtk/gtkmenu.c: truely forward key press and key release events to
13323 the menu widget from the toplevel or tearoff window. we can't simply
13324 connect to that, we need to stop further processing of the events as
13327 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
13330 (gtk_menu_key_press): pass event->keyval, event->state to
13331 gtk_accelerator_valid, instead of event->keyval twice.
13332 refuse to install single letter accelerators for menus that use
13333 single letter shortcuts.
13335 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
13336 gtk_menu_ensure_uline_accel_group().
13338 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
13339 which will always return an uline accel group, made
13340 gtk_menu_get_uline_accel_group() return NULL if the group isn't
13343 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
13345 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
13347 * gtk/gtkclist.c (gtk_clist_column_title_passive):
13348 Leave button sensitive, trap button_press, button_release,
13349 motion_notify, enter_notify and leave_notify events instead.
13350 (gtk_clist_column_title_active): disconnect event handler.
13351 (gtk_clist_drag_data_get): fixed memory leak. Reported by
13352 Guillaume Laurent <glaurent@worldnet.fr>
13354 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
13356 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
13357 width/height mixups.
13359 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
13362 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
13364 * gtk/testgtk.c (create_item_factory): unref the item factory after
13365 window's destruction.
13367 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
13368 count on the menu shell around the menu item's activation, since the
13369 signal emission may cause menu shell destruction.
13371 * gtk/gtkitemfactory.c:
13372 the previous code leaked one accel group per menu. we use
13373 gtk_menu_get_uline_accel_group() now to fix that, and with that
13374 also create the underline accelerator group of the menus only if
13375 required (i.e. an underline accelerator has been specified).
13376 (gtk_item_factory_construct):
13377 (gtk_item_factory_create_item): removed code that would create an
13378 extra accel group for the menu (and leak references).
13379 (gtk_item_factory_create_item): adapted the underline accelerator
13380 installation code to properly feature gtk_menu_get_uline_accel_group().
13382 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
13383 menu->accel_group, this may return NULL if the accelerator group
13384 hasn't been set yet.
13385 added gtk_menu_get_uline_accel_group() to retrive the underline
13386 accelerator group of the menu, this will be created on demand
13387 and proper care is taken about its reference count.
13389 * gtk/gtkitemfactory.h:
13390 * gtk/gtkitemfactory.c:
13391 dumped the approach of keeping a widgets by action list on the
13392 factory since the factory<->widget destroy negotiation didn't work
13393 and would be hard to get going at all. instead we keep a list of
13394 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
13395 persistant throughout a program's life time).
13396 also, i removed the static const gchar *key_* variables, and made
13397 them inline strings (they weren't actually used anyways).
13398 (gtk_item_factory_add_item): update ifactory->items.
13399 (gtk_item_factory_destroy): destroy ifactory->items (and remove
13400 the item factory pointer from the remaining ifactory widgets).
13401 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
13402 list to find the widget.
13403 (gtk_item_factory_get_item): new function that works around
13404 gtk_item_factory_get_widget() limitations, this function will only
13405 return menu items, even for <Branch> entries.
13407 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
13409 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13410 font hash table, if we have a GdkFontPrivate entry for this font
13411 already, simply increment its reference count, provided by Olaf Dietsche
13412 <olaf.dietsche+list.gtk@netcologne.de>.
13414 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13415 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13417 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
13419 * gtk/gtkcontainer.c:
13420 (gtk_container_add_with_args):
13421 (gtk_container_addv):
13422 (gtk_container_add): before adding a child to a conatiner, make sure
13423 it is (default) constructed, this is neccessary because under certain
13424 circumstances the child will get relized and mapped immediatedly, in
13425 which case it has to be constructed already.
13427 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
13429 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
13430 values > 1 as TRUE also.
13432 1999-03-16 Tor Lillqvist <tml@iki.fi>
13434 * README.win32: New file.
13436 * configure.in: Check for lstat.
13438 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
13441 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
13443 * gtk/gtk.def: Removed CRs.
13445 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
13448 * gdk/win32/makefile.msc: Correct upwards relative paths.
13450 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
13452 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
13453 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
13454 it was connecting a void function to expose_event and the int
13455 returning function to the draw signal
13457 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
13460 Use correct path to libgmodule.la when ref'ing uninstalled copy
13461 of glib. (Already in stable branch, Bug #417)
13463 1999-03-15 Tor Lillqvist <tml@iki.fi>
13465 Win32 merge and general portability stuff:
13467 * acconfig.h,configure.in: Check for <sys/time.h>.
13469 * gdk/win32: New directory (actually, been there for a while).
13471 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
13472 NATIVE_WIN32, and use these. Always case fold on Win32. No
13473 backslashed escapes on native Win32.
13475 * gtk/{gtk.def,makefile.msc}: New files.
13477 * gtk/Makefile.am: Add above new files.
13479 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
13480 instead of <strings.h>.
13482 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
13483 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
13484 <unistd.h> appropriately.
13486 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
13487 Use ABS() (from <glib.h>) instead of abs().
13489 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
13490 of gtk (and thus glib) headers, so that WIN32 will be
13491 defined. With MS C, include <direct.h> for mkdir prototype.
13493 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
13494 some casts, needed by MS C.
13496 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
13499 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
13500 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
13501 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
13503 * gtk/gtkmain.h: Mark variables for export/import on Win32.
13505 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
13506 the event is not a hint, or its window is not the slider. Needed
13507 on Win32, at least.
13509 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
13510 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
13511 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
13512 a subdirectory of the Windows directory as gtk system
13513 configuration directory.
13515 * gtk/gtkselection.c: No chunks on Win32.
13517 * gtk/gtksocket.c: Not implemented on Win32.
13519 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
13521 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
13523 * gtk/maketypes.awk: Declare variables with a macro that expands to
13524 necessary export/import magic in the case of Win32.
13526 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
13528 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
13530 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
13531 since those were meant only for gdki18n.h.
13532 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
13533 for widechar tests.
13534 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
13536 1999-03-13 Tor Lillqvist <tml@iki.fi>
13538 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
13539 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
13541 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
13542 installed) to CFLAGS.
13544 * gdk/Makefile.am: Add rules for gdkconfig.h.
13546 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
13549 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
13550 gdkx.h anyway when compiling for X11.
13551 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
13552 general): Merge in Win32 version.
13554 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
13555 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
13556 expansion (if we don't have HAVE_PWD_H), allow for drive
13557 letters. UNC paths (\\server\share\...) are not handled yet. Also,
13558 included code from Craig Setera's port to Win32 (the one that uses
13559 X11, and the cygwin dll), even if it probably will be abandoned.
13561 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
13562 the user entered one herself. This way one can complete *.h and
13563 don't get matches on any .help files, for instance.
13565 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
13567 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13568 font hash table, if we have a GdkFontPrivate entry for this font
13569 already, simply increment its reference count, provided by Olaf Dietsche
13570 <olaf.dietsche+list.gtk@netcologne.de>.
13572 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13573 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13575 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
13577 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
13578 the number of calls to gdk_draw_point() (and thus to X) by
13579 clipping the points by hand.
13581 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
13582 the clip parameter.
13583 (gtk_handle_box_paint): Only paint the handle if the expose area
13586 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
13588 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
13590 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
13592 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
13593 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
13595 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
13597 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13598 textmode (O_TEXT) for OS/2 version.
13600 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
13602 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
13603 GtkSpinButton, "input" and "output", to make the output more flexible.
13604 The user has to provide a mapping between adjustment->value and the
13605 output string (and vice versa, if the spin button is editable).
13606 See testgtk for examples.
13608 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
13610 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13613 * configure.in: set gtk+ version to 1.3.0.