1 Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
3 * gtk/Makefile.am (gdk_headers): Remove gdkcc.h
6 * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
7 and refuse to initialize GTK+ if they fail.
9 Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
11 * configure.in: Add check for gtk-doc version.
13 Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
15 * gtk/gtklabel.c (gtk_label_size_request): Fix bug
16 where the xpad/ypad was only being used on one side!
18 2001-02-11 Tor Lillqvist <tml@iki.fi>
20 * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
21 function, copied from X11 version.
23 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
24 DestroyCursor failures. The reason for the problem (despite the
25 inconsistent messages from GetLastError()) was that
26 DestroyCursor() cannot be called while a cursor is set in a
27 window. Set the new cursor first and then destroy the old one.
28 Thanks to jpe@archaeopteryx.com.
30 * gdk/win32/gdkcc-win32.c: Remove.
32 * gdk/win32/Makefile.am: Remove from here, too.
35 * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
38 * gtk/makefile.mingw.in: Updates.
40 2001-02-08 Havoc Pennington <hp@redhat.com>
42 * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
43 add a widget to a bin that already has a child.
45 * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
47 * docs/Changes-2.0.txt: note that GdkColorContext is gone.
49 * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
51 * gdk/gdk.h: remove gdkcc.h
53 * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
55 * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
56 GdkPixbuf, since the previous implementation was GdkColorContext
59 * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
61 Thu Feb 8 19:00:00 2001 Jonathan Blandford <jrb@redhat.com>
63 * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
66 2001-02-08 Havoc Pennington <hp@redhat.com>
68 * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
71 2001-02-08 Havoc Pennington <hp@redhat.com>
73 * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
76 * demos/gtk-demo/main.c (create_tree): adjust to changes in text
79 * demos/pixbuf-demo.c (timeout): remove deprecated
82 * demos/testpixbuf-save.c (main): remove deprecated
85 * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
86 buttons even if the model isn't setup. gtk_tree_view_check_dirty()
87 at the start of the allocation.
88 (gtk_tree_view_check_dirty): handle column->button == NULL, handle
89 unsetup or NULL model.
91 * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the
92 even/odd/sorted cells in the tree view.
94 * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
97 * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
98 backgrounds with draw_flat_box using different detail for even/odd
101 * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
102 row, so we can draw the alternating colors thing
104 * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
105 property from a synonym property, notify for the synonym.
106 Also, nuke the background_gdk_set and foreground_gdk_set synonyms
107 (gtk_text_tag_get_property): Always return the font, even if
108 all its fields aren't set
110 * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
111 store the attr list; it leaves us with no way to change attributes
112 in _render according to the render flags, and no way to implement
113 get_property. Instead store all the specific text attributes.
114 Separate whether an attribute is enabled from its value. Sync all
115 properties with GtkTextTag, make them all consistent, etc.
117 * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
118 renderers can highlight the sort row/column
120 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
121 accessor functions to get values; this has the side effect of
122 showing up which accessor functions were missing. Added those.
124 * gtk/gtktreeviewcolumn.h: Replace set_justification with
125 set_alignment, to be consistent with GtkLabel, GtkMisc
127 * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
130 * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
132 * gtk/gtktreesortable.h: updates in here
134 2001-02-07 Sven Neumann <sven@convergence.de>
136 * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to
137 pango dimensions after painting the background. We used to draw
138 gigantic flat boxes here.
140 Mon Feb 5 22:05:57 2001 Owen Taylor <otaylor@redhat.com>
142 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
143 error introduced with earlier commit) (pointed out by
146 Mon Feb 5 12:25:06 2001 Owen Taylor <otaylor@redhat.com>
148 * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
149 which are no longer necessary.
151 Mon Feb 5 13:22:54 GMT 2001 Tony Gale <gale@gtk.org>
153 * docs/faq/gtk-faq.sgml: s/MISK/MISC/
155 2001-02-04 Tor Lillqvist <tml@iki.fi>
158 * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
159 Provide dummy implementations.
161 Sun Feb 4 07:55:17 2001 Tim Janik <timj@gtk.org>
163 * gtk/gtksignal.h: removed gtk_signal_init() compat define.
165 * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
166 GTypeDebugFlags debug_flags and pass it on to g_type_init ();
167 deprecated this function.
169 * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
172 Sun Feb 4 07:45:45 2001 Tim Janik <timj@gtk.org>
174 * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
176 2001-02-03 Havoc Pennington <hp@pobox.com>
178 * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
179 Mikael Hermansson with patch from Mikael (if there was a toggle
180 start one after the first character in the range, this function
181 was broken). Bug #50380
183 Sat Feb 3 11:28:03 2001 Owen Taylor <otaylor@redhat.com>
185 * configure.in: Remove confusing comment about X11.
187 Fri Feb 2 19:21:23 2001 Owen Taylor <otaylor@redhat.com>
189 * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
190 regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
192 Fri Feb 2 18:31:54 2001 Owen Taylor <otaylor@redhat.com>
194 * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
195 it breaks things on BSD. If you want to compile GTK+ with
196 -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE
197 when configuring, since GTK+ simply can't be "pure ANSI"
198 in the header files it uses. (#8170, Greg Hudson)
200 2001-02-02 Havoc Pennington <hp@redhat.com>
202 * gtk/gtkwindow.c: docs
204 * gtk/gtkwidget.c: docs
205 (gtk_widget_set_colormap): add a reference to the colormap
206 (gtk_widget_get_default_colormap): add a reference to the colormap
208 * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
210 * gtk/gtktextiter.c: docs
212 * gtk/gtkmain.c (gtk_propagate_event): docs
214 * gtk/gtkpaned.c (gtk_paned_get_position): docs
215 (gtk_paned_set_position): docs
217 * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
218 sort interface, no implementation yet.
220 * demos/testpixbuf.c (new_testrgb_window): replace
221 gtk_drawing_area_size() with gtk_widget_set_usize()
223 * demos/testpixbuf-drawable.c (main): ditto
225 * gtk/testgtk.c: remove use of GtkStatusbarMsg
227 * gtk/gtktextbuffer.c: docs
229 * gtk/gtkstock.c: docs
231 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
233 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
235 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
237 * gtk/gtkimage.c: add some docs in here
238 (gtk_image_size_request): change name of
239 gtk_widget_render_stock_icon
240 (gtk_image_get_icon_set): don't dup returned string
241 (gtk_image_get_icon_set): don't dup returned string
243 * gtk/gtkwidget.c (gtk_widget_render_icon): rename from
244 gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
245 and gtkiconfactory.h functions
247 * gtk/gtkiconfactory.c: add some docs in here
249 * gtk/gtkmain.c (gtk_get_default_language): document
250 (gtk_get_current_event): document
251 (gtk_get_current_event_state): document
252 (gtk_get_event_widget): document
254 * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
256 * gtk/gtkcontainer.c: Add some documentation
257 (gtk_container_add): give a more explanatory warning on adding an
258 already-parented widget, this is kind of a FAQ and also a common
259 typo that's easier to debug with a nice warning
261 * gtk/gtkcellrenderertoggle.c
262 (gtk_cell_renderer_toggle_get_active): remove, I was on crack
263 adding this, it's useless
264 (gtk_cell_renderer_toggle_set_active): remove
265 (gtk_cell_renderer_toggle_get_radio): add
267 * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
268 the NULL cell renderer, that doesn't make any sense to me.
270 * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
271 demo code should never use deprecated features.
273 * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
274 code should never use deprecated features.
276 * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
277 gtk_widget_queue_clear_area deprecated
279 * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
282 * gtk/gtklabel.h: mark gtk_label_get() deprecated
284 * gtk/gtkimage.h: mark the legacy GtkImage functions that took
285 a GdkImage deprecated, replaced by new consistently-named
288 * gtk/gtkmain.h: Mark gtk_exit() deprecated
290 * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
292 * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string
295 * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file,
296 so it won't appear in docs and confuse people.
298 * gtk/gtkprogressbar.h: Mark all the old methods deprecated
300 * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
301 macros deprecated. (can't mark the type itself deprecated, since
302 GtkProgressBar is not deprecated and we need the type decl to use
305 * gtk/gtkpixmap.h: Mark deprecated
307 * gtk/gtkoldeditable.h: Mark deprecated
309 * gtk/gtklist.h: Mark deprecated
311 * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used
312 for anything anymore.
314 * gtk/gtkctree.h: Mark deprecated
316 * gtk/gtkclist.h: Mark deprecated
318 * gtk/gtkpreview.h: Mark deprecated
320 * gtk/gtkpacker.h: Mark deprecated
322 * gtk/gtktipsquery.h: Mark deprecated
324 * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
326 * gtk/gtkvruler.h: Add comment that it will move out of GTK
328 * gtk/gtkhruler.h: Add comment that it will move out of GTK
330 * gtk/gtkruler.h: Add comment that it will move out of GTK
332 * gtk/gtkgamma.h: Add comment that it will move out of GTK
334 * gtk/gtkcurve.h: Add comment that it will move out of GTK
336 Fri Feb 2 17:16:09 2001 Owen Taylor <otaylor@redhat.com>
338 * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
339 gdk_colormap_sync private since it was never exported
342 * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
343 colormap->colors[] for StaticGray, StaticColor colormaps.
345 * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
346 was being used as if it was image->bits_per_pixel.
348 * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
349 for the image in the GdkImage structure since it isn't
350 reconstructable, and we need it to handle packed types
352 * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
353 the assumption that on Win32 image->bits_per_pixel == image->depth,
356 * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
358 * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
359 warning message if no converter can be found.
361 Fri Feb 2 15:09:51 2001 Owen Taylor <otaylor@redhat.com>
363 * gtk/fnmatch.c (FOLD): Fix problem with passing signed
364 chars to isupper() / tolower(). (#567)
366 * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
367 to clear up 64-bit warnings. (#567)
369 Fri Feb 2 12:26:50 2001 Owen Taylor <otaylor@redhat.com>
371 * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
372 a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
374 * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
375 since some people set $(libdir) separately. (#1290, David Kaelbling)
377 Thu Feb 1 18:25:46 2001 Owen Taylor <otaylor@redhat.com>
379 * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
380 defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
381 MAXPATHLEN, but the code here depends on a fixed value.)
384 Wed Jan 31 22:01:04 2001 Owen Taylor <otaylor@redhat.com>
386 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
387 where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
389 Wed Jan 31 21:20:39 2001 Owen Taylor <otaylor@redhat.com>
391 * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
392 viewable there is no way that moving the node will cause the
393 focus row to become not viewable, so omit check on the visibility
394 of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
396 Wed Jan 31 20:38:17 2001 Owen Taylor <otaylor@redhat.com>
398 * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
399 selection before inserting new text.
401 Wed Jan 31 18:49:33 2001 Owen Taylor <otaylor@redhat.com>
403 * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
404 Make the sensitivity of the reparented child track that of
405 the original parent menu item. (#34218, David Hodson)
407 * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
408 the case where the current item is destroyed properly.
410 * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
411 some edge cases with child-less menuitems.
413 Wed Jan 31 17:16:13 2001 Owen Taylor <otaylor@redhat.com>
415 * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
416 key pop down window. (#12074, Jon K Hellan)
418 Wed Jan 31 16:21:42 2001 Owen Taylor <otaylor@redhat.com>
420 * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
421 toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan)
422 The solution here isn't perfect - you get an extraneous
423 emission of "toggle", which could conceivably confuse an app,
424 but better than the current situation. LXR search seems to
425 indicate that no apps in GNOME CVS connect to "toggle".
427 Wed Jan 31 15:46:13 2001 Owen Taylor <otaylor@redhat.com>
429 * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
430 gtk_public_h_sources to directly here to avoid warning when
431 building srcdir != builddir. (#9656)
433 Tue Jan 30 19:49:02 2001 Owen Taylor <otaylor@redhat.com>
435 * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
436 handlers in gtkrange.c return the proper values (TRUE == handled)
439 This is just the tip of the iceberg, but gtkrange.c is the
440 most common place where the propagation is problematical,
441 and also a place where it is almost certainly safe to change
442 this in the stable branch.
444 (You don't want right click popups on a range control or anything...)
446 Tue Jan 30 18:57:59 2001 Owen Taylor <otaylor@redhat.com>
448 * gtk/gtktext.c (clear_focus_area): We need to clear the focus
449 area on focus out, even if a background pixmap isn't set.
452 Tue Jan 30 18:24:10 2001 Owen Taylor <otaylor@redhat.com>
454 * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
455 to deal with setting the shape properly when scrolling arrows are
456 turned on, but not visible because there is sufficient space.
459 Tue Jan 30 16:39:25 2001 Owen Taylor <otaylor@redhat.com>
461 * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
462 items with submenus, destroy the item along with the submenu.
463 (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
466 * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
469 Tue Jan 30 15:51:25 2001 Owen Taylor <otaylor@redhat.com>
471 * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
472 the focus widget sometimes wasn't drawn with the default if there
473 was no default widget.
475 * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
478 * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
479 for some extra safety.
481 Mon Jan 29 19:00:01 2001 Owen Taylor <otaylor@redhat.com>
483 * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
484 the text of a cell to the old pointer value better, by
485 copying the new text before freeing the old text. Some code
486 cleanup. (#8079, Karl Nelson)
488 Mon Jan 29 16:50:19 2001 Owen Taylor <otaylor@redhat.com>
490 * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
491 gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
493 Mon Jan 29 15:22:51 2001 Owen Taylor <otaylor@redhat.com>
495 * gtk/gtkmenu.c (gtk_menu_remove): When removing an
496 item from a menu, check to see if it matches
497 menu->old_active_menu_item, and if so, unref and clear
498 old_active_menu_item (Patch from Pavel Cisler)
500 * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
501 menu_shell->active_menu_item, if it is the child being
502 removed. (Patch based on that of Gene Ragan, #50337)
504 2001-01-31 Alexander Larsson <alla@lysator.liu.se>
506 * gdk/linux-fb/gdkselection-fb.c:
507 * gdk/linux-fb/gdkcolor-fb.c:
508 * gdk/linux-fb/gdkdrawable-fb2.c:
509 * gdk/linux-fb/gdkfont-fb.c:
510 * gdk/linux-fb/gdkim-fb.c:
511 * gdk/linux-fb/gdkinput.c:
512 * gdk/linux-fb/gdkkeyboard-fb.c:
513 * gdk/linux-fb/gdkmain-fb.c:
514 * gdk/linux-fb/gdkrender-fb.c:
515 A bunch of whitespace cleanup.
517 2001-01-30 Havoc Pennington <hp@pobox.com>
519 * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in
520 #ifdef GTK_ENABLE_BROKEN.
522 * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
523 GTK_ENABLE_BROKEN just before including the broken headers.
525 * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
526 deprecated types registered.
528 * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
529 we have to test the broken stuff.
531 * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
533 2001-01-30 Havoc Pennington <hp@redhat.com>
535 * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
536 here where prev pointer was set to the wrong thing
538 * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
539 (gtk_tree_path_is_descendant): new function
541 * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
543 (gtk_list_store_get_iter): don't modify iter if we can't get the
546 * gtk/gtkliststore.h (struct _GtkListStore): cache the length
548 * gtk/gtktreednd.h: add virtual function row_drop_possible() to
551 * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
554 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
557 * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
559 * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
561 (gtk_list_store_iter_children): ditto
562 (gtk_list_store_iter_nth_child): ditto
563 (gtk_list_store_iter_nth_child): ditto
564 (gtk_list_store_iter_parent): ditto
566 * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
567 on iter->user_data != NULL instead of silently accepting it.
568 (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
569 we are returning TRUE.
570 (gtk_tree_store_iter_children): ditto
571 (gtk_tree_store_iter_nth_child): ditto
572 (gtk_tree_store_iter_parent): ditto
573 (gtk_tree_store_insert): remove handling of parent->user_data ==
574 NULL, replace with parent == NULL
576 * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
577 and a comment explaining things
579 * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
580 interface support to GtkTreeStore.
582 * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
583 FALSE if no prev, fix
585 * gtk/gtktreeview.c (set_source_row): use a row reference
586 (set_dest_row): use a row reference
588 Sat Jan 27 15:52:02 2001 Jonathan Blandford <jrb@redhat.com>
590 * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
591 stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
592 (gtk_tree_selection_select_iter): The same as above.
594 2001-01-26 Havoc Pennington <hp@redhat.com>
596 * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
597 which holds a handle to a specific row (particular set of values
598 in the model, i.e. pointer-identity row).
600 * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
601 use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
602 Still need to use it for the src/dest row saved on the drag context.
604 2001-01-26 Havoc Pennington <hp@redhat.com>
606 * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
608 * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
609 not offset by TREE_VIEW_HEADER_HEIGHT
610 (gtk_tree_view_tree_to_widget_coords): fix to not offset by
611 TREE_VIEW_HEADER_HEIGHT
613 * configure.in (included_loaders): for me, --with-included-loaders
614 generates the error "the specified loader yes does not exist",
615 i.e. the arg defaults to "yes", so change test for value ""
616 to test for value "yes", and include all loaders in that case.
618 * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
620 * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
621 handle TREE_VIEW_VERTICAL_SEPARATOR
622 (gtk_tree_view_bin_expose): fix to consider the row offset as
623 pointing halfway into vertical separator.
624 (gtk_tree_view_draw_node_focus_rect): ditto
626 * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
627 --gtk-debug=updates, which causes gdk_window_set_debug_updates
630 * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
631 debug mode where the invalid region is colored in on invalidate,
632 so you can see the flicker and know whether your redraw code is
635 * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in
636 tree window coordinates (clip rect is in tree window coords)
638 * gtk/Makefile.am: add gtktreednd.[hc]
640 * gtk/gtkliststore.c: implement gtktreednd interfaces.
642 * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
643 drag-and-drop data operations on a model (so we can set up tree
644 drag-and-drop automatically)
646 * gtk/testgtk.c: Add a window to change sensitivity in the
647 GtkLabel test; add a way to change the entry frame in GtkEntry
650 * gtk/gtkentry.c (gtk_entry_set_has_frame):
651 (gtk_entry_get_has_frame): new functions to remove the frame
653 (gtk_entry_size_request): shrink requisition if no frame
654 (gtk_entry_draw_focus): don't draw frame if no frame
656 * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
657 checks inside a cell renderer
658 (gtk_default_draw_option): ditto for options
660 * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
661 children from the alignment, not the button
662 (gtk_tree_view_column_init): ref/sink the column, to emulate
665 * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
667 * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
668 Use theme functions to draw the toggles
670 * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
672 * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
673 GdkPangoAttrEmbossed to use in rendering insensitive text
675 * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
677 * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
678 using new GDK features
680 2001-01-24 Alexander Larsson <alexl@redhat.com>
683 Splitted gtk_image_clear into gtk_image_clear() and
684 gtk_image_reset(). Call gtk_image_clear() in ::destroy
687 * gtk/gtklabel.c (set_markup):
690 * gtk/gtktextlayout.c:
691 Always free display->shaped_objects.
693 * gtk/testgtk.c (create_clist):
694 Don't leak custom style.
696 2001-01-23 Alexander Larsson <alexl@redhat.com>
698 * gtk/gtkcolorsel.c (grab_color_at_mouse):
699 Don't leak image. Simplify using gdk_colormap_query_color().
700 (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
702 * linux-fb/gdkcolor-fb.c:
703 Implemented gdk_colormap_query_color.
705 2001-01-23 Alexander Larsson <alexl@redhat.com>
707 * linux-fb/gdkcursor-fb.c:
708 Don't leak built-in cursors.
710 * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
711 Don't leak tmp_points.
713 * linux-fb/gdkfont-fb.c (gdk_font_from_description):
714 Don't modify desc. Don't leak font if the PangoFont
717 * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
720 * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
723 2001-01-20 Havoc Pennington <hp@pobox.com>
725 * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
726 from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to
729 2001-01-22 Havoc Pennington <hp@redhat.com>
731 * demos/testanimation.c: fix to reflect gdk-pixbuf changes
733 * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
735 * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h:
736 Remove, move back to gdk-pixbuf
738 * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
739 to all the word functions
741 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
742 before doing anything on NULL layout or if we don't have the focus
744 * gtk/testtext.c (fill_example_buffer): "justification"
746 * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
747 to be called "justification" not "justify"
749 * demos/gtk-demo/textview.c (create_tags): "justification"
751 * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
753 2001-01-22 Alexander Larsson <alexl@redhat.com>
755 * gdk/gdkwindow.c (gdk_window_invalidate_region):
756 Don't leak visible_region. Use visible_region instead of region.
758 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
759 Don't do extra gdk_drawable_ref(). This is not X.
760 (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
761 gdk_fb_focused_window is ref:ed.
762 (gdk_fb_window_send_crossing_events): Watch out for destroyed
765 2001-01-22 Alexander Larsson <alexl@redhat.com>
767 * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
768 Don't leak the PangoFontDescriptor.
770 Sun Jan 21 09:58:00 2001 Jonathan Blandford <jrb@redhat.com>
772 * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
774 (gtk_tree_view_scroll_to_cell): Make work when not realized.
775 (gtk_tree_view_realize): add scroll_to support
776 (gtk_tree_view_finalize): add a finalize method. Populate.
777 (gtk_tree_view_insert_column): ref and sink the column.
778 (gtk_tree_view_append_column): ref and sink the column.
779 (gtk_tree_view_queue_draw_node): New function to handle redrawing
780 individual nodes. Should make the code much more efficient, if
783 2001-01-19 Havoc Pennington <hp@redhat.com>
785 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
786 byte_offset variable was being used to mean both "offset into
787 layout" and "offset into buffer line" which was no longer true
788 with addition of preedit string; fix
790 2001-01-19 Havoc Pennington <hp@redhat.com>
792 * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
794 * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
797 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
800 * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
801 scroll_to_cell, matches TextView scroll functions better
802 (gtk_tree_view_tree_to_widget_coords): new function
803 (gtk_tree_view_widget_to_tree_coords): new function
804 (gtk_tree_view_get_visible_rect): new function
805 (gtk_tree_view_get_path_at_pos): accept negative coordinates
806 (gtk_tree_view_draw_node_focus_rect): new function moved from
807 draw_focus, also, use width of bin_window as width of the focus
809 (gtk_tree_view_expand_row): fix bug where it didn't recognize
810 already-expanded rows
811 (gtk_tree_view_get_cell_rect): new function
812 (gtk_tree_view_get_path_at_pos): return the click position
813 relative to the passed-in cell
814 (gtk_tree_view_set_expander_column): new function
816 * configure.in: remove gtk-config-2.0 chmod
818 * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
819 and properly handle drags with targets we don't understand
820 (gtk_text_view_drag_end): don't stop scrolling, the source isn't
822 (gtk_text_view_drag_drop): stop scrolling here though, and set the
825 * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
827 (gtk_drag_dest_get_target_list): new function
828 (gtk_drag_dest_set_target_list): new function
830 * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
832 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
833 related to drag-and-drop
835 2001-01-19 Alexander Larsson <alexl@redhat.com>
837 * gdk/linux-fb/gdkprivate-fb.h:
838 Define EMULATE_GDKFONT.
839 Add extra pango_font stuff to GfkFontPrivate.
841 * gdk/linux-fb/gdkdrawable-fb2.c:
842 * gdk/linux-fb/gdkfont-fb.c:
843 If EMULATE_GDKFONT defined, implement a slow lame GdkFont
844 emulation using PangoFont.
846 2001-01-17 Havoc Pennington <hp@pobox.com>
848 * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
849 all the non-deprecated set_foo functions. Added missing object
850 properties, and added g_object_notify() to setters.
853 2001-01-18 Tor Lillqvist <tml@iki.fi>
856 * gtk/gtkrc.c: (Win32) Use the new
857 g_win32_get_package_installation_(sub)directory() functions.
859 * config.h.win32.in: New file.
861 * config.h.win32: Removed.
863 * configure.in: Output config.h.win32.
865 * Makefile.am: Add it to EXTRA_DIST.
867 * gtk/gtk.def: Update.
869 Wed Jan 17 16:22:54 2001 Owen Taylor <otaylor@redhat.com>
871 * gtk/gtklabel.c (gtk_label_size_request): Set the
872 attributes onto the PangoLayout even if they are newly
873 created from label->pattern.
875 Tue Jan 9 11:20:48 2001 Owen Taylor <otaylor@redhat.com>
877 * gdk/x11/gdkdnd-x11.c: Remove unused variable.
879 * gtk/gtkdnd.c: Encapsulate storing and retrieving info
880 structures in functions. Fixes bug where gtk_dataset_*
881 was accidentally still being used in one place, causing
882 every dest side event to be treated independently.
884 * gtk/gtkdnd.c: Remove last vestages of handling
885 ::draw (fixes warning)
887 * gtk/gtkentry.[ch]: Add drag and drop support.
889 * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
890 new function gtk_check_drag_threshhold() for checking
891 to check if (dx,dy) has exceeded the threshhold for starting
892 a drag and use it everywhere.
894 Mon Jan 8 11:58:05 2001 Owen Taylor <otaylor@redhat.com>
896 * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
897 add -I{includedir}/gtk-2.0.
899 * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
900 gdk/gdk-pixbuf.h: Doc fixups.
902 * gtk/gtkobject.h: Remove trailing , from enum
904 2001-01-17 Alexander Larsson <alexl@redhat.com>
906 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
907 Doh! Mixed up x and y.
909 * gdk/linux-fb/gdkglobals-fb.c:
910 Removed gdk_fb_pointer_grab_window_events,
911 added _gdk_fb_pointer_grab_owner_events and
912 _gdk_fb_keyboard_grab_owner_events.
914 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
915 Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
916 crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
917 (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
918 Send crossing events after ungrab finished.
919 (gdk_keyboard_grab): Set ..._owner_events
920 (type_masks): Move out of function.
921 (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
922 gdk_fb_keyboard_event_window): New functions, return the
923 window an event should be targeted at. Handles grabs and
924 event propagation. Can return NULL.
925 (gdk_event_make): Remove event_mask checking. Now always
928 * gdk/linux-fb/gdkkeyboard-fb.c:
929 * gdk/linux-fb/gdkproperty-fb.c:
930 * gdk/linux-fb/gdkselection-fb.c:
931 Use new event_window/gdk_event_make() behaviour.
933 * gdk/linux-fb/gdkmouse-fb.c:
934 Use new event_window/gdk_event_make() behaviour.
935 Only send motion events if in the same window.
936 If grabbed, use cursor from window if sibling of grabbed
937 window, and cursor from grabbed window otherwise.
939 * gdk/linux-fb/gdkprivate-fb.h:
940 Update gdk_fb_window_send_crossing_events, gdk_event_make
941 and grab varaible declarations. Add gdk_fb_*_event_window().
943 * gdk/linux-fb/gdkwindow-fb.c:
944 Use new event_window/gdk_event_make() behaviour.
945 Keep correct track of focus window.
946 (gdk_window_set_events): Set all specific button motion masks
947 if GDK_BUTTON_MOTION_MASK set.
949 * gtk/gtkdnd.c (gtk_drag_update):
950 Free info->last_event if gdk_drag_motion returned FALSE.
952 2001-01-16 Tor Lillqvist <tml@iki.fi>
954 * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
955 Eliminate redraws when input-only windows are shown or
956 hidden. Thanks to jpe@archaeopteryx.com.
958 Tue Jan 16 13:13:13 GMT 2001 Tony Gale <gale@gtk.org>
960 * docs/faq/gtk-faq.sgml: FAQ update:
962 - Add GTK+ and security/SUID/SGID
965 2001-01-16 Alexander Larsson <alla@lysator.liu.se>
967 * gdk/linux-fb/gdkdnd-fb.c:
970 2001-01-15 Havoc Pennington <hp@pobox.com>
972 * tests/testtreeview.c: add test stuff for CellRendererToggle
974 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
977 * gtk/gtkcellrenderertoggle.c: distinguish different event types,
978 only toggle on button press (would do release like GtkButton, but
979 we'd need implicit grab code for treeview cells)
981 2001-01-16 Tor Lillqvist <tml@iki.fi>
983 * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
985 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
986 GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
988 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
989 to g_{locale,filename}_{to,from}_utf8 to match current API.
991 * gtk/makefile.msc.in (gtk_OBJECTS)
992 * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
994 * gtk/gtk.def: Update.
996 2001-01-15 Tor Lillqvist <tml@iki.fi>
998 * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
999 implementaion that more closely mimics the events that an X server
1000 would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1001 GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1002 with nested preview widgets, for instance, more responsive when
1003 you move the mouse quickly into them.
1004 (find_window_for_pointer_event): Make it actually compile.
1005 (gdk_event_translate): Set send_event to the value of
1006 InSendMessage (). This doesn't really mean the same as X11's
1007 send_event flag, but is close enough, says jpe@archaeopteryx.com
1009 2001-01-15 Alexander Larsson <alexl@redhat.com>
1011 * gdk/linux-fb/gdkdnd-fb.c:
1012 Implemented drag and drop.
1013 Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
1014 when it tries to free and then copy the same event (info->last_event).
1015 I am not sure about why this happens, but will continue looking.
1017 2001-01-15 Alexander Larsson <alexl@redhat.com>
1019 * gdk/linux-fb/gdkwindow-fb.c:
1020 Use gdk_window_invalidate_rect instead of
1021 gdk_window_invalidate_rect_clear to minimise flashing.
1022 When hiding windows you need to clear the root window though.
1024 2001-01-15 Alexander Larsson <alexl@redhat.com>
1026 * gdk/linux-fb/gdkdrawable-fb2.c:
1027 For optization, add an full_shapes argument to gdk_fb_clip_region.
1028 If this is false, only the cliprects of the shapes are used.
1030 * gdk/linux-fb/gdkprivate-fb.h:
1031 Export gdk_fb_window_peek_shape.
1032 Add full_shapes to gdk_fb_clip_region.
1034 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1035 When moving a window, don't clear everything under the it, just the
1036 root window. Makes stuff faster and flash less.
1037 (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1038 USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1039 offset of the shape.
1042 2001-01-12 Havoc Pennington <hp@redhat.com>
1044 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the
1045 current invalid region, fixes redraw bug while scrolling the
1048 * gtk/gtktextview.c, gtk/gtktextview.h:
1049 Rearrange the scrolling/validation/etc. code in a major way,
1050 so it seems to make sense to me. Probably isn't genuinely that
1053 * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1056 * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1058 2001-01-12 Alexander Larsson <alla@lysator.liu.se>
1060 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1061 Hide mouse pointer while rotation. Show it afterwards.
1063 2001-01-12 Alexander Larsson <alexl@redhat.com>
1065 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1066 windows in consideration when generating clip region.
1068 * gdk/linux-fb/gdkfb.h:
1069 Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1071 * gdk/linux-fb/gdkprivate-fb.h:
1072 Add shape to GdkWindowFBDatat.
1073 exported gdk_fb_window_get_abs_shape().
1074 removed gdk_fb_draw_lines declaration.
1076 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1077 Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1078 send focus changes when there is a grabbed window.
1079 (gdk_window_get_pointer): Handle shaped windows.
1080 (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1081 (gdk_fb_window_peek_shape): Returns the shape for a window,
1082 handles GDK_FB_USE_CHILD_SHAPE.
1083 (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1084 offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1085 (gdk_window_shape_combine_mask): Implement.
1087 * gtk/gtkwindow-decorate.c:
1088 HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1089 setting the shape of a window makes the window transparent.
1091 2001-01-11 Havoc Pennington <hp@redhat.com>
1093 * gtk/gtktreemodelsimple.h: Oops, broke some macros
1095 2001-01-10 Havoc Pennington <hp@redhat.com>
1097 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1098 add this function, bug 40251
1100 * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1103 2001-01-11 Alexander Larsson <alexl@redhat.com>
1106 Added ENABLE_SHADOW_FB
1109 Added --disable-shadowfb
1111 * gdk/linux-fb/gdkcursor-fb.c:
1112 Update shadowfb when updating cursor
1114 * gdk/linux-fb/gdkdrawable-fb2.c:
1115 Added wrappers for shadowfb that calls the normal drawable
1116 methods, but calls gdk_shadow_fb_update(bounding box) when
1117 GdkWindows are drawed to.
1118 Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1119 which also returns the bounding box.
1121 * gdk/linux-fb/gdkfb.h:
1122 Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1124 * gdk/linux-fb/gdkgeometry-fb.c:
1125 Update shadowfb when scrolling window.
1127 * gdk/linux-fb/gdkglobals-fb.c:
1128 Add _gdk_fb_screen_angle.
1130 * gdk/linux-fb/gdkkeyboard-fb.c:
1131 Test code for screen rotation. Shift-F2 in the xlate driver
1134 * gdk/linux-fb/gdkmain-fb.c:
1135 Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1137 * gdk/linux-fb/gdkmouse-fb.c:
1138 Use fb_width/height instead of modeinfo.xres/yres.
1140 * gdk/linux-fb/gdkprivate-fb.h:
1141 Added fb_men, fb_width, fb_height & fb_stride. When using
1142 shadow fb these can differ from the framebuffer stuff.
1143 Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1144 gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1145 _gdk_fb_screen_angle. Removed CM, RP.
1147 * gdk/linux-fb/gdkrender-fb.c:
1148 Added code for shadowfb handling and screen rotation using
1151 * gdk/linux-fb/gdkwindow-fb.c:
1152 Use fb_mem, fb_stride, fb_width, fb_height.
1153 Added recompute_rowstride to reset the rowstride of all windows.
1154 Added gdk_fb_recompute_all() which recomputes rootwindow size,
1155 window abs positions and window rowstrides. Usefull when the
1156 rotation has changed.
1158 Thu Jan 11 13:16:50 GMT 2001 Tony Gale <gale@gtk.org>
1160 * docs/faq/gtk-faq.sgml: update to make web site updating easier
1162 2001-01-10 Havoc Pennington <hp@redhat.com>
1164 * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
1165 where sibling == iter
1166 (gtk_tree_store_insert_after): handle sibling == iter
1167 (gtk_tree_store_prepend): remove stamp checks
1168 (gtk_tree_store_insert_before): ditto
1169 (gtk_tree_store_append): ditto
1170 (gtk_tree_store_get_path): ditto
1171 (gtk_tree_store_get_value): ditto
1172 (gtk_tree_store_iter_has_child): ditto
1173 (gtk_tree_store_iter_n_children): ditto
1174 (gtk_tree_store_iter_nth_child): ditto
1175 (gtk_tree_store_insert_after): ditto
1176 (gtk_tree_store_is_ancestor): ditto
1177 (gtk_tree_store_iter_depth): ditto
1178 (gtk_tree_store_insert_before): assert that sibling's parent is
1179 the same as the passed-in parent
1180 (gtk_tree_store_insert_after): assert that sibling's parent is
1181 the same as the passed-in parent
1184 * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience
1185 function to get the first iterator in a model
1187 * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
1188 conventionally the "root" in this sense is just NULL afaict.
1190 * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
1191 where sibling == iter
1192 (gtk_list_store_insert_after): handle case where sibling == iter
1194 * tests/testtreeview.c (run_automated_tests): fairly lame basic
1195 automated tests for ListStore, TreeStore
1197 * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
1198 (gtk_list_store_insert): update tail pointer, and fix it to work
1199 (gtk_list_store_insert_before): update tail pointer, and fix it to work
1200 (gtk_list_store_append): use tail to be faster
1201 (gtk_list_store_prepend): fix it, update tail pointer
1202 (gtk_list_store_insert_after): fix it, update tail pointer
1204 * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for
1207 2001-01-09 Havoc Pennington <hp@redhat.com>
1209 * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
1210 is NULL due to a pending resize
1212 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
1213 column width to values less than 1
1215 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
1216 width to be between min/max width, and still set the width
1217 even if autosize is turned on, so the tree view can use this
1218 function in order to autosize.
1219 (gtk_tree_view_column_init): set initial width to 1 not 0
1221 * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
1222 setter function to modify column width, so we get notification
1223 (gtk_tree_view_insert_iter_height): ditto
1224 (gtk_tree_view_calc_size): ditto
1225 (gtk_tree_view_check_dirty): ditto
1227 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
1228 properties to change all the interesting attributes of the tree
1230 (gtk_tree_view_column_set_header_clickable): rename set_clickable
1231 (gtk_tree_view_column_get_clickable): add
1232 (gtk_tree_view_column_set_cell_renderer): don't unset the current
1233 attributes; assume a cell renderer with equivalent object
1234 properties has been swapped in. Do g_object_notify().
1235 (gtk_tree_view_column_set_visible): g_object_notify
1236 (gtk_tree_view_column_get_sizing): rename from get_col_type
1237 (gtk_tree_view_column_set_sizing): g_object_notify
1238 (gtk_tree_view_column_set_width): add g_object_notify
1239 (gtk_tree_view_column_set_min_width): ditto
1240 (gtk_tree_view_column_set_max_width): ditto
1241 (gtk_tree_view_column_set_title): ditto
1242 (gtk_tree_view_column_set_clickable): ditto
1243 (gtk_tree_view_column_set_widget): ditto
1244 (gtk_tree_view_column_set_justification): ditto
1246 2001-01-09 Havoc Pennington <hp@redhat.com>
1248 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
1249 there are no rows in the model
1251 * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
1252 NULL, then return the start of the list
1254 * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
1255 if we can't get any rows from an empty model
1257 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
1258 extraneous * after function pointer typedef usage
1260 * Makefile.am: don't specify full path to cp and rm
1262 * gtk/gtkcellrenderertextpixbuf.c
1263 (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
1264 NULL before dereferencing, fixes a segfault that happened from
1267 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
1268 use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
1269 and reindent the function
1270 (gtk_cell_renderer_pixbuf_get_size): indentation
1272 * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
1274 (gtk_dialog_add_buttons_valist): add g_return_if_fail
1275 (gtk_dialog_set_default_response): New function, to set default
1277 (gtk_dialog_set_response_sensitive): New function, to set
1278 sensitivity of buttons
1280 * gtk/gtkcellrendererpixbuf.c
1281 (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
1282 (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
1284 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1285 handle any G_TYPE_OBJECT subclass, not just the base class, and
1287 (_gtk_tree_data_list_value_to_node): ditto
1289 * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if
1292 * gtk/gtkmain.c: add GTK_DEBUG_TREE
1294 * gtk/gtkdebug.h: add GTK_DEBUG_TREE
1296 2001-01-09 Tor Lillqvist <tml@iki.fi>
1298 * gdk/win32/gdkevents-win32.c: Implement better mouse
1299 capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
1300 (find_window_for_pointer_event): New function.
1301 (gdk_event_translate): Use it when handling mouse events.
1303 2001-01-09 Alexander Larsson <alla@lysator.liu.se>
1306 Added --with-included-loaders option
1308 * gdk-pixbuf/Makefile.am:
1309 * gdk-pixbuf/gdk-pixbuf-io.c:
1310 Add support for including selected gdk-pixbuf loaders only.
1312 * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
1313 gtk_window_set_has_frame):
1314 Added inline documentation.
1316 * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
1317 * docs/reference/gdk/tmpl/windows.sgml:
1318 Added inline documentation.
1320 Mon Jan 8 14:42:06 2001 Jonathan Blandford <jrb@redhat.com>
1322 * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
1323 realizing buttons that have already been realized.
1325 Mon Jan 8 14:06:29 2001 Jonathan Blandford <jrb@redhat.com>
1327 * tests/testtreeview.c (main): Show menu items before adding to
1330 * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
1331 around if we kill them.
1333 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1334 Return if we pass in a NULL model.
1336 2001-01-08 Havoc Pennington <hp@redhat.com>
1338 * tests/testtreeview.c: hack on this some
1340 * gtk/gtktreestore.c (gtk_tree_store_setv): rename
1341 gtk_tree_store_set_valist, v is for arrays, valist for varargs
1343 (gtk_tree_store_getv): rename gtk_tree_store_get_valist
1345 * gtk/gtkliststore.h: Add varargs set() and get() convenience
1348 2001-01-08 Alexander Larsson <alexl@redhat.com>
1350 * gtk/gtkwindow-decorate.[hc]:
1352 New files. Contains an implementation of a minimal WM for
1356 Add the possibility for GtkWindows to specify a frame. This
1357 is used for the window decoration code, but could concievably
1358 be used for X programs too (xmms style windows).
1359 GtkWindow->frame is the toplevel window if the window is framed.
1360 The signal frame_event gets all events that are targeted to
1362 (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
1365 Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
1366 Call out to gtkwindow-decorate.c for WM support in linx-fb.
1368 2001-01-08 Alexander Larsson <alexl@redhat.com>
1370 * docs/README.linux-fb:
1371 Correct filename ~/.pangoft2_aliases
1374 Added new function gdk_window_get_decorations.
1376 * gdk/linux-fb/gdkfb.h:
1377 Removed _gdk_window_get_decorations declaration.
1378 Renamed _gdk_window_set_child_handler to
1379 gdk_fb_window_set_child_handler.
1381 * gdk/linux-fb/gdkwindow-fb.c:
1382 Renamed _gdk_window_set_child_handler to
1383 gdk_fb_window_set_child_handler.
1385 * gdk/x11/gdkwindow-x11.c:
1386 New function gdk_window_get_mwm_hints().
1387 Implemented gdk_window_get_decorations.
1389 * docs/reference/gdk/tmpl/windows.sgml:
1390 * docs/reference/gdk/gdk-sections.txt:
1391 Added gdk_window_get_decorations docs.
1393 2001-01-08 Alexander Larsson <alla@lysator.liu.se>
1395 * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
1396 gdk_fb_window_find_focus, gdk_fb_send_focus_change,
1397 gdk_fb_window_send_crossing_events):
1398 Possibly send focus events when the mouse moves from one
1401 2001-01-07 Tor Lillqvist <tml@iki.fi>
1403 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
1404 gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
1405 to match current API.
1407 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
1408 environment variable is set, don't call g_error when on a
1409 palettized (PseudoColor) display. Some people want to use GTK+
1410 in 256-colour mode even though works only partially.
1414 * gtk/makefile.mingw.in: Update.
1416 2001-01-05 Havoc Pennington <hp@redhat.com>
1418 * tests/testtreeview.c: hack on this a bit
1420 * gtk/gtktextlayout.c (gtk_text_layout_class_init):
1421 s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
1423 * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS):
1424 was spelled incorrectly
1425 (GTK_IS_TREE_MODEL_SIMPLE): ditto
1427 * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
1428 from gtk_tree_view_set_headers_active
1431 (gtk_text_tag_get_property): handle PROP_DIRECTION
1432 (gtk_text_tag_set_property): g_object_notify when we toggle the _set
1433 properties, bug 40235
1435 * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
1438 Fri Jan 5 16:16:29 2001 Owen Taylor <otaylor@redhat.com>
1440 * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
1441 modules/input/gtkimcontextxim.c: Adapt to new prototypes
1442 for unicode,locale,filename conversion functions.
1444 2001-01-05 Havoc Pennington <hp@redhat.com>
1446 * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
1447 broken if called on the first position in the buffer.
1449 * gtk/gtktextlayout.c (line_display_index_to_iter): fix
1450 forward_to_delimiters to be called only if we aren't already at
1453 2001-01-05 Havoc Pennington <hp@redhat.com>
1455 * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
1457 2001-01-05 Alexander Larsson <alexl@redhat.com>
1459 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
1460 colormap in here. Sync from X port.
1461 (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
1463 (gdk_fb_clip_region): Comment out g_warning about empty clip region.
1464 This happens now and then, and i don't think it is a bug.
1465 (gdk_fb_draw_polygon): Correctly add extra point if startpoint
1467 (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
1470 * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
1471 some of the fields filled in at least.
1473 * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
1474 miLineArcD is no more, remove it from the function definition.
1476 2001-01-04 Havoc Pennington <hp@redhat.com>
1478 * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
1481 * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
1482 user_data instead of tree_node
1484 * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
1485 TREE_VIEW_COLUMN_SIZE
1487 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
1488 "size" field to "width" finishes bug 40061
1490 * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
1491 for bitfields, bug 40268
1493 2001-01-04 Havoc Pennington <hp@redhat.com>
1497 s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
1499 s/GtkModelSimple/GtkTreeModelSimple/g;
1500 s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
1501 s/gtk_model_simple/gtk_tree_model_simple/g;
1502 s/gtkmodelsimple/gtktreemodelsimple/g;
1504 s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
1506 s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
1507 s/column_set_col_type/column_set_sizing/g;
1509 s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
1510 s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
1512 s/GtkCellRendererType/GtkCellRendererState/g;
1514 * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
1515 (gtk_cell_renderer_toggle_class_init): change "state" property to
1516 "active", to match GtkToggleButton
1517 (gtk_cell_renderer_toggle_get_active): new function, bug
1519 (gtk_cell_renderer_toggle_set_active): new function
1520 (gtk_cell_renderer_toggle_set_property): route changes to toggle
1521 state through gtk_cell_renderer_set_active
1523 Thu Jan 4 15:46:18 2001 Jonathan Blandford <jrb@redhat.com>
1525 * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
1526 temporarily until they work again. Brought up to date with
1527 changes in the model.
1528 * gtk/gtkmodelsimple.h: Brought up to date with changes in the
1531 2001-01-04 Havoc Pennington <hp@redhat.com>
1533 * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
1534 equal to the line length, then position iterator before paragraph
1535 separators. Fixes crash reported by Mikael Hermansson when
1536 pressing left arrow from the start of a line.
1538 * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
1539 about byte indexes off the end
1540 (iter_set_from_char_offset): add g_error about char offsets
1543 2001-01-03 Havoc Pennington <hp@redhat.com>
1545 * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
1547 * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
1548 of private functions; remove inclusion of private headers.
1550 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
1551 function, so we don't need private functions in gtktextdisplay.c
1553 * gtk/gtktextiterprivate.h: underscore-ification
1555 * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
1556 to instead say "only useful to implement widgets"
1558 * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
1559 GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
1560 GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
1562 * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
1563 This function was completely broken
1565 * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
1567 * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
1569 * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
1571 * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
1573 * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
1575 * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
1577 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
1580 * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
1583 * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
1584 Progress on bug 40103. Add draw_layout to draw a PangoLayout.
1585 (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
1586 which were not implemented.
1588 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
1589 insert_pixbuf signal. Rename delete_text to delete_range since it
1590 also deletes pixbufs and child anchors. This almost closes bug
1591 40245 (still need to deal with child anchors)
1593 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
1594 insert_pixbuf, change signal names as appropriate, change types of
1595 signals taking marks/tags to have the specific type, not just
1598 * gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
1601 * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
1602 unnecessary remove_contents() call
1603 (gtk_option_menu_class_init): add a "changed" signal, closes
1605 (gtk_option_menu_update_contents): emit "changed" if the
1606 active menu item changes
1608 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
1609 cast to GtkObject, reported by Jonas Borgstrom
1610 (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
1611 we can't do stuff with side effects in finalize. Instead, spew a
1612 warning if the loader isn't closed.
1614 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
1615 colormap in here, non-X ports probably need to sync to this change
1617 * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
1618 assertion that colormap != NULL, you can set the colormap to NULL
1621 * Makefile.am: remove gtk-config-2.0
1623 * configure.in: Use pkg-config to locate GLib. Remove
1624 separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
1625 and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
1626 Use pkg-config to locate Pango. Output correct Pango libs to
1627 gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
1629 * Makefile.am (pkgconfig_DATA): install only target-specific pc
1631 (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
1634 * gtk+-2.0.pc.in (Requires): require the GDK for the current target
1637 2001-01-03 Alexander Larsson <alla@lysator.liu.se>
1640 Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
1642 Tue Jan 2 16:23:05 2001 Owen Taylor <otaylor@redhat.com>
1644 * gtk/gtktextlayout.c
1645 (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
1646 variable when moving back onto a single line.
1648 2001-01-01 Havoc Pennington <hp@redhat.com>
1650 * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1652 * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1654 * configure.in (LIBTOOL_EXPORT_OPTIONS): define
1655 LIBTOOL_EXPORT_OPTIONS with options to control symbol export
1657 2001-01-01 Havoc Pennington <hp@redhat.com>
1659 * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
1661 * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for
1664 * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug
1666 (gtk_text_attributes_copy_values): rename from
1667 gtk_text_attributes_copy
1668 (gtk_text_attributes_copy): a more standard GTK copy function,
1669 which returns a new object
1671 2001-01-01 Havoc Pennington <hp@redhat.com>
1673 * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
1675 * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
1676 don't fill in tree_view->priv->selection, kind of an unexpected
1679 * gtk/gtkcellrenderertext.c: Remove definition of _ and include
1682 * gtk/gtkcellrenderer.c: Remove definition of _ and include
1684 (gtk_cell_renderer_get_property): remove calls to g_value_init
1686 * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
1689 * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
1690 and include gtkintl.h
1691 (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
1694 * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
1696 (_gtk_tree_selection_new_from_with_view): rename, return
1698 (_gtk_tree_selection_set_tree_view): rename with uscore
1699 (gtk_tree_selection_get_selected): fill in the "model" out param
1700 first, so it gets filled in even if we return at the top of the
1702 (gtk_tree_selection_real_select_all): add a comment and an else{}
1703 to clarify this a bit
1704 (gtk_tree_selection_real_unselect_all): add the same else{}
1706 * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
1707 set_tree_view to have underscore prefixes, move them to the
1708 private header, fix return type of new_with_tree_view
1709 (struct _GtkTreeSelection): mark struct
1712 * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
1713 GtkTreeModelFlags, not a guint
1714 (gtk_tree_path_prev): return gboolean not gint
1715 (gtk_tree_path_up): return gboolean not gint
1717 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
1718 return GtkTreeModelFlags, not a guint
1720 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
1721 that child model is non-null before unrefing it
1722 (g_value_int_compare_func): make this a qsort compare func, not
1725 * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
1726 (add -umn to the end), and mark it unimplemented
1727 (gtk_tree_model_sort_resort): remove, this wasn't implemented, and
1728 I don't see what it's for - doesn't the model always sort itself?
1729 (gtk_tree_model_sort_set_compare): this had the wrong signature
1731 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
1732 Fix the docs to say that it destructively replaces existing
1733 attributes (previously said that it added attributes).
1734 (gtk_tree_view_column_set_visible): canonicalize bool before
1735 equality testing. Also, check for realization before
1736 hiding/showing the tree_column->window; if this window could exist
1737 before realization, then it's busted and needs fixing, we can't
1738 create GDK resources pre-realization. Also, remove
1739 superfluous queue_resize(), since set_size() does that for us.
1740 (gtk_tree_view_column_set_col_type): check realization before
1741 using tree_column->window
1743 * gtk/gtktreedatalist.c: fix filename in copyright notice
1745 2000-12-31 Havoc Pennington <hp@pobox.com>
1747 * gtk/gtktextview.c: Rearrange all the
1748 scroll-while-dragging-or-selecting code to be different, not
1749 necessarily better. ;-)
1750 (gtk_text_view_scroll_to_mark): Change this
1751 function to take within_margin as a fraction instead of a pixel
1752 value, and to take alignment arguments (indicating where to align
1753 the mark inside the visible area)
1755 * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
1758 * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
1759 behavior so that offsets past the end of the line are not
1760 allowed, and an offset equal to the line length moves the iterator
1762 (gtk_text_iter_set_line_index): make parallel change
1763 (gtk_text_iter_get_bytes_in_line): add this function
1765 * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
1766 of byte indexes off the end of the line; byte index at the end of
1767 the line now returns FALSE and doesn't fill in the requested
1768 values, byte index past the end of the line is an error. Also,
1769 don't allow -1 offset anymore, since its meaning is unclear.
1771 This change exposes some bug in visual cursor motion, where we
1772 end up with a huge invalid byte index; needs fixing. Symptom of
1773 bug is a crash when you hit up arrow.
1775 (_gtk_text_line_char_locate): match the change to byte_locate
1777 * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
1778 from start of line properly. fixes bug reported by Mikael
1779 Hermansson where backspace would delete all text before the
1782 2000-12-30 Tor Lillqvist <tml@iki.fi>
1784 * gdk/win32/gdkwindow-win32.c
1785 (gdk_window_impl_win32_get_visible_region): New function, as in
1787 (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
1788 instead of duplicating the same code here.
1790 * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
1793 * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
1795 (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
1798 * gtk/gtk.def: Update.
1800 * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
1802 2000-12-30 Havoc Pennington <hp@pobox.com>
1804 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
1805 colormap on input only windows, to avoid special cases all over
1806 the code for these windows.
1808 2000-12-26 Tor Lillqvist <tml@iki.fi>
1810 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
1811 we are on a palettized display ("PseudoColor" in X11), as the code
1812 for that doesn't work anyway, and never has.
1814 2000-12-22 Alexander Larsson <alexl@redhat.com>
1816 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
1817 Don't use isprint() for chars > 255.
1819 2000-12-21 Havoc Pennington <hp@redhat.com>
1821 * tests/testtreeview.c: more work
1823 2000-12-21 Alexander Larsson <alexl@redhat.com>
1825 * docs/README.linux-fb:
1826 Update the docs to the new pangoft2 way.
1828 2000-12-21 Alexander Larsson <alexl@redhat.com>
1831 For linux-fb get the pangoft2 cflags and libs. This needs a recent
1833 Remove modules/linux-fb/Makefile.
1835 * gdk/linux-fb/gdkdrawable-fb2.c:
1836 Render glyphs using freetype.
1838 * gdk/linux-fb/gdkfb.h:
1839 Add new fb-specific functions needed for managing windows.
1841 * gdk/linux-fb/gdkmain-fb.c:
1842 Remove gdk_font_init/fini() calls.
1844 * gdk/linux-fb/gdkpango-fb.c:
1845 Remove old implementation. Use pangoft2 instead.
1847 * gdk/linux-fb/gdkprivate-fb.h:
1848 Remove PangoFBFont and related stuff.
1850 * gdk/linux-fb/gdkwindow-fb.c:
1851 Implement drawable->get_visible_region.
1852 Implement support for _gdk_window_set_child_handler () and
1853 _gdk_window_get_decorations().
1855 * modules/Makefile.am:
1856 Remove linux-fb subdir.
1858 * modules/linux-fb/*:
1861 2000-12-20 Jonathan Blandford <jrb@redhat.com>
1863 * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
1864 calls, as they are no longer needed.
1866 * gtk/gtktreemodelsort.c: Fix up the comparison code.
1868 * gtk/gtktreemodel.h: Start work on ::reordered signal. Need to
1869 figure out how to emit a signal on an interface.
1871 2000-12-20 Havoc Pennington <hp@redhat.com>
1873 * tests: new directory to contain tests, gtk/test* should move
1874 here sometime (with appropriate on-cvs-server hackery)
1876 * tests/testtreeview.c, tests/Makefile.am: a test
1878 * configure.in (AC_OUTPUT): add tests/Makefile
1880 * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
1881 and "invisible_set" which were missing
1883 * gtk/gtkrbtree.h: some cheesy indentation fix
1885 2000-12-20 Alexander Larsson <alexl@redhat.com>
1887 * gtk/gtkinvisible.c (gtk_invisible_realize):
1888 Attach the style to the window so that the style it is not
1889 leaked when unrealizing the window.
1891 2000-12-18 Havoc Pennington <hp@redhat.com>
1893 * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
1894 begin/end user action where appropriate
1895 (gtk_text_view_commit_handler): add begin/end user action
1897 * gtk/gtktextbuffer.c: add begin/end user action signals, and
1898 bracket interactive operations with begin/end user action pair.
1900 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
1901 "interactive" arg from insert_text and delete_text signals.
1902 Add begin_user_action, end_user_action signals
1903 (gtk_text_buffer_begin_user_action):
1904 (gtk_text_buffer_end_user_action): New functions to delimit
1905 a user-visible action
1907 * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
1910 2000-12-18 Havoc Pennington <hp@redhat.com>
1912 * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
1913 was pretty non-working.
1915 * gtk/testtext.c (fill_file_buffer): make this a bit more robust
1916 by passing the length to g_utf8_validate().
1918 2000-12-16 Havoc Pennington <hp@pobox.com>
1920 * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
1921 Port to GObject, can go back in gdk-pixbuf after setting up
1922 a gdk-pixbuf-marshal.h header over there.
1924 * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
1925 (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
1927 (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
1929 (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
1930 here, do it when we create the buttons later
1931 (gtk_tree_view_realize_buttons): add some g_return_if_fail
1932 (gtk_tree_view_map): paranoia checks that column->button is shown
1934 (gtk_tree_view_size_request): only request visible children.
1935 Move header size calculation in here, for cleanliness, and
1936 to maintain invariants for child widgets if we eventually
1937 let users set different children inside the buttons
1938 (gtk_tree_view_map_buttons): factor out code to map buttons,
1939 since it was being called several times
1940 (gtk_tree_view_size_allocate_buttons): move_resize the drag
1941 windows instead of just moving them; their height may change
1942 if we allow random widgets in there, or the theme changes.
1943 (gtk_tree_view_size_allocate): move button size allocation
1944 above emitting the scroll signals, to ensure a sane state when we
1946 (gtk_tree_view_button_release): remove queue_resize after
1947 tree_view_set_size(), set_size() will handle any resize queuing
1949 (gtk_tree_view_focus_in): just queue a draw, don't fool with
1951 (gtk_tree_view_focus): use gtk_get_current_event() and
1952 gdk_event_get_state()
1953 (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
1954 (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
1956 (gtk_tree_view_create_button): show the button here
1957 (gtk_tree_view_button_clicked): actually emit the clicked signal
1959 (_gtk_tree_view_set_size): return right away if the size is
1960 unchanged, as a cheesy optimization
1961 (gtk_tree_view_setup_model): rename set_model_realized to
1962 setup_model to match the flag that indicates whether we've
1964 (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
1965 exist, because set_scroll_adjustment does that and it shouldn't
1966 matter what order you call these in
1967 (gtk_tree_view_get_vadjustment): ditto
1968 (gtk_tree_view_set_headers_visible): canonicalize the bool,
1970 (gtk_tree_view_set_headers_visible): call
1971 gtk_tree_view_map_buttons() instead of using cut-and-paste code
1972 (gtk_tree_view_append_column): clarify whether the return value
1973 is the count of columns before or after, and do the increment
1974 separately from the return statement so you can tell from the code.
1975 (gtk_tree_view_remove_column): ditto
1976 (gtk_tree_view_insert_column): ditto
1977 (gtk_tree_view_get_column): remove g_return_if_fail for columns
1978 outside the existing range, the docs say that outside-range
1979 columns are allowed, so we handle them as documented. (Presumably
1980 this allows a nice loop with column != NULL as test.)
1981 (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
1982 mean (left/right/center etc.).
1983 (gtk_tree_view_collapse_all): only queue a draw if we're mapped
1984 (gtk_tree_view_expand_row): add docs
1985 (gtk_tree_view_collapse_row): add docs
1987 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
1988 function to emit the clicked signal on a column
1990 * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
1992 (gdk_event_get_time): don't treat GDK_SCROLL
1993 as a button event, remove default case from switch so gcc
1994 will whine if we don't explicitly handle all event types
1996 * gtk/gtktreeselection.h: added some FIXME
1998 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
1999 "columns" to "n_columns" and "column" to "columns" for clarity
2001 2000-12-16 Havoc Pennington <hp@pobox.com>
2003 * gtk/gtktextiter.c: General cleanup of the log attr iteration
2004 stuff. This should make e.g. the delete key work again in the
2006 (gtk_text_iter_forward_cursor_positions): handle negative count
2007 (gtk_text_iter_backward_cursor_positions): handle negative count
2008 (gtk_text_iter_forward_word_ends): handle negative count
2009 (gtk_text_iter_backward_word_starts): handle negative count
2011 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
2012 gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c,
2013 gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to
2014 GObject. No doubt will cause breakage.
2016 * demos/gtk-demo/textview.c: remove hacks around
2017 non-GObject-ification of the text objects
2019 * demos/gtk-demo/main.c (main): use g_object_set() to manipulate
2022 2000-12-14 Havoc Pennington <hp@pobox.com>
2024 * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2025 that we have Xrender
2027 Thu Dec 14 20:22:31 2000 Owen Taylor <otaylor@redhat.com>
2029 * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2030 Add two virtualized functions gdk_drawable_get_clip_region - to
2031 get the clip region when drawing.
2033 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2034 use invalidate_region.
2036 * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2039 * acconfig.h configure.in: Check for Xft. For now, assume
2040 that if Xft is found, Pango was compiled with Xft support
2043 * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
2044 gdk_colormap_query_color().
2046 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2047 with Xft if appropriate.
2049 * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2050 a pangoxft context if we have XFT and the environment
2051 variable GD_USE_XFT is set.
2053 * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2054 and also possibly an XftDraw structure.
2056 * gtk/gtkfontsel.c: Handle the case where the font from the
2057 style doesn't match any of the fonts a bit better.
2059 * gtk/testgtk.c: Add tabs between directional segments for
2060 hebrew/arabic test. (Not really necessary, just a little
2063 2000-12-14 Havoc Pennington <hp@redhat.com>
2065 * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2068 2000-12-14 Havoc Pennington <hp@redhat.com>
2070 * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2071 unused call to get_last_line()
2073 * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2074 here until boxed is working (and maybe after that - we should
2075 really not gratuitously break old code)
2077 * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2078 specific types for font_desc and tabs args, move them to
2079 GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get
2080 fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2082 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2083 use GTK_TYPE_POINTER for signal signatures as a hack-around
2085 * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2088 * gtk/gtktextlayout.c (line_display_iter_to_index):
2090 (line_display_index_to_iter): make static
2092 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2093 to marshal a string not a boxed
2095 * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2097 * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2098 since the UTF-8 isn't validated yet
2100 * gtk/gtktextsegment.c (char_segment_check_func): don't require
2101 lines to end in '\n'
2103 * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2104 forward_to_delimiters, and grapheme boundaries
2105 (gtk_text_view_delete_from_cursor): properly handle non-newline
2106 delimiters, and grapheme boundaries
2108 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2109 to gtk_text_iter_forward_to_delimiters, and make it work properly
2110 if empty lines end with a character other than '\n'
2112 * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2115 2000-12-15 Tor Lillqvist <tml@iki.fi>
2117 * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2120 * gdk/gdk.def: Update.
2122 * gdk/win32/gdkmain-win32.c
2123 * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2124 gdkmain-win32.c here.
2126 * gdk/win32/makefile.mingw.in (all): No need to make
2127 gdk-win32res.o here, the makefile one step up will call us to make
2130 * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2133 * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2135 * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2136 call to g_source_add().
2138 * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2139 leak. Thanks to Andreas Kemnade.
2141 2000-12-13 Havoc Pennington <hp@pobox.com>
2143 * gtk/gtktextbtree.h: Remove double _ in front of some functions
2145 * gtk/gtktext*.[hc]: update accordingly
2147 2000-12-13 Havoc Pennington <hp@pobox.com>
2149 * gtk/gtktextbtree.h: Put _ in front of every function in this
2152 * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2154 2000-12-13 Alex Larsson <alexl@redhat.com>
2156 * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2157 Add support for ps2 intellimouse.
2160 Move shift-F1 repaint handling to xlate handler only.
2162 * docs/README.linux-fb:
2164 Document the new refresh keys.
2166 Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
2168 * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
2170 * gtk/gtkbox.c: change property types from (u)long to (u)int for
2171 ::position and ::padding.
2173 * gtk/gtkcontainer.c: make ::border_width an INT property.
2175 * gtk/gtkpacker.c: make ::position an INT property.
2177 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2178 guard against NULL h/v scrollbars, since this is used at construction
2181 * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
2182 internal gtk_clist_constructor().
2184 * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
2185 gtk_ctree_constructor().
2187 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
2188 ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
2190 * docs/reference/Makefile.am: fun stuff, disabled docs generation
2191 again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
2193 * gtk/gtkwidget.[hc]:
2194 removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
2195 and gtk_widget_get().
2196 (gtk_widget_new): use g_object_new_valist().
2197 (gtk_widget_set): use g_object_set_valist().
2199 * gtk/gtkobject.[hc]:
2200 removed gtk_object_arg_get_info(), gtk_object_getv(),
2201 gtk_object_query_args(), gtk_object_newv(),
2202 gtk_object_class_add_signals(),
2203 gtk_object_class_user_signal_new(),
2204 gtk_object_class_user_signal_newv(),
2205 gtk_object_arg_set(), gtk_object_arg_get(),
2206 gtk_object_args_collect(),
2207 gtk_object_default_construct(),
2208 gtk_object_constructed(),
2209 GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
2210 removed nsignals, signals and n_args members from GtkObjectClass.
2211 (gtk_object_new): use g_object_new_valist().
2212 (gtk_object_set): use g_object_set_valist().
2213 (gtk_object_get): use g_object_get_valist().
2215 * gtk/gtkcompat.h: define gtk_object_default_construct().
2217 * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
2220 * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
2221 fucntions, cleaned up method assignments (make sure your structures
2222 are setup properly before calling out). removed all GTK_CONSTRUCTED
2225 Tue Dec 12 11:52:16 2000 Owen Taylor <otaylor@redhat.com>
2227 * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
2228 off-by-one error in checks. (Dave Lambert)
2230 2000-12-12 Alexander Larsson <alexl@redhat.com>
2232 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
2233 Don't free gdk_fb_keyboard twice.
2235 Tue Dec 12 08:24:42 2000 Tim Janik <timj@gtk.org>
2239 (create_statusbar): get rid of object_signal:: GtkObject argument uses,
2240 use GObject swapped_signal:: properties instead.
2242 * gtk/gtkcellrenderertoggle.c:
2243 * gtk/gtkcellrenderertextpixbuf.c:
2244 * gtk/gtkcellrenderertext.c:
2245 * gtk/gtkcellrendererpixbuf.c:
2246 * gtk/gtkcellrenderer.c:
2247 * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
2248 missing warnings for invalid property ids, install properties
2249 with g_object_class_install_property() now.
2252 (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
2254 Wed Oct 25 14:17:43 2000 Owen Taylor <otaylor@redhat.com>
2256 * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
2257 to determine if a window is the focus widget within
2260 * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
2263 * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
2264 of the case where the container CAN_FOCUS to here instead
2265 of having it in each individual move-the-focus place.
2267 * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
2268 focusing to be geometric in a much more obvious sense. Arrowing
2269 around is still non-intuitive because it isn't perfect and
2270 because entries, etc, grab the arrow keys, but it at least
2271 usually will do what you expect now.
2273 * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
2276 * gtk/gtknotebook.c: Change tabs to be a single item in
2277 the focus chain. Make movement of focus on tabs with arrow
2280 * gtk/gtknotebook.c (gtk_notebook_find_child): Add
2281 CHECK_FIND_CHILD macro to give informative error messages
2282 instead of silent returns.
2284 * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
2285 flag since we handle GdkReturn on the tabs.
2287 * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
2288 windows rather than sending expose events directly.
2290 * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
2291 definition for GtkNotebookPage into .c file, since it is private.
2293 * gtk/testgtk.c (create_notebook): Add option for
2294 testing borderless notebook.
2296 * gtk/testgtk.c (page_switch): Removed egregious poking
2297 around in GTK+ internals.
2299 * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
2301 * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
2302 properly through gtk_clist_focus. Make the title headers a
2303 single item in the tab-focus chain, and make left-right wrap
2306 * gtk/gtkwindow.c (gtk_window_focus): Add a custom
2307 focus method so that wrapping around works properly.
2309 * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
2310 that is handled for the widget now.
2312 Mon Dec 11 11:41:12 2000 Owen Taylor <otaylor@redhat.com>
2314 * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
2315 widgets as TOPLEVEL.
2317 * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
2318 TOPLEVEL widgets are containers.
2320 * gtk/gtkinvisible.h: Remove useless include.
2322 2000-12-11 Havoc Pennington <hp@redhat.com>
2324 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
2325 Handle chopping off \r\n and 0x2029 in addition to \n before
2326 passing to PangoLayout
2328 * gtk/gtkimcontextsimple.c
2329 (gtk_im_context_simple_get_preedit_string):
2330 return an empty string if no match is pending
2332 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
2333 assertion that the returned preedit string was sane
2335 * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
2336 s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
2337 s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
2339 Mon Dec 11 10:02:26 2000 Owen Taylor <otaylor@redhat.com>
2341 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize):
2342 Fix up finalizer to chain to its parent.
2344 2000-12-11 Alexander Larsson <alexl@redhat.com>
2346 * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
2347 Clearified the difference between the keyboard types. Wrote a note
2348 about the magic sysrq key to get out of raw mode.
2350 2000-12-09 James Henstridge <james@daa.com.au>
2352 * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
2353 member to hold masks for detecting the start of a protocol packet.
2354 (mouse_devs): add packet start masks for ps2 and ms device types.
2355 Left the mask for fidmour blank, as I have no idea what it should
2357 (handle_mouse_io): skip bytes until we get to the start of a
2358 packet. My Logitech mouse seems to be passing an extra NULL pad
2359 byte, and GPM does a similar thing here.
2360 (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
2361 this is the ms mouse driver.
2362 (gdk_fb_mouse_ms_packet): fix up button handling, which was
2363 completely broken except for button1. It was checking the wrong
2364 bit in the packet for the status of the right mouse button, and
2365 wrongly assuming right == button2 rather than 3. I fixed that and
2366 also added support for middle button (button2).
2368 2000-12-08 Havoc Pennington <hp@redhat.com>
2370 * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
2371 that cause a segfault on text insertion
2373 * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix
2376 * gtk/gtktextiter.c (test_log_attrs): use
2377 _gtk_text_buffer_get_line_log_attrs to speed things up a bit
2379 * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs):
2380 Get log attrs for a line, using a cache stored on the buffer
2382 * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
2383 reported by Jeff Franks
2385 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
2387 * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
2388 /dev/ttyS0 -> /dev/mouse
2390 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
2392 * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
2393 Added dummy gdk_fontset_load.
2395 2000-12-08 Alexander Larsson <alexl@redhat.com>
2397 * docs/README.linux-fb:
2401 * gdk/linux-fb/Makefile.am:
2402 Define GDK_DATA_PREFIX.
2404 * gdk/linux-fb/gdkmain-fb.c:
2406 Change default display to /dev/fb0.
2408 * gdk/linux-fb/gdkpango-fb.c:
2409 Add $(prefix)/share/fonts/ to font path.
2411 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
2413 * gdk/linux-fb/gdkkeyboard-fb.c:
2414 New file containing the abstracted keyboard driver. Most code
2415 taken from gdkinput-ps2.c
2417 * gdk/linux-fb/gdkinput-ps2.c:
2420 * gdk/linux-fb/Makefile.am:
2421 Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
2423 * gdk/linux-fb/gdkcolor-fb.c:
2424 display->fb was renamed to display->fb_fd.
2426 * gdk/linux-fb/gdkcursor-fb.c:
2427 gdk_mouse_get_info -> gdk_fb_mouse_get_info
2429 * gdk/linux-fb/gdkinput.c:
2430 Moved gdk_input_init here from gdkinput-ps2.c
2432 * gdk/linux-fb/gdkmain-fb.c:
2433 display->fb was renamed to display->fb_fd.
2434 Now the tty and the console is opened here instead
2435 of in the keyboard driver. Also check GDK_VT to see what
2437 Move gdk_beep () here from gdkinput-ps2.c
2438 gdk_mouse_get_info -> gdk_fb_mouse_get_info
2440 * gdk/linux-fb/gdkmouse-fb.c:
2442 gdk_mouse_get_info -> gdk_fb_mouse_get_info
2443 Return correct keyboard modifiers.
2444 GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
2446 * gdk/linux-fb/gdkprivate-fb.h:
2447 Add tty and vt info to display.
2448 Add orignal modeinfo storage to display
2449 Update global functions
2451 * gdk/linux-fb/gdkwindow-fb.c:
2452 Added gdk_fb_window_find_focus().
2453 gdk_mouse_get_info -> gdk_fb_mouse_get_info
2455 2000-12-07 Havoc Pennington <hp@pobox.com>
2457 * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of
2458 function, noticed by Alex
2460 2000-12-06 Elliot Lee <sopwith@redhat.com>
2462 * configure.in: Detect freetype properly
2464 * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
2467 2000-12-06 Alexander Larsson <alexl@redhat.com>
2469 * gdk/linux-fb/Makefile.am:
2472 * gdk/linux-fb/gdkmouse-fb.c:
2473 New file. Abstracted the mouse drivers a bit.
2475 * gdk/linux-fb/gdkcursor-fb.c:
2476 The cursor hide/show functions was moved here from gdkinput-ps2.c.
2478 * gdk/linux-fb/gdkinput-ps2.c:
2479 Removed old mouse handling code. Moved cursor handling code
2480 to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
2481 gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
2484 * gdk/linux-fb/gdkmain-fb.c:
2485 Pass NULL pointers for x,y in gdk_mouse_get_info call.
2487 * gdk/linux-fb/gdkprivate-fb.h:
2488 Removed public gdk_fb_find_common_ancestor, added and renamed
2489 functions for the new mouse handling code.
2491 * gdk/linux-fb/gdkwindow-fb.c:
2492 Moved gdk_fb_window_send_crossing_events here. added global
2493 variable gdk_fb_window_containing_pointer. made
2494 gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
2495 renamed to gdk_mouse_get_info.
2497 2000-12-06 Alexander Larsson <alexl@redhat.com>
2499 * gdk/linux-fb/gdkevents-fb.c:
2500 Update to match latest gmain/gsource changes.
2502 * gdk/linux-fb/gdkinput-ps2.c:
2503 Bogus gdk_keymap_get_entries_for_keycode implementation so that
2504 it links. Will be implemented later.
2506 2000-12-03 Havoc Pennington <hp@pobox.com>
2508 * gdk/Makefile.am: add gdkkeys.[hc]
2510 * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
2511 files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
2513 * acconfig.h, configure.in: add checks and command line options
2516 * gdk/x11/gdkkeys-x11.c: Implement the above functions
2518 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
2519 and group in the key event
2521 * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
2522 field with the low-level hardware key code, and a group
2523 field with the keyboard group
2525 * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
2526 and declare a couple globals used for keymap handling
2528 * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
2529 hold down Shift-Control and type a hex number to get a Unicode
2530 character corresponding to the hex number
2531 (gtk_im_context_simple_get_preedit_string): Fix cursor position
2532 (return bytes not chars)
2534 2000-12-05 Elliot Lee <sopwith@redhat.com>
2536 * gdk/gdkcolor.h: Make GdkColor specify element sizes
2537 to avoid waste on 64-bit platforms.
2539 Tue Dec 5 15:49:31 2000 Owen Taylor <otaylor@redhat.com>
2541 * INSTALL: Fix link to PNG home, remove reference
2544 * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
2546 * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
2549 * gtk/gtkcheckmenuitem.c: Permanently turn on
2552 * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
2553 be NULL. (Vladimir Klebanov, #26545)
2555 * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
2556 some signed/unsigned comparison problems. (#6510,
2559 * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
2560 return type to boolean (Oskar Liljeblad, #18648)
2562 2000-12-05 Alexander Larsson <alexl@redhat.com>
2564 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
2565 Remove bogus colormap setting.
2567 2000-12-05 Alexander Larsson <alexl@redhat.com>
2569 * gdk/linux-fb/gdkcolor-fb.c:
2570 More complete colormap handling. Now GdkRGB work in 8 bpp modes.
2572 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
2575 Tue Dec 5 13:17:53 GMT 2000 Tony Gale <gale@gtk.org>
2577 * docs/tutorial/gtk-tut.sgml: DND updates
2579 2000-12-05 Alexander Larsson <alla@lysator.liu.se>
2581 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2582 Remove old debug g_warning().
2583 (gdk_fb_draw_drawable): The src argument can be either a wrapper
2584 or an implementation, just pass the implementation to draw_drawable_2.
2586 * gdk/linux-fb/gdkprivate-fb.h:
2587 Added GDK_IS_DRAWABLE_IMPL_FBDATA()
2589 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2590 clear and invalidate area when window is destroyed.
2591 (send_map_events): Remove old commented out code.
2593 2000-12-05 Alexander Larsson <alexl@redhat.com>
2595 * gdk/linux-fb/gdkpango-fb.c:
2596 Use italic instead of oblique in font aliases.
2598 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
2599 _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
2600 other unsupported functions.
2602 2000-12-04 Havoc Pennington <hp@redhat.com>
2604 * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
2606 * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
2608 * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
2610 * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary
2611 hack to avoid infinite loops (synthetic expose event) -
2612 Owen has more appropriate fixes in a branch he'll check in later.
2614 * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
2615 separator, CR, and CRLF as line ends
2617 * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
2618 into lines using pango_find_paragraph_boundary(); other bits of
2619 the widget are still going to be broken if the boundary isn't '\n'
2622 2000-12-04 Alexander Larsson <alexl@redhat.com>
2624 * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
2627 * gdk/linux-fb/gdkpango-fb.c:
2628 Copied some 26.6 scaling macros from pango to clean up the rounding.
2629 (pango_fb_font_get_glyph_info): Correct sign on x value.
2631 * gdk/linux-fb/gdkprivate-fb.h:
2632 Removed unreferenced external functions.
2634 * modules/linux-fb/Makefile.am: Use ` instead of '.
2636 * modules/linux-fb/basic.c:
2637 Remove dead code. In particular the dummy lang engine which broke all
2638 pango layouts in GtkFB. Don't include tables-big.i anymore.
2640 * modules/linux-fb/tables-big.i:
2641 Upgrade to latest version from pango. Left for reference, basic_ranges
2644 2000-12-04 Havoc Pennington <hp@redhat.com>
2646 Fix bugs Alex found:
2648 * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
2651 * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
2653 * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
2655 * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw()
2656 implementation in here, apparently the expose() implementation was
2659 2000-12-04 Alexander Larsson <alexl@redhat.com>
2661 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
2662 Return positive descent.
2664 2000-12-02 Havoc Pennington <hp@pobox.com>
2666 * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
2669 * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
2670 calls gdk_window_process_updates() to push the exposes through
2671 (gtk_widget_class_init): No more draw signal, no
2672 gtk_widget_real_draw()
2674 * gtk/gtkbin.c (gtk_bin_draw): remove
2676 * gtk/gtkbox.c (gtk_box_draw): remove
2678 * gtk/gtkbutton.c (gtk_button_draw): remove
2680 * gtk/gtkcalendar.c (gtk_calendar_draw): remove
2682 * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
2684 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
2686 * gtk/gtkclist.c (gtk_clist_draw): remove
2688 * gtk/gtkentry.c (gtk_entry_draw): remove
2690 * gtk/gtkeventbox.c (gtk_event_box_draw): remove
2692 * gtk/gtkfixed.c (gtk_fixed_draw): remove
2694 * gtk/gtkframe.c (gtk_frame_draw): remove
2696 * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
2698 * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
2700 * gtk/gtklayout.c (gtk_layout_draw): remove
2702 * gtk/gtklist.c (gtk_list_draw): remove
2704 * gtk/gtklistitem.c (gtk_list_item_draw): remove
2706 * gtk/gtkmenu.c (gtk_menu_draw): remove
2708 * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
2710 * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
2712 * gtk/gtknotebook.c (gtk_notebook_draw): remove
2714 * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
2716 * gtk/gtkpacker.c (gtk_packer_draw): remove
2718 * gtk/gtkrange.c (gtk_range_draw): remove
2720 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
2722 * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
2724 * gtk/gtktable.c (gtk_table_draw): remove
2726 * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
2728 * gtk/gtktext.c (gtk_text_draw): remove
2730 * gtk/gtktextview.c (gtk_text_view_draw): remove
2732 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
2734 * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
2736 * gtk/gtktree.c (gtk_tree_draw): remove
2738 * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
2740 * gtk/gtktreeview.c (gtk_tree_view_draw): remove
2742 * gtk/gtkviewport.c (gtk_viewport_draw): remove
2744 * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
2746 * gtk/gtkvscale.c (gtk_vscale_draw): remove
2748 * gtk/gtkwindow.c (gtk_window_draw): remove
2750 2000-20-01 Anders Carlsson <andersca@gnu.org>
2752 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
2753 a GtkToggleButton is both insensitive and active, it was being
2754 drawn by the GtkButton draw handler which doesn't check the
2755 state. Now it's calling gtk_toggle_button_paint instead.
2757 2000-12-01 Havoc Pennington <hp@redhat.com>
2759 * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
2760 dangling pointers to the appearance attributes from the
2763 * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
2764 width/height to mean "full width/height of drawable"
2766 * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
2767 click to select word/line
2769 * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters
2770 when getting log attrs. Get a slice, so that pixmaps and stuff
2771 are properly handled.
2773 * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
2774 paste into the selection (replaces selection now, previously
2775 crashed or added to selection). Reveals longstanding btree bug -
2776 select multiple lines, middle-click on the selection, boom. This
2777 isn't related to my changes though.
2779 * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
2780 PangoLogAttrs changes
2781 (gtk_entry_move_backward_word): ditto
2783 * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
2784 functions return bool whether the iter moved onto a
2785 dereferenceable position.
2787 * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
2788 functions for motion in terms of display lines.
2790 * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
2791 get the buffer a mark is inside
2793 2000-12-01 Alexander Larsson <alexl@redhat.com>
2795 * gdk/linux-fb/Makefile.am:
2796 * modules/linux-fb/Makefile.am:
2797 Freetype 2 final uses freetype-config
2799 * gdk/linux-fb/gdkpango-fb.c:
2800 Upgrade to use Freetype 2 final.
2801 More flexible support for font aliases, this also fixes a bug with
2802 GtkFontSelector, as the aliases must be visible in the font/family list,
2803 or GtkFontSelector reads uninitialized memory.
2805 2000-11-30 Hidetoshi Tajima <tajima@eng.sun.com>
2807 * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
2808 XGetIMValues to properly terminate variable argument list, and do
2809 NULL return check for ic_values and xim_styles.
2811 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
2812 Restore preedit state after XmbResetIC().
2814 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
2815 XvaCreateNestedList() should take XvaNestedList, but not
2818 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
2819 preedit_draw_callback, preedit_caret_callback): Match
2820 "preedit-changed" signal name to "preedit_changed" to be
2821 consistent to the spec.
2823 * gtk/gtkimcontextsimple.c (check_table):
2824 Match "preedit-changed" to "preedit_changed" to be consistent
2827 Thu Nov 30 23:03:04 2000 Owen Taylor <otaylor@redhat.com>
2829 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
2830 gc->clip_region == NULL>
2832 2000-11-30 Tor Lillqvist <tml@iki.fi>
2834 Changes by Hans Breuer:
2836 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
2837 Dont't use negative width and height as max_hints. This fixes
2838 Owen's recent testgtk changes for win32.
2840 * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
2841 gdk_win32_hdc_release): These are exported and may be called with
2842 other drawable types than our GdkDrawableImplWin32 (?).
2844 * gdk/gdkwindow.c: Backing store appears to work on Windows now,
2845 so always #define USE_BACKING_STORE.
2847 * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
2848 of printf for debugging output.
2850 * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
2852 * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
2854 * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
2857 * gtk/gtktexttypes.h: Ditto.
2859 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
2860 (GDK_VoidSymbol) also if in case of arg check failure.
2862 * gtk/gtkimcontextsimple.c
2863 (gtk_im_context_simple_get_preedit_string): Don't assign cursor
2864 position to the pointer, but to the variable it points to.
2866 * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
2868 * gtk/gtk.def: Updates.
2870 2000-11-29 Elliot Lee <sopwith@redhat.com>
2872 * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
2873 GTK_TYPE_TREE_MODEL.
2875 2000-11-29 Alexander Larsson <alexl@redhat.com>
2877 * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
2878 Set the size of the font from the description.
2879 (gdk_text_width): Gross hack that calculates the width
2880 of text by text_length * size/2. This is necessary because
2881 GtkLabel does some ugly gtk_string_width call to calculate
2883 (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
2885 Wed Nov 29 13:39:19 GMT 2000 Tony Gale <gale@gtk.org>
2887 * docs/tutorial/gtk-tut.sgml: DND updates
2889 2000-11-29 Alexander Larsson <alexl@redhat.com>
2891 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2892 If you pass width or height == 0 to gdk_window_clear_area they
2893 should be calculated from the window size.
2895 2000-11-29 Alexander Larsson <alexl@redhat.com>
2897 * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
2898 a grab, but no grab-cursor, use the cursor from the grabbed
2899 window. (gdk_fb_window_send_crossing_events): Send normal
2900 enter/leave notifications if grab and owner_events == TRUE.
2902 2000-11-29 Alexander Larsson <alexl@redhat.com>
2904 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2905 Do implicit button grabs, even if the window doesn't
2907 (gdk_fb_window_send_crossing_events): If there is a
2908 grab, only the grabbed window gets normal enter/leave
2909 notifications. On ungrab go from grabbed window to current.
2910 Don't send any notification to b when propagating from c -> b.
2911 If setting a grab on window, don't set prev_window.
2912 (handle_mouse_input): Send enter/leave events to the window the
2913 mouse is over, not the grabbed one.
2915 2000-11-28 Elliot Lee <sopwith@redhat.com>
2917 * gdk/gdkregion-generic.c: Zap warning.
2918 * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
2919 * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
2921 2000-11-28 Alexander Larsson <alla@lysator.liu.se>
2923 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2924 The cursor should be hidden if it is part of either the
2925 source or destination region. Not only if it is in both.
2926 (gdk_window_set_transient_for): Silence warnings.
2928 2000-11-28 Alexander Larsson <alexl@redhat.com>
2930 * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
2931 The default mode in X is Pie Arcs, therefore that is
2934 2000-11-28 Alexander Larsson <alexl@redhat.com>
2936 * gdk/linux-fb/gdkinput-ps2.c:
2937 Implement correct EnterNotify/LeaveNotify:
2938 (gdk_fb_window_send_crossing_events): New function that sends
2939 all GdkCrossingEvents from the last mouse-window to the specified
2941 (gdk_fb_window_visibility_crossing): Removed function.
2942 (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
2943 (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
2944 instead of gdk_window_get_pointer() for better readability.
2946 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
2947 gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
2949 * gdk/linux-fb/gdkprivate-fb.h:
2950 removed gdk_fb_window_visibility_crossing, added
2951 gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
2953 gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
2954 New function that finds the least common ancestor of two windows.
2955 (gdk_window_show, gdk_window_hide):
2956 Use gdk_fb_window_send_crossing_events.
2957 (gdk_fb_window_move_resize): Send configure events to toplevel
2958 windows. Use gdk_fb_window_send_crossing_events.
2960 2000-11-27 Havoc Pennington <hp@redhat.com>
2962 * gtk/gtkprivate.h (enum): Remove a trailing comma
2964 2000-11-27 Federico Mena Quintero <federico@helixcode.com>
2966 * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
2967 the "changed" callback of the adjustment. We need to redraw the
2968 spin button's arrows when the adjustment's range changes.
2969 (adjustment_changed_cb): Draw the arrows.
2970 (gtk_spin_button_value_changed): Draw the arrows.
2972 2000-11-23 Alexander Larsson <alexl@redhat.com>
2974 * gdk/linux-fb/gdkselection-fb.c:
2975 Initial selection implementation.
2977 * gtk/gtkselection.c:
2978 if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
2979 requestor in gtk_selection_request.
2981 * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
2982 Added gdk_selection_property atom.
2984 * gdk/linux-fb/gdkprivate-fb.h:
2985 Export _gdk_selection_window_destroyed.
2986 Removed mask_off_x/y from GdkCursorPrivateFB.
2987 Removed hbearing, added top, left to PangoFBGlyphInfo.
2989 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2990 Call _gdk_selection_window_destroyed
2991 (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
2992 the root window has been created.
2993 (static_dx_hack, static_dy_hack, compare_draw_rects,
2994 gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
2995 in region. They are already sorted. Instead just traverse them in
2996 reverse if draw_direction < 0.
2998 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2999 Double-clicks must be sent after the normal button_press.
3000 (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3002 * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
3003 Pass _gdk_fb_screen_gc instead of NULL.
3005 * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3006 Initialize gdk_selection_property.
3007 (gdk_event_make): Remove unused code.
3009 * gdk/linux-fb/gdkcursor-fb.c:
3010 Make the pixmap for the cursor the same size as the mask. Also remove
3011 the mask_off_x/y fields in GdkCursorPrivateFB and combine
3012 _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
3013 Now the whole cursor is visible.
3015 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3016 Fix bug where xdest+height instead of ydest+height was used
3017 to calculate if the source and dest overlapped. This fixes the
3018 redraw bug when the main window in testgtk was scrolled when
3019 partially covered by a tall window.
3020 Copy rectangles in region in order depending on draw_direction.
3021 Also moved the draw_direction flipping of start_y and end_y into
3022 the gc functions, as this might not be what all of them want.
3023 (gdk_fb_draw_lines): Support dashed lines.
3024 (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3025 so that the text is positioned correctly (was 1 pixel high).
3027 gdk/linux-fb/gdkgc-fb.c:
3028 Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3029 all lines were drawn a pixel to short. Also checked the default of
3030 the rest of the values, and they're the same as X now.
3032 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3033 Clean up pixel positioning of the glyphs. Just use bgy->top and
3034 bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3035 to all divisions to get correct rounding behaviour.
3037 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3038 gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3039 Moved start_y/end_y flip into draw_drawable implementations.
3040 Flip also x rendering when draw_direction < 0.
3041 Remove unneccesary multiply with draw_direction.
3043 Wed Nov 22 14:11:19 GMT 2000 Tony Gale <gale@gtk.org>
3045 * docs/tutorial/gtk-tut.sgml:
3046 - get rid of gtk_toggle_button_toggled FUD
3047 - start DND section - needs work - based on:
3048 http://wolfpack.twu.net/docs/gtkdnd/
3050 2000-11-22 Alexander Larsson <alexl@redhat.com>
3052 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3053 Correct calculation of font metrics. Now GtkEntrys have sane
3056 2000-11-22 Alexander Larsson <alexl@redhat.com>
3059 Add new type GdkSpan
3061 * docs/reference/gdk/gdk-sections.txt,
3062 docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3064 Implement and document gdk_region_spans_intersect_foreach.
3066 * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3067 Add new file gdkrender-fb.c which contains all core
3069 Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3070 gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3071 (optimized rectangle fillers).
3073 * gdk/linux-fb/gdkdrawable-fb2.c:
3074 Move all rendering code to gdkrender-fb.c.
3075 Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3076 Use the new span intersection functions in gdk_fb_fill_spans.
3077 gdk_fb_draw_rectangle() clips filled rectangles and calls
3078 gc->fill_rectangle with the result.
3079 gdk_fb_fill_spans() gets extra argument "sorted".
3081 * gdk/linux-fb/gdkevents-fb.c:
3082 Remove unused includes and defines.
3083 New function gdk_fb_get_time() to get correct time for events.
3085 * gdk/linux-fb/gdkinput-ps2.c:
3086 Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3087 Make sure to set the time of all events.
3089 * gdk/linux-fb/gdkmain-fb.c:
3090 Use gdk_fb_get_time ().
3092 * gdk/linux-fb/gdkprivate-fb.h:
3093 New virtual GC calls: fill_span & fill_rectangle.
3094 Export gdk_fb_get_time().
3095 gdk_fb_fill_spans() gets extra argument "sorted".
3097 * gdk/linux-fb/mi*.c:
3098 Use GdkSpan instead of GdkRectangle.
3099 Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3100 from XFree 4 source)
3102 2000-11-22 <jrb@redhat.com>
3104 * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3105 reversing the order in an if statement will do. Doing so managed
3106 to make the treemodelsort half work. Other half will follow after
3107 I get the insert function fully fixed.
3109 2000-11-21 Elliot Lee <sopwith@redhat.com>
3110 * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3111 more than 2 bits. Besides, I need to implement an evil hack. :)
3113 Tue Nov 21 14:17:51 GMT 2000 Tony Gale <gale@gtk.org>
3115 * docs/tutorial/gtk-tut.sgml: minor corrections
3117 2000-11-20 Jonathan Blandford <jrb@redhat.com>
3118 * gtk/gtktreemodelsort.h: Add convertion functions to let you
3119 convert to and from relative path's and iters.
3121 * gtk/treestoretest.c: move to having a sorted/unsorted view. Start
3122 testing sorting functions a bit better. Currently broken -- will
3125 2000-11-20 Havoc Pennington <hp@redhat.com>
3127 * gtk/gtkwidget.c: Documented a bunch of functions in here
3128 (gtk_widget_realize): Warn if you try to realize
3129 a widget with no parent that isn't a toplevel
3130 (gtk_widget_intersect): return a gboolean
3132 2000-11-20 Havoc Pennington <hp@redhat.com>
3134 * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3135 gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3136 scrolling to be implemented in GDK to finish. Also, right now
3137 we just size_allocate all children on every layout change,
3138 which is pretty lame. Test commented out of testtext.c,
3139 until it works better.
3141 2000-11-20 Alexander Larsson <alla@lysator.liu.se>
3143 * gdk/linux-fb/gdkdrawable-fb2.c:
3144 Removed unused arguments from gdk_fb_drawable_get_pixel().
3146 * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3147 Renamed fidur specific mouse packet data in MouseDevice to
3148 generic. Used it in ps2 mouse handling code to avoid blocking
3151 Sat Nov 18 18:00:17 2000 Jonathan Blandford <jrb@redhat.com>
3153 * demos/gtk-demo/main.c: Changed to have the list become
3154 non-italic when the demo window is destroyed through an external
3155 event (like a close button). Doing so found three bugs in the
3158 * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
3160 * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
3161 we actually set the cell.
3163 * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
3165 * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
3166 free a leaked path. Thanks memprof.
3168 Sat Nov 18 11:58:17 2000 Owen Taylor <otaylor@redhat.com>
3170 * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix
3171 off-by-one error when destroying allocated segments
3172 on failure. (Elliot)
3174 Sat Nov 18 11:45:09 2000 Owen Taylor <otaylor@redhat.com>
3176 * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
3177 memleaks found by Evan Martin.
3179 Fri Nov 17 20:14:20 2000 Owen Taylor <otaylor@redhat.com>
3183 * NEWS: Updates for 1.3.2
3185 2000-11-17 Tor Lillqvist <tml@iki.fi>
3187 * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
3188 but in general for window system specific events.
3191 * gtk/makefile.mingw.in
3192 * gtk/makefile.msc.in: Update.
3194 * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
3196 Thu Nov 16 16:11:39 2000 Owen Taylor <otaylor@redhat.com>
3198 * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
3199 distribute gtk.immodules.
3201 * gtk/Makefile.am (install-data-local): Don't install the
3202 gtk.immodules file created for the uninstalled modules;
3203 instead run gtk-query-immodules after install
3205 Wed Nov 15 21:51:31 2000 Owen Taylor <otaylor@redhat.com>
3207 * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
3208 -rpath to the right install location.
3210 * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
3213 * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
3216 2000-11-15 Havoc Pennington <hp@pobox.com>
3218 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
3219 patch from Mikael Hermansson to temporarily stop blinking while
3220 the user is using the keyboard to type or navigate.
3222 Also, when blinking, stay on for longer than we stay off. Also,
3223 return from start_cursor_blink if !cursor_visible, to save
3224 checking that flag all over the place before we call
3227 Thu Nov 16 01:25:51 2000 Robert Brady <robert@suse.co.uk>
3229 * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
3230 only contain a "fontset" line, which is now ignored.
3232 * gtk/gtkentry.c (gtk_entry_button_release): Make
3233 double-click-to-select-word work.
3235 Wed Nov 15 20:16:54 2000 Owen Taylor <otaylor@redhat.com>
3237 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end):
3238 Don't move back one char when we are actually at the end of the
3241 2000-11-15 Robert Brady <robert@suse.co.uk>
3243 * modules/input/iminuktitut.c (inuktitut_compose_seqs):
3246 * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
3247 bind_textdomain_codeset.
3249 (gtk_init_check): Make the warning about translating default:LTR
3252 Wed Nov 15 18:39:40 2000 Owen Taylor <otaylor@redhat.com>
3254 * **/Makefile.am : remove unecessary rules for win32-specific
3255 config-substituted targets. If you want these rules, use
3256 --enable-maintainer-mode (called automatically by autogen.sh).
3257 Stops a lot of unneccessary make-time warnings.
3259 * gtk/gtktext{layout,display}.c: Factor in total width as
3260 well as screen when figuring alignment for word-wrap as well as
3261 no wrap; this is necessary to handle lines that cannot be wrapped
3264 2000-11-15 Havoc Pennington <hp@redhat.com>
3266 * gtk/testtext.c: Implement essential color cycling feature
3268 2000-11-15 Havoc Pennington <hp@redhat.com>
3270 * gtk/gtktextview.c (changed_handler): Invalidate the side windows
3271 when we invalidate the main window.
3273 * gtk/testtext.c (create_view): Get rid of text_changed_callback,
3274 GtkTextView will now invalidate the side windows for us when text
3277 Wed Nov 15 16:02:20 2000 Owen Taylor <otaylor@redhat.com>
3279 * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
3280 unconditionally, since we may need to update the horizontal
3281 scrollbars even if the height didn't change.
3283 * gtk/gtktextlayout.c (add_preedit_attrs): Always get
3284 the extra attrs, since some of them affect size.
3286 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
3289 2000-11-15 Havoc Pennington <hp@redhat.com>
3291 * gtk/gtktextlayout.c (set_para_values): If indent is negative,
3292 don't move the first line out into the margin, instead move the
3293 whole paragraph in order to make space for the first line within
3296 2000-11-15 Havoc Pennington <hp@redhat.com>
3298 * gtk/gtktextview.c (changed_handler): offset redraw rect by
3299 xoffset in addition to yoffset, so horizontal scrolling doesn't
3302 2000-11-15 Havoc Pennington <hp@redhat.com>
3304 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
3306 (render_layout_line): fix reversed test that caused weird
3307 underlines to get drawn
3309 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
3311 * gdk/linux-fb/gdkprivate-fb.h:
3314 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
3316 * gdk/linux-fb/gdkprivate-fb.h:
3317 Added virtual functions set_pixel, get_color,
3318 fill_span and draw_drawable to the GC.
3319 Added global _gdk_fb_screen_gc to use instead of
3320 NULL when drawing to the screen.
3321 Added _gdk_fb_gc_calc_state() prototype.
3323 * gdk/linux-fb/gdkgc-fb.c:
3324 Call _gdk_fb_gc_calc_state() on any gc state change.
3326 * gdk/linux-fb/gdkglobals-fb.c:
3327 Add _gdk_fb_screen_gc
3329 * gdk/linux-fb/gdkdrawable-fb2.c:
3330 _gdk_fb_gc_calc_state() calculates best functions
3331 for the GC state and depth.
3332 Moved bpp specialized code to separate functions.
3333 Added optimized 24 bpp AA draw_drawable.
3335 * gdk/linux-fb/gdkevents-fb.c:
3336 Silence gcc warning.
3338 * gdk/linux-fb/gdkimage-fb.c:
3339 Use _gdk_fb_screen_gc
3341 * gdk/linux-fb/gdkwindow-fb.c:
3342 Init and use _gdk_fb_screen_gc
3344 * gdk/linux-fb/mitypes.h:
3345 Remove unused types.
3347 2000-11-14 Havoc Pennington <hp@pobox.com>
3349 * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
3352 2000-11-14 Havoc Pennington <hp@pobox.com>
3354 * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
3356 * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
3357 unknown char, no real reason we were using a variable.
3358 Remove gtk_text_unknown_char variable. Fix all the text widget
3361 * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC,
3362 since the Unicode spec seems to prefer that character for our
3365 Wed Nov 15 02:18:01 2000 Robert Brady <robert@suse.co.uk>
3367 * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return
3368 value of g_getenv() isn't freeable, so g_strdup it.
3370 * modules/input/inuktitut.c: Inuktitut input method.
3372 * modules/input/Makefile.am: Build this.
3374 2000-11-14 Elliot Lee <sopwith@redhat.com>
3376 * gtk/Makefile.am: Install gtk.immodules, needed for operation
3379 Tue Nov 14 20:13:06 2000 Owen Taylor <otaylor@redhat.com>
3381 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
3382 reversed > that was causing Home to go to end of previous line.
3384 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
3385 modified-keypresses (leave for bindings.)
3387 * modules/input/Makefile.am: Remove useless -export-dynamic
3388 from module LDFLAGS.
3390 2000-11-14 Havoc Pennington <hp@redhat.com>
3392 * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
3395 * gtk/gtktextdisplay.c (render_layout_line): Take rise into
3396 account. Also, render rise, underline, background, etc. for
3397 pixbufs as well as text. Also, draw underlines one pixel higher.
3399 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
3400 PangoAttribute for the rise, so it gets drawn properly. Also,
3401 add the GtkTextAppearance attribute for pixbuf/widget segments
3402 as well; we should go ahead and have rise, underline, background,
3403 stipple work for those
3405 * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
3408 2000-11-15 Tor Lillqvist <tml@iki.fi>
3410 * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
3412 * gtk/gtk.def: Update.
3414 * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
3416 (gtk_rc_get_im_module_file): Use run-time installation directory
3419 * gdk/win32/rc/gdk.rc: Remove.
3420 * gdk/win32/rc/gdk.rc.in: New file.
3421 * gdk/win32/rc/Makefile.am: New file
3422 * gdk/win32/Makefile.am: Corresponding changes.
3424 * gtk/gtk.rc: Remove.
3425 * gtk/gtk-win32.rc.in: New file.
3426 * gtk/Makefile.am: Corresponding changes.
3428 * configure.in: Corresponding changes.
3430 * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
3431 has a built gtkcompat.h. Developers using CVS code on Win32 can
3432 hand-edit it from gtkcompat.h.in.
3434 * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
3435 gtkcompat.h from gtkcompat.h.win32.
3437 2000-11-14 Havoc Pennington <hp@redhat.com>
3439 * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
3440 to default to GDK_ACTION_MOVE if the drag is within a single
3441 widget. Defaults to GDK_ACTION_COPY between widgets.
3443 Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
3445 * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
3447 * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
3449 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
3452 * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
3454 * configure.in (GTK_VERSION): Up to 1.3.2
3456 * modules/input/Makefile.am (im_xim_la_SOURCES): Add
3459 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
3460 missing doc comment.
3462 2000-11-14 Alexander Larsson <alexl@redhat.com>
3464 * modules/linux-fb/basic.c:
3465 Use the glib iconv wrappers.
3467 2000-11-13 Havoc Pennington <hp@pobox.com>
3469 * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
3472 * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
3473 scroll the GdkWindows before realization.
3475 2000-11-13 Havoc Pennington <hp@redhat.com>
3477 * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug
3478 where GC didn't always get updated properly
3480 * demos/gtk-demo/textview.c (create_tags): Use subattributes
3481 of fonts instead of setting the entire font
3483 * gtk/testtext.c (fill_example_buffer): Use "size" instead of
3486 * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
3488 * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into
3489 a bunch of individually-settable font attributes. You can still
3490 use the "font" and "font_desc" args, they just set all the font
3493 2000-11-13 Elliot Lee <sopwith@redhat.com>
3495 * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
3497 Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
3499 * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
3500 * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
3502 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
3505 2000-11-13 Havoc Pennington <hp@redhat.com>
3507 * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of
3510 * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
3513 * gtk/testtext.c: Test pixels above/below/inside paragraphs
3516 * gtk/gtktextview.c: Implement object args and setters/getters for
3517 all the aspects of the GtkTextAttributes that are not set from
3518 GtkWidget attributes. This is spacing, justification, margins,
3521 (gtk_text_view_set_arg)
3522 (gtk_text_view_get_arg): implement get/set for editable, wrap mode
3524 (gtk_text_view_class_init): Add args for justify, left_margin,
3525 right_margin, indent, and tabs
3528 * gtk/gtktextlayout.c (set_para_values): fix to display indent
3531 * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute,
3532 replace with indent attribute
3534 * gtk/gtktextlayout.c (set_para_values): multiply indent by
3537 * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
3538 rearranging code to do that
3539 (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
3540 i.e. don't subtract the top_margin first, just to keep
3541 all margin-futzing in one place.
3543 * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
3545 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
3546 special case of last line, Pango now handles this itself.
3547 (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the
3549 (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
3550 (find_display_line_above): wasn't moving the byte index as it
3551 iterated over lines, so always returned byte 0. Also, port to use
3553 (find_display_line_below): same problem as
3554 find_display_line_above. Also, port to use PangoLayoutIter.
3556 2000-11-13 Alexander Larsson <alexl@redhat.com>
3558 * gdk/linux-fb/*.[ch]:
3559 Massive reindent to gtk+ standard. My hands hurt.
3561 * gdk/linux-fb/gdkcolor-fb.c:
3562 Move GdkColorPrivateFB from inherited to windowing_data
3564 * gdk/linux-fb/gdkcursor-fb.c:
3565 _gdk_cursor_new_from_pixmap made static
3567 * gdk/linux-fb/gdkdnd-fb.c:
3568 GdkDragContextPrivate moved to windowing_data
3570 * gdk/linux-fb/gdkdrawable-fb2.c:
3571 Removed endian.h, use glib endianness macros instead
3572 Some cleanups in the usage of GDK_DRAWABLE_FBDATA
3573 and GDK_DRAWABLE_IMPL_FBDATA
3575 * gdk/linux-fb/gdkfont-fb.c:
3576 Add empty gdk_font_load(). Needed for linking of Gtk+.
3578 * gdk/linux-fb/gdkimage-fb.c:
3579 Removed endian.h, use glib endianness macros instead
3580 Moved GdkImagePrivateFB to windowing_data
3581 gdk_image_new_bitmap didn't always allocate enough
3584 * gdk/linux-fb/gdkinput-ps2.c:
3585 Added semi-working support for MS serial mice.
3587 * gdk/linux-fb/gdkprivate-fb.h:
3588 s/GdkWindowPrivate/GdkWindowObject/
3589 Removed GdkWindowPrivate typedef
3590 s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
3591 Removed GDK_DRAWABLE_P
3592 Move GdkColorPrivateFB from inherited to windowing_data
3593 Moved GdkImagePrivateFB to windowing_data
3595 * gdk/linux-fb/gdkvisual-fb.c:
3596 Removed some unused debug code.
3598 * gdk/linux-fb/gdkwindow-fb.c:
3599 Use stock cursors instead of including X headers.
3600 s/GdkWindowPrivate/GdkWindowObject/
3602 * gdk/linux-fb/mitypes.h:
3603 Removed unused types.
3605 * modules/linux-fb/basic.c:
3606 Use the pango fribidi wrappers.
3608 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3610 * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
3611 gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
3612 gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
3613 gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
3614 GEqualFunc where applicable.
3616 * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
3617 pango_font_description_equal as changed in pango.
3619 * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
3621 * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
3623 * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
3625 * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
3627 * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
3629 * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
3631 * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
3632 gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
3634 * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
3635 gtk_rc_styles_compare -> gtk_rc_styles_equal.
3637 2000-11-12 Havoc Pennington <hp@pobox.com>
3639 * demos/gtk-demo/Makefile.am (democodedir): change demo install
3640 dir to datadir/gtk+-2.0/demo
3642 * demos/gtk-demo/textview.c: Text widget demo; reveals all
3643 sorts of text widget and Pango font bugs. Urgh.
3645 * demos/gtk-demo/Makefile.am (demos): Add textview.c
3647 * demos/gtk-demo/main.c (create_tree): Add instructions at top of
3648 tree that you should double click to see the demo. Fix
3649 types of variables to reflect changed return values from
3650 GtkTreeStore and GtkTreeViewColumn constructors.
3652 * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
3653 newly-created buffer to prepare for GObject semantics
3655 * gtk/testtext.c: don't leak the buffer with GObject semantics
3657 * gtk/testtextbuffer.c: ditto
3659 2000-11-12 Havoc Pennington <hp@pobox.com>
3661 Rename this testgtk to gtk-demo to avoid confusion, and
3662 install it so people can use it as a supplement to
3665 * demos/gtk-demo: Moved from demos/testgtk
3667 * demos/testgtk: Removed
3669 * configure.in: make Makefile in gtk-demo
3671 * demos/gtk-demo/Makefile.am: Install sample source to
3672 datadir/gtk-demo (maybe there's a better place?), and
3673 rename the binary to gtk-demo
3675 * demos/gtk-demo/main.c (load_file): Load installed sample
3676 source if source isn't found in pwd.
3678 2000-11-09 Havoc Pennington <hp@pobox.com>
3680 * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char"
3681 argument to set the char displayed when visibility == FALSE
3682 (gtk_entry_create_layout): If !entry->visible, replace
3683 all chars with the "invisible char"
3685 * gtk/testgtk.c: Test the invisible_char deal
3687 Mon Nov 13 02:16:33 2000 Robert Brady <robert@suse.co.uk>
3689 * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
3690 can't get a native font in the right encoding.
3692 Mon Nov 13 00:09:29 2000 Robert Brady <robert@suse.co.uk>
3694 * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
3697 Sun Nov 12 19:11:42 2000 Owen Taylor <otaylor@redhat.com>
3699 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3700 Fix warning when moving between paragraphs.
3702 * gtk/gtkentry.[ch]: Change move => move_cursor,
3703 delete => delete_from_cursor, insert => insert_at_cursor
3705 Sun Nov 12 22:52:51 2000 Robert Brady <robert@suse.co.uk>
3707 * modules/input/imviqr.c: A vietnamese VIQR-based input method.
3709 * modules/input/imthai-broken.c: A Thai input method for use if
3710 Thai keys are really generating Latin1 keysyms.
3712 * modules/input/Makefile.am: Build these.
3714 Sun Nov 12 22:15:35 2000 Robert Brady <robert@suse.co.uk>
3716 * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c:
3717 g_filename_{to,from}_utf8 now takes an extra parameter.
3719 * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
3720 strftime into UTF-8.
3722 (column_from_x, gtk_calendar_paint_day_names): Support RTL
3725 (gtk_calendar_paint_day_names): Draw day names in the right
3728 Sun Nov 12 14:10:09 2000 Owen Taylor <otaylor@redhat.com>
3730 * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
3731 problem with using result of g_get_charset() backwards -
3732 pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
3734 * gtk/gtkwindow.c (gtk_window_compute_hints): Support
3735 negative min_width/height and max_width/height to
3736 mean "requisition"; this allows setting a window
3737 to be user-resizable in only one direction easily.
3739 * gtk/testgtk.c (create_main_window): Remove hard-coded
3740 usize - set a default size in the vertical direction.
3742 Sun Nov 12 13:33:01 2000 Owen Taylor <otaylor@redhat.com>
3744 * gtk/gtkrange.c: Add some missing casts. Support
3745 2 and 3 button clicks on the arrows to mean
3746 "move by pages" and "jump to end". (Like gtkspinbutton)
3748 2000-11-12 Hans Breuer <Hans@Breuer.Org>
3750 * gdk/win32/makefile.msc : reflect build module changes
3752 * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
3753 from GdkPixmap*, cast implementation member instead.
3755 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
3756 passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src
3757 maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
3758 more Gdi functions return value checking.
3759 (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
3760 GdkImagePrivateWin32 *.
3762 * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
3763 menus useable again. Add #pragma message to keep reminded on this issue.
3764 (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
3765 windows. This allows to enable backing store on Win32!
3767 * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
3768 in drawable is of impl type. Correct specific type checks appropriate.
3770 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check
3771 GDK_WINDOW_DESTROYED before allocating new resources.
3773 * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
3775 * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
3776 (gdk_window_foreign_new) initialize parent handle.
3777 (gdk_window_destroy_notify) add GDK_IS_WINDOW check
3779 * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
3780 Let the GDI invalidate the window on MoveWindow call to fix scrolling
3781 problems (e.g. main buttons in testgtk).
3783 Sat Nov 11 23:07:30 2000 Owen Taylor <otaylor@redhat.com>
3785 * gtk/gtkentry.c (gtk_entry_key_press): Call
3786 gtk_widget_activate for GDK_Return.
3788 * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
3789 of preedit cursor position.
3791 Sun Nov 5 04:24:53 2000 Owen Taylor <otaylor@redhat.com>
3793 * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
3796 Tue Sep 19 10:54:22 2000 Owen Taylor <otaylor@redhat.com>
3798 * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
3799 out support for multiple locales; that simple doesn't
3800 work reliably with current Xlib
3802 * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
3803 gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
3804 Add support for positioning the cursor within the preedit string.
3806 Mon Sep 18 23:56:32 2000 Owen Taylor <otaylor@redhat.com>
3808 * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
3809 at XIM input method module.
3811 * gtk/gtktextview.c: Check for bindings after passing
3812 events to im context filter.
3814 Mon Sep 18 11:50:51 2000 Owen Taylor <otaylor@redhat.com>
3816 * gtk/gtktextlayout.c (add_preedit_attrs): Handle
3817 empty attribute lists properly.
3819 Sun Sep 17 10:08:16 2000 Owen Taylor <otaylor@redhat.com>
3821 * gtk/queryimmodules.c (main): Return non-zero exit
3822 status if errors were encountered querying any
3825 * modules/input/Makefile.am (moduledir): remove
3826 leftover bin program target.
3828 * docs/make-todo: Fix typo in error message.
3830 Sat Sep 16 14:04:30 2000 Owen Taylor <otaylor@redhat.com>
3832 * configure.in: Add modules/input/Makefile
3834 Sat Sep 16 14:01:52 2000 Owen Taylor <otaylor@redhat.com>
3836 * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
3837 don't include gtkthemes.h.
3839 * gtk/testgtk.c gtk/testtext.c: Set environment variables
3842 * gtk/Makefile.am: Add new .c and .h files, build
3843 gtk-query-immodules and use it to create a gtk.immodules
3844 file for use of test programs.
3846 * gtk/gtkpreview.c: remove extra blank line.
3848 Sat Sep 16 13:21:04 2000 Owen Taylor <otaylor@redhat.com>
3850 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
3851 Add the ability to add extra tables beyond the default
3852 one, and also the ability to have compose sequences
3853 that are prefixes of other compose sequences.
3855 * gtk/gtkimcontextsimple.c: Export a preedit string which
3856 consists of possible candidates for keystrokes that have
3857 been entered but not yet committed.
3859 * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
3860 gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
3862 * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
3863 Add a function to add input-method switching menu items
3866 * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
3867 when switching input methods.
3869 * gtk/gtkimcontextsimple.[ch]: Change the format of
3870 the compose table to allow compose tables of different
3873 Sat Sep 16 13:05:48 2000 Owen Taylor <otaylor@redhat.com>
3875 * gtk/gtkimmodule.[ch]: Support routines for loading
3876 GtkIMContext implementations dynamically at runtime.
3878 * modules/input/imcyrillic-translit.c: A sample input
3879 method (based on GtkIMContextSimple with an extra table),
3880 which demonstrates preedit strings and the module
3881 system for input modules
3883 * gtk/queryimmodules.c: Program to query the available
3884 input modules and write the results into a file.
3886 * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
3887 extra config options "im_module_file" (cache file for
3888 input method modules), and "im_module_path" - path
3889 to look for modules when generating cache file.
3893 Sat Sep 16 13:09:06 2000 Owen Taylor <otaylor@redhat.com>
3895 * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
3896 generic code from gtkthemes into a new abstraction
3897 GtkModule which has the logic for implementing
3898 a loadable module which implements a number of
3901 Sat Sep 16 13:07:13 2000 Owen Taylor <otaylor@redhat.com>
3903 * gtk/gtkeditable.[ch]: Convert GtkEditable from
3904 a class into an interface
3906 * gtk/gtkoldeditable.[ch]: Move the old editable
3907 implementation into here, so legacy widgets can
3908 still rely on the implemenation. GtkOldEditable
3909 exports GtkEditable. Make selection handling
3910 code use new text conversion functions (and
3911 handle UTF-8 as a side-effect). Use GtkClipboard
3914 * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
3915 Adopt to match above changes.
3917 * gtk/gtkentry.[ch]: Implement GtkEditable directly,
3918 avoid GtkOldEditable implementation. Restructure
3919 to reduce number of places that modify state directly.
3920 Move to GtkBindingSet. Display the preedit string.
3921 Queue recomputation of PangoLayout and scroll position
3922 to improve effiency of doing complex changes naively.
3923 Add a menu with cut/copy/paste and input method selection.
3925 Thu Sep 14 22:11:05 2000 Owen Taylor <otaylor@redhat.com>
3927 * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
3928 to set preedit string and attributes; display preedit string by
3929 inserting string and attributes at cursor when creating the
3932 * gtk/gtktextlayout.c: Move all conversions between byte
3933 positions in PangoLayout and GtkTextIter into new functions
3934 line_display_iter_to_index/index_to_iter that properly
3935 handle the preedit string.
3937 * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
3938 it to return const char * (eventually will end up
3939 as GCONST char *, most likely.)
3941 * gtk/gtktextview.[ch]: Handle the preedit string, call
3942 gtk_im_context_reset() as necessary, add a menu to switch
3945 * gtk/gtktextlayout.[ch]: Remove useless
3946 gtk_text_layout_get_log_attrs() function.
3948 2000-11-11 Tor Lillqvist <tml@iki.fi>
3951 * gtk/gtk.def: Update.
3953 * gdk/win32/*.c: Add last argument to g_type_register_static()
3956 * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
3958 * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
3959 generated by older wheel mouse drivers. Get the correct y
3960 coordinate from WM_MOUSEWHEEL messages.
3962 * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
3963 gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
3964 gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
3965 Debugging functions.
3967 * gdk/win32/gdkprivate-win32.h: Declare them.
3969 * gdk/win32/gdkinput-win32.h: Add declaration for
3970 gdk_input_window_destroy().
3972 * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
3974 Fri Nov 10 19:06:41 2000 Jonathan Blandford <jrb@redhat.com>
3976 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
3977 function to help handle keeping things in sync.
3979 Fri Nov 10 12:10:34 2000 Jonathan Blandford <jrb@redhat.com>
3981 * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
3984 * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
3985 (gtk_list_store_class_init): use the new BOXED marshallers.
3987 * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
3988 new_with_values to new_with_types.
3989 (gtk_tree_store_get_column_type): add this.
3990 (gtk_tree_store_class_init): use the new BOXED marshallers.
3992 * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
3993 mirror some POINTER marshallers.
3995 Thu Nov 9 11:23:22 2000 Jonathan Blandford <jrb@redhat.com>
3997 * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
3998 allow more interesting iterators. Also, made the lifecycle of
3999 iterators more explicit.
4001 * gtk/gtktreemodelsort.[ch]: New model for sorting.
4003 * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
4006 2000-11-09 Alexander Larsson <alexl@redhat.com>
4008 * demos/testgtk/menus.c:
4009 Changes to make the new testgtk compile after
4010 gtk_menu_append was removed.
4012 * gdk/linux-fb/gdkdrawable-fb2.c
4013 (gdk_fb_get_depth, gdk_fb_get_visual,
4014 gdk_drawable_impl_fb_class_init): Implement
4015 these drawable functions. Now GtkImages work again.
4017 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
4019 * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4021 * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4022 gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4023 Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4024 GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4026 2000-11-08 Havoc Pennington <hp@pobox.com>
4028 * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4029 visible_set args, don't know where these had gone, I thought they
4032 * gtk/testtext.c: Add a menu item to apply invisibility tag;
4033 now we can test the feature and see that it's totally broken.
4035 2000-11-08 Havoc Pennington <hp@pobox.com>
4037 Make DND copy pixbufs and tags when source and target share a
4040 * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4041 in-process GTK_TEXT_BUFFER_CONTENTS target
4042 (gtk_text_view_drag_data_received): Paste from
4043 GTK_TEXT_BUFFER_CONTENTS if we receive it.
4045 2000-11-08 Alexander Larsson <alexl@redhat.com>
4047 * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4050 * gtk/gtkmenu.c: Add support for scrolling menus.
4051 Remove gtk_menu_append/prepend/insert, these have been moved to
4052 gtkcompat.h as #defines.
4054 * gtk/gtkcompat.h.in:
4055 Add compatibility #defines for gtk_menu_append/prepend/insert
4057 * gtk/gtkmenu.h: Add data needed for scrolling menus.
4058 GtkMenuPositionFunc gets an extra argument push_in.
4059 gtk_menu_append/prepend/insert removed.
4061 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4062 positioning behaviour to fit to scrolling menus.
4064 * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4065 into menuitem->submeny. That is wrong, and broke torn
4066 off submenus of torn off menus, since they were unrealized
4067 when the first menu was unrealized.
4069 * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4070 gtk_menu_shell_select_item() since these need to be overridden in
4073 * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4074 positioning behaviour to fit to scrolling menus.
4075 (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4076 the current item so that it is prelighted when the menu pops up.
4077 This is a workaround to the fact that the menu doesn't get the
4078 initial enter event (due to grabs).
4080 * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4081 s/gtk_menu_append/gtk_menu_shell_append/
4083 * gtk/gtknotebook.c:
4084 s/gtk_menu_insert/gtk_menu_shell_insert/
4086 * gtk/testgtk.c (create_menu, create_menus):
4087 Create the first menu with 50 items so that menu scrolling
4091 Patch from Jonathan Blandford <jrb@redhat.com>
4093 * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4094 system to handle size requests. First, we ask what the size of
4095 the toggle is. Then, when allocating the size, we allocate the
4096 toggle_size first. This way we can have multiple menu-item
4097 classes w/o needing a seperate class for each.
4099 * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4100 * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4102 * gtk/gtkcheckmenuitem.c
4103 (gtk_check_menu_item_toggle_size_request): New function to handle
4104 the toggle size-request.
4106 2000-11-07 Havoc Pennington <hp@redhat.com>
4108 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4109 Half-ass somewhat fix this function, so that scrolling to the
4110 insertion point works. Pango hacking is in the future to really
4113 * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4114 length of data, no longer used.
4116 * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4117 method contents in here, get rid of destroy method
4118 (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4119 that were backward. Remove debug spew.
4120 (cut_or_copy): Make the clipboard work with insert_range to
4121 preserve tags and pixbufs, not just the primary selection.
4123 2000-11-07 Havoc Pennington <hp@redhat.com>
4125 * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename
4126 to gtk_text_mark_get_visible
4128 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4129 bug that was generating an invalid iterator
4131 * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4132 ensure_char_offsets() in front of code placing the iter in an
4135 * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4136 make override_location arg const
4137 (paste): Replace the selection if we paste into the
4140 * gtk/gtkselection.h: Remove "GtkSelectioData"
4141 (struct _GtkSelectionData): move the definition here.
4143 * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4144 Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4146 * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4148 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4149 (gtk_text_buffer_insert_range_interactive): implement
4150 (gtk_text_buffer_get_tags): Remove, replaced by
4151 gtk_text_iter_get_tags()
4153 * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4154 limit parameter, to avoid infinite linear scan.
4155 (gtk_text_iter_backward_search): Add search limit
4156 (gtk_text_iter_forward_find_char): Add search limit
4157 (gtk_text_iter_backward_find_char): Add search limit
4159 2000-11-07 Alexander Larsson <alla@lysator.liu.se>
4161 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4162 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
4163 gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
4164 gdk/linux-fb/gdkwindow-fb.c:
4165 use g_object_new() instead of g_type_create_instance() which
4166 is a private function for fundamental type implementations.
4168 * gdk/linux-fb/gdkinput-ps2.c:
4169 Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
4170 instead just store the current modifier state. Add a (somewhat broken)
4171 keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
4172 Rename exported function gdk_input_ps2_get_mouseinfo to
4173 gdk_input_get_mouseinfo.
4175 * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
4176 gdk/linux-fb/gdkwindow-fb.c:
4177 gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
4180 2000-11-02 Havoc Pennington <hp@redhat.com>
4182 * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
4183 use stock buttons. Should be 100% source compatible, appropriate
4184 filesel fields now point to dialog->vbox and dialog->action_area.
4185 On the bizarre side, dialog->action_area and filesel->action_area
4186 are not the same widget.
4187 (gtk_file_selection_init): Put some padding around the selection
4188 entry, so it isn't touching the GtkDialog separator.
4190 * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog,
4191 use stock buttons, etc. Should also be source compatible.
4192 Set the dialog default title in _init not _new().
4194 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
4195 Use stock buttons; don't put a button box inside the existing
4196 dialog button box. Don't bother with push/pop colormap anymore.
4198 * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more
4199 specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
4200 for message dialog, and necessary for the font selection and color
4201 selection with help and apply buttons.
4203 * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer
4204 to the created button widget. Set GTK_CAN_DEFAULT on the button.
4205 (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
4206 between buttons, put less padding around the action area.
4207 (gtk_dialog_run): Exit on unmap rather than on destroy.
4208 This will also exit the loop if the widget is hidden.
4209 (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
4210 instead of GTK_RESPONSE_NONE; since we're already adding a bunch
4211 of GTK_RESPONSE_* stuff, this seems cleaner, and lets you
4212 special-case delete event.
4214 * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
4217 Sun Nov 5 05:32:39 2000 Tim Janik <timj@gtk.org>
4219 * gtk/testgtk.c (uposition_stop_configure): provide a toggle
4220 button to temporarily disable position recording in the
4221 "saved position" test.
4223 Sat Nov 4 05:37:17 2000 Tim Janik <timj@gtk.org>
4225 * gtk/gtkthemes.c: added compat code that temporarily implements
4226 GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
4227 going to be revamped by owen's upcoming GtkModule patches, but
4228 untill then people want gtk to build, right? ;)
4230 2000-11-04 Havoc Pennington <hp@pobox.com>
4232 * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
4235 * docs/Changes-2.0.txt: Add note about
4236 gtk_container_get_toplevels()
4238 * gtk/gtktextview.h: formatting
4240 * gtk/gtktextview.c: don't start descriptions with "Returns",
4243 Sat Nov 4 10:12:27 2000 Owen Taylor <otaylor@redhat.com>
4245 * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
4246 look for glib-2.0.m4 not glib.m4. (Ali Abdin)
4248 2000-11-03 Havoc Pennington <hp@redhat.com>
4250 * gtk/gtktexttagtable.c: Docs
4251 (gtk_text_tag_table_size): return a signed int
4253 * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
4254 (gtk_text_tag_event): make the event_object a GObject
4256 * gtk/gtktextview.c: Write API docs for all functions.
4258 * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
4259 for gtk_text_view_get_window_type() called on one of the private
4262 * gtk/gtktextview.c: Instead of accessing text_view->buffer
4263 directly, call get_buffer() which demand-creates a default
4264 buffer. So gtk_text_view_new() can be used to create a view with a
4265 default buffer in it, if you just want an empty text box users can
4266 put data in. Useful for GUI builders also.
4268 2000-11-03 Pablo Saratxaga <pablo@mandrakesoft.com>
4270 * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
4271 the charset encodign portion MUST be in lowercase.
4272 * gtk/gtkrc.az: added file for Azeri language
4274 2000-11-03 Havoc Pennington <hp@redhat.com>
4276 Get widgets working on the btree/buffer side. Display of them
4279 * gtk/gtktextview.c: start implementing child widget stuff
4281 * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
4283 * gtk/gtktextlayout.c: handle embedded widgets
4285 * gtk/gtktextdisplay.c: handle embedded widgets
4287 * gtk/gtktextchild.c: Implement all the child anchor goo
4289 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
4292 * gtk/gtktextbtree.c: Add child anchor table to the btree struct
4293 (insert_pixbuf_or_widget_segment): abstract out common portions of
4294 creating a child anchor or a pixbuf segment.
4295 (gtk_text_btree_create_child_anchor): new function
4296 (gtk_text_btree_unregister_child_anchor): new function
4298 * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
4299 allocate_child signal on GtkTextLayout
4301 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
4303 (gtk_text_iter_get_child_anchor): new function
4305 * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
4306 default handler for the changed signal, which calls
4307 gtk_text_buffer_set_modified(), instead of just always emitting
4308 changed then calling set_modified() manually. I guess this is
4309 maybe more flexible. It seems logical.
4311 Fri Nov 3 08:58:38 2000 Tim Janik <timj@gtk.org>
4313 * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
4316 * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
4318 Thu Nov 2 14:10:51 2000 Owen Taylor <otaylor@redhat.com>
4320 * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
4323 2000-11-02 Havoc Pennington <hp@redhat.com>
4325 * gtk/testgtk.c (create_labels): had a test backward
4327 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
4328 fields, so the dest GC ends up with the correct clip origin,
4329 etc. Fixes a bug where colored labels didn't redraw
4332 2000-11-02 Alexander Larsson <alexl@redhat.com>
4334 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4335 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
4336 gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
4337 Add last argument to t_type_register_static call.
4339 * gdk/linux-fb/gdkdrawable-fb2.c:
4340 Add last argument to t_type_register_static call.
4341 export the get_image drawable virtual function.
4343 * gdk/linux-fb/gdkimage-fb.c:
4344 Add last argument to t_type_register_static call.
4345 rename gtk_image_get to _gdk_fb_get_image and
4346 export it for use by gdkdrawable-fb2.
4348 * gdk/linux-fb/gdkprivate-fb.h:
4349 export _gdk_fb_get_image.
4351 * gdk/linux-fb/gdkselection-fb.c:
4352 Add new api call stubs.
4355 Missing ( in linux-fb part.
4357 * modules/linux-fb/Makefile.am:
4358 Must link with gdk_pixbuf or get unresolved symbol.
4360 2000-11-01 Havoc Pennington <hp@pobox.com>
4362 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use
4363 GTK_TYPE_TEXT_ITER and BOXED marshallers
4365 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
4367 * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
4369 * gtk/gtk-boxed.defs: add GtkTextIter
4371 * gtk/gtkmarshal.list: Add marshallers for text widget that
4372 properly use OBJECT and BOXED
4374 2000-11-01 Havoc Pennington <hp@redhat.com>
4376 * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
4378 * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
4379 before returning it.
4381 2000-11-01 Havoc Pennington <hp@redhat.com>
4383 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4384 Clip the rectangle to be rendered to the drawable, since
4385 get_from_drawable() requires a region within the drawable
4387 2000-11-01 Havoc Pennington <hp@redhat.com>
4389 * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
4392 Wed Oct 25 20:10:57 2000 Owen Taylor <otaylor@redhat.com>
4394 * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
4397 2000-11-01 Havoc Pennington <hp@pobox.com>
4399 * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
4401 (gtk_label_finalize): unref the attr list if any.
4403 * gtk/testgtk.c (create_get_image): close test on second click
4404 (make_message_dialog): close dialog if it exists
4406 * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
4408 * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
4411 * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
4412 from Pango markup format
4413 (gtk_label_set_markup_with_accel): ditto but with accelerator
4416 * gtk/gtkimage.c (gtk_image_expose): reformatting.
4418 * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
4419 reflect current state of GDK - use gdk_drawable_get_colormap, etc.
4420 Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
4421 call gdk_window_get_origin().
4423 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4424 implement GDK_PIXBUF_ALPHA_FULL
4426 Wed Nov 1 03:43:42 2000 Tim Janik <timj@gtk.org>
4428 * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
4429 g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
4430 g_signal_handlers_disconnect_matched to block/unblock and disconnect
4431 multiple handlers respectively, instead of only treating the
4432 first handler found (bug reported by owen).
4434 Mon Oct 30 19:23:50 2000 Jonathan Blandford <jrb@redhat.com>
4436 * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
4438 * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
4440 * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
4441 gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
4442 gtk/gtktreeviewcolumn.h: Fixed inline docs.
4444 * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
4445 widget. Needs writing someday.
4447 * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
4450 2000-10-30 Havoc Pennington <hp@redhat.com>
4452 * gtk/gtktextview.h, gtk/gtktextview.c:
4453 Rename delete_at_cursor delete_from_cursor, and
4454 move to move_cursor.
4456 2000-10-30 Havoc Pennington <hp@redhat.com>
4458 * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
4459 gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
4460 gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
4461 gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
4462 gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
4463 gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
4464 gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
4465 gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
4466 gtktexttypes.h, gtktextview.c, gtktextview.h:
4468 Massive reindentation and reformatting. Arg alignment and comments
4469 still need fixing in various places.
4471 2000-10-30 Havoc Pennington <hp@redhat.com>
4473 * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
4474 to be named insert_at_cursor and delete_at_cursor so C++ can
4477 2000-10-28 Tor Lillqvist <tml@iki.fi>
4479 * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
4480 to get a double directory separator in case the home directory
4481 ends with one. This would cause trouble especially on Windows,
4482 where the path will be confused with the syntax for an an UNC
4483 (network share) path \\server\share\path.
4484 (gtk_rc_add_initial_default_files): Ditto.
4486 Sat Oct 28 02:33:09 2000 Robert Brady <robert@suse.co.uk>
4488 * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
4490 * gtk/gtktextview.c: Use correct marshallers.
4492 Fri Oct 27 17:56:26 2000 Jonathan Blandford <jrb@redhat.com>
4494 * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to
4495 use new iter stuff, and added all the appropriate signals et al.
4497 * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
4498 code is internal to gtk only.
4500 2000-10-28 Tor Lillqvist <tml@iki.fi>
4503 * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
4504 glib-genmarshal etc.
4506 Fri Oct 27 20:15:00 2000 Tim Janik <timj@gtk.org>
4508 * gtk/Makefile.am: added dependancies for testtextbuffer which broke
4511 Fri Oct 27 18:51:44 2000 Tim Janik <timj@gtk.org>
4513 * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
4515 2000-10-27 Robert Brady <robert@suse.co.uk>
4517 * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic),
4518 en_GB (British), ia (Interlingua).
4520 2000-10-26 Havoc Pennington <hp@redhat.com>
4522 * gtk/gtktextiter.c (my_strrstr): fix constness warning
4525 nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
4527 * gtk/gtktextsegment.c (char_segment_new): rename
4528 (_char_segment_new_from_two_strings): rename
4529 (_toggle_segment_new): rename
4531 * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
4532 (make_clipboard_widget): make it static
4533 (text_get_func): static
4534 (text_clear_func): static
4536 * gtk/gtkcolorsel.c (adjustment_changed): make this function
4538 (hex_changed): make it static
4539 (hsv_changed): make it static
4540 (opacity_entry_changed): make it static
4542 * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
4543 (toggle_segment_check_func): rename with _gtk
4545 * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
4546 (_widget_segment_new): rename
4547 (_widget_segment_add): rename
4548 (_widget_segment_remove): rename
4549 (_widget_segment_ref): rename
4550 (_widget_segment_unref): rename
4552 * gtk/gtktextmark.c (_mark_segment_new): Rename
4553 _gtk_mark_segment_new
4555 2000-10-26 Havoc Pennington <hp@redhat.com>
4557 * gtk/gtkmarshal.list: add new marshallers used by the text widget
4558 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4561 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
4564 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
4565 gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
4566 license on these files.
4568 * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
4571 * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to
4572 runtime random number different for each tree, instead of
4573 a constant I made up.
4575 Thu Oct 26 07:36:16 2000 Tim Janik <timj@gtk.org>
4577 * gtk/Makefile.am: buncha cleanups, kludged build sources
4578 dependencies with a Makefile: oldest-source-stamp dependancy
4579 for the moment. automake is really fighting us here, with
4580 intentionally not allowing user-defined rules or dependancies
4581 prior to it's -include $(DEP_FILES) statement. sucks rocks!
4583 * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
4584 to public headers. tehy have a comment stating that they are
4585 "semi-public" aren't included by gtk.h and if enums popup there,
4586 they can be /*< skip >*/-ed.
4588 * gtk/gtktextlayout.h:
4589 * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
4590 added LGPL... <SIGH>
4592 Wed Oct 25 20:40:25 2000 Jonathan Blandford <jrb@redhat.com>
4594 * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
4595 GtkTreeIter. Added iterators everywhere.
4597 * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
4599 * gtk/gtktreeviewselection.c: Changed to use the iterators.
4601 * gtk/gtktreestore.c: Changed to use the iterators.
4603 * gtk/gtkliststore.c: Commented out the code. Will convert to
4606 * gtk/gtkmodelsimple.c: Commented out the code. Will convert to
4609 * gtk/treestoretest.c: Changed to use iterators.
4611 * demos/testgtk/main.c: Moved to use the new iterator system.
4613 Thu Oct 26 02:10:32 2000 Tim Janik <timj@gtk.org>
4615 * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
4616 localization misbehaviour.
4618 * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
4619 a useless type without copy/free.
4621 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
4622 of GTK_TYPE_CTREE_NODE.
4624 Thu Oct 26 00:51:52 2000 Tim Janik <timj@gtk.org>
4627 (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
4630 * gtk/gtk-boxed.defs (GtkSelectionData): specify
4631 gtk_selection_data_copy and gtk_selection_data_free
4632 do GtkSelectionData work as params in signals.
4634 Wed Oct 25 20:47:41 2000 Tim Janik <timj@gtk.org>
4636 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
4637 implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
4638 couldn't they at least give it a non-standard name?
4640 * gtk/gtktextlayout.c: arg! yet another implementation of
4641 gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
4643 * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
4644 gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
4645 home. now i know this _is_ a conspiracy.
4647 * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
4650 * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
4651 (gtk_accel_group_create_add): marshaller signature fixups.
4653 * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
4654 pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
4656 * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
4659 Tue Oct 24 23:59:21 2000 Tim Janik <timj@gtk.org>
4661 * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
4662 due to the signal system changes, it wouldn't build currently. to
4665 * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
4667 * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
4668 so it needs gtk_marshal_VOID__ENUM() instead of
4669 gtk_marshal_NONE__UINT().
4671 * gdk/gdk*.c: adapted type registration functions.
4673 * gtk/gtkbindings.c:
4674 * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
4677 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
4680 (gtk_object_destroy):
4681 (gtk_object_shutdown): fixed recursion guards. basically we have to
4682 catch the case where any of GObject.shutdown() or gtk_object_destroy()
4683 is called during ::destroy, and avoid recursion there.
4685 * gtk/gtktypeutils.c:
4686 * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
4687 boxed_copy/boxed_free. this needs a more general solution based on a
4688 publically installed code-generator utility.
4690 * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
4691 glib's gobject has support for that now.
4692 define GtkSignalMarshaller in terms of GSignalCMarshaller.
4694 Mon Oct 23 09:36:42 2000 Tim Janik <timj@gtk.org>
4696 * gtk/gtksignal.[hc]:
4697 * gtk/gtkmarshal.[hc]:
4698 * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
4699 compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
4700 removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
4703 * *.c: marshaller name fixups.
4705 * gtk/gtkmarshal.list: added a comment briefing the format.
4707 Sun Oct 22 23:14:39 2000 Tim Janik <timj@gtk.org>
4709 * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
4710 compatibility macros here now. more specifically, most of
4711 the API is preserved (yes, _most_, nonwithstanding the
4712 following exceptions listed, the API is stil lHUGE ;)
4713 things that got removed completely:
4714 GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
4715 gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
4716 gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
4717 gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
4718 gtk_signal_remove_emission_hook().
4719 non-functional functions variants:
4720 gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
4721 the GtkCallbackMarshal argument to gtk_signal_connect_full() is
4722 not supported anymore.
4723 (gtk_signal_compat_matched): new internal function to aid
4724 implementation of the compatibility macros, it provides
4725 functionality to block/unblock/disconnect handlers based
4728 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
4730 * *.c: adaptions to new type registration API signatures.
4732 Fri Oct 20 15:26:33 2000 Tim Janik <timj@gtk.org>
4734 * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
4736 2000-10-25 Robert Brady <robert@suse.co.uk>
4738 * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
4739 gdk_property_delete): If window == NULL, assume the root window.
4740 (restoring the behaviour that was in 1.2).
4742 * gtk/testtext.c (save_buffer): Allow creation of new files when
4745 (fill_file_buffer): Don't die if a UTF-8 sequence is split across
4748 2000-10-25 Tor Lillqvist <tml@iki.fi>
4750 * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
4752 * gdk/win32/gdkdrawable-win32.c
4753 * gdk/win32/gdkimage-win32.c
4754 * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
4757 * gdk/win32/gdkcc-win32.c
4758 * gdk/win32/gdkcolor-win32.c
4759 * gdk/win32/gdkfont-win32.c
4760 * gdk/win32/gdkinput-win32.c
4761 * gdk/win32/gdkmain-win32.c
4762 * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
4764 2000-10-24 Havoc Pennington <hp@redhat.com>
4766 * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
4767 it a static function
4769 * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
4770 redraw text when a tag is applied to it.
4772 * gtk/gtktexttag.c (gtk_text_tag_affects_size)
4773 (gtk_text_tag_affects_nonsize_appearance): private functions to
4774 see if a tag requires various kinds of redraw/layout to be queued
4777 * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
4779 * gtk/testtext.c (fill_example_buffer): Put the cursor
4780 at the start of the buffer, so search works by default
4782 * gtk/gtktextiter.c (lines_match): init match_start always
4784 * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
4785 function, get iter at a line + a byte index
4787 * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
4788 to set byte position within a line
4789 (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
4791 2000-10-23 Havoc Pennington <hp@redhat.com>
4793 * gtk/testtext.c: Re-enable the "find" dialog
4795 * gtk/testgtk.c: Add test for gdk_drawable_get_image
4797 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
4798 the arguments to gdk_draw_drawable were in the wrong order
4799 (gdk_window_paint_init_bg): This function was ignoring the
4800 init_region, instead of clipping to it, so the entire backing
4801 pixmap was cleared on every begin_paint()
4802 (gdk_window_begin_paint_region): Hmm, the same list-walking bug
4803 was in here again, the loop kept using the same GtkWindowPaint
4805 (gdk_window_begin_paint_region): Fix a bug where we had two
4806 x_offset instead of x_offset and y_offset
4808 * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
4809 before we get the image.
4810 (gdk_draw_drawable): get the composite before we draw the drawable.
4811 (gdk_drawable_real_get_composite_drawable): default
4812 get_composite_drawable implementation that returns the drawable
4815 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
4816 get_composite_drawable virtual function
4818 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
4821 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
4822 make this work if the source drawable is a GdkDrawableImplX11
4823 instead of a public drawable type. This is really broken; the
4824 problem is that GdkDrawable needs a virtual method get_xid(), but
4825 of course that doesn't work in practice. Enter RTTI.
4827 Also, improve mismatched depth message.
4829 * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
4832 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
4833 install _gdk_x11_get_image as our implementation of get_image
4835 * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
4836 _gdk_x11_get_image and export for use in gdkdrawable-x11.c
4838 * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
4839 gdk_drawable_get_image
4841 * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
4843 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
4846 * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
4847 trailing semicolon after for loop
4849 Mon Oct 23 12:07:57 2000 Owen Taylor <otaylor@redhat.com>
4851 * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
4852 where font_desc for widget's context lagged widget's font_desc by
4855 2000-10-22 Tor Lillqvist <tml@iki.fi>
4857 * gdk/win32/gdkgc-win32.c
4858 * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
4860 * gtk/makefile.mingw.in
4861 * gtk/gtk.def: Updates.
4863 * gtk/testgtk.c: sleep() is called _sleep in MS's C
4866 * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
4868 * gtk/makefile.msc: Remove
4870 * gtk/makefile.msc.in: New file, like makefile.mingw.in.
4872 * gtk/Makefile.am: Add it.
4874 * configure.in: Generate it.
4876 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
4877 * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
4878 something even if not implemented, to satisfy picky MSVC.
4880 Patches by Hans Breuer:
4882 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
4883 SetBkMode() and SetTextAlign() before calling
4884 pango_win32_render().
4886 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
4887 Set hcliprgn to NULL after destroying it.
4888 (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
4890 * gdk/win32/gdkgeometry-win32.c
4891 (_gdk_windowing_window_queue_antiexpose): More effective
4894 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
4895 depth as default, not the visual's.
4897 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
4898 against empty title.
4900 * gdk/win32/gdkprivate-win32.h: Define a helper macro,
4903 * gdk/win32/gdkimage-win32.c: Use it.
4905 2000-10-22 Robert Brady <robert@suse.co.uk>
4907 * configure.in: Check for bind_textdomain_codeset
4909 * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset
4910 present, make use of it.
4912 Add a translatable string "default:LTR" which, if translated
4913 to "default:RTL", will cause the default direction to be
4916 * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget
4917 direction if marked as flippable.
4919 * gtk/gtkhscale.c: Mark widget as flippable.
4921 2000-10-04 Havoc Pennington <hp@redhat.com>
4923 * gtk/testgtk.c (create_buttons): create some stock buttons
4924 with the default accel group
4925 (create_image): test some new GtkImage features
4926 (make_message_dialog): test GtkMessageDialog
4927 (create_modal_window): fix someone's bizzarro indentation
4929 * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement
4930 GTK_WIN_POS_CENTER_ON_PARENT.
4931 Add "destroy with parent" setting, which means the window goes
4932 away with its transient parent.
4933 (gtk_window_get_default_accel_group): get the default accel group
4935 (gtk_window_set_destroy_with_parent): set/unset destroy with
4937 (gtk_window_read_rcfiles): invalidate icon set caches
4938 after reloading rcfiles
4940 * gtk/gtkenums.h (GtkWindowPosition): add
4941 GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog
4942 on its parent window when the dialog is mapped for the first time.
4944 * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add
4945 a simple message dialog class
4947 * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event
4948 handler to emit response signal, and maybe later it would
4949 honor a hide_on_delete flag - though that isn't there yet.
4950 Set border width on the vbox to 2, so we get some padding.
4951 Use a button box for the action area.
4952 (gtk_dialog_key_press): synthesize a delete event if Esc
4953 is pressed and the GtkWidget key press handler didn't
4954 handle the escape key.
4955 (gtk_dialog_new_with_buttons): new function creates a dialog
4956 with some default buttons in it.
4957 (gtk_dialog_add_action_widget): add an activatable widget
4958 as a button in the dialog - you can also add a non-activatable
4959 widget by accessing the action area directly.
4960 (gtk_dialog_add_button): add a simple button - stock ID or
4961 label - to the action area
4962 (gtk_dialog_response): emit response signal
4963 (gtk_dialog_run): block waiting for the dialog, return
4964 the response. Override normal delete_event behavior, so that
4965 delete_event does nothing inside gtk_dialog_run().
4967 * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
4968 emitted when an action widget is clicked or the dialog gets
4971 * gtk/gtk.h: add gtkmessagedialog.h
4973 * gtk/Makefile.am: add gtkmessagedialog.[hc]
4975 2000-10-18 Havoc Pennington <hp@redhat.com>
4977 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
4978 where any number of empty lines would get skipped
4980 * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
4983 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
4984 warning about invalid iterators (explain more thoroughly)
4985 (gtk_text_iter_in_region): rename gtk_text_iter_in_range
4987 * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
4990 * demos/*.c: Add error handling
4992 * gtk/gtktextbuffer.c: don't modify const iterators
4994 * gtk/gdk-pixbuf-loader.c: Add full error handling here
4996 * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
4999 * gtk/gtkiconfactory.c: Update to reflect addition of error
5000 handling to gdk-pixbuf loaders
5002 Wed Oct 18 11:14:05 2000 Owen Taylor <otaylor@redhat.com>
5004 * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
5005 move to new modularized testgtk.
5007 2000-10-17 Jonathan Blandford <jrb@redhat.com>
5009 * gtk/gtktreeview.c: Draw the arrows correctly.
5011 * gtk/gtktreemodel.c: Added user docs.
5013 * gtk/gtk.h: remove gtktreedatalist.h.
5015 * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
5016 parent when generating my type.
5018 * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5019 POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5021 2000-10-16 Jonathan Blandford <jrb@redhat.com>
5023 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5024 GtkTreeModel from object to interface.
5026 2000-10-16 Havoc Pennington <hp@redhat.com>
5028 * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing
5031 2000-10-16 Jonathan Blandford <jrb@redhat.com>
5033 * gtk/gtktreeselection.c: Add API documentation to all public
5036 * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5039 2000-10-15 Jonathan Blandford <jrb@redhat.com>
5041 * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5042 proposed by Guy Harris <gharris@flashcom.net>. Also, added API
5043 docs to all public functions.
5045 * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5046 gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5047 gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5048 gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5049 gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5052 2000-10-14 Robert Brady <robert@suse.co.uk>
5054 * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5056 2000-10-12 Jonathan Blandford <jrb@redhat.com>
5058 * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5059 values other then G_TYPE_STRING.
5060 * gtk/gtktreeselection.c: Minor commenting updates.
5061 * gtk/gtktreeview.c: Format updates.
5063 2000-10-09 Tor Lillqvist <tml@iki.fi>
5065 * README.win32: Update.
5067 * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5068 lines that had been deleted by mistake (?).
5070 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5071 also the case fg==white and bg==black (but still not randomly
5072 coloured cursors). Thanks to Wolfgang Sourdeau.
5074 * gdk/win32/*.c: Silence gcc -Wall.
5076 * gtk/gtk.def: Add missing entry points.
5078 Fixes by Hans Breuer:
5081 * gdk/win32/makefile.msc: Update.
5083 * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5084 some MSVC thing, presumably), cause breakpoint on failures. Add
5085 GDK_NOR case. Call g_log_set_always_fatal.
5087 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5088 should be pased by reference.
5090 * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5092 * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5094 * gdk/win32/gdkevents-win32.c
5095 * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5097 * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5098 implementation object.
5100 * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5103 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5104 Use the wrapper object.
5106 2000-10-06 Havoc Pennington <hp@redhat.com>
5108 * Makefile.am (SRC_SUBDIRS): contrib subdir
5110 * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5111 so it can be used in Xlib version
5113 * demos/testpixbuf.c (update_timeout): error checking from 1.0
5116 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5117 change from 1.0 tree that returns first frame of animation
5118 if the loaded file is an animation.
5120 * contrib: add new directory to hold stuff that comes with GTK+
5121 but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5123 * configure.in: add contrib/*
5125 2000-10-05 Havoc Pennington <hp@redhat.com>
5127 * demos/testpixbuf-save.c: add pixbuf save test
5129 * demos/Makefile.am: add testpixbuf-save.c
5131 2000-10-05 Jonathan Blandford <jrb@redhat.com>
5133 * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5134 GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5135 * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5136 * gtk/gtktreeselection.[ch]: Replaced
5137 "node_selected"/"node_unselected" signal with "selection_changed"
5140 2000-10-04 Jonathan Blandford <jrb@redhat.com>
5142 * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5145 2000-10-04 Jonathan Blandford <jrb@redhat.com>
5147 * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5150 Wed Oct 4 15:52:15 2000 Owen Taylor <otaylor@redhat.com>
5152 * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5153 Move list pointer forwards before removing item from
5154 list. (Crash reported by Salmaso Raffaele)
5156 * gdk/gdkwindow.h: Remove spurious trailing ,
5158 * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
5159 dependencies on uninstalled libraries, sorry folks.
5161 2000-10-04 Havoc Pennington <hp@redhat.com>
5163 * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5164 gtk/gtkiconfactory.c: Fix copyrights
5166 * demos/testpixbuf.c: add inline pixbuf test
5168 Mon Sep 25 15:05:17 2000 Owen Taylor <otaylor@redhat.com>
5170 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
5171 Add gdk_window_iconify.
5173 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
5174 (gdk_window_set_geometry_hints): Add win_gravity
5175 to geometry structure.
5177 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
5178 Implement _NET_WM_PING.
5180 * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
5181 Set _NET_WM_PID on the client leader.
5183 * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
5184 Handle UTF-8 better.
5186 * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
5187 UTF-8 better, set _NET_WM_NAME as well. Only set
5188 icon name if it hasn't previously been explicitely
5191 2000-10-03 Havoc Pennington <hp@redhat.com>
5193 * gtk/testtextbuffer.c: clean up trailing whitespace,
5194 add extensive tests for tag toggle iteration.
5196 * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
5199 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5200 optimize case where the tag root is on level 1
5201 (gtk_text_line_previous_could_contain_tag): attempt to implement
5202 (gtk_text_line_next_could_contain_tag): Abstract out node_compare
5205 * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
5206 Implement this, though not very efficiently.
5208 * gtk/gtktextiterprivate.h: reformat
5210 * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
5213 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
5214 this to properly revalidate the iterators.
5216 * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
5217 properly at the end of the line (and therefore on empty lines)
5219 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
5220 maybe we should return a value...
5222 2000-10-03 Tor Lillqvist <tml@iki.fi>
5224 * config.h.win32: Guard definition of alloca(). glib.h now handles
5228 * gtk/gtk.def: Add new entry points.
5230 Changes just to make GTK+ build without errors on Win32. No hope
5231 of it working in its current state, though...:
5233 * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add
5234 some functions from the X11 backend, just to make GTK+ build.
5236 * gdk/makefile.mingw.in
5237 * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
5238 number. Add new object files.
5240 * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
5241 GetMessageTime to get timestamp (where on X11 uses
5242 gdk_x11_get_server_time()).
5244 2000-10-02 Havoc Pennington <hp@pobox.com>
5246 * gtk/gtktextview.c: text_window_* weren't static and should have
5248 Start work on child widgets; not yet complete, syncing to
5251 * gtk/gtktextchild.h: change this to contain a public interface,
5252 starting work on child interfaces.
5253 * gtk/gtktextchildprivate.h: move private interfaces here
5255 * gtk/Makefile.am: update to reflect gtktextchildprivate.h
5257 * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
5258 gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
5259 gtk/gtktextmark.c: copyright notices
5261 * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
5264 * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
5267 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5270 2000-09-30 Havoc Pennington <hp@pobox.com>
5272 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
5273 NULL start/end pointers
5275 * gtk/gtktextbuffer.c: Write some docs
5276 (gtk_text_buffer_get_selection_bounds): Allow start/end to be
5277 NULL, so you can just check whether there's a selection.
5279 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
5280 cleanup_line or segments_changed ourselves, it gets done
5283 * gtk/gtktextmark.h:
5284 s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
5286 * gtk/gtktextsegment.h: Clean up some indentation and naming mess
5288 * gtk/gtktextmark.c: delete some more old Tk cruft
5290 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
5291 mark before removing it, so we can emit MARK_DELETED with a valid
5293 (gtk_text_buffer_mark_set): hold ref across signal emission
5295 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
5296 whining about attempts to delete special marks
5298 * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
5299 underscore, since it's internal.
5301 * gtk/gtktextbuffer.h: Remove find_string prototype, this is
5302 now implemented in terms of iterators in gtktextiter.h
5304 * gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
5305 New function, destructively sets contents of buffer. Also
5306 a convenient way to clear the buffer by setting text to ""
5308 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
5309 multiline string literal
5311 * gtk/testtext.c (text_changed_callback): Redraw line numbers if
5314 * gtk/gtktextiter.c (forward_char): Return FALSE if new location
5315 is not dereferenceable
5316 (gtk_text_iter_forward_lines): fix return value
5318 2000-09-29 Havoc Pennington <hp@redhat.com>
5320 * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
5322 * gtk/gtktextview.c: Implement drag thresholding; change functions
5323 that set border window size to have nicer name
5324 (gtk_text_view_mark_set_handler): Fix this to have the
5327 * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
5329 * gtk/testtext.c: Update with API changes, put line numbers on
5332 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
5335 * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
5336 pixbuf; delete a big block of #if 0 Tk code
5338 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
5339 insert_pixmap with insert_pixbuf
5341 2000-09-29 Martin Baulig <baulig@suse.de>
5343 * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
5344 confusion with the GdkPixbuf of the GNOME 1.x platform.
5346 2000-09-29 Havoc Pennington <hp@pobox.com>
5348 * gtk/gtktextview.c: Implement the side windows.
5350 * gtk/testtext.c: Implement simple line numbering in the
5351 left side window; seems to make scrolling sloooow. Oops.
5352 Also, cursor blink is for some reason causing redraws
5353 of the line numbers. Should investigate...
5355 2000-09-28 Havoc Pennington <hp@redhat.com>
5357 * gtk/gtktextview.c: Set up infrastructure to deal with lots of
5358 scrolling child windows, and draw focus rectangle properly.
5360 (gtk_text_view_buffer_to_window_coords):
5361 Coordinate transformation to deal with all these freaking windows
5363 (gtk_text_view_window_to_buffer_coords): transform the other way
5365 * gtk/testtext.c (create_buffer): Update to match Pango API change
5367 * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
5369 (foreach_unref): don't emit remove signal from finalize, just
5370 set tag's parent to NULL
5372 2000-09-26 Havoc Pennington <hp@redhat.com>
5374 * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
5377 2000-09-26 Havoc Pennington <hp@redhat.com>
5379 * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
5380 headers into the private header list
5382 * Makefile.am (pkgconfig_DATA): install pkg-config files
5384 * configure.in: add pkg-config files
5386 * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
5388 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
5389 outstanding icon caches on theme change.
5391 * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
5394 (GtkIconSource): Specification for creating a pixbuf
5395 appropriate for a direction/state/size triplet from
5396 a source pixbuf or filename
5398 (GtkIconSet): List of GtkIconSource objects that are used to
5399 create the "same" icon (e.g. an OK button icon), and cache for
5402 (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
5403 up the icon set for a given stock ID. GTK maintains a stack of
5404 GtkIconFactory to search, and applications or libraries can add
5405 additional icon factories on top of the stack
5407 * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
5408 the set of GtkIconSource specified for a given stock ID into
5409 a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
5410 RcStyle, under the specified stock ID.
5412 * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
5413 render_icon used to derive a GdkPixbuf from a GtkIconSource.
5414 This allows people to theme how prelight, insensitive, etc. are
5417 (gtk_style_lookup_icon_set): Look up a stock ID in the list of
5418 icon factories for a style, and return the resulting
5421 (gtk_style_render_icon): Render an icon using the render_icon
5422 method in the GtkStyleClass.
5424 * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
5425 Use the style for a given widget to look up a stock ID, get the
5426 icon set, and render an icon using the render_icon method
5429 * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
5430 (contains information about a stock item), the built-in stock item
5431 IDs, and functions to add/lookup stock items.
5433 * gtk/stock-icons/*: Stock icons that come with GTK
5435 * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
5436 a button based on a GtkStockItem
5437 (gtk_button_new_accel): Takes a uline string and accel group, and
5438 installs the accelerator.
5440 * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
5441 image-display widget.
5443 2000-09-25 Havoc Pennington <hp@redhat.com>
5445 * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
5447 * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
5448 Fix a bug when removing node data, we didn't properly
5449 re-splice the linked list after removing the data.
5451 * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
5452 GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
5454 * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
5456 * gtk/gtktextlayout.c (set_para_values): Set tab array
5457 for the layout from the GtkTextTag.
5459 * gtk/gtktexttypes.h: delete tab and search cruft,
5460 remove g_convert() in favor of GLib version
5462 * gtk/gtktexttypes.c: remove tab implementation from here,
5465 * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
5466 tab stuff using new PangoTabArray from Pango
5468 * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
5469 unused border_width stuff
5471 Thu Sep 14 12:21:12 2000 Owen Taylor <otaylor@redhat.com>
5473 * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
5474 glib) and now useless utf_to_latin1() latin1_to_utf()
5476 * gtk/gtktextview.[ch]: Change ::move_insert and
5477 ::delete_text action signals to ::move and ::delete;
5478 create the signals with the right enumeration type,
5479 not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
5480 C-v bindings, change Home, End to move to beginning/end
5481 of line, Add C-Home C-End to move to beginning/end
5482 of buffer. Change ::cut_text to ::cut_clipboard, etc;
5483 combine ::scroll_text into ::move; use new GtkSelectionData
5484 functions to simplify DND text handling.
5486 * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
5487 deletion enumerations here, rename enumeration values to
5488 be consistently plural.
5490 * gtk/gtktextbuffer.c: Use new clipboard interfaces
5491 for cut/copy/paste and primary selection.
5493 * gtk/gtktextbuffer.[ch]: Remove excess time and
5494 'interactive' arguments from cut/copy/paste;
5495 rename cut to cut_clipboard, etc; remove
5496 gtk_text_buffer_get_clipboard_contents().
5498 * gtk/gtktextlayout.[ch]: Add
5499 gtk_text_layout_move_iter_to_line_end() to move the iter to
5502 * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
5503 Functions to set or get a UTF-8 string on the selection
5506 * gtk/gtkclipboard.[ch]: New, simplified selection handling
5509 * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
5510 created widgets - one of these is useless if we don't.
5512 * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
5513 a public function clear all targets registered for the
5516 * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
5517 Never call gtk_widget_realize() - that was just asking
5518 for bizarre side-effects.
5520 * gtk/gtkselection.c (gtk_selection_owner_set): Call
5521 gdk_selection_owner_set even if the widget is the
5522 same so that we reliably update the timestamp on
5525 * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a
5526 gdk_x11_get_server_time() function.
5528 * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
5529 gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
5530 Add some tricky filtering on serial numbers for
5531 selection clear events to fix up long-standard
5532 race condition FIXME's in gtkselection.c.
5534 * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
5535 routines to convert from utf8 to compound text or
5536 STRING and from a text property to UTF-8.
5538 * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add
5539 a convenience function gdk_get_current_event_time().
5541 * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
5542 and free selection_data->data properly
5544 Sat Sep 9 10:23:53 2000 Owen Taylor <otaylor@redhat.com>
5546 * gtk/gtkthemes.c: Remove some unecessary includes.
5548 2000-09-08 Jonathan Blandford <jrb@redhat.com>
5550 * gtk/gtktextdisplay.c
5551 * gtk/gtktextlayout.c
5554 * gtk/testtext.c: Change the overstrike property to strikethrough,
5555 to closer match pango.
5557 Fri Sep 8 14:28:00 2000 Owen Taylor <otaylor@redhat.com>
5559 * gtk/gtktextview.c: Fix up visibility so that focus,
5560 cursor_visible and blink interact properly. Reenable cursor blink
5561 which had been roughly disabled. Make blink and focus
5564 * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
5565 Add a flag for whether to display insertion cursor and
5566 a function to set the flag.
5568 * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
5569 get_line_y() to get_line_yrange(), to be a bit more generally
5572 Thu Sep 07 20:54:33 2000 George Lebl <jirka@5z.com>
5574 * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region
5575 do stop_navigating_submenu, to clear last timeout properly.
5576 Also in gtk_menu_motion_notify move ignore_enter above
5577 the conditional to make it always happen as suggested by Owen
5579 2000-09-07 Tor Lillqvist <tml@iki.fi>
5581 * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
5583 * gdk/win32/gdkwin32.h: Add more definitions missing from the free
5586 * gdk/win32/gdkprivate-win32.h: Add a couple of missing
5589 * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
5590 (gdk_win32_get_colormap): A line had been deleted by mistake.
5592 * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
5593 (gdk_event_translate): Handle more virtual keycodes to be able to
5594 generate GDK events for Control-comma, Control-period, etc.
5596 * gtk/gtk.def: Add some missing entry points.
5598 Thu Sep 7 11:47:02 2000 Owen Taylor <otaylor@redhat.com>
5600 * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
5601 Doc comment fixing. (Mostly non-matching parameter names.)
5603 * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
5604 comments a little to avoid looking like a doc comment.
5606 * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
5607 GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
5608 conversions be changed to GError?)
5610 * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT):
5611 Move private #defines into .c file.
5613 * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
5614 order of argument addition, remove duplicates.
5616 * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
5617 parent class is FrameClass, not BinClass.
5619 * gtk/gtk.h: Add gtkinvisible, which was missing.
5620 (It's occasionalyl useful for client apps, if seldom.)
5622 * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
5625 Wed Sep 6 09:53:15 2000 Owen Taylor <otaylor@redhat.com>
5627 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
5628 coordinates when creating window, instead of GDK-space
5629 coordinates. (Avoid BadValue on too large windows.)
5631 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5633 * configure.in (use_mmx_asm): Remove conftest* after use along the
5634 lines of AC_TRY_COMPILE.
5636 * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
5637 of g_dirname, which is deprecated.
5638 (gtk_rc_parse_any): Removed calls to
5639 g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
5641 * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
5642 Removed calls to g_hash_table_{freeze,thaw}, as they are
5645 * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
5646 instead of g_basename.
5648 2000-09-04 Elliot Lee <sopwith@redhat.com>
5650 * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
5653 Sun Sep 03 00:47:08 2000 George Lebl <jirka@5z.com>
5655 * gtk/gtkwidget.h: Add some documenting comments about
5656 GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
5657 just as owen said on irc.
5659 * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly
5660 set HAS_DEFAULT. Only set it if there isn't another window
5661 holding it (a focus window which RECEIVES_DEFAULT) and only unset
5662 it if the widget is not the focused window with RECEIVES_DEFAULT.
5663 This fixes weird double default bugs in dialogs which has things
5664 call gtk_window_set_default at times.
5666 Fri Sep 1 22:39:07 2000 Owen Taylor <otaylor@redhat.com>
5668 * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
5669 Nils Barth and David Santiago to improve submenu
5670 navigation. The patch does this by creating a triangular
5671 region from the point where the pointer leaves the
5672 menu to the submenu. While the pointer is in
5673 that region and a timeout has not expired, events
5674 that would cause the active submenu to change are
5677 Fri Sep 1 15:34:46 2000 Owen Taylor <otaylor@redhat.com>
5679 * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
5680 moving a toplevel window immediately after sizing it would
5681 result in it being sized back to the old size since
5682 impl->width, impl->height aren't updated until we hear
5683 back from the server. There is still a (longstanding) bug
5684 here that gdk_window_get_size() will give the wrong size
5685 until we do hear back.
5687 2000-08-31 Havoc Pennington <hp@redhat.com>
5689 * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h,
5690 gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c,
5691 gtk/gtktexttagprivate.h, gtk/gtktextview.c:
5692 Rename GtkTextStyleValues to GtkTextAttributes
5694 2000-08-31 Havoc Pennington <hp@pobox.com>
5696 * gtk/gtktextbtree.c (GtkTextBTree): cache end line,
5697 for rapid testing whether an iterator is the end iterator
5698 (gtk_text_btree_new): init end line cache
5699 (gtk_text_line_is_last): use fast cached line to
5700 see if we're the last line.
5701 (get_last_line): use cached line here too, should
5702 speed up some random unrelated code.
5704 2000-08-30 Havoc Pennington <hp@pobox.com>
5706 * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
5709 * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
5710 delete_text signals. This allows the signals to be used for
5713 * gtk/gtktextbuffer.c: Change signal handler signatures;
5714 provide "interactive" argument when emitting insert_text or
5717 2000-08-30 Havoc Pennington <hp@pobox.com>
5719 * gtk/gtktextbuffer.c: Docs
5721 Fri Aug 25 12:16:15 2000 Owen Taylor <otaylor@redhat.com>
5723 * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
5724 from switch statements, since Tor removed the enumeration
5727 * gdk/x11/gdkimage-x11.c (gdk_image_get):
5728 s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
5730 2000-08-29 Elliot Lee <sopwith@redhat.com>
5731 * */*.h: Use G_GNUC_CONST.
5733 2000-08-27 Havoc Pennington <hp@pobox.com>
5735 * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
5736 minor indentation fixes, inserted some FIXME about stuff I
5737 realized was broken while documenting it.
5738 (gtk_text_iter_get_pixmap): allow out params to be NULL, following
5741 Tue Aug 22 12:33:24 2000 Owen Taylor <otaylor@redhat.com>
5743 * gtk/testgtk.c (create_styles): Fix double free of
5746 Mon Aug 21 22:39:18 2000 Owen Taylor <otaylor@redhat.com>
5748 * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
5750 * gtk/testgtk.c (create_styles): Add a test for modifying
5751 the style through gtk_widget_modify_*.
5753 * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
5754 a function to get the current modifier style.
5756 * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
5757 of the passed in GtkRcStyle instead of ref'ing it.
5759 * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
5761 2000-08-20 Tor Lillqvist <tml@iki.fi>
5764 * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
5765 shared memory image+pixmap GdkImage type, or
5766 gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
5769 * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
5770 actually call gtk_init_abi_check(), passing also
5771 sizeof(GtkWindow). Ditto for gtk_init_check().
5774 * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
5775 New functions, used to check that the GTK+-using code has been
5776 compiled using the correct compiler and switches. In particular,
5777 with gcc one has to use the -fnative-struct switch as GTK+ is
5780 Fri Aug 18 17:27:46 2000 Owen Taylor <otaylor@redhat.com>
5782 * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
5783 ->prev fields when merging lists. (Found simultaneously
5784 by Pawel Salek and Jakub Jelinek)
5786 2000-08-12 Tor Lillqvist <tml@iki.fi>
5789 * gtk/gtk.def: Add missing entries.
5791 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
5792 OUT_TT_ONLY_PRECIS, try to get a TrueType font.
5794 * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
5795 function. Dummy implementation at this point.
5797 * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
5798 rules. Undefine GTK_COMPILATION when compiling the test programs.
5800 * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
5802 2000-08-11 Tor Lillqvist <tml@iki.fi>
5804 * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
5805 to convert back and forth from UTF-8 and the "system" (or "current
5806 locale") charset when necessary. Indentation/spacing cleanup.
5808 2000-08-10 Havoc Pennington <hp@redhat.com>
5810 * Makefile.am (snapshot): Change the format of the snapshot
5811 version to match glib
5813 * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
5814 from EXTRA_DIST since it doesn't seem to exist
5816 2000-08-10 Tor Lillqvist <tml@iki.fi>
5818 * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
5819 version of the directory name (not the UTF-8 one) when building
5820 the path name to stat().
5822 2000-08-03 Elliot Lee <sopwith@redhat.com>
5824 * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
5825 PANGO_ATTR_SHAPE set.
5827 Thu Aug 3 09:17:06 2000 Owen Taylor <otaylor@redhat.com>
5829 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
5830 Peter Osterlund to simplify the code while keeping the
5831 functionality the same.
5833 Wed Aug 2 14:57:38 2000 Owen Taylor <otaylor@redhat.com>
5835 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
5836 is_viewable() test further inside the function, since removing the
5837 window from the redraw list without clearing ->update_area
5838 was also very broken.
5840 2000-08-02 Tor Lillqvist <tml@iki.fi>
5842 * configure.in: Check for <unistd.h>.
5844 2000-08-01 Martin Baulig <baulig@suse.de>
5846 * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
5847 to display the message that this is a development version of GTK+.
5849 Mon Jul 31 18:37:36 2000 Owen Taylor <otaylor@redhat.com>
5851 * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
5852 was depending on widget->allocation instead of the width of text_area,
5853 which was incorrect for subclasses like GtkSpinButton.
5855 * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
5856 with width == 1 tests that should be width == -1.
5858 Mon Jul 31 16:45:48 2000 Owen Taylor <otaylor@redhat.com>
5860 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken,
5861 (broken, Elliot, every single window blank on X) custom code with call
5862 to gdk_window_is_viewable() which a) prevents code duplicate and
5865 2000-07-31 Elliot Lee <sopwith@redhat.com>
5867 * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
5868 to get the GDK_PARENT_ROOT() macro to work.
5869 * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
5870 * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
5871 of, windows that aren't shown.
5872 * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
5875 Mon Jul 31 13:53:16 BST 2000 Tony Gale <gale@gtk.org>
5877 * docs/gtkfaq.sgml docs/gtk-faq.sgml:
5878 s/gtk_main_iteration/g_main_iteration/
5880 Did this already in change:
5881 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
5882 don't know how it got reverted.
5884 2000-07-31 Stanislav Brabec <utx@penguin.cz>
5886 * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
5887 gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
5889 * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
5892 2000-07-30 Pablo Saratxaga <pablo@mandrakesoft.com>
5894 * configure.in,po/{sp,sr}.po: Added Serbian files
5896 2000-07-30 Tor Lillqvist <tml@iki.fi>
5898 * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
5900 * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
5901 Remove the g_pipe_readable_msg stuff. Not needed with new GLib
5902 GIOChannel implementation.
5904 * gdk/win32/gdkinput.c
5905 * gdk/win32/gdkpango-win32.c: Update license name here, too.
5907 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
5908 definition to match prototype.
5910 * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
5912 2000-07-27 Elliot Lee <sopwith@redhat.com>
5914 * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
5915 function, to allow handling image formats that cannot be detected
5916 by looking at content alone.
5918 Thu Jul 27 13:13:21 BST 2000 Tony Gale <gale@gtk.org>
5920 * docs/tutorial/*.gif *.jpg *.eps
5921 Update these to the same look-n-feel.
5922 Why does including images in DocBook suck so badly?
5924 Thu Jul 27 05:06:29 2000 Tim Janik <timj@gtk.org>
5926 * gtk/gtktable.c: applied patch from Phil Thompson
5927 <phil@river-bank.demon.co.uk> that enables space settings for
5928 the last row/columns as well.
5930 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
5932 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
5933 updates the license headers to the GNU Lesser General Public License,
5934 as well as updating the copyright year to 2000.
5936 2000-07-26 Robert Brady <rwb197@zepler.org>
5938 * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
5939 and po/Makefile, was installing and looking for them under gtk20
5940 and gtk2 respectively.
5942 2000-07-25 Havoc Pennington <hp@redhat.com>
5944 * gtk/testtext.c: Comment out some stuff that depends on the rest
5947 2000-07-25 Havoc Pennington <hp@redhat.com>
5949 * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
5952 2000-07-25 Havoc Pennington <hp@redhat.com>
5954 * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
5957 * gtk/gtktextview.h: To be consistent with usage of "line"
5958 throughout the API to mean "newline-terminated thingy", change
5959 MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
5962 (GtkTextView): Add flags for default editability, and whether to
5963 show the cursor. Add functions to get/set that. Add
5965 (gtk_text_view_get_iter_location): new function
5967 * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
5969 (g_convert): Add g_convert temporarily, will go in glib in a bit
5971 * gtk/gtktexttagtable.h: include gtktexttag.h, and define
5972 GtkTextTagTableForeach instead of brokenly using GHFunc.
5973 Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
5975 * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
5976 moved to public header.
5978 * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
5979 "invisible", since "elide" was a bad name.
5980 (gtk_text_tag_get_priority): Added
5982 (GtkTextStyleValues): put this in public header, along with
5983 functions to use it.
5985 * gtk/gtktextmarkprivate.h: Include more headers, since we no
5986 longer include gtktextbtree.h.
5988 * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
5989 gtk_text_mark_deleted
5991 * gtk/gtktextlayout.h: Don't include the "really private" headers,
5992 only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
5993 to make this possible. Now we only need to install
5994 gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
5995 (However the Makefile.am isn't changed yet because of the
5996 logistics of merging gtk-hp-patches piecemeal)
5998 * gtk/gtktextiterprivate.h: include btree header, so it compiles;
5999 rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6000 gtk_text_iter_get_line is now used in the public API for a
6003 * gtk/gtktextiter.h: Clean up function names to be more
6004 consistent. Always call char offset "offset" and byte index
6005 "index". A "line" is always a line number.
6007 (gtk_text_iter_is_last): new function, more efficient than
6008 the existing way to check
6009 (gtk_text_iter_is_first): new function, also more efficient
6011 (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
6013 (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
6014 gtk_text_iter_forward_char, etc.
6016 (gtk_text_iter_forward_to_tag_toggle): Renamed from
6017 forward_find_tag_toggle, since this isn't a linear search
6019 (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6021 (gtk_text_iter_forward_search, gtk_text_iter_backward_search):
6022 New functions, search for a buffer substring.
6024 * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6025 interactive and default editable (since we need to store that info
6026 until we receive the selection data).
6028 Remove all the _at_char and at_line etc. versions of functions;
6029 only have iterator versions.
6031 Add _interactive() versions of functions, that consider the
6032 editability of text. (FIXME add interactive flag to the
6033 insert/delete signals per Darin's suggestion)
6035 (gtk_text_buffer_get_tag_table): new function, demand-creates the
6036 tag table if necessary
6038 Remove declaration of gtk_text_buffer_get_iter_from_string
6040 (_gtk_text_buffer_get_btree): private/internal function, added.
6043 * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6044 (gtk_text_line_is_last): new function
6046 2000-07-25 Havoc Pennington <hp@redhat.com>
6048 * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6049 using GtkProgressBar. See Changes-2.0.txt for details.
6051 * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6052 "pulse_step" which are the equivalent of
6053 gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6056 * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6057 (use_text_format) to mark whether text set on the progress bar is
6058 a format string. Deprecate entire GtkProgress interface.
6060 * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6061 (gtk_progress_build_string): make this a no-op if use_text_format
6064 * docs/Changes-2.0.txt: Describe progress bar changes.
6066 2000-07-25 Tor Lillqvist <tml@iki.fi>
6068 * Makefile.am: Include the build directory.
6070 * configure.in: Generate build/Makefile, build/win32/Makefile,
6071 gdk/, gdk/win32/, and gtk/makefile.mingw.
6073 * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6074 Add GETTEXT_PACKAGE.
6077 * gtk/gtk.def: Updates.
6080 * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6081 need them any longer.
6083 * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6085 * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6086 PANGOWIN32_LIBS and gdk_pixbuf.
6088 * gdk/win32: Compiles, but no doubt doesn't work at all.
6090 * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION.
6092 * gdk/win32/gdkinput.c: New file, temporarily.
6094 * gdk/win32/gdkinput-win32.h: New file
6096 * gdk/win32/gdkinputprivate.h: Remove.
6098 * gdk/win32/gdkpango-win32.c: New file.
6100 * gtk/makefile.mingw.in: New file
6102 * gtk/makefile.cygwin: Removed
6104 * gtk/Makefile.am: Update accordingly.
6106 * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6107 made externally visible.
6109 * gtk/gtkmain.c: Use it.
6111 * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6114 * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6116 2000-07-24 Elliot Lee <sopwith@redhat.com>
6117 * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6118 individual backends already.
6119 * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6120 again. Yes, there really is a good reason for this, if you are using the gdkregion
6121 internals, and if you're not, why do you care?
6122 * gdk/gdkwindow.c: Fix inverted condition
6123 * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6124 * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6125 * gtk/gtkrange.c: Redraw trough when moving.
6126 * gtk/gtktypeutils.c: Fix warning by adding const cast.
6127 * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6129 2000-07-23 Tor Lillqvist <tml@iki.fi>
6131 * configure.in: Check for mkstemp and sigsetjmp. Output
6132 gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6134 More work on GDK for Win32. Still in an intermediate state.
6136 * gdk/makefile.cygwin
6137 * gdk/win32/makefile.cygwin: Removed.
6139 * gdk/makefile.mingw.in
6140 * gdk/win32/makefile.mingw.in: New files.
6143 * gdk/win32/Makefile.am: Generate and distribute them.
6145 * gdk/win32/gdkwindow-win32.h
6146 * gdk/win32/gdkdrawable-win32.h
6147 * gdk/win32/gdkpixmap-win32.h: New files.
6149 * gdk/win32/gdkcolor-win32.c
6150 * gdk/win32/gdkcursor-win32.c
6151 * gdk/win32/gdkdrawable-win32.c
6152 * gdk/win32/gdkgc-win32.c
6153 * gdk/win32/gdkimage-win32.c
6154 * gdk/win32/gdkprivate-win32.h
6155 * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6156 Rename fields and variables called xcursor, xid, etc (these names
6157 were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
6159 Sat Jul 22 17:41:26 2000 Owen Taylor <otaylor@redhat.com>
6161 * gtk/gtkentry.[ch]: Fix some problems with vertical
6164 * gtk/gtkentry.c (gtk_entry_find_position): Fix
6165 char/byte confusion.
6167 Sat Jul 22 11:16:05 2000 Owen Taylor <otaylor@redhat.com>
6169 * gtk/gtktextview.c (changed_handler): Fix bug where
6170 redraw wasn't being done properly when height of
6171 dirty region changed.
6173 * demos/Makefile.am: Remove various references to
6176 Fri Jul 21 15:28:13 2000 Owen Taylor <otaylor@redhat.com>
6178 * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
6179 PangoAttrShape to reserve space for pixmaps, add
6180 GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
6181 in the display functions.
6183 * gtk/testgtk.c (create_layout): Set some more exotic
6184 scrolled window options
6186 * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
6187 Add function to set the shadow type of a window, to allow
6188 putting a shadow around widgets such as GtkLayout or GnomeCanvas
6189 which don't draw their own frame.
6191 Fri Jul 21 16:34:42 BST 2000 Tony Gale <gale@gtk.org>
6193 * docs/tutorial/package-db-tutorial.sh: New file for
6194 packaging DocBook format tutorial
6196 Fri Jul 21 14:23:51 BST 2000 Tony Gale <gale@gtk.org>
6198 * docs/tutorial/gtk-tut.sgml: Minor updates
6200 * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
6202 2000-07-19 Tor Lillqvist <tml@iki.fi>
6204 * gtk/gtksignal.c: Fix C++ comment.
6206 * gtk/gtkimmulticontext.c
6207 * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
6208 don't return value from void functions.
6210 * gtk/gtk.def: Add gtk_rc_style_unref.
6212 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6214 * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
6215 gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
6216 gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
6217 gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
6218 gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
6219 gtk/gtktypeutils.h: Include files outside of the extern "C"
6220 block. Makes some C++ compiler happy. Reported by Denis Vakatov
6221 <vakatov@peony.nlm.nih.gov>.
6223 Wed Jul 19 14:07:57 BST 2000 Tony Gale <gale@gtk.org>
6225 * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
6226 Completes first pass. Hurrah!
6228 Tue Jul 18 17:17:55 BST 2000 Tony Gale <gale@gtk.org>
6230 * docs/tutorial/gtk-tut.sgml: More clean ups.
6232 Mon Jul 17 18:52:38 2000 Owen Taylor <otaylor@redhat.com>
6234 * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
6235 paint the background of the text area which was accidentally
6236 removed at some point.
6238 * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:
6240 - Move most of the functionality from the theme vtable
6241 into GtkRcStyleClass and GtkStyleClass. The moved
6242 vtable functions were changed a bit in the move to
6243 work better in their new home.
6245 - Get rid of the engine and engine_data fields from
6246 GtkRcStyle and GtkStyle; instead the theme
6247 engine derives theme-specific subclasses of GtkRcStyle
6250 - Add extra dlsym() found entry point to themes,
6251 theme_create_rc_style().
6253 * gtk/gtkstyle.c: Copy xthickness, ythickness fields
6254 in gtk_style_real_copy.
6256 * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
6257 to register a type associated with an engine. (The engine
6258 won't be unloaded as there is an instance of the type.)
6261 Mon Jul 17 18:19:06 BST 2000 Tony Gale <gale@gtk.org>
6263 * docs/tutorial/gtk-tut.sgml: Clean ups.
6265 Mon Jul 17 13:59:29 BST 2000 Tony Gale <gale@gtk.org>
6267 * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
6268 of cleaning up to do.
6270 2000-07-15 Tor Lillqvist <tml@iki.fi>
6272 * gdk/testgdk.c: New file, quick hack to test backends for
6273 pixel-by-pixel correctness of the most simple graphic operations.
6275 Fri Jul 14 20:30:25 2000 Owen Taylor <otaylor@redhat.com>
6277 * Really release 1.3.1
6279 * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
6282 Fri Jul 14 18:40:39 2000 Owen Taylor <otaylor@redhat.com>
6286 Fri Jul 14 16:21:26 2000 Owen Taylor <otaylor@redhat.com>
6288 * gtk/gtktextlayout.c: use FALSE for size_only most
6289 of the time when calling gtk_text_layout_get_line_display()
6290 to avoid causing double reshapes when a redraw follows
6293 Tue Jul 11 11:13:40 2000 Owen Taylor <otaylor@redhat.com>
6295 * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
6296 appropriate region and gdk_window_process_updates() so trough
6297 updating doesn't lag behind the window being scrolled.
6299 * gdk/gdkgc.c: Make parent_class pointer static.
6301 Sun Jul 9 21:31:23 2000 Owen Taylor <otaylor@redhat.com>
6303 * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
6306 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
6307 cut-and-paste error in computing memory offset for 4 channels.
6309 Fri Jul 14 14:05:02 2000 Owen Taylor <otaylor@redhat.com>
6311 * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
6312 gtk_rc_append_default_pixmap_path(), since it wasn't
6313 adding an interesting path and we don't have a meaningful
6314 default for this value.
6316 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
6318 * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
6319 gtk-config to gtk-config-2.0 move gtk_.m4 to
6322 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6323 gdk/Makefile.am demos/Makefile.am: Change
6324 library names to libgtk-1.3.la, etc, so that we
6325 can distinguish gtk-1.2 and gtk-2.0 on the linkline.
6327 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6328 gdk/Makefile.am gdk/x11/Makfile.am
6329 Move include files into /usr/include/gtk-2.0,
6330 /usr/lib/gtk-2.0/include/
6332 * autogen.sh acconfig.h configure.in gtk/gtkmain.c
6333 gtk/gtkintl.h: Change package for gettext from
6334 gtk+ to gtk20. Put hack in autogen.sh to modify
6335 po/Makefile.in.in after gettextize to make this
6338 * gtk+.spec: Some updates, not tested.
6340 * gdk-pixbuf/Makefile.am: Move loaders into
6341 $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
6343 * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
6344 $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
6345 to THEMENAME/gtk-2.0/. Move engine directory to
6346 $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
6348 2000-07-12 Tor Lillqvist <tml@iki.fi>
6350 Win32 changes, still doesn't build though.
6352 * gdk/makefile.cygwin
6353 * gdk/win32/makefile.cygwin
6354 * gtk/makefile.cygwin: Updates.
6356 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
6357 default values for fg and bg pixel as X11 does (0 and 1), not
6358 black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
6359 Use 0 for pen width by default (treated as 1 anyway later, but for
6360 apps that might check the value in the GdkGC).
6361 (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
6362 interface to gdk_gc_predraw and _postdraw.
6364 * gdk/win32/gdkwin32.h
6365 * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
6367 * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
6368 extraneous semicolon.
6370 * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
6372 * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
6373 not the Win32 bitspixel value.
6375 * gdk/win32/gdkcc-win32.c:
6376 * gdk/win32/gdkcolor-win32.c
6377 * gdk/win32/gdkprivate-win32.h
6378 * gdk/win32/gdkwin32.h: Changes to make compilable, with new
6379 GDK object structure.
6381 Tue Jul 11 20:59:35 2000 Tim Janik <timj@gtk.org>
6383 * docs/tutorial/gtk_tut_12.es.sgml (name):
6384 * docs/tutorial/gtk_tut_it.sgml (name):
6385 * docs/tutorial/gtk_tut_fr.sgml (name):
6386 * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
6387 outdated email adress: s/timj@psynet.net/timj@gtk.org/.
6389 Tue Jul 11 13:10:57 BST 2000 Tony Gale <gale@gtk.org>
6391 * docs/faq/gtk-faq.sgml: Cleanup indenting and various
6394 Tue Jul 11 08:04:58 2000 Tim Janik <timj@gtk.org>
6396 * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
6397 a bug here, never been here and never fixed anything ;(
6398 (don't segfault if tree->root_tree is NULL, which happens prior
6399 to widget realization, but puke instead).
6401 Tue Jul 11 06:38:42 2000 Tim Janik <timj@gtk.org>
6403 * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
6404 add the necessary tokens.
6406 * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
6407 (gtk_rc_style_to_style): copy thicknesses.
6408 (gtk_rc_init_style): apply thicknesses.
6409 (gtk_rc_parse_style): parse xthickness and ythickness.
6411 * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
6413 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
6415 (_gdk_windowing_window_init):
6416 * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
6417 (gdk_pixmap_create_from_data):
6418 (gdk_bitmap_create_from_data):
6420 * gdk/x11/gdkimage-x11.c (gdk_image_get):
6422 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
6423 * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
6424 * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
6425 (gdk_colormap_get_system):
6427 * gdk/gdkwindow.c (gdk_window_init):
6428 * gtk/gtkstyle.c (gtk_style_new):
6429 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
6430 * gdk/gdkpixmap.c (gdk_pixmap_init):
6431 * gtk/gtkrc.c (gtk_rc_style_new):
6432 use g_object_new() instead of g_type_create_instance() which
6433 is a private function for fundamental type implementations.
6435 Thu Jul 6 16:12:14 2000 Owen Taylor <otaylor@redhat.com>
6437 * configure.in: Add check for db2html
6439 Thu Jul 6 14:53:05 2000 Owen Taylor <otaylor@redhat.com>
6441 * gtk/gtktypeutils.c (gtk_type_init): Add a temporary
6442 hack to set glib_debug_objects based on gtk_debug_flags.
6444 Thu Jul 6 14:12:13 2000 Owen Taylor <otaylor@redhat.com>
6446 * INSTALL.in: Update the Prerequisites section.
6448 * Makefile.am demos/Makefile.am docs/Makefile.am
6449 docs/tutorial/Makefile.am gdk/x11/Makefile.am
6450 gdk/linux-fb/Makefile.am: Dist fixes
6452 Thu Jul 6 12:26:03 2000 Owen Taylor <otaylor@redhat.com>
6454 * NEWS: 10,000 foot view of 1.3.1 changes.
6456 Thu Jul 6 11:54:03 2000 Owen Taylor <otaylor@redhat.com>
6458 * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
6459 gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
6460 gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
6461 gdk/x11/gdkmain-x11.c:
6463 Patch from George Lebl to add a GdkGrabStatus enumeration to use
6464 as a return value of gdk_*_grab(). Previously, we just
6465 returned the X11 values directly.
6467 Thu Jul 6 11:27:44 2000 Owen Taylor <otaylor@redhat.com>
6469 * gdk/x11/Makefile.am: Patch from George Lebl to
6470 install all the headers in the right place.
6472 Tue Jul 4 13:13:01 BST 2000 Tony Gale <gale@gtk.org>
6474 * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
6475 initial conversion to DocBook.
6477 2000-07-04 Tor Lillqvist <tml@iki.fi>
6479 * README.win32: Improve a bit.
6481 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
6482 WM_SYSCHAR, and other changes to get handling of Alt+nnn or
6483 Alt+0nnn on the numpad (used to enter characters by numeric code
6484 from current DOS or ANSI codepage) working correctly, as in other
6487 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
6488 same argument validity tests as in X11 version.
6489 (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
6491 * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
6492 definitions in case missing from headers.
6494 * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
6495 destroy the window-specific cursor.
6496 (RegisterGdkClass): Use the global gdk_ProgInstance instead of
6497 calling GetModuleHandle(NULL).
6498 (gdk_window_set_cursor): Reworked to always copy the passed cursor
6499 with CopyCursor before setting it as the window-specific
6500 cursor. It is OK for the caller to destroy the GdkCursor (and thus
6501 also its Windows cursor) after calling this function. Destroy any
6502 previous window-specific cursor.
6504 Mon Jul 3 17:54:49 2000 Owen Taylor <otaylor@redhat.com>
6506 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
6507 font charset is iso8859-1, not iso-8859-1.
6509 Mon Jul 3 17:08:14 2000 Owen Taylor <otaylor@redhat.com>
6511 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
6512 Use g_get_charset() instead of g_get_codeset().
6514 * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
6515 Comment out some strdup'ing functions to keep timj
6516 happy until we finish fighting this out.
6518 Mon Jul 3 14:24:16 2000 Owen Taylor <otaylor@redhat.com>
6520 * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
6523 * gtk/gtktable.c (gtk_table_attach): Fix missed merge
6524 from 1.2 for parent/child states.
6526 * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
6529 * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
6530 event structures, replace with a generic axes field. Replace
6531 deviceid/sourec with GdkDevice *device.
6533 * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
6534 to extract particular axis use value from event. (Also
6535 can be used for normal X/Y.)
6537 * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
6538 allow for arbitrary number of axes, namespace everything
6539 as gdk_device_*. Replace guint32 deviceid with GdkDevice *
6542 * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
6543 Get rid of the gdk_input_vtable setup if favor of simply
6544 defining the functions in gdkinput-none/gxi/xfree.c in
6545 a similar fashion to the way that the port structure is
6548 * gtk/gtkdnd.c: Fix fields of synthesized button press event
6549 for new event structures.
6551 * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
6552 new device interfaces.
6554 Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
6556 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
6557 set the initial text.
6559 * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
6560 gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
6561 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
6562 gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
6564 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6565 pango_layout_set_font_description to simplify.
6567 Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
6569 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6570 pango_layout_set_font_description to simplify.
6572 Sun Jul 2 17:06:40 2000 Owen Taylor <otaylor@redhat.com>
6574 * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
6575 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
6576 pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
6578 * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
6579 PANGO_PIXELS() macro.
6581 Sun Jul 2 15:24:41 2000 Owen Taylor <otaylor@redhat.com>
6583 * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
6584 that returns a PangoContext owned by the widget and updated to
6585 match future changes in the widget. Also, make
6586 gtk_widget_create_pango_layout() use this context. If we ever
6587 add a ::changed signal to PangoContext, this will make things
6588 much more convenient.
6590 * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
6591 in the appropriate places instead of destroying the layouts and
6594 * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
6595 in a few strategic places.
6597 Sun Jul 2 14:37:58 2000 Owen Taylor <otaylor@redhat.com>
6599 * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call
6600 gtk_widget_size_request() on reparented child, if one. Otherwise,
6601 queue_resize() on the child never results in it getting size-requested
6604 * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
6605 in option menus, so that (with luck) people won't copy it into
6606 their apps in the future.
6608 * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
6609 to gtk_option_menu_calc_size. This isn't perfect, but should fix
6610 a lot of problems with changing the size of the menu's menu
6611 items after adding it to the option menu.
6613 * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
6615 * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
6616 the text direction for a widget changes.
6618 * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
6619 ::direction_changed to get rid of various hacks.
6621 Sun Jul 2 13:19:12 2000 Owen Taylor <otaylor@redhat.com>
6623 * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
6626 Sun Jul 2 13:06:26 2000 Owen Taylor <otaylor@redhat.com>
6628 * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
6629 flag to the structure. Do not call XFreePixmap on pixmaps created
6630 by gdk_pixmap_foreign_new().
6632 Sun Jul 2 12:45:50 2000 Owen Taylor <otaylor@redhat.com>
6634 * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
6635 value using GdkRGB functionality given GdkColormap and GdkColor.
6636 (name not final, waiting for inspiration.)
6638 * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
6639 set the foreground/background of a GC using the GC's colormap
6640 and GdkRGB. (name not final, waiting for inspiration.)
6642 * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from
6643 gdk_rgb_get_cmap(), put #define in gdkcompat.h.
6645 * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
6646 gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
6647 purely a function of the corresponding colormap. Make
6648 gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
6650 * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
6651 gdk_pixbuf_*create_from_xpm_* in terms of
6652 gdk_pixbuf_new_from_xpm_data(), move into platform independent
6655 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
6656 advantage of the new draw_rgb_32_image_dithalign.
6658 * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
6660 * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
6663 * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
6665 * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
6666 which we initialize from the drawable when the GC is created,
6667 if the drawable has a colormap.
6669 * gdk/x11/gdkgc-x11.c: include string.h for memset.
6671 * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
6673 * gtk/gtklayout.[ch]: Remove unsed configure serial member.
6675 Sat Jul 1 16:28:32 2000 Owen Taylor <otaylor@redhat.com>
6677 * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
6678 actually returning expose events, make sure to set
6679 the count field properly.
6681 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
6682 accidentally reintroced bug which always cleared
6683 the graphics_exposures value.
6685 Wed Jun 28 18:03:09 BST 2000 Tony Gale <gale@gtk.org>
6687 * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
6689 Wed Jun 28 17:49:05 BST 2000 Tony Gale <gale@gtk.org>
6691 * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
6693 Wed Jun 28 13:31:55 BST 2000 Tony Gale <gale@gtk.org>
6695 * docs/faq/gtk-faq.sgml: Start of Section 6.
6697 Mon Jun 26 19:37:04 2000 Owen Taylor <otaylor@redhat.com>
6699 * configure.in: Put 1.3.1 in warning message, not 1.3.0.
6701 (Fixes problem with drawing childless frames. Pointed out
6702 by and a first patch from Anders)
6704 * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
6705 compute a child_allocation, even if we don't have a child.
6707 * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
6708 Always chain to the parent's impl, even if we don't have a child.
6710 Mon Jun 26 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
6712 * gdk/gdkrgb.c: If possible, create only a single shm segment and
6713 use multiple parts of it instead of creating a bunch of separate
6714 segments, since the maximum number of segments per system is not
6715 large. (This might be worth backporting to GTK+-1.2.x if we make a
6718 * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
6719 structure in preparation for per-colormap GdkRGB.
6721 * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
6722 to False when we get EINVAL from shmget so that the caller of
6723 gdk_image_new can retry with a smaller segment size.
6725 Mon Jun 26 13:01:16 BST 2000 Tony Gale <gale@gtk.org>
6727 * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
6729 Fri Jun 23 17:54:23 2000 Tim Janik <timj@gtk.org>
6731 * configure.in: make the current version number 1.3.1 (binary age 0,
6734 * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
6735 gtkcompat.h is all we want.
6737 * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
6738 GLib primitive types. fixed g_type_register_fundamental() argument
6741 * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
6744 * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
6745 object code cleanup, comment trigraph fixes, etc...
6747 2000-06-23 Havoc Pennington <hp@redhat.com>
6749 * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark
6750 instead of making up a bogus name for first_para_mark
6752 * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow
6755 Thu Jun 22 17:43:51 BST 2000 Tony Gale <gale@gtk.org>
6757 * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
6759 2000-06-21 Havoc Pennington <hp@pobox.com>
6761 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
6762 we didn't check window->bg_pixmap != GDK_NO_BG.
6764 * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
6767 Thu Jun 22 14:02:19 BST 2000 Tony Gale <gale@gtk.org>
6769 * docs/faq/gtk-faq.sgm: Move file to here.
6770 TODO: Update Makfile.am
6772 Thu Jun 22 13:41:09 BST 2000 Tony Gale <gale@gtk.org>
6774 * docs/gtk-faq.sgm: Add Section 2
6776 Thu Jun 22 08:43:45 BST 2000 Tony Gale <gale@gtk.org>
6778 * docs/gtk-faq.sgm: New file. Start of DocBook
6781 Wed Jun 21 23:04:17 2000 Owen Taylor <otaylor@redhat.com>
6783 * configure.in (GDK_PIXBUF_MAJOR): Define version
6784 numbers for GDK_PIXBUF_*, as they get substituted
6785 into a header file. Need to consider versioning
6786 for gdk-pixbuf more carefully later.
6788 2000-06-21 Raja R Harinath <harinath@cs.umn.edu>
6790 Work with srcdir != builddir.
6791 * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use
6792 <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
6793 * demos/testpixbuf.c: Likewise.
6794 * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
6795 * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use
6797 * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h". Don't include
6799 * demos/Makefile.am (INCLUDES): Remove unneeded directories.
6801 Wed Jun 21 19:45:02 2000 Owen Taylor <otaylor@redhat.com>
6803 * TODO.xml: Change 1.4 version numbers to 2.0.
6805 Wed Jun 21 19:29:08 2000 Owen Taylor <otaylor@redhat.com>
6807 * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
6808 fixups to GTK+ standard.
6810 Wed Jun 21 16:38:13 2000 Owen Taylor <otaylor@redhat.com>
6812 * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
6815 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
6818 * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
6819 gdk-pixbuf with GDK dependencies moved into GDK.
6821 * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
6822 move gdk-pixbuf-loader here until GObject has signals.
6824 * demos/: New directory of demos. Move demos from
6827 * demos/pixbuf-init.c: Small bit of code to check for
6828 loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
6829 set GDK_PIXBUF_MODULEDIR appropriately.
6831 * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
6832 define which no longer makes sense.
6834 2000-06-21 Havoc Pennington <hp@redhat.com>
6836 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
6837 gtk_get_default_language
6839 * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language):
6840 new function to get the default language
6842 * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c:
6843 s/gtk_text_view_style_values/gtk_text_style_values/
6845 * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
6846 Add a "language" field to tags.
6848 (gtk_text_tag_set_arg): Fix bug in setting
6849 "bg_full_height_set" tag.
6851 2000-06-21 Havoc Pennington <hp@redhat.com>
6853 * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
6856 * gtk/gtktexttypes.c: Remove UTF functions, use glib
6857 stuff instead when possible.
6859 * gtk/gtktexttypes.h: Delete some unused constants
6861 * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
6862 testtextbuffer.c: use glib instead of custom unicode routines
6864 Wed Jun 21 12:50:58 2000 Owen Taylor <otaylor@redhat.com>
6866 * docs/es/: Removed mistakenly added generated sgml
6868 * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
6869 Remove outdated info files.
6871 * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
6872 Moved tutorial files into subdir
6874 * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
6877 * docs/man/gtk_button.pod: Remove. (contents will be
6878 integrated into gtk-reference button page.)
6880 * configure.in docs/Makefile.am docs/tutorial/Makefile.am
6881 docs/faq/Makefile.am: Adjust for new organization
6883 2000-06-21 Christopher Blizzard <blizzard@redhat.com>
6885 * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
6886 not $(MKINSTALLDIRS)
6888 Wed Jun 21 12:24:28 2000 Owen Taylor <otaylor@redhat.com>
6890 * gtk/testgtk.c (create_text): Finish the job Elliot started
6891 of removing font setting test for text widget. (Since text widget
6892 and GdkFont are not deprecated, and cause portability problems.)
6894 Wed Jun 21 11:41:43 2000 Owen Taylor <otaylor@redhat.com>
6896 * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
6897 gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
6898 Remove use of libunicode in favor of new GLib functions.
6900 * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
6901 nano-x, framebuffer. The X11 include is just a hack until we get
6902 the necessary functions in gdkcolor.h, so there is no reason to
6903 add other includes of platforms.
6905 * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert
6906 window bigger than the screen change.
6908 * gtk/testgtk.c: Revert some random changes from Elliot
6909 that had no particular point and were causing testgtkrc
6910 not to function correctly.
6912 * gdk/gdkregion-generic.h: Revert change from Elliot. Just
6913 because GdkSegment and GdkRegionBox have the same fields,
6914 it doesn't mean that 'typedef GdkSegment GdkRegionBox'
6915 results in clearer code.
6917 * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
6918 gdk_input_translate_coordinates): Fix missed GdkObjectification
6920 2000-06-18 Elliot Lee <sopwith@redhat.com>
6922 * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
6923 * gtk/gtk{plug,socket}.h: Missed commits from previous.
6925 2000-06-20 Havoc Pennington <hp@redhat.com>
6927 * modules/linux-fb/Makefile.am: Make this compile
6928 without framebuffer enabled
6930 * gdk/linux-fb/Makefile.am: Add conditional to not build
6931 framebuffer unless specified in configure
6933 * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
6934 the size of the target instead of source if -1 was passed for
6937 * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
6938 width/height confusion.
6940 2000-06-19 Havoc Pennington <hp@redhat.com>
6942 * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
6943 GDK_DRAWABLE_XID. In the future, we probably want to make it
6944 faster with G_DISABLE_CHECKS turned on.
6946 2000-06-14 Havoc Pennington <hp@redhat.com>
6948 * gdk/Makefile.am: add gdkpixmap.c
6950 * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
6951 s/gdk_image_init/_gdk_windowing_image_init
6953 * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
6956 * gdk/gdkcolor.h: make GdkColormap a GObject subclass
6958 * gdk/gdkcompat.h: remove GdkWindowType compat, since
6959 GdkWindowType is now non-deprecated;
6960 change gdk_window_get_type() compat to be
6961 gdk_window_get_window_type().
6963 * gdk/gdkdnd.h: make GdkDragContext a GObject.
6965 * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
6966 virtual GObject. Make all functions call into the vtable.
6967 Move gdk_image_put() guts in here. Remove GdkDrawableType
6968 and gdk_drawable_get_type(), these are now GdkWindow-specific.
6969 draw_image, get_depth, get_size, set_colormap, get_colormap,
6970 get_visual added to the vtable.
6972 * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
6973 GObject. Virtualize everything.
6974 (gdk_gc_new_with_values): remove check for destroyed window,
6975 because now GdkWindow::create_gc will check this.
6976 (gdk_gc_set_values): New function to set GC values, this
6977 was already implemented but wasn't in the header
6979 * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
6981 * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
6982 _gdk_window_draw_image(), remove _gdk_windowing_window_class,
6983 remove _gdk_window_class; add _gdk_window_impl_get_type() and
6984 _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
6985 _gdk_windowing_window_init, rename gdk_image_init to
6986 _gdk_windowing_image_init.
6988 * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
6989 (gdk_draw_layout): Remove check for destroyed window,
6990 because all the drawable methods already check it.
6992 * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
6993 Add gdkpixmap.c which contains implementation of GdkDrawable
6994 virtual table (by chaining to a platform-specific implementation
6997 * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
6998 GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
6999 GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7000 GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7003 * gdk/gdktypes.h: #include <glib-object.h>
7005 * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
7006 Move most functionality to platform-specific implementation
7007 object. GdkWindow itself now handles the backing store, then
7008 chains to the platform-specific implementation.
7009 (gdk_window_get_window_type): return GdkWindowType of the window.
7010 (gdk_window_peek_children): New routine, returns the children of
7012 (gdk_window_get_children): Was in X11-specific code and did
7013 XQueryTree. Changed to simply return a copy of window->children;
7014 so it can go in cross-platform code.
7016 * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
7018 * gdk/x11/gdkcolor-x11.c: implement X-specific parts of
7019 GdkColormap; just changed to use the new private data instead
7020 of casting to GdkColormapPrivate.
7022 * gdk/x11/gdkcursor-x11.c: added a couple typechecks to
7025 * gdk/x11/gdkdnd-x11.c: Change the way we access private fields
7026 (private data member in the GObject).
7027 (xdnd_manager_source_filter): Function had broken
7028 error handling, fix it (use gdk_error_trap_push).
7030 * gdk/x11/gdkdrawable-x11.c: This file now implements
7031 a base class for GdkWindowImplX11/GdkPixmapImplX11. This
7032 base class is purely for the convenience of the X port,
7033 and not part of the interface to cross-platform GDK.
7035 * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7037 * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7038 specific to X, and returned by the create_gc virtual method
7039 of GdkDrawableImplX11.
7040 (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7041 rather than gchar, this was also changed in the GdkGC vtable.
7042 (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7043 mask is 0, return immediately, instead of checking every flag.
7044 This is faster, and keeps us from segfaulting if values is NULL
7045 and the mask contains some nonzero flags.
7047 * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7050 * gdk/x11/gdkglobals-x11.c: change type of grab window, since
7051 GdkWindowPrivate is gone.
7053 * gdk/x11/gdkim-x11.c: rename things that got renamed.
7055 * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
7056 remove the image_put stuff that got transferred to GdkDrawable.
7058 * gdk/x11/gdkinput.c: renamings
7060 * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7062 * gdk/x11/gdkpixmap-x11.c: GObject conversion
7064 * gdk/x11/gdkprivate-x11.h: indentation fixes
7066 * gdk/x11/gdkproperty-x11.c: renamings
7068 * gdk/x11/gdkselection-x11.c: renamings
7070 * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
7071 implements the platform-specific "impl" object.
7072 Moved gdk_window_get_children to gdk/gdkwindow.c
7074 * gdk/x11/gdkx.h: Remove all the private structs and private datas
7075 that no longer exist. Add declaration of GdkGCX11 object here.
7076 Fix all the macros to still work.
7078 * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7079 GdkDragContext from the boxed types since they are now GObjects.
7081 * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7082 moved xthickness/ythickness into the instance. GtkStyleClass
7083 functions are now in the standard vtable for GtkStyle, so you have
7084 to create a GObject subclass to write a theme engine.
7085 (gtk_style_copy): fixed a leaked PangoFontDescription
7086 (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7087 can be the standard GObject function.
7090 s/style->klass->[xy]thickness/style->[xy]thickness
7091 s/pango_layout_unref/g_object_unref/
7093 * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7095 * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
7096 accessing GDK internals.
7098 * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
7099 accessing GDK internals.
7101 2000-06-18 Elliot Lee <sopwith@redhat.com>
7103 * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7105 * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7106 problem by calculating event position relative to the trough
7107 rather than the slider.
7108 * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7110 * gdk/gdkgc.h: Add GDK_NOR.
7112 * configure.in, Makefile.am: Add modules top level dir
7113 * configure.in: Only use pangox library if building x11 target.
7114 * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7116 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
7118 * gtk/gtkcolorsel.c: Change private class member to be named
7119 private_data throughout the file.
7121 * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7122 private_data to avoid clashing with keyword.
7124 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
7126 * gdk/gdkdnd.h: Add comment to remove warning.
7128 Sun Jun 18 15:35:35 2000 Pablo Saratxaga <pablo@mandrakesoft.com>
7130 * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7131 Byelorussian language; changed the Makefile and file names
7134 Mon Jun 12 16:58:40 2000 Owen Taylor <otaylor@redhat.com>
7136 * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7137 rather than gdk_window_hide; this makes things work
7138 correctly if the window is programmatically hidden while
7141 Sun Jun 11 12:46:19 2000 Owen Taylor <otaylor@redhat.com>
7143 * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7144 cut and paste typo where wrong pixmap was being
7145 unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7147 Sun Jun 11 10:22:36 2000 Owen Taylor <otaylor@redhat.com>
7149 * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7150 Add helper function to compute format / bytes
7151 relationship. Use in a couple places to fix up
7152 errors which assume 8 * format.
7154 * gtk/gtkselection.c (gtk_selection_request): Use 32
7155 rather than 8 * sizeof (GdkAtom), to work correctly
7158 Thu Jun 8 21:54:51 2000 Christopher Blizzard <blizzard@redhat.com>
7160 * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
7162 (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
7165 * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
7166 checking macros return NULL since the function has a return value.
7168 Wed Jun 7 15:44:42 2000 Owen Taylor <otaylor@redhat.com>
7170 * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
7171 GTK+ from building at all.
7173 * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
7175 Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
7177 * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
7178 gtk/Makefile.am: make it possible to configure gtk for different
7179 targets on the same platform. The library name is now
7180 libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
7181 flag. Only the x11 target compiles right now.
7182 * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
7183 gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
7184 * gdk/nanox/gdk*generic*: delete generic region code.
7185 * gdk/linux-fb/gdk*generic*: delete generic region code.
7186 * README.nanox: update information.
7188 Tue Jun 6 10:53:59 2000 Owen Taylor <otaylor@redhat.com>
7190 * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
7191 prepend not append. (Pointed out by Brett Hall.)
7193 Tue Jun 6 01:59:57 2000 Owen Taylor <otaylor@redhat.com>
7195 * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
7197 Mon Jun 5 16:00:09 2000 Owen Taylor <otaylor@redhat.com>
7199 * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
7200 need this later, and this makes sure that the atexit for
7201 glib gets called after that for GDK, so atexits are
7202 properly ordered for object leak checking.
7204 * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
7206 * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call
7207 pango_x_shutdown_display()
7209 * gtk/simple.c (main): Close window on destroy.
7211 Mon Jun 5 11:50:02 2000 Owen Taylor <otaylor@redhat.com>
7213 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
7214 to treat initial creation different from setting with
7215 regards to the graphics-exposures parameter, so add a parameter
7216 indicating whether this is initial or not.
7218 Mon Jun 5 13:29:31 2000 Owen Taylor <otaylor@redhat.com>
7220 * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
7221 to sort of work by adding an extra return_exposes arg
7222 to gdk_event_translate() - it might be better to simply
7223 deprecate the function altogether and force people to rewrite
7224 without it. gdk_window_scroll() handles most of it, and where
7225 gdk_window_scroll() doesn't work, simply redrawing more does.
7227 * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
7230 * gtk-config.in: Include PANGO_CFLAGS/LIBS.
7232 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a
7233 bunch of pretty much useless /* Print debugging info */ comments
7234 which had drifted away from the code they were commenting.
7236 2000-06-02 Havoc Pennington <hp@pobox.com>
7238 * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
7239 is in working order.
7241 * gtk/testtext.c: Change to reflect anonymous mark API
7243 * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
7245 * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
7246 field, which was unused.
7248 * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
7251 * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*
7253 * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
7254 flag on the insertion point and selection bound
7256 Throughout, use GtkTextMark instead of GtkTextLineSegment, and
7257 make mark-manipulation functions take a GtkTextMark* instead of a
7260 * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
7261 GtkTextMarkBody; will be used to detect attempts to delete
7262 the permanent marks (insert and selection bound)
7264 * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer
7266 Fri Jun 2 12:56:01 2000 Owen Taylor <otaylor@redhat.com>
7268 * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
7271 * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event):
7272 Honor DOUBLE_BUFFRED_FLAG
7274 * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
7275 function to set the DOUBLE_BUFFERED flag.
7277 * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
7278 or not exposes done on the widget should be double-buffered.
7280 * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
7281 to be what would be expected. (Fixes problem with a
7282 g_return_if_fail() validating a TextDirection enumeration)
7284 Thu Jun 1 23:05:13 2000 Owen Taylor <otaylor@redhat.com>
7286 * gtk/gtkwidget.c: Remove all references to
7287 offscreen flag which was no longer used.
7289 * gtk/gtkprivate.h (enum): Remove unused flags and compress.
7291 * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
7292 for non-null label_widget->parent.
7294 * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
7295 which no longer was used.
7297 * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
7299 * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
7302 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
7303 check for destroyed windows.
7305 Thu Jun 1 13:48:45 2000 Owen Taylor <otaylor@redhat.com>
7307 * gtk/gtkimmulticontext.c: Add a finalize method and unref
7308 the slave context there.
7310 * gtk/gtkinvisible.[ch]: Make reference counting behavior
7311 identical to GtkWindow.
7313 Thu Jun 1 01:54:11 2000 Owen Taylor <otaylor@redhat.com>
7315 * Makefile.am gdk/gdkpango.c: Copy the layout render function from
7316 pangox to here, so we can write them independent of rendering
7317 system, using GDK primitives.
7319 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
7320 gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
7321 since we have a rendering-system independent implementation in
7322 terms of draw_glyphs().
7324 * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
7325 function to render a single line.
7327 * gdk/x11/gdkpango.c: Move the guts of this file mostly
7328 into ../gdkpango.c, which simplifies things, since we
7329 don't have to deal with raw X gc's.
7331 Fri May 19 04:28:16 2000 Owen Taylor <otaylor@redhat.com>
7333 * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
7334 get the logical attributes for a given GtkTextLine.
7336 Tue May 30 16:05:39 2000 Owen Taylor <otaylor@redhat.com>
7338 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
7339 g_locale_get_codeset() to g_get_codeset() change.
7341 Tue May 30 15:03:19 2000 Owen Taylor <otaylor@redhat.com>
7343 * gtk/testcalendar.c (calendar_font_selection_ok): Use font
7346 * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
7349 * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
7350 redoing (vastly simplifying) for Pango. Still needs quite
7351 a bit of work. (Size selection is currently poor. List of
7352 predefined sizes is not a good idea, since all of these
7353 sizes won't necessarily be distinct.)
7355 Tue May 30 13:50:19 2000 Owen Taylor <otaylor@redhat.com>
7357 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
7358 CODESET results for LANG=C.
7360 Mon May 29 15:49:10 2000 Owen Taylor <otaylor@redhat.com>
7362 * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
7363 which takes a stringized pango font description;
7364 ignore the older 'font' and 'fontset' declarations.
7366 * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
7367 field with a GdkFont derived via gdk_font_from_description(),
7368 for compatibility. (Should we just remove it entirely?
7369 Probably too much compatibility breakage, but people
7370 should be migrating to the new Pango stuff as quickly
7373 Mon May 29 15:47:41 2000 Owen Taylor <otaylor@redhat.com>
7375 * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
7377 Mon May 29 15:44:46 2000 Owen Taylor <otaylor@redhat.com>
7379 * gtk/gtkcalender.c: Roughly pango-ized. Really needs
7380 redoing; there are some bugs in size allocation right
7381 now, the semi-existant distinction between header / day
7382 fonts was removed, but, with Pango, could actually
7383 be made functional in a nice way.
7385 * gtk/testcalender: Move calender from examples into this
7386 directory as a test program. (We really need to restrcture
7387 testgtk into a whole directory full of tests for every
7388 widget or functionality group, separated into multiple .c
7391 Mon May 29 15:19:56 2000 Owen Taylor <otaylor@redhat.com>
7393 * gtk/testgtk.c (file_exists): Fix stupid typo that
7394 was keeping RC file from being loaded.
7396 * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
7399 Mon May 29 14:31:27 2000 Owen Taylor <otaylor@redhat.com>
7401 * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
7402 Add function to load a GdkFont from a PangoFontDescription.
7404 2000-05-29 Tor Lillqvist <tml@iki.fi>
7406 * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
7407 variable should be of type GdkEventPrivate.
7409 Fri May 26 17:16:40 2000 Owen Taylor <otaylor@redhat.com>
7411 * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
7412 to have any widget for the label, use a GtkLabel widget
7413 to display the text. (Based partially on a patch from
7416 (Quite a bit of code reorganization - strip 90% of the
7417 guts out of gtkaspectframe and add a single virtual
7418 func to GtkFrameClass - compute_child_allocation.)
7420 Fri May 26 12:00:02 2000 Owen Taylor <otaylor@redhat.com>
7422 * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
7423 (Removed clist->row_center_offset field because caching
7424 it wasn't saving time or code, added private function
7425 _gtk_clist_create_cell_layout()).
7427 Wed May 24 15:59:37 2000 Owen Taylor <otaylor@redhat.com>
7429 * gtk/gtkaccellabel.c: Pangoized.
7431 * gtk/[hv]ruler.c: Pangoized
7433 Mon May 22 19:23:59 2000 Owen Taylor <otaylor@redhat.com>
7435 * gtk/gtkfilesel.c (gtk_file_selection_init):
7436 Use gtk_clist_set_column_auto_resize() to remove need
7437 need for manual column width computations.
7439 Mon May 22 18:50:26 2000 Owen Taylor <otaylor@redhat.com>
7441 * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
7442 ensuring Pango correctness, and considerably simplifying the
7445 * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
7447 * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
7448 getting of numbers of lines.
7450 * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
7451 to the actual requested width of the lable, not to the wrap
7454 * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
7456 * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
7457 gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
7459 * gtk/gtktextview.c: Fix structure inheritance.
7461 * gtk/gtkprogressbar.c: Pangoize.
7463 Mon May 22 15:47:30 2000 Owen Taylor <otaylor@redhat.com>
7465 * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
7468 * gtk/gtktextlayout.c (find_display_line_above): Fixed
7469 bug with computing line tops.
7471 * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
7473 Thu May 18 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
7475 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
7476 and y_offset coordinates to do what we need now. (The offset between
7477 buffer and layout coordinates has been reintroduced, but is a
7478 bit different than before.)
7480 * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
7481 handle the adjustments ourselves, and scroll as necessary using
7482 the new gdk_window_scroll().
7484 The advantage of this is that when we are incrementally revalidating,
7485 we are essentially rearranging things around the visible portion
7486 of the screen. With the old setup, the visible portion of the
7487 screen was moved around in the layout, so scrolling and redrawing
7488 to track that caused jumping of the display. Since we now
7489 control the scrolling ourselves, we can suppress this and
7490 only redraw when things actually change.
7492 Thu May 18 18:47:25 2000 Owen Taylor <otaylor@redhat.com>
7494 * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
7495 the region not just redisplay it after-all, since we store the
7496 cursors in the LineDisplay. (Ugly interactions here between
7497 GtkLayout and GtkTextBTree here.)
7499 * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
7501 Thu May 18 18:43:21 2000 Owen Taylor <otaylor@redhat.com>
7503 * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
7504 Added function to scroll contents of a window while keeping the
7505 window constant. Works by XCopyArea or guffaw-scrolling depending
7506 on the details of how the window is set up. (guffaw-scrolling
7507 still needs to be filled in.)
7509 Wed May 17 22:36:53 2000 Owen Taylor <otaylor@redhat.com>
7511 * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
7512 move the debugging that was tied to a global variable
7515 * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
7517 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
7518 validated flag, in line data instead of setting height/width to
7519 -1. This allows us to perform operations with partially invalid
7520 buffer (using the old size for invalid lines) and thus to do
7521 incremental vaidation. Keep height/width aggregates up to date
7522 when deleting text and rebalancing the tree.
7524 * gtk/gtktextbtree.[ch]: Add functions validate a line
7525 (gtk_text_btree_validate_line), and to validate up
7526 to a number of pixels (gtk_text_btree_validate).
7528 * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
7529 that indicates that something is changed and a revalidation
7530 pass is needed. Change ::need_repaint to ::changed, and
7531 make it take old and new yranges instead of a rectangle.
7533 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
7534 the line_data_destroy() function from
7535 gtk_text_btree_add_view() to a virtual function in
7538 * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
7539 since we are handling partial repaints in a different fashion
7542 * gtk/gtktextbtree.[ch]: Only repaint the changed portion
7543 of the selection instead of queueing a repaint on the
7546 * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
7547 get_selection_bounds() down to btree, make the function
7548 in buffer a wrapper around the btree function.
7550 * gtk/gtktextlayout.[ch]: Add functions to check if the
7551 layout is valid and to recompute either a range of pixels
7552 aroudn a line or a certain total number of pixels.
7554 * gtk/gtktextlayout.[ch]: Cache a single line display;
7555 now that we only redraw the needed portions, the hit rate
7556 for this cache is quite high.
7558 * gtk/gtktextview.[ch]: Keep track of the first paragraph
7559 on the screen so that when re-laying-out the buffer, we can
7560 keep the same place. This requires connecting to ::value_changed
7563 * gtk/gtktextview.[ch]: Add idle functions to revalidate
7564 the buffer after we receive an ::invalidated signal.
7566 Wed May 17 22:10:47 2000 Owen Taylor <otaylor@redhat.com>
7568 * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
7569 to max of allocation and layout size, not just to the
7572 * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
7573 Invalidate window so it gets redrawn properly.
7575 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
7576 to mean the entire window.
7578 * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
7581 Mon May 15 14:51:31 2000 Owen Taylor <otaylor@redhat.com>
7583 * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
7584 to get the name of a mark.
7586 * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
7587 to find the paragraph from a y position.
7589 Thu May 11 12:57:20 2000 Owen Taylor <otaylor@redhat.com>
7591 * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
7592 nodes have width/height >= 0, not > 0.
7594 Tue May 9 21:29:06 2000 Owen Taylor <otaylor@redhat.com>
7596 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
7597 Add a size_only flag, so when we only need the size, we don't create
7598 useless appearance attributes.
7600 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
7601 duplicate setting of font description.
7603 * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
7605 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
7607 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
7608 EXTRA_DIST. It does not work well when the file that
7609 everything depends on is not in the tarball.
7611 Wed Apr 26 00:56:14 2000 Owen Taylor <otaylor@redhat.com>
7613 * gtk/testgtk.c: Some hacks and fixes so that it basically
7614 works when not sitting in the GTK+ build tree.
7616 2000-05-03 Havoc Pennington <hp@redhat.com>
7618 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7619 Properly determine the ordering of the tag root and the current
7620 line within the tree. Previous algorithm only worked if the tag
7621 root's immediate parent was the common root of both the current
7622 line and the tag root.
7624 Wed Apr 26 00:43:00 2000 Owen Taylor <otaylor@redhat.com>
7626 * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
7629 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
7630 the widget text directional dynamically.
7632 * gtk/gtktextview.[ch]: Added functions to get and set default
7635 Tue Apr 25 23:47:38 2000 Owen Taylor <otaylor@redhat.com>
7637 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
7638 in cursor location computation.
7640 Tue Apr 25 23:22:59 2000 Owen Taylor <otaylor@redhat.com>
7642 * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
7643 vadjusment values properly when layout gets smaller.
7645 * gtk/gtktextview.c (need_repaint_handler): Areas being
7646 passed in are far completely inaccurate, and sometimes
7647 too small, so, for now, just queue a redraw on the
7648 whole visible region.
7650 2000-04-25 Havoc Pennington <hp@redhat.com>
7652 * gtk/gtktextbtree.c (summary_destroy): new function to
7653 destroy tag summary nodes
7654 (gtk_text_line_next_could_contain_tag): this function was
7655 totally broken if the line passed in wasn't below the tag
7657 (gtk_text_btree_first_could_contain_tag): In the tag == NULL
7658 "wildcard" case, we have to do a linear scan. Blah.
7659 (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
7660 we have to do the linear scan
7661 (tag_removed_cb): When a tag is removed from the tag table,
7662 remove the GtkTextTagInfo node from the btree.
7663 (gtk_text_btree_spew): Implement the spew function, for
7664 our debugging pleasure.
7666 Tue Apr 25 19:40:18 2000 Owen Taylor <otaylor@redhat.com>
7668 * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
7669 a problem with referring to the wrong buffer.
7671 * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
7673 * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
7674 font description to gtk_style_new() - otherwise things
7675 don't work without a .gtkrc file.
7677 * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
7678 tags table if we create it ourself, too.
7680 * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
7681 it was conflicting with XKB modifiers.
7683 * gtk/gtktextview.[ch]: Add simple support for
7686 Mon Apr 24 19:34:18 2000 Owen Taylor <otaylor@redhat.com>
7688 * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
7689 with deletion from last commit.
7691 Mon Apr 24 19:29:40 2000 Owen Taylor <otaylor@redhat.com>
7693 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
7694 in the context from the current locale.
7696 * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
7697 context, not hardcoded value.
7699 * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
7702 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
7704 * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
7705 attributes - that doesn't handle partial-glyph selection
7706 properly. Instead use new pango_layout_line_get_x_ranges()
7707 functionality to draw the selection.
7709 * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
7710 now properly handles out-of-range coordinates.
7712 * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
7714 * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
7717 * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
7718 for paragraphs opposite to the base direction of the widget.
7720 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
7722 * gtk/gtktextlayout.c: Don't split segments on marks, since that
7723 causes Arabic words to reshape as you cursor through.
7725 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
7726 cursor position when moving vertically with the arrow keys and
7727 scrolling with page-up/page-down. (Arrow keys save only the X,
7728 scrolling saves both X and Y.)
7730 This means you can line-up / line-down or page-up / page-down
7731 without losing your place, and also that moving vertically
7732 with the cursor keys keeps the same X position, not the same
7735 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
7736 arrow keys move by display lines, not paragraphs.
7738 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
7740 * gtk/gtklayout.c: Make sure that the bin window is at least
7741 as big as the allocation. (Should we also make sure that the
7742 bin window is big enough to completely cover widget->window?)
7744 * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
7745 function to get the onscreen rectangle.
7747 * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
7748 for offsets in window coordinates.
7750 Sun Apr 16 16:13:27 2000 Owen Taylor <otaylor@redhat.com>
7752 * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
7755 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
7756 from the widget direction.
7758 * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
7759 Add a "direction" attribute.
7761 * gtk/gtktextview.c: global s/tkxt/text_view/.
7763 * gtk/testtext.c: Added long block of text in Arabic, to test out
7764 the direction attributes. (Some problems with the shaping system
7765 for arabic become obvious - like the fact the cursor splits words
7766 into unjoined pieces.)
7768 Fri Apr 14 12:54:34 2000 Owen Taylor <otaylor@redhat.com>
7770 * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
7772 * gtk/gtktextlayout.c: Fix up alignment.
7774 * gtk/testtext.c: Add some tests for centering, wrapping.
7776 Fri Apr 14 09:26:22 2000 Owen Taylor <otaylor@redhat.com>
7778 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7779 Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
7780 If we wrote GTK+-specific layout-render function this could just replace
7781 the draw_layout() operation in the vtable.
7783 * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
7784 pango_layout_get_cursor_pos() and use that function.
7786 * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
7787 is a non-static symbol.
7789 * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
7790 with gtk_text_btree_find_line_by_y()
7792 * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
7793 renderer that handles GtkTextAppearance attributes.
7795 * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
7797 - Move the values in the style that don't affect geometry into a
7798 GtkTextAppearance structure.
7799 - Change underline to take a PangoUnderline and "font" a string
7800 representation of a font description
7801 - Add a "font_desc" attribute which takes a FontDescription structure.
7803 * gtk/gtktextlayout.[ch]:
7805 - Get rid of the display-line list per each line. Instead, we
7806 generate, on demand, a GtkTextLineDisplay structure which]
7807 contains a PangoLayout * and other necesary information
7808 (offsets, cursor locations) for displaying a paragraph.
7809 - Get rid of the code to wrap lines, create display chunks,
7810 etc. Instead, we just go through a paragraph and convert
7811 it into the necessary inputs to a PangoLayout.
7812 - Implement a new attribute type, GtkTextAttrAppearance. This
7813 holds a GtkTextAppearance, and is used to pass colors,
7814 stipple, etc, through from the layout to the display without
7815 having to use lots and lots of individual attributes.
7816 - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
7817 in terms of PangoLayout functions.
7819 * gtk/gtktextview.c:
7821 - Handle passing the necessary PangoContext to the layout
7822 - Some fixups in painting to deal with the automatic backing store
7823 and offsetting of GTK+-1.4
7824 - Add a style_set handler so that the default style reacts
7825 properly to theme changes.
7827 * gtk/gtktext?*.[ch]: Random code-style fixes.
7829 * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
7831 Mon Apr 10 10:33:45 2000 Owen Taylor <otaylor@redhat.com>
7833 * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
7834 in original form preparatory to Pango-ization and gdkimcontext-ization.
7836 Thu Apr 6 19:25:39 2000 Owen Taylor <otaylor@redhat.com>
7838 * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
7839 so that we can derive from gtkimcontext in language bindings properly.
7841 Thu Apr 6 16:02:52 2000 Owen Taylor <otaylor@redhat.com>
7843 * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
7844 Add a compose table including (almost) all the compose combinations
7845 from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
7846 data in the XIM implementation.
7848 * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
7849 Moved functions to convert keyvalues from and to unicode here from
7850 the win32 port and made them public.
7852 Wed Apr 5 16:37:29 2000 Owen Taylor <otaylor@redhat.com>
7854 * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
7856 Wed Apr 5 16:27:45 2000 Owen Taylor <otaylor@redhat.com>
7858 * gtk/gtkimcontext.[ch]: Base class for new input context system
7860 * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
7861 the real input context implementation to be loaded from modules
7862 and switched on the fly.
7864 * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
7865 context that just does direct keysymbol => unicode translation.
7867 * gtk/gtkentry.[ch]: Start switching editing over to using
7868 GtkInputContext. (No handling of preedit yet.)
7870 Wed Apr 5 15:48:41 2000 Owen Taylor <otaylor@redhat.com>
7872 * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
7873 many substitutions. (klass should not be subsituted.)
7875 Wed Apr 5 00:18:14 2000 Owen Taylor <otaylor@redhat.com>
7877 * configure.in: Add checks for Pango
7879 * configure.in docs/Makefile.am: Add test for sgml2html
7880 and allow 'make dist' without building html, but print out
7881 warnings in that case. (For making snapshots)
7883 * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
7884 Add Pango libraries and C flags
7886 * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7887 Add function (gdk_draw_layout) to draw a pango layout.
7889 * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
7890 for getting Pango contexts for GDK.
7892 * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
7894 * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
7897 * gtk/gtkentry.c: Hack in simple Hebrew input with direct
7898 keysym => unicode translations. More languages can be added
7899 here, but real input-method support is needed.
7901 * docs/Changes-1.4.txt: Added note about entry behavior.
7903 * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
7904 to set the reading direction for a widget and the global direction.
7905 Add test which allows toggling the global direction. Two private
7906 flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
7908 * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
7909 gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
7911 * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
7913 * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
7914 underlining now handled by Pango.
7916 * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
7917 to RCStyle and Style. (Having both this and the old font name and GdkFont
7920 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
7921 convenience functions for creating contexts and layouts for widgets.
7923 * gtk/testgtk.c: Enhance label tests with multilingual labels.
7925 2000-05-29 Jonathan Blandford <jrb@redhat.com>
7927 * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
7928 titles to be active, even if they aren't visible.
7929 (gtk_clist_column_titles_passive): Ditto.
7931 2000-05-21 Nils Barth <nils_barth@post.harvard.edu>
7935 * gtktypeutils.h: Spelling/grammar fixes in comments.
7937 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
7939 * gdk/nanox/*.h: add missing header files.
7941 Fri May 19 11:52:59 2000 Tim Janik <timj@gtk.org>
7943 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
7945 (gtk_drawing_area_size): queue a resize.
7947 Sun Mar 26 03:21:28 2000 Tim Janik <timj@gtk.org>
7949 * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
7950 the handlers, also invalidate them. bug nailed down by Karl Nelson
7951 <kenelson@ece.ucdavis.edu>.
7953 Fri May 19 06:49:23 2000 Tim Janik <timj@gtk.org>
7955 * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
7956 "(nil)" foundries, patch from Grigorios Magklis.
7958 * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
7959 on non-available fonts, based on a patch by Grigorios Magklis
7960 <maglis@cs.rochester.edu>.
7962 2000-05-18 Elliot Lee <sopwith@redhat.com>
7964 * gdk/x11/gdkregion-generic.c: If a region does not have any
7965 rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
7966 instead of GDK_OVERLAP_RECTANGLE_IN.
7968 2000-05-17 Jonathan Blandford <jrb@redhat.com>
7970 * gtk/gtklayout.c (gtk_layout_map): Remove references to
7971 OFFSCREEN, as it is no longer necessary.
7973 Wed May 17 10:52:12 2000 Owen Taylor <otaylor@redhat.com>
7975 * gtk/gtkcolorsel.c: Patch from David Santiago
7976 <mrcooger@cyberverse.com> to change things so that the
7977 indicator of the active palette entry is done independently,
7978 not via the focus, since it should always be visible.
7980 2000-05-17 Tor Lillqvist <tml@iki.fi>
7982 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
7983 refcount leaks as in the X11 backend.
7985 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
7988 * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
7989 backend. Add _gdk_windowing_window_destroy().
7991 * gtk/gtkcolorsel.c: Include correct backend-specific header.
7992 Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
7993 either, but these probably do exist on nanox?)
7995 * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
7996 which isn't necessarily defined by <math.h>.
7998 * gtk/gtkobject.c (gtk_object_init): Don't go up the class
7999 ancestry past GtkObject.
8001 * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8004 * gtk/gtk.def: Update corresponding to recent changes.
8006 * gtk/makefile.{cygwin,msc}: Updates.
8008 Fri May 12 18:46:51 2000 Owen Taylor <otaylor@redhat.com>
8010 * docs/Changes-1.4.txt: A bit of editing.
8012 * gdk/gdkwindow.c (_gdk_window_clear_update_area)
8013 * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
8014 to clear the update area for the window, and clear it
8015 when hiding a window.
8017 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
8018 if window destroyed.
8020 * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8022 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
8023 gdk_window_destroy() to the generic code, since there was a lot of
8024 window-system-independent logic it in. Add a function:
8026 _gdk_window_destroy()
8028 to the internal API to destroy a window without unreferencing it.
8031 _gdk_windowing_window_destroy()
8033 That does the windowing-system-dependent part of destroying
8036 Fri May 12 11:07:41 2000 Owen Taylor <otaylor@redhat.com>
8038 * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8040 Fri May 12 11:06:10 2000 Owen Taylor <otaylor@redhat.com>
8042 * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
8043 Make gtk_widget_shape_combine_mask() keep a reference count on
8044 the pixmap since it keeps it around.
8046 Fri May 12 10:53:29 2000 Owen Taylor <otaylor@redhat.com>
8048 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8051 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8052 leak with event filters.
8054 Thu May 11 14:29:44 2000 Owen Taylor <otaylor@redhat.com>
8056 * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8057 signal handlers with the right data arguments. (Fixes
8058 some warnings when a widget was repeatedly set as a drag
8061 * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8062 window so we can avoid avoid setting the DND properties on the
8063 toplevel window repeatedly.
8065 2000-05-13 Tor Lillqvist <tml@iki.fi>
8067 * gdk/win32/gdkwin32.h: Define more message types missing from
8070 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8071 call gdk_window_destroy_notify(). It was never called. This
8072 probably meant that the GdkWindow was never freed. Thanks Owen for
8075 * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8076 window as destroyed before calling DestroyWindow(). DestroyWindow()
8077 causes a call to the window procedure (gdk_WindowProc), which
8078 calls gdk_event_translate(), which calls
8079 gdk_window_destroy_notify(), which gets confused unless the window
8080 is set as destroyed.
8082 * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8083 this function to indicate it's win32 only. Put inside #ifdef
8086 * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8087 debugging function. (gdk_event_translate:) Add a default branch
8088 that uses the above function to print debug messages with all
8089 Windows messages symbolically.
8091 * gdk/win32/gdkprivate-win32.h: Declare it, and
8092 gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8094 Fri May 12 20:07:32 2000 Tim Janik <timj@gtk.org>
8096 * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8099 Fri May 12 17:13:32 2000 Tim Janik <timj@gtk.org>
8101 * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8103 * gtk/gtktext.c: made the adjustments no-construct args, simply
8104 provide default adjustments.
8105 (gtk_text_destroy): release adjustments.
8107 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8108 adjustment argument non-construct.
8110 * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8111 instead of in finalize.
8112 (gtk_progress_get_text_from_value):
8113 (gtk_progress_get_current_text):
8114 (gtk_progress_set_value):
8115 (gtk_progress_get_percentage_from_value):
8116 (gtk_progress_get_current_percentage):
8117 (gtk_progress_set_percentage):
8118 (gtk_progress_configure): ensure an adjustment is present.
8120 Thu May 11 01:24:08 2000 Tim Janik <timj@gtk.org>
8122 * gtk/gtkcolorsel.[hc]:
8123 * gtk/gtkcolorseldialog.[hc]:
8124 * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8125 their parent implementation, use bit fields for boolean values, don't
8126 create unused widgets, usage of glib types, braces go on their own
8127 lines, function argument alignment, #include directives etc. etc. etc..
8129 * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8131 Wed May 10 23:29:52 2000 Tim Janik <timj@gtk.org>
8133 * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8135 * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8138 * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8140 (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8142 * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8143 to NULL when the toplevel is getting destroyed.
8144 (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8146 (gtk_menu_init): store the information of whether we have to
8147 readd the initial child ref_count during destruction in a new
8148 GtkMenu field needs_destruction_ref_count.
8150 * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8151 here, those reading: learn from my mistake! ;)
8152 in order for set_?adjustment to support a default adjustemnt if
8153 invoked with an adjustment pointer of NULL, the code read (pseudo):
8154 if (v->adjustment) unref (v->adjustment);
8155 if (!adjustment) adjustment = adjustment_new ();
8156 if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8157 now imagine the first unref to actually free the old adjustment and
8158 adjustment_new() creating a new adjustment from the very same memory
8159 portion. here, the latter comparision will unintendedly fail, and
8160 all hell breaks loose.
8161 (gtk_viewport_set_hadjustment):
8162 (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
8163 after unreferencing it.
8165 * gtk/gtkcontainer.[hc]: removed toplevel registration
8166 functions: gtk_container_register_toplevel(),
8167 gtk_container_unregister_toplevel() and
8168 gtk_container_get_toplevels() which had wrong semantics
8169 anyways: it didn't reference and copy the list.
8171 * gtk/gtkwindow.c: we take over the container toplevel registration
8172 bussiness now. windows are registered across multiple destructions,
8173 untill they are finalized. the initial implicit reference count
8174 users are holding on windows is removed with the first destruction
8176 (gtk_window_init): ref & sink and set has_user_ref_count, got
8177 rid of gtk_container_register_toplevel() call. add window to
8179 (gtk_window_destroy): unref the window if has_user_ref_count
8180 is still set, got rid of call to
8181 gtk_container_unregister_toplevel().
8182 (gtk_window_finalize): remove window from toplevel list.
8183 (gtk_window_list_toplevels): new function to return a newly
8184 created list with referenced toplevels.
8185 (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
8187 * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
8188 adjustment a non-construct arg.
8189 * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
8190 * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
8191 * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
8193 * gtk/gtkrange.c: added some realized checks.
8194 (gtk_range_destroy): get rid of the h/v adjustments in the
8195 destroy handler instead of finalize. remove timer.
8196 (gtk_range_get_adjustment): demand create adjustment.
8198 * gtk/gtkviewport.c: made h/v adjustment non-construct args.
8199 we simply create them on demand now and get rid of them in
8200 the destroy handler.
8201 (gtk_viewport_destroy): get rid of the h/v adjustments in the
8202 destroy handler instead of finalize.
8203 (gtk_viewport_get_hadjustment):
8204 (gtk_viewport_get_vadjustment):
8205 (gtk_viewport_size_allocate): demand create h/v adjustment
8208 * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
8209 gtk_widget_real_destroy () functionality.
8210 (gtk_widget_real_destroy): reinitialize with a new style, instead
8211 of setting widget->style to NULL.
8213 Fri May 5 13:02:09 2000 Tim Janik <timj@gtk.org>
8215 * gtk/gtkcalendar.c:
8216 * gtk/gtkbutton.c: ported _get_type() implementation over to
8217 GType, either to preserve memchunks allocation facilities,
8218 or because Gtk+ 1.0 GtkTypeInfo was still being used.
8220 * gtk/gtkobject.[hc]: derive from GObject. ported various functions
8221 over. prepare for ::destroy to be emitted multiple times.
8222 removed reference tracer magic. chain into GObjectClass.shutdown()
8223 to emit ::destroy signal.
8225 * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
8228 * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
8235 * gtk/gtkargcollector.c:
8236 * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
8237 not being a fundamental anymore, and to work with the new
8238 type system (nuked fundamental type varargs clutter).
8240 * gtk/*.c: install finalize handlers in the GObjectClass
8241 part of the class structure.
8242 changed direct GTK_OBJECT()->klass accesses to
8244 changed direct object_class->type accesses to GTK_CLASS_TYPE().
8246 * gtktypeutils.[hc]: use the reserved fundamental ids provided by
8247 GType. made most of the GTK_*() type macros and Gtk* typedefs
8248 simple wrappers around macros and types provided by GType.
8249 most notably, a significant portion of the old API vanished:
8252 GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
8253 GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
8256 GTK_TYPE_C_CALLBACK,
8260 gtk_type_set_varargs_type(),
8261 gtk_type_get_varargs_type(),
8262 gtk_type_check_object_cast(),
8263 gtk_type_check_class_cast(),
8264 gtk_type_describe_tree(),
8265 gtk_type_describe_heritage(),
8267 gtk_type_children_types(),
8268 gtk_type_set_chunk_alloc(),
8269 gtk_type_register_enum(),
8270 gtk_type_register_flags(),
8271 gtk_type_parent_class().
8272 replacements, where available are described in ../docs/Changes-1.4.txt.
8273 implemented compatibility functions for the remaining API.
8275 * configure.in: depend on glib 1.3.1, use gobject module.
8277 Thu May 11 12:39:50 2000 Owen Taylor <otaylor@redhat.com>
8279 * TODO.xml: Various updates to current status.
8281 Wed May 10 20:25:04 2000 Owen Taylor <otaylor@redhat.com>
8283 * gtk.m4: Print out version when test succeeds.
8285 Wed May 10 16:38:17 2000 Owen Taylor <otaylor@redhat.com>
8287 * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
8288 gtk/gtkhsv.[ch]: Color selection dialog rewrite.
8290 (Original triangle color selector from Simon Budig
8291 <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
8292 from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
8293 Santiago <mrcooger@cyberverse.com>)
8295 * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
8296 out into a separate widget.
8298 * gtk/testgtk.c: Add some checkbuttons for toggling palette
8299 and opacity controls.
8301 Wed May 10 16:08:09 2000 Owen Taylor <otaylor@redhat.com>
8303 * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
8304 snuck in prematurely.
8306 2000-05-07 Tor Lillqvist <tml@iki.fi>
8308 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
8309 had deleted a ! operator by mistake, which caused
8310 GDK_SELECTION_CLEAR events never to be generated, which caused
8311 only the first copy to the clipboard from an gtkeditable to
8312 actually cause a copy to the Windows clipboard.
8314 2000-05-06 Tor Lillqvist <tml@iki.fi>
8316 * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
8317 compilation, too. Current mingw gcc distributions include the
8318 necessary headers. Also the necessary IIDs are now in mingw
8319 headers/libraries, and own definitions unnecessary.
8321 More hacking on OLE2 DND, still doesn't work though, and thus
8324 * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
8327 Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
8329 * gdk/nanox/*: nano-X port work in progress.
8330 * gdk/simple.c: simple test for Gdk.
8331 * README.nanox: notes about the port: read this first!
8332 * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
8335 Fri May 5 11:18:47 2000 Owen Taylor <otaylor@redhat.com>
8337 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
8338 gdk_window_clear() into common code, implement in terms of
8339 gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
8340 not redirected to the backing rectangle.
8342 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
8344 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
8345 EXTRA_DIST. It does not work well when the file that
8346 everything depends on is not in the tarball.
8348 Tue Apr 25 22:20:41 2000 Owen Taylor <otaylor@redhat.com>
8350 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
8351 with recursion where process_updates() is called from
8352 an expose handler. (GtkTextView is highly broken in
8353 doing this, but it should work, so it is a nice test
8356 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
8358 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
8359 handle the case where updates are queued during processing of
8362 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
8364 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
8365 window is on gdk_display - use that instead of segfaulting.
8367 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
8369 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
8370 broken and require an empty arg, give it to them.
8372 Fri Apr 28 19:34:32 2000 Tim Janik <timj@gtk.org>
8374 * gtk/gtklabel.h: indentation fixes.
8376 2000-05-02 Tor Lillqvist <tml@iki.fi>
8378 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
8379 draw too narrow or too low arcs, they seem to fail, at least with
8380 some display drivers.
8382 * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
8384 Large changes to the Win32 backend, partially made necessary by
8385 the changes to the backend-independent internal
8386 structures. Attempts to implement similar backing store stuff as
8387 on X11. The current (CVS) version of the Win32 backend is *not* as
8388 stable as it was before the no-flicker branch was merged. A
8389 zipfile with that version is available from
8390 http://www.gimp.org/win32/. That should be use by "production"
8391 code until this CVS version is usable. (But note, the Win32
8392 backend has never been claimed to be "production quality".)
8394 * README.win32: Add the above comment about versions.
8396 * gdk/gdkwindow.c: Don't use backing store for now on Win32.
8398 * gdk/gdk.def: Update.
8400 * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
8401 presumably be replaced by some more better mechanism as 1.4 gets
8402 closer to release shape.
8404 * gdk/makefile.{cygwin,msc}: Update.
8406 * gdk/win32/*.c: Correct inclusions of the backend-specific and
8407 internal headers. Change code according to changes in these. Use
8408 gdk_drawable_*, not gdk_window_* where necessary.
8410 * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
8413 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
8414 to interpret single characters as UTF-8. Thanks to Hans Breuer.
8415 Use correct function name in warning messages.
8417 * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
8418 GSourceFuncs gdk_event_prepare and gdk_event_check.
8419 (gdk_event_get_graphics_expose): Do implement, use
8420 PeekMessage. Thanks to Hans Breuer.
8421 (event_mask_string): Debugging function to print an GdkEventMask.
8422 (gdk_pointer_grab): Use it.
8424 * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
8425 (old) book I used claimed was Hangul actually is CJK Unified
8426 Ideographs Extension A. Also, Hangul Syllables were missing.
8429 * gdk/win32/gdkgc-win32.c: Largish changes.
8431 * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
8432 g_win32_getlocale() from GLib, and not setlocale() to get current
8435 * gdk/win32/gdkprivate-win32.h
8436 * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
8437 gdkwin32.h, similarily as in the X11 backend.
8439 * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
8440 assignment was used instead of equals in if test. Thanks to Hans
8443 * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
8446 * gdk/win32/makefile.{cygwin,msc}
8447 * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
8448 path to the Win32 headers that works also with the mingw compiler.
8450 * gtk/gtkstyle.c: Include <string.h>.
8452 2000-04-26 Havoc Pennington <hp@redhat.com>
8454 * gtk/gtklabel.c (gtk_label_get_text): Add this function,
8455 replacing the broken gtk_label_get ()
8457 2000-04-15 Havoc Pennington <hp@pobox.com>
8459 * gdk/gdkdnd.h: clean up enum format, remove extra comma,
8460 this keeps scanner scripts from getting confused.
8462 * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
8463 data, rather than void
8465 2000-04-15 Tor Lillqvist <tml@iki.fi>
8467 * gtk/gtkclist.c (gtk_clist_motion)
8468 * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
8469 with is_hint FALSE, get x and y from the event. They used to be
8470 used uninitialised. The Win32 backend never sends motion events
8471 marked as hints. This for instance fixes the annoying file and
8472 font selector behaviour in the Win32 version.
8474 2000-04-14 Tor Lillqvist <tml@iki.fi>
8476 * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
8477 gtk_private_n_signals variables, they are used by some software,
8480 * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
8481 installation directory from the Registry, where the installer
8484 Fri Apr 7 17:19:27 2000 Owen Taylor <otaylor@redhat.com>
8486 * gdk/x11/Makefile.am: Fix problem with installation directory for
8489 * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
8490 <mrcooger@cyberverse.com> so that when selecting menus with the
8491 mouse, the first item will not be selected, but when selecting
8492 with an accelerator, or navigating left-right on a menubar with
8493 the menus popped up, the first item will be selected.
8495 2000-04-05 Dan Damian <dand@dnttm.ro>
8497 * configure.in: Added "ro" to ALL_LINGUAS.
8499 Wed Apr 5 00:08:36 2000 Owen Taylor <otaylor@redhat.com>
8501 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
8504 * Makefile.am (EXTRA_DIST): Fix typo.
8506 * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
8507 to catch gdkconfig.h
8509 * gtk/gtkitemfactory.c: Added FIXME.
8511 2000-03-30 Jonathan Blandford <jrb@redhat.com>
8513 * gtk/gtkpaned.c (gtk_paned_get_position): oops.
8514 s/return_if_fail/return_val_if_fail/g and add a return value.
8516 Mon Mar 27 20:56:14 2000 Owen Taylor <otaylor@redhat.com>
8518 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
8521 * gdk/gdkinput.h: Fix missing line from merge.
8523 Mon Mar 27 20:39:49 2000 Owen Taylor <otaylor@redhat.com>
8525 * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
8526 instead of gdkprivate.h.
8528 Sun Mar 12 15:19:24 2000 Owen Taylor <otaylor@redhat.com>
8530 * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
8531 parent class to correctly be GtkDialogClass.
8533 Thu Feb 24 23:58:21 2000 Owen Taylor <otaylor@redhat.com>
8535 * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
8536 toplevel windows and their immediate children by their parents,
8537 since the size of toplevel windows is out of our immediate
8538 control and we don't get any real benefit from trying to track
8539 this size for clipping.
8541 * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
8542 for input_only windows.
8544 * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
8545 to fix some hacks and make sure that we don't try to set the
8546 background of input only windows.
8548 Thu Feb 24 18:11:46 2000 Owen Taylor <otaylor@redhat.com>
8550 * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
8551 the _really_ internal stuff, and leave gdkprivate.h for the fake private
8552 stuff that we've traditionally exposed.
8554 * gdk/**.c: Use gdkinternals.h where appropriate.
8556 * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
8557 not include gdkprivate-x11.h, move all stuff of conceivable public
8558 interest into gdkx.h; keep all really private stuff in
8559 uninstalled header gdkprivate-x11.h.
8561 * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
8562 image->image_put on windows through a new function _gdk_window_draw_image()
8563 to allow us to do backing store for images. (Sort of ugly)
8565 * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
8566 contexts locally so that we can offset them properly when drawing
8567 onto backing pixmaps.
8569 * gdk/gdkinput.h: Reindented
8571 * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
8572 pixmap or color for the window, so we can properly initialize
8573 our double-buffer pixmaps, and also so that we temporarily set
8574 a background of None while scrolling.
8576 * gdk/gdkregion.h: Revise region boolean operators to have an
8577 interface that is actually convenient - switch from creating new
8578 regions on every op, to "methods" that modify existing regions
8579 (A = A OP B). 3 argument forms which allow dest == src, would also
8580 be possible, but the current interfaces seem to map nicely
8581 onto what needs to be done. (There is quite a lot of region
8584 * gdk/gdkregion.h: Add constructor from rectangle and a copy
8587 * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
8588 gdkpoly-generic.h: Copy region code from Xlib, switch it over
8589 to 32 bit coordinates, modify it to be mostly GTK+ style
8590 and to have interfaces that match gdkregion.h.
8592 * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
8593 double-buffered drawing. gdk_window_begin_paint_{rect,region}()
8594 create a backing pixmap and redirect all drawing to
8595 that backing pixmap until a matching gdk_window_end_paint().
8597 * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
8598 Create a special drawable class for GtkWindow's that
8599 redirects the drawing to the backing pixmap as necessary
8600 and then calls the real operations in _gdk_windowing_window_class.
8602 * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
8603 Store invalid region for each window. Generate expose events for invalid
8604 region in an idle. This replaces both the expose compression
8605 and the redrawing queuing in GTK+. It is both more efficient and
8606 simpler than either one individually and far more so then the
8609 * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
8610 Emulate 32 bit coordinates for windows with 16 bit coordinates
8611 by offsetting drawing, guffaw scrolling techniques and
8612 mapping/unmapping child windows as necessary.
8614 * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
8615 where, when invalid regions are processed, the region is stored,
8616 and if expose events come in that are detectably duplicate
8617 the processed exposes (by comparison of event serial numbers),
8618 the stored region is subtracted out of those exposes.
8620 * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
8621 regions newly exposed when scrolling or resizing windows.
8622 This, combined with forcing processesing of queued invalidated
8623 regions, gives nice flicker-free scrolling.
8625 * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
8626 invalidated regions after every scroll.
8628 * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
8629 emulation in GDK. Its, for all practical purposes just a
8630 GtkViewport/GtkFixed hybrid now.
8632 * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
8633 (16-bit) structures as necessary instead of just casting.
8635 * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
8636 in terms of the structures from gdkregion-generic.c, using appropriate
8637 offsets from GDK to X11 coordinates. Cache clip mask and
8638 origin and ts origin locally and only flush to the server
8639 when drawing, to avoid constantly setting and resetting these
8640 values when offsetting GC's for scrolling and backing pixmaps.
8642 * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
8644 * gtk/gtkcontainer.c: Call process_all_updates at end
8645 of resizing to reduce flicker. (Avoids having redraw
8646 lag arbitrarily behind resize under some circumstances)
8648 * gtk/gtkentry.c: Remove old backing store code, and simply take
8649 advantage of the new backing store capabilities of GDK.
8651 * gtk/gtkmain.c: Simple implementation of widget backing
8652 store - simply push a paint while handling each expose.
8653 (Should really be configurable widget for widget.)
8655 * gtk/gtkwidget.c: Remove all the old complicated redraw
8656 code, and simply invalidate the GDK windows from
8657 gdk_window_queue_clear(), etc. (Sigh, so much carefully
8658 debugged complexity ... gone to the winds.)
8660 Remove all the code for suppressing expose events while
8661 resizes are pending; this isn't needed since the invalid
8662 areas won't be processed until after the resizes are
8663 processed, since they are in a lower priority idle.
8665 Thu Feb 24 15:37:41 2000 Owen Taylor <otaylor@redhat.com>
8667 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
8668 and height of dest rectangle for non-intersecting rectangles.
8670 Sun Feb 20 16:47:31 2000 Owen Taylor <otaylor@redhat.com>
8672 * gtk/gtkwidget.h: Make GtkAllocation just a typedef
8675 Sun Feb 20 11:27:00 2000 Owen Taylor <otaylor@redhat.com>
8677 * gdk/gdk{events,image,private,types,window}.h
8678 gdk/x11/gdkinputprivate.h: Change all coordinates
8679 from int16 to int. Also, Change width and height from
8680 unsigned to signed to avoid all the stupid C
8683 Sat Feb 19 12:01:53 2000 Owen Taylor <otaylor@redhat.com>
8685 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
8686 Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
8687 Add some more detailed checking.
8689 * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
8690 New function to retrieve the depth of a drawable.
8692 * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
8693 field, reorder fields to save memory.
8695 Mon Dec 13 14:06:03 1999 Owen Taylor <otaylor@redhat.com>
8697 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
8698 of the background image instead of scaling the background down to
8701 * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
8702 which temporarily set slider to wrong size.
8704 * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
8707 Wed Nov 17 18:36:05 1999 Owen Taylor <otaylor@redhat.com>
8709 2000-03-23 Jonathan Blandford <jrb@redhat.com>
8711 * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
8713 2000-03-17 Tor Lillqvist <tml@iki.fi>
8715 * gdk/win32/gdkevents-win32.c: Remove the #ifndef
8716 USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
8718 * gdk/win32/gdkfont-win32.c
8719 * gdk/win32/gdkproperty-win32.c
8720 * gdk/win32/gdkselection-win32.c
8721 * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
8724 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
8726 * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
8728 Mon Mar 13 18:37:55 2000 Owen Taylor <otaylor@redhat.com>
8730 * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
8731 is called without trapping X errors.
8733 Fri Feb 25 10:48:53 2000 Owen Taylor <otaylor@redhat.com>
8735 * gtk/gtkrc.*: Fix problem where stray '"' characters found their
8736 way into the fontset lists.
8738 Tue Feb 22 08:52:52 2000 Tim Janik <timj@gtk.org>
8740 * gtk/gtkthemes.h: add extern "C" scope.
8742 Mon Feb 21 20:16:42 2000 Lars Hamann <lars@gtk.org>
8744 * gtk/gtkclist.c: applied patch from Guy Harris <guy@netapp.com>
8745 to make appends to the list constant. (gtk-guy-990901-0.patch)
8747 Mon Feb 14 22:50:10 2000 Tim Janik <timj@gtk.org>
8749 * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
8750 for the typename hash table.
8752 Mon Feb 14 15:01:23 2000 Owen Taylor <otaylor@redhat.com>
8754 * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
8755 to make sure we never divide by zero.
8756 (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
8758 Mon Feb 14 12:29:38 2000 Owen Taylor <otaylor@redhat.com>
8760 * gtk/gtkfontsel.c: Apply patch from
8761 SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
8762 better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
8764 Also, some cleanups in atom handling.
8766 Sun Feb 13 08:02:21 2000 Tim Janik <timj@gtk.org>
8768 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8771 Fri Feb 11 02:19:32 2000 Tim Janik <timj@gtk.org>
8773 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
8774 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
8775 * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
8776 more guint wrap-around bugs before going to bed.
8778 Thu Feb 10 16:16:35 2000 Tim Janik <timj@gtk.org>
8780 * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
8781 guint wrap arounds in allocation.width.
8783 * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
8784 process untill we fit the allocation given.
8786 Tue Feb 8 09:38:29 2000 Tim Janik <timj@gtk.org>
8789 (gtk_widget_unrealize): guard widget access with ref/unref
8790 around signal emission.
8791 (gtk_widget_hide): same here, but also check its destroyed
8792 state before queueing a resize.
8794 Tue Feb 8 03:05:55 2000 Tim Janik <timj@gtk.org>
8796 * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
8797 of gtk_default_insensitive_bg as insensitive base color.
8799 * gtk/gtktext.c (gtk_text_style_set): set the background color according
8800 to the widget's state.
8801 (gtk_text_realize): same here.
8802 (gtk_text_state_changed): same here.
8803 (draw_bg_rect): compare background color against base[] from
8804 GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
8806 Mon Feb 7 04:01:55 2000 Tim Janik <timj@gtk.org>
8808 * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
8809 grabs are active, unless a delete event is send to the toplevel
8810 of the currently grab holding widget.
8812 Sun Feb 6 10:13:15 2000 Owen Taylor <otaylor@redhat.com>
8814 * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
8815 debugging g_print's.
8817 Fri Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
8819 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
8820 ever make the scrolled-window requisition ever depend on the
8821 visibility state of the scrollbars for the AUTOMATIC policy.
8822 This breaks the GTK+ requisition model, and causes loops.
8824 Fri Feb 4 15:09:12 2000 Owen Taylor <otaylor@redhat.com>
8826 * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
8827 the default font to avoid problems with XFree86-4.0 where the
8828 default charset is iso10646-1, not iso8859-1.
8830 Thu Feb 3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
8836 * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
8838 * gtk/Makefile.am: minor cosmetic consistency tweak
8840 Thu Feb 3 14:46:01 2000 Owen Taylor <otaylor@redhat.com>
8842 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
8843 the activate_time to 0, so that we handle a quick
8844 press/release press/release properly and don't suppress
8845 the second release. (Red Hat bug #7545)
8847 Wed Feb 2 22:25:17 2000 Tim Janik <timj@gtk.org>
8849 * gtk/gtkctree.c (row_delete):
8850 (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
8851 bugs with destruction notifier, *always* update internal
8852 structures *before* calling user code.
8854 Sun Jan 30 20:10:52 2000 Lars Hamann <lars@gtk.org>
8856 A few more fixes for bug #5487, #2051, #2677.
8858 (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is
8859 not GDK_BUTTON_PRESS.
8860 (resync_selection): resync only if selection_mode is
8861 GTK_SELECTION_EXTENDED
8862 * gtk/gtkctree.c (resync_selection): same here
8864 Sun Jan 30 12:29:20 2000 Owen Taylor <otaylor@redhat.com>
8866 * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
8867 gdk_drag_get_selection() and gtk_menu_detach().
8869 [ From Jeroen Ruigrok/Asmodai ]
8871 Sat Jan 29 10:11:56 2000 Owen Taylor <otaylor@redhat.com>
8873 * gtk/gtknotebook.c (gtk_notebook_size_request):
8874 page->tab_label can be NULL.
8876 2000-01-25 Havoc Pennington <hp@pobox.com>
8878 * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
8881 * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
8883 * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
8885 * gdk/gdkproperty.c (gdk_property_get): return boolean
8887 * gdk/gdkinput.c (gdk_input_set_mode): return boolean
8889 * gdk/gdkim.c (gdk_im_ready): return boolean
8891 * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
8893 * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
8894 glib clash, should fix glib)
8896 * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
8897 (gdk_get_show_events): return gboolean, and canonicalize
8900 * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
8902 (gdk_colors_alloc): gboolean whether to be contiguous
8903 (gdk_color_equal): return gboolean since we are a predicate
8904 and not a qsort() (this looks semi-wrong due to glib breakage,
8905 IMO glib should be fixed)
8907 * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
8908 (gdk_get_use_xshm): return gboolean
8909 (gdk_pointer_is_grabbed): return gboolean
8911 * gdk/gdk.h: Change prototypes to match all the above changes,
8912 and re-run egtk-format-protos as required.
8914 Fri Jan 28 12:28:17 2000 Owen Taylor <otaylor@redhat.com>
8916 * gtk/gtkctree.c (resync_selection):
8917 * gtk/gtkclist.c (resync_selection):
8919 Return immediately if clist->drag_pos < 0. This is a workaround
8920 for the corrupt state that the clist gets into when a
8921 GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
8923 Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
8925 * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
8926 variable from recent commit.
8928 Thu Jan 27 15:22:09 2000 Owen Taylor <otaylor@redhat.com>
8930 * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
8932 Thu Jan 27 18:00:55 2000 Tim Janik <timj@gtk.org>
8934 * gtk/Makefile.am: prefix all autogenerated source that get build in
8935 $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
8936 in builddir. since we subsequently cd into srcdir for autogeneration,
8937 the paths have to be stripped from the target file names, thusly we
8938 use $(@F) as target names now.
8939 put a comment about configure.in's --disable-rebuilds option,
8940 which can be used for non-writable source directories, for development
8941 setups though, srcdir has to be *writable*.
8943 hu Jan 27 00:15:03 2000 Owen Taylor <otaylor@redhat.com>
8945 * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
8946 Finish the job of allowing event to be NULL.
8947 (Fixes bug #4283, reported by Chris Blizzard)
8949 * gtk/gtkentry.c (entry_adjust_scroll): When calculating
8950 things so that the cursor appears on screen, properly
8951 take into account INNER_BORDER.
8952 (Fixes bug #4754, reported by Antonio Campos)
8954 Wed Jan 26 23:12:28 2000 Owen Taylor <otaylor@redhat.com>
8956 * gtk/gtknotebook.c (gtk_notebook_map): Don't
8957 show the tab_label unless it itself is visible.
8959 gtk/gtknotebook.c (gtk_notebook_size_request):
8960 Do a better job of making sure that the visibility
8961 of the tab label corresponds to whether it should
8964 Wed Jan 26 21:17:03 2000 Owen Taylor <otaylor@redhat.com>
8966 * gtk/gtkoptionmenu.c (gtk_option_menu_position):
8967 Use the requisition, not the allocation, since the
8968 allocation has not necessarily been computed yet.
8969 (Pointed out by Eugene Osintsev)
8971 Wed Jan 26 19:44:25 2000 Owen Taylor <otaylor@redhat.com>
8973 * gtk/gtkstyle.c (gtk_style_new): Dont' set
8974 style/base[GTK_STATE_INSENSITIVE] both to
8975 gtk_default_insensitive_bg!
8976 (Bug #2187, reported by Jonathan Blandford)
8978 * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
8979 Add Alt_L, Alt_R to list of invalid accelerators.
8980 (Bug #3736, reported by Vlad Harchev)
8982 Wed Jan 26 19:01:56 2000 Owen Taylor <otaylor@redhat.com>
8984 * gtk/gtkfilesel.c (open_ref_dir): Fix several
8985 bugs which occured after an attempt to open
8986 invalid home directory left cmpl_state->reference_dir == NULL.
8988 - completion on files in home directory didn't work
8989 - completion on an empty string caused segfault
8991 (Bug #3678, reported by Steve Ratcliffe)
8993 * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
8994 cut and paste error that was causing scales to
8995 be incorrectly positioned.
8997 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
8999 2000-01-27 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
9001 * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9002 when checking for dcgettext, if we've found we needed
9005 Wed Jan 26 18:06:07 2000 Owen Taylor <otaylor@redhat.com>
9007 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9008 queue_clear on NO_WINDOW widgets during a reparent,
9009 since at that point the window and widget heirarchies
9010 are out of sync. This stops crashing in some cases
9011 (the scrolled window reparent test, for instance), and
9012 _probably_ won't cause drawing errors.
9014 * gtk/testgtk.c: Make the reparenting-a-scrolled-window
9015 test do what it was supposed to do and be robust against
9016 window closings, etc. (Bug #2443)
9018 Wed Jan 26 16:56:54 2000 Owen Taylor <otaylor@redhat.com>
9020 * gtk/gtkentry.c: Fix return values on mouse events.
9021 (Bug #2686, Sky <seb_sky@yahoo.com>)
9023 * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9024 (pointed out by George Lebl)
9026 * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9027 (From Ettore Perazzoli <ettore@helixcode.com>)
9029 Mon Jan 24 10:44:48 2000 Owen Taylor <otaylor@redhat.com>
9031 * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9032 clicks between rows or outside calender area correctly.
9033 (Patch from Damon Chaplin)
9035 * gtk/gtkclist.c (gtk_clist_set_row_data_full):
9036 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
9037 Call destroy function when overwriting existing data.
9038 (Pointed out by Damon Chaplin)
9040 Tue Jan 25 09:55:41 2000 Owen Taylor <otaylor@redhat.com>
9042 * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9043 which was causing problems on various systems with Xmu.
9044 This hasn't been needed for a very long time.
9047 Sun Jan 23 22:27:36 2000 Owen Taylor <otaylor@redhat.com>
9049 * gdk/gdki18n.h: Include <ctype.h> when defining
9050 gdk_isw* in terms of is* as a fallback.
9051 (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9053 Sun Jan 23 22:12:36 2000 Owen Taylor <otaylor@redhat.com>
9055 * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9056 realize the widget when it is size allocated!
9059 * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9060 Removed unused call to gdk_window_get_size() that
9061 showed up when the above was fixed.
9063 Sat Jan 22 15:44:30 2000 Owen Taylor <otaylor@redhat.com>
9065 * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9066 fix up widget->window when the widget is a
9067 NO_WINDOW container widget.
9069 Sat Jan 22 12:40:48 2000 Owen Taylor <otaylor@redhat.com>
9071 * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9072 to account for the fact that feof() does _not_
9073 return TRUE on errors, and thus avoid infinite loops
9074 when trying to use gdk_pixmap_create_from_xpm()
9075 on unreadable values.
9077 Fri Jan 21 18:32:43 2000 Owen Taylor <otaylor@redhat.com>
9079 * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9081 Fri Jan 21 16:24:08 2000 Owen Taylor <otaylor@redhat.com>
9083 * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9084 gdk_gc_set_dashes to take gint8 instead of gchar to
9085 make it clearer that it is _not_ a NULL terminated string.
9087 * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9088 gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9089 gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9092 Thu Dec 30 04:51:05 1999 Tim Janik <timj@gtk.org>
9094 * gtk/gtkvscale.c (gtk_vscale_pos_background):
9095 * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9096 background size relative to our allocation, guard against small
9097 allocations, we may have not yet been size allocated.
9099 Thu Dec 2 10:59:14 1999 Owen Taylor <otaylor@redhat.com>
9101 * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9102 not just version == 3. We implement all 3 + most of 4 -
9103 (we don't support matching text/plain;charset=iso-8859-1
9104 to a dest that expects text/plain). We'll still advertise
9105 3 to be safe, but any client implementing version >= 3
9106 must interoperate with 3.
9108 Tue Mar 14 11:53:31 2000 Owen Taylor <otaylor@redhat.com>
9110 * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9111 background and gc members, add a warning in gtk_tooltips_set_color()
9112 indicating that this function is deprecated.
9114 Thu Mar 9 22:10:56 GMT 2000 Tony Gale <gale@gtk.org>
9116 * docs/gtkfaq.sgml: FAQ Update:
9117 - Minor cleanups (Emmanuel, me)
9119 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9120 How can I retrieve the text from a GtkMenuItem? (timj)
9121 How do I validate/limit/filter the input to a GtkEntry? (me)
9122 Memory does not seem to be released when I free the list
9123 nodes I've allocated (timj)
9125 2000-03-07 Tor Lillqvist <tml@iki.fi>
9127 * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9128 (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9129 for which it is no use to call GetLastError onWin9x.
9130 (gdk_other_api_failed) New function, for general error
9131 reporting without calling GetLastError.
9132 (gdk_win32_api_failed) OTOH, this function always calls
9133 GetLastError. (gdk_win32_last_error_string) Remove this function,
9134 GLib has the equivalent now.
9136 * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9137 call them with function name, file name and line number in the
9140 * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9143 * gtk/gtk.def: Add some missing entry points.
9145 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9146 gtk_paned_set_gutter_size, which don't exist any longer, as void.
9148 Fixes by Hans Breuer:
9150 * gdk/makefile.msc: Update for debugging.
9152 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9153 implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9154 PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9157 * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
9160 * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
9162 * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
9164 2000-03-04 Tor Lillqvist <tml@iki.fi>
9166 * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
9167 just pixel value of background colour.
9169 * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
9170 containing code snippet previously duplicated in a couple of
9173 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
9176 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
9177 GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
9178 events for autorepeated Shift, Control and Alt keys. Use
9181 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
9182 pointer is inside the window the cursor of which we are setting,
9183 call SetCursor immediately.
9185 * gdk/win32/makefile.cygwin
9186 * gtk/makefile.cygwin: If we don't have the build number stamp
9189 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9190 gtk_paned_set_gutter_size as empty.
9192 * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
9194 Tue Feb 29 13:10:00 GMT 2000 Tony Gale <gale@gtk.org>
9196 * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
9197 gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
9198 docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
9199 docs/gtk_tut.sgml docs/gtk.texi TODO:
9201 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
9203 Sat Feb 26 11:46:25 GMT 2000 Tony Gale <gale@gtk.org>
9205 * gtk/gtkcalendar.c: Implement num_marked_dates,
9206 and don't emit mutiple day_selected signals on
9209 2000-02-25 Jonathan Blandford <jrb@redhat.com>
9211 * docs/make-todo (lineno): let title and logo be configurable so
9212 that GNOME can use this script too.
9214 * TODO.xml: added logourl and a title
9216 Fri Feb 25 11:12:00 2000 Owen Taylor <otaylor@redhat.com>
9218 * TODO.xml: Added some UI items, and an explanatory
9219 comment at the top of the file.
9221 Thu Feb 24 09:07:28 2000 Tim Janik <timj@gtk.org>
9223 * TODO.xml: some updates, added abunch of new entries.
9224 a note for those fiddeling with this file, when done
9226 $ ./docs/make-todo TODO.xml >/dev/null
9227 and correct output errors before comitting changes.
9229 Wed Feb 23 22:59:50 2000 Owen Taylor <otaylor@redhat.com>
9231 * TODO.xml: Added XML-structured TODO file.
9232 * docs/make-todo: python script to turn TODO.xml into
9235 2000-02-23 Jonathan Blandford <jrb@redhat.com>
9237 * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
9238 the function to let it draw the seven dots, instead of the old,
9239 much maligned, method.
9240 (draw_dot): New function to draw a dot.
9242 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
9243 to draw the handle inside the border width as opposed to outside.
9244 Use paint function instead of gdk_draw_point.
9246 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
9247 to draw the handle inside the border width as opposed to outside.
9248 Use paint function instead of gdk_draw_point.
9250 * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
9251 Change indenting to be more GTK like.
9253 Wed Feb 23 10:54:14 GMT 2000 Tony Gale <gale@gtk.org>
9255 * docs/gtk_tut.sgml: New section on GtkCalendar
9256 * examples/calendar: Update example code
9258 Tue Feb 22 13:54:12 GMT 2000 Tony Gale <gale@gtk.org>
9260 * docs/gtkfaq.sgml: FAQ Update
9262 2000-02-19 Anders Carlsson <andersca@gnu.org>
9264 * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
9265 to prevent the scroll event to be propagated upwards.
9267 Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
9269 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
9270 OwnerGrabButtonMask from button entries for
9271 GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
9273 * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
9274 to the event mask (which will result in button/press release
9275 being added to the event mask on Unix) so scrolling works
9276 for layouts in scroll windows.
9278 * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
9280 Patch from Anders Carlsson <andersca@gnu.org> to add
9283 * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
9284 scrolling to the "Test Scrolling" part of testgtk.
9286 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
9288 * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
9289 it against GDK_SCROLL.
9291 * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
9292 way of mouse wheel scrolling.
9294 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
9296 * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
9298 * gtk/gtkmain.c: Removed previous mouse wheel hack.
9300 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
9301 gdk_event_mask_table.
9303 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
9304 GdkEventScroll handler.
9306 * gdk/gdkevents.h: Added GdkEventScroll structure.
9308 Thu Feb 17 17:10:12 2000 Owen Taylor <otaylor@redhat.com>
9310 * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
9311 and Anders Carlsson to change the Paned widgets so that they
9312 can be dragged from anywhere along the length. Also change
9313 the way that this is drawn to make this apparent.
9315 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
9316 from George Lebl to check that option_menu->menu is present
9317 before getting history.
9319 2000-02-14 Tor Lillqvist <tml@iki.fi>
9321 * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
9322 before the assertion for non-NULL segment list.
9324 * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
9325 Seems that pattern brushes *must* be 8x8 pixels! At least on my
9326 machine, but it might be display driver dependent. Sigh, so make
9327 sure the stipple is that size. Does Windows suck or what?
9329 * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
9332 2000-02-13 Havoc Pennington <hp@pobox.com>
9334 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
9336 (gdk_cursor_new): init refcount to 1
9338 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
9340 2000-02-13 Tor Lillqvist <tml@iki.fi>
9342 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
9343 so that we don't have to do unnecessary settings to the HDC.
9345 * gdk/win32/gdkdrawable-win32.c
9346 * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
9349 * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
9350 the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
9351 GDI paths, call WidenPath to get the outline of the stroken path,
9352 and then fill the outline (with the brush that was built from the
9355 * gdk/win32/gdkgc-win32.c: Factor out common code from
9356 _gdk_win32_gc_new and gdk_win32_gc_set_values into
9357 gdk_win32_gc_values_to_win32values. Use correct colour for
9358 SetBkColor() (Until now the code actually used a random colour in
9359 the call to SetBkColor()... but that didn't show up as not many
9360 GDI APIs use the background colour. Pattern (opaque stippled)
9363 * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
9364 gdk_win32_api_failed): New functions for error logging.
9366 * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
9367 WIN32_API_FAILED to call them, passing function or file name and
9370 * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
9372 * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
9373 GdkColor for foreground and background in GdkGCWin32Data.
9375 * gdk/makefile.cygwin: Link in the resource object separately.
9377 * gdk/win32/rc/gdk.rc
9378 * gtk/gtk.rc (New file)
9379 * gdk/win32/makefile.cygwin
9380 * gtk/makefile.cygwin: Update build number in DLLs automatically,
9383 Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org>
9385 * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
9386 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
9387 * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
9388 * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
9389 parameters given and cursor->ref_count. coding style fixups.
9391 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9394 * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
9395 fix up widget macros and add _GET_CLASS() variant.
9397 * gtk/*.c: some GtkType fixups.
9399 2000-02-09 Tor Lillqvist <tml@iki.fi>
9401 * gdk/win32/gdkproperty-win32.c
9402 * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
9405 2000-02-04 Tor Lillqvist <tml@iki.fi>
9407 * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
9408 g_filename_to_utf8 to convert the font names Windows gives us from
9409 whatever is the default codepage to UTF-8.
9410 (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
9411 in the other direction.
9413 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
9414 error in debugging output.
9416 2000-02-02 Tor Lillqvist <tml@iki.fi>
9418 * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
9419 and height parameters to gdk_window_clear_area(). Not minus one.
9421 Wed Feb 2 11:58:05 2000 Owen Taylor <otaylor@redhat.com>
9423 * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
9424 checks if the widget passed to gtk_drag_get_data() was not the
9427 2000-02-01 Tor Lillqvist <tml@iki.fi>
9429 * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
9430 g_filename_from_utf8 functions (which were added a moment ago to
9431 GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
9434 gtk_file_selection_get_filename returns the filename in the C
9435 runtime encoding. It calls g_filename_from_utf8, but copies the
9436 returned string to a static buffer, which is returned. I think
9437 this is better than returning the result from g_filename_from_utf8
9438 directly, which would mean all apps that use it would have to free
9439 the return value. Or should this function care about this issue at
9440 all? Maybe a new function with clearly defined semantics.
9442 * gtk/gtkfilesel.h: Add comment about
9443 gtk_file_selection_get_filename returning the filename in the C
9448 * gdk/makefile.{cygwin,msc}
9449 * gtk/gtk.def: Updates.
9451 * gdk/gdkcursor-win32.c: Initialise refcount.
9453 2000-01-31 Yuan-Chung Cheng <platin@linux.org.tw>
9455 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
9457 2000-01-30 Havoc Pennington <hp@pobox.com>
9459 * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
9462 * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
9464 * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then
9465 implemented in platform-specific code
9467 * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
9469 * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
9472 * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
9473 put an underscore in front
9475 * gdk/gdkcursor.c: new file, implements
9476 gdk_cursor_ref/gdk_cursor_unref
9478 * gdk/gdkcursor.h: Refcount GdkCursor
9480 * gdk/gdkcompat.h (gdk_cursor_destroy): compat
9482 2000-01-29 Tor Lillqvist <tml@iki.fi>
9485 * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
9487 Tue Jan 25 11:43:21 2000 Owen Taylor <otaylor@redhat.com>
9489 * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
9490 structures to properly inherit from GtkWidget not GtkBin.
9492 Sun Jan 23 20:28:24 2000 Owen Taylor <otaylor@redhat.com>
9494 * gtk+.spec.in: Added lib/gtk+/include/* to %files
9495 (bug #5178 - Peter Wainright)
9497 * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
9498 so that it will be installed.
9499 (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
9501 Fri Jan 21 16:29:28 2000 Owen Taylor <otaylor@redhat.com>
9503 * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
9504 for the GtkStyleClass vtable const.
9506 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
9507 take a const string argument like GtkTranslateFunc. This will
9508 require changes in use code.
9510 2000-01-19 Tor Lillqvist <tml@iki.fi>
9512 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
9513 semantics (to mimic the X11 backend, which just calls XClearArea)
9514 is to check for zero width (and height), and in that case use the
9515 window's width minus x (height minus y). This fixes for instance
9516 some redraw problems with gtkclist, which were easily noticeable
9517 in the gtk file selection widget.
9519 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
9522 2000-01-13 Tor Lillqvist <tml@iki.fi>
9526 * gdk/x11/Makefile.am
9527 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
9529 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
9532 2000-01-09 Tor Lillqvist <tml@iki.fi>
9534 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
9535 WM_MOVE for iconified or invisible windows. This fixes various
9536 problems when minimising windows. Thanks to Bernd Herd.
9538 2000-01-05 Tor Lillqvist <tml@iki.fi>
9540 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
9541 backend's draw_lines method, not draw_points.
9543 2000-01-02 Tor Lillqvist <tml@iki.fi>
9545 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
9546 before Owen's reorganisation: Don't have queued_events and
9547 queued_tail statics in this file, but use gdk_queued_events and
9548 gdk_queued_tail. This makes exposure event compression work again.
9550 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
9553 1999-12-30 Tor Lillqvist <tml@iki.fi>
9555 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
9556 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
9557 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
9558 doesn't do anything.
9560 * gdk/gdk.def: Add gdk_xid_table_insert.
9562 * gdk/win32/gdkprivate-win32.h
9563 * gdk/win32/gdkevents-win32.c
9564 * gdk/win32/gdkinput-win32.c
9566 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
9567 extension_events field in the GdkWindowWin32Data struct. Use only
9568 the extension_events field in GdkWindowPrivate. Previously one was
9569 set, and the other one tested, which broke tablet
9570 functionality. Thanks to Keishi Suenaga for pointing this out.
9572 1999-12-18 Tor Lillqvist <tml@iki.fi>
9574 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
9575 When handling a single character (text length == 1), don't handle
9576 it as if it was UTF-8.
9578 1999-12-11 Tor Lillqvist <tml@iki.fi>
9580 * Makefile.am: Distribute README.win32.
9583 * gdk/win32/Makefile.am: Distribute Win32 files.
9585 * gdk/makefile.msc: New file.
9587 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
9590 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
9591 gdk_error_code as GDKVAR, as they are referred outside GDK.
9593 * gdk/win32/makefile.msc: Update.
9595 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
9596 tweaks. Check only if at least one of those Unicode subrange bits
9597 we care for is set. If no code page bits are set, guess (wildly)
9598 based on the charset.
9600 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
9602 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
9608 * gtk/gtkselection.c
9610 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
9611 appropriate. There must be a cleaner way to handle this?
9613 * gtk/gtkrc.c: Must include windows.h on Win32.
9615 * gtk/testgtk.c: No need to include gdkx.h.
9617 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
9619 1999-12-07 Tor Lillqvist <tml@iki.fi>
9621 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
9622 the rbearing is set to the same as the width, but this should be
9625 1999-12-06 Tor Lillqvist <tml@iki.fi>
9627 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
9628 function. If Windows doesn't tell us what Unicode subranges a font
9629 covers, guesstimate based on the codepages it covers. This will
9630 hopefully help those Windows versions or fonts that don't give us
9631 any useful Unicode subrange information with GetTextCharsetInfo.
9632 Call this function in gdk_font_load_internal.
9634 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
9637 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
9639 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
9640 New function, long needed.
9642 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
9644 * gdk/gdkproperty.h x11/gdkproperty.c: Change
9645 only_if_exists argument of gdk_atom_intern to
9648 1999-11-25 Tor Lillqvist <tml@iki.fi>
9650 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
9651 Fix two copy&paste errors.
9653 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
9656 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
9657 GdkWin32SingleFont struct.
9659 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
9660 subranges of loaded fonts. Clear font signature first, in case
9661 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
9662 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
9664 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
9665 Unoffset clip region.
9667 1999-11-23 Tor Lillqvist <tml@iki.fi>
9669 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
9670 event->any.window before calling filter functions.
9672 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
9674 * gtk/gtkgamma.h: Adapt cast macros to standard.
9678 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
9680 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
9681 If translation does not include a '/', use entire
9682 translation instead of crashing.
9684 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
9686 * docs/gtk_tut.sgml:
9687 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
9689 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
9691 * gtk/gtkselection.c (gtk_target_list_remove): Use
9692 g_list_remove_link, not g_list_remove.
9694 [ From Geert Bevin <gbevin@thunderstorms.org> ]
9696 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
9698 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
9699 statement upon unselection (how the heck did that slip in?).
9701 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
9703 * gtk/gtktext.c (gtk_text_freeze):
9704 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
9705 in frozen state (and aparently crashes). patch provided by Anders
9706 Melchiorsen <and@kampsax.dtu.dk>.
9708 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
9710 * fix insensitive default/focus widget activation,
9711 reported by Matt Goodall <mgg@isotek.co.uk>.
9713 * gtk/gtkwindow.c (gtk_window_key_press_event):
9714 (gtk_window_activate_default):
9715 (gtk_window_activate_focus):
9716 return handled=FALSE for actiavtion of insensitive default
9717 widgets. return handled=TRUE for activation of insensitive
9718 focus widgets. don't activate in either case.
9720 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
9722 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
9723 and $glib_cflags to match library order and in the
9724 theory that an old version of GLib is more likely to
9725 be in the include directory for X then vice-versa.
9728 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
9730 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
9731 to determine the locale for fontsets, not LC_MESSAGES;
9732 the user may want English messages with a handling
9733 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
9734 will still be broken) (Bug #2891)
9736 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
9738 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
9740 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
9742 * gtk/gtkrc.ko: Changed the Korean default fontset.
9744 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
9746 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
9747 where when scrolling to the left or top double exposes
9748 were done, causing major slowdowns.
9750 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
9752 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
9753 names to lowercase and alphanumeric, before looking
9756 * gtk/Makefile.am: Install codeset variant gtkrc files
9757 with normalized names.
9759 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
9761 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
9762 popup menus when the menu is already visible, but its parent
9763 is still hidden, (happens after tornoff window got hidden).
9765 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
9767 * gtk/Makefile.am (install-data-local): Fix
9768 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
9769 deleted, causing error messages on install.
9771 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
9773 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
9774 the handle as well, since we now sometimes ignore
9775 exposes on the handle while resizing.
9777 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
9779 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
9780 extra g_free introduced in one of the last one or two
9783 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
9785 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
9786 consistent, put each style that a gtkrc.* file creates
9787 in a unique namespace, remove old files before installing.
9789 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
9791 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
9792 gtk_rc_init is called multiple times. (Yes, people who
9793 do that have bugs in their code.)
9795 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
9797 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
9798 Remove it since it's generated by the Makefile anyway
9800 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
9802 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
9803 device->info.axes for core pointer.
9805 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
9807 * gtk/testgtk.c (destroy_idle_test): Rename idle to
9808 idle_id, to deal with obsolete, broken C libraries.
9810 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
9812 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
9813 allocation->x/y twice!
9815 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
9816 consistent with gtk_vscale_pos_trough().
9818 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
9820 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
9821 be queueing a resize on a toplevel container between
9822 the time we show it and when we map it. So, we need
9823 to test GTK_WIDGET_VISIBLE() for toplevels, and only
9824 use GTK_WIDGET_DRAWABLE() for child windows.
9826 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
9828 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
9831 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
9833 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
9834 container DRAWABLE (instead of VISIBLE), so we don't queue
9835 resizes on non-toplevel containers.
9837 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
9839 * gtk/gtkselection.[ch]: Make the data argument
9842 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
9844 * gtk/gtkwindow.c: Try to behave sensibly if
9845 the focus widget is the window itself. (Should
9846 we allow this at all?)
9848 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
9850 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
9851 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
9852 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
9853 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
9854 in prototypes and implementations consistent (Tomas Ogren).
9856 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
9857 before the widget is unparented (reported by damon).
9859 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
9860 since we provide unsigned data anyways.
9862 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
9864 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
9865 the call to gtk_tooltips_layout_text() until later.
9867 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
9868 Call gtk_widget_ensure_style() before using the style.
9870 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
9872 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
9873 for old widgets that don't propagate draws to all
9874 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
9876 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
9878 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
9879 for a redraw but just the widget that requested the resize.
9881 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
9883 * gtk/gtkcontainer.c: added new widget level method
9884 gtk_container_set_reallocate_redraws() and a GtkContainer flag
9885 reallocate_redraws : 1 to reflect the setting, exported this through
9886 the argument system as a boolean ::reallocate_redraws.
9888 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
9889 on the widget because the allocation changes, do so as well for
9890 widget->parent if the parent has reallocate_redraws set to TRUE.
9891 with that containers requesting reallocation redraws get automatically
9892 redrawn if their children changed allocation (this unfortunately
9893 affects also other children that didn't change allocation, but we
9894 cannot work around that before 1.3).
9896 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
9898 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
9899 _and_ height are >0 (not _or_).
9901 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
9902 instead of gtk_container_queue_resize(), which is a core gtk internal
9903 function (must have been on crack when i queued that).
9905 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
9906 we can check more reliably if we want to discard expose events.
9907 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
9910 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
9911 we simply trust these events. for deciding whether to discard exposes,
9912 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
9914 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
9916 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9917 queues of areas that are completely off screen.
9919 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
9920 logic for handleboxes.
9922 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
9923 check on width/height.
9925 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
9927 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
9928 we are fine with using $@ the way we do (if we actually encounter
9929 brokeness with $@ in VPATH builds because of additional path prefixes,
9930 we need to use $(@F) actually).
9932 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
9934 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
9935 short lived bugs, that would allow language bindings to do surgeries
9938 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
9940 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
9941 where comparison was being done against an uninitialized
9942 value causing intermittant results depending on
9943 compiler flags. Also make it clearer that we aren't
9944 ever initializing the child as 0x0 (though this will
9945 be caught in gtk_widget_size_allocate())
9947 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
9949 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
9950 gtk_window_unset_transient_for() call after we do checks
9951 involving the old transient parent.
9952 [ From Lance Capser <lmc@cyberhighway.net> ]
9954 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
9956 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
9959 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
9961 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
9962 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
9964 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
9966 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
9967 `$@' is valid only in the build dir, not after we've done
9968 `cd $srcdir'. Also use `test -f' instead of less portable
9971 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
9973 * gtk/gtktext.c (correct_cache_insert): Rewrite
9974 for simplicity, and hopefully correctness.
9975 (Fixes bug #1322, which was a segfault when
9976 on some insertions with the properties around
9977 the insertion set up just wrong.)
9979 * gtk/gtktext.c (gtk_text_adjustment): When we receive
9980 a "changed" signal, clamp the new value to the adjustment
9981 bounds to avoid segfaulting if someone tries to change
9982 the adjustment to a bogus value. (Bug #1795)
9984 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
9986 * gtk/gtkmain.c: Ignore unexpected destroy notifies
9987 for children, for toplevel windows handle them
9990 * gtk/gtkplug.c: Add an unrealize handler so that
9991 we unref plug->socket_window when we are done
9994 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
9996 * gtk/gtktext.c (clear_area): Fix stupid signedness
9997 problem that was causing background to sometimes
10000 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
10002 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
10004 * gtk/gtkmenu.c (gtk_menu_position): Make
10005 sure we never position menus with negative x, y,
10006 since gtk_widget_set_uposition() can't handle that.
10008 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
10009 Modify the positioning code a bit so that we always
10010 put the top-left corner onscreen. (This is for
10011 UI reasons, gtk_menu_position() now takes care of
10012 gtk_widet_set_uposition() brokeness.)
10014 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
10016 * gtk/Makefile.am: fixed up things for -jx, x > 1.
10018 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
10020 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10021 RC style that is passed in. The lack of the ref
10022 before was a bug. If people worked around this
10023 bug, this will introduce a slight memory leak
10024 in their code. The code should typically look like:
10026 rc_style = gtk_rc_style_new ();
10028 gtk_widget_modify_style (widget, rc_style);
10029 gtk_rc_style_unref (rc_style);
10031 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10032 the style if it was already set.
10034 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10035 style if it was set before.
10037 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
10039 * gtk/testgtk.c (main): Add a check to see if we
10040 are being run from the correct directory and
10041 to quit nicely if we are not.
10043 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10046 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
10048 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10051 queue resizes unconditionally (gtk_widget_queue_resize will figure
10052 what to do if the window is not realized).
10053 (gtk_window_move_resize): only recenter the window
10054 for GTK_WIN_POS_CENTER_ALWAYS.
10055 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10056 the same way as GTK_WIN_POS_CENTER.
10058 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
10060 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10061 with (!(info->last_flags & GDK_HINT_POS)) instead of
10062 (!info->last_flags & GDK_HINT_POS).
10064 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10065 new_height unconditionally, because we use these values even if
10066 !default_size_changed && !hints_changed.
10067 comented the (default_size_changed || hints_changed) case with
10068 respect to resize rejects from the window manager.
10070 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10071 in the zvt condition hack, since this includes the window hints, set
10072 the hints after the handling_resize case.
10074 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10075 window is initially shown with to the geometry.
10077 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
10079 * gtk/gtkwindow.c (gtk_window_move_resize):
10080 s/size_changed/default_size_changed/g so i know what's
10081 really going on (frying brain on smaller flame now).
10083 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
10085 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10086 we have size_changed upon handling_resize. this is a gross
10087 workaround for the broken zvt widget and should be removed in
10088 1.3 again (search for FIXME).
10089 Owen provided an accurate comment for this:
10091 /* We could be here for two reasons
10092 * 1) We coincidentally got a resize while handling
10094 * 2) Our computation of size_changed was completely
10095 * screwed up, probably because one of our children
10096 * is broken. It's probably a zvt widget.
10098 * For 1), we could just go ahead and ask for the
10099 * new size right now, but doing that for 2)
10100 * might well be fighting the user (and can even
10101 * trigger a loop). Since we really don't want to
10102 * do that, we requeue a resize in hopes that
10103 * by the time it gets handled, the child has seen
10104 * the light and is willing to go along with the
10105 * new size. (this happens for the zvt widget, since
10106 * the size_allocate() above will have stored the
10107 * requisition corresponding to the new size in the
10110 * This doesn't buy us anything for 1), but it shouldn't
10111 * hurt us too badly, since it is what would have
10112 * happened if we had gotten the configure event before
10113 * the new size had been set.
10116 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
10118 * gtk/gtkrc.c: deal properly with the fact that RC
10119 style lists may include rc styles more than once.
10121 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10122 unused static function.
10124 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10125 stack of directories of RC files currently being
10126 parsed and implicitely add them to pixmap path.
10128 This fixes a bug where the directory would get
10129 appended then overwritten by pixmap_path declarations.
10131 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10133 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10134 theme's exit function. (Patch from Peter Wainwright,
10137 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10138 Add a destroy() handler to take care of removing
10139 group for menu item. (Fixes bug #1197)
10141 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10142 in warning message.
10144 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
10146 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10147 roundtrip to figure window's width and height, since we know that
10148 anyways from widget->allocation.
10150 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
10152 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10153 the hints after we request the new size.
10155 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
10157 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
10158 GTK_WIDGET_REALIZED() assertion - we can compute the
10159 hints before we are realized.
10161 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
10162 hint changing so that we have a value of hints_changed
10163 when we decide whether to constrain the window size.
10165 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
10167 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
10168 change back to G_MAXINT.
10170 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
10172 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
10173 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
10174 contain uncluttered values.
10175 (gtk_window_compute_hints): simply assert that window is realized
10176 and that geometry_info is valid, since we rely on this anyways.
10177 (gtk_window_constrain_size): major cleanups to the code.
10178 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
10179 for the base size, instead of the minimums. use 32767 as max width
10180 and height (like in gtkwindow.c) instead of G_MAXINT.
10182 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
10184 * cleaned up the GtkContainer.need_resize flag handling mess, we
10185 only need to force resize requests when we were prematurely
10186 realized, or our widget tree was modified when we were temporarily
10187 hidden. handling these cases directly upon showing the window (i.e.
10188 while the GdkWindow is still unmapped) avoids the need to wait for
10189 a configure event response and therefore makes the GUI more snappier
10190 and avoids blank windows during the roundtrip.
10194 (gtk_widget_show): don't queue resizes on toplevels, they know how
10195 to deal with matters.
10197 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
10198 flag directly for not visible resize containers and spare us unecessary
10202 (gtk_window_realize): if we need to enforce premature size allocation,
10203 queue a container resize so we are correctly resized later on.
10205 (gtk_window_size_request):
10206 don't freak around with the ->need_resize flag,
10207 gtk_container_queue_resize() will care about that.
10209 handle initial resizing issues here, we can handle matters better in
10210 this place, especially since we know that our GdkWindow is still
10212 (gtk_window_move_resize):
10213 don't care about ->need_resize at all.
10214 handle size changes properly that occoured while we waited for a
10217 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
10219 * gtk/gtkwidget.c (gtk_widget_set_uposition):
10220 * gtk/gtkwindow.[hc] (gtk_window_reposition):
10221 Move the hint setting code from gtk_widget_set_uposition
10222 to here; set the hints so that we respect any previously
10223 set geometry hints.
10225 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
10226 change the window hints here or move the window here,
10227 let that happen in gtk_window_move_resize().
10229 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
10231 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
10232 to already queued resizes (and therefore redraws) on a widget, check
10233 its anchestry as well.
10235 * gtk/gtkcontainer.c:
10236 (gtk_container_queue_resize): clear resize widgets for resize
10237 containers before aborting prematurely. this is especially important
10238 for toplevels which may need imemdiate processing or their resize
10239 handler to be queued.
10240 (gtk_container_dequeue_resize_handler): added new internal function for
10243 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
10244 configure event, take possible changes in window position into account
10246 if we request a new window size, queue up a resize handler that will
10247 last until the configure event response arrives.
10248 combined the ->need_resize case (initial show) with the general size
10249 (hints) changed case and added even more comments.
10250 if !auto_shrink, only revert to the old allocation if the new size
10251 is smaller than the current allocation.
10253 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
10255 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
10256 gtk_window_set_geometry_hints
10257 gtk_window_set_default_size):
10258 When hints are set, queue a resize so that the hints will
10259 be eventually reset on the toplevel.
10261 * gtk/gtkwindow.c (gtk_window_show): Use
10262 gtk_window_compute_default_size(). Clear the need_resize flag
10263 on the initail map so that we don't unnecessarily trigger the
10266 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
10267 into separate functions. Compare the hints we are setting
10268 with what we set last time so that we can accurately
10269 tell when we need to reset the hints.
10271 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
10272 function to figure out the size from requisition
10275 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
10276 from fvwm to constrain a size to the geometry hints.
10278 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
10279 to compare two sets of geometry hints.
10281 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
10282 from gtk_window_set_hints(), just compute the hints,
10285 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
10286 code from gtk_window_move_resize() to separate function,
10289 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
10291 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
10292 structure into a new private structure.
10294 * gtkrc.c: Split GtkRcStyle into public/private.
10295 In the private part, add a list of pointers to the
10296 RcStyle lists this RcStyle participates in.
10298 * gtkrc.c: When a RcStyle is free, remove all
10299 lists referencing it from the
10300 realized_style_ht hash, and free those lists.
10302 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
10303 gtk_rc_init(), since that adds the default styles
10304 to the list of parsed RC files again.
10306 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
10308 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
10310 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
10311 checks that ensure that a widget's allocation is at least 1 in width
10312 and height. (GNOME note: this doesn't affect old panel code anymore,
10313 because GtkSocket will request width and height of at least 1 since
10316 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
10317 allocated yet (happens if the user realizes the window prematurely),
10318 size request and allocate it.
10319 (gtk_window_size_allocate): guard against guint underflows.
10321 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
10323 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
10324 in gtk_built_sources, so gtk.defs gets built prior to all other
10327 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
10330 invoke indent on gtkmarshal.*.
10331 rewrote source generation rules, use COPYING as oldest source tag for
10332 a piggyback rule to generate all sources from (don't touch it ;).
10333 major cleanups, strip spaces on build rules for GNU Make.
10335 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
10336 source and target files from commandline arguments. don't invoke indent.
10338 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
10340 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10341 notebook after switch to avoid drawing problems.
10342 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10344 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
10346 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10348 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
10350 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10351 notebook after switch to avoid drawing problems.
10352 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10354 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
10356 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10358 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
10361 we use window->need_resize from configure_event now, to indicate that
10362 the gtkwindow should keep its allocation (e.g. because the user resized
10363 the window through window manager handles). resize_count is now reliably
10364 used to figure whether we got the allocation we requested from the
10366 configure events get queued as resizes now, the real stuff (size
10367 computation and allocation) now only goes on in gtk_window_move_resize().
10368 GtkWindow's requisition now contains its *real* requisition (like all
10369 other widgets), *not* taking usize into account.
10370 geometry_info->last_{width|height} is now updated from set_hints() only
10371 so it always contains the last hints we set for the window manager.
10372 made some event handlers return TRUE instead of FALSE.
10373 the overall code should be much more straight forward now, and the
10374 significant code portions are accompanied by comments now.
10375 (gtk_window_set_hints):
10376 removed requisition argument and made it
10377 fetch the requisition through gtk_widget_get_child_requisition.
10378 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
10381 ensure that the widget is realized before calling
10382 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
10383 ensure that we got properly size requested and allocated before
10385 (gtk_window_configure_event):
10386 ignore plain window moves, or reallocate the widget tree through the
10387 resize queue otherwise.
10388 (gtk_window_move_resize):
10389 mostly rewrote this function to figure window manager hints more
10390 reliably, coalesce window moves and resizes to reduce configure events
10391 and do actuall size allocations.
10393 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
10395 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
10396 that have a resize pending, because a redraw is already queued for them.
10398 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
10399 hack to clear resize_widgets.
10401 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
10402 for resize containers prior to size allocation. (this is also a bit
10403 ugly, but avoids side effects for stopped emissions and is thus more
10405 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
10407 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
10408 function from gtk_tooltips_expose, as we connect to ::expose_event
10411 1999-08-18 Federico Mena Quintero <federico@redhat.com>
10413 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
10415 (gtk_target_list_unref): Likewise.
10417 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
10419 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
10421 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
10422 guard against division by zero. (Fixes bug #1339)
10424 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
10426 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
10427 Prevent the trivial leak of information of allowing
10428 word motion when the entry is not visible.
10430 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
10432 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
10433 modality to error dialog as well as confirmation dialogs.
10434 (Bug #1803, reported by Rosanna Wing Sze Yuen)
10436 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
10438 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
10440 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
10442 * gtk/Makefile.am (install-data-local): Solaris apparently
10443 has various troubles with ln -f; use rm first instead.
10444 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
10446 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
10448 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
10449 use `cp' followed by `rm' (the `rm' was already there).
10451 July 30, 1999 Elliot Lee <sopwith@redhat.com>
10453 * configure.in: Fix autoconf warnings about cross compilation by
10454 trying to provide sane defaults for AC_TRY_RUN.
10455 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
10456 put them into $(srcdir) when generated. Also add a dependency of
10457 gtksignal.h on gtkmarshal.h for -j builds.
10458 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
10460 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
10462 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
10463 GDK_THREADS_{LEAVE,ENTER} pair.
10464 (From Paul Fisher <pnfisher@redhat.com>)
10466 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
10468 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
10469 width and height are always >0 (owen).
10471 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
10473 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
10474 change that assured that a widget's allocated with and height are
10475 always >1, since this breaks *buggy* panel code. unfortunately this
10476 back-breaks the gimp's color selector.
10478 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
10479 allocation is always >0 in width and height, before sending the
10480 configure event; this is a *gross* hack to get the gimp back to work.
10482 * marked both cases with TODO-1.3
10484 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
10486 * gtk/gtktext.c: Don't display wrap indicators when
10487 text is not editable and word wrap is on.
10489 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
10491 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
10492 option menus here as they are not derived from menu shell, assure that
10493 the option menu has a menu we can add items to.
10495 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
10497 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
10498 width/height to (gint) before calculations and check against < 0 to
10499 avoid guint wraparounds.
10501 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
10503 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
10504 width and height is never zero. sanity check both dimensions against
10505 32767 and issue a warning if the allocation is greater than that.
10507 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
10509 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
10510 to g_main_pending() as well.
10512 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
10514 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
10515 call to g_main_iteration() - since that will regrab
10516 GTK+ lock to process events.
10518 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
10521 - Regularize with the rest of GTK+ by making widget->requisition
10522 not reflect the set_usize()
10523 - Always recompute geometry hints, then check if they
10524 changed before sending them to the X server. The
10525 previous checks for changes would fail in a number
10528 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
10530 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
10532 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
10536 - Instantaneously update on modifier key presses
10537 - Allow cancellation of the drag with Escape.
10539 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
10541 * gtk/testgtk.c (create_handle_box): Set the policy
10542 to auto_shrink - otherwise the appearance is rather
10543 strange when flipping between horizontal and vertical.
10545 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
10547 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
10548 (gtk_window_set_default_size): don't change a value if it's < 0.
10551 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
10553 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
10555 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
10557 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
10558 add an extra "/" when concating "/" + filename.
10559 (From Matt Grossman <mattg@oz.net>)
10561 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
10563 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
10564 for fg_gc if we set it for drawing pixmap.
10566 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
10568 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
10570 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
10571 already set, call old engine's destroy function and
10572 unref the old engine.
10574 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
10576 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
10578 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
10580 * gtk/gtkaccelgroup.h: mark certain functions as internal.
10582 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
10584 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
10585 expand behaviour changed.
10587 * gtk/gtklabel.c (gtk_label_set_pattern):
10588 (gtk_label_set_justify):
10589 (gtk_label_set_line_wrap):
10590 don't bother invoking queue_clear, the reallocation does
10591 that for us, always free_words so the upcoming resize will
10592 relayout the label's contents.
10594 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
10596 * applied argument implementation patches from Elena Devdariani
10599 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
10600 ::space_style, ::relief
10601 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
10602 * gtk/gtkpreview.c: ::expand
10603 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
10604 * gtk/gtknotebook.c: ::homogeneous
10605 * gtk/gtklabel.c: ::wrap
10606 * gtk/gtklist.c: ::selection_mode
10607 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
10608 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
10609 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
10610 * gtk/gtkclist.c: ::sort_type
10611 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
10612 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
10614 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
10616 * gtk/gtkstyle.c: Removed ill-thought-out part of last
10619 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
10621 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
10622 counting right when we have to attach a new style
10623 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
10625 * gtk/gtkstyle.c: Documented the refcounting
10626 peculularities of gtk_style_attach.
10628 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
10630 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
10633 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
10634 of GTK_TOPLEVEL for creating the window.
10636 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
10638 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
10639 the last argument (reported by Per Winkvist).
10641 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
10643 Fixes for invisible XOR lines (Frank Loemker
10644 <floemker@TechFak.Uni-Bielefeld.DE>)
10646 * gtk/gtkclist.c (gtk_clist_realize): Always use
10647 a non-zero pixel for GDK_XOR.
10649 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
10650 Use GDK_INVERT instead of GDK_XOR.
10652 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
10654 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
10655 signals if h/voffsets differ from adjustment values.
10656 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
10658 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
10660 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
10661 ::selection-done emissions up to the topmost menu shell.
10663 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
10665 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
10666 the user data on the window before destroying it.
10668 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
10669 unrealize handler to take care of destroying
10670 notebook->panel properly.
10671 (Bug #1198 - Morten Welinder <terra@diku.dk>)
10673 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
10674 of g_new and g_realloc to stop memory leak. (Actually,
10675 we could just use g_realloc(), but I'm not 100% sure
10677 (Bug #1196 - Morten Welinder <terra@diku.dk>)
10679 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
10681 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
10683 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
10686 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
10687 with bin/button confusion.
10689 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
10691 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
10692 and show how preselection of radio items is done.
10694 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
10696 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
10697 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
10698 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
10699 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
10700 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
10701 * gtk/gtktable.c (gtk_table_attach):
10702 * gtk/gtklist.c (gtk_list_insert_items):
10703 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
10704 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
10705 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
10706 * gtk/gtkbin.c (gtk_bin_add):
10707 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
10708 * gtk/gtkfixed.c (gtk_fixed_put):
10709 * gtk/gtklayout.c (gtk_layout_put):
10710 general fixups to container_add logic. always realize child if
10711 child->parent is realized, only map the child and queue a resize
10712 if child and child->parent are both visible.
10714 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
10716 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
10717 instead of gtk_container_foreach to walk and unrealize children, so
10718 composite children get also unrealized.
10719 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
10720 (gtk_widget_map): assert that the widget is visible (basic constrain).
10721 (gtk_widget_real_map): assert that the widget is realized (basic
10724 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
10726 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
10728 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
10730 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
10731 file for iso-8859-2 locales.
10733 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
10735 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
10737 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
10738 (Pointed out by andy@rz.uni-karlsruhe.de and others).
10739 Remove some suspicious and useless lines.
10741 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
10743 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
10744 width,height = 0, 0 to mean - here to edge of window,
10745 instead of -1, -1, since the former is all we support.
10747 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
10749 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
10750 when removing from quit_functions list.
10752 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
10754 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
10756 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
10758 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
10759 When redrawing characters on non-visible entry, use appropriate
10760 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
10762 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
10764 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
10765 from drag coordinates.
10766 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
10767 use drag_dest_cell.
10769 * gtk/gtktree (drag_dest_cell)
10770 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
10773 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
10775 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
10776 translate_* fields.
10777 (gtk_item_factory_finalize): invoke translate_notify independant from
10779 (gtk_item_factory_set_translate_func): likewise.
10780 (gtk_item_factory_destroy): only remove ifactory pointer from those
10781 widgets that belong to us (stupid me).
10783 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
10785 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
10786 rc_style list when lookup succeeeds.
10788 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
10790 * gtk/gtkctree.c (resync_selection):
10791 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
10792 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
10795 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
10797 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
10798 Add some missing GDK_THREADS_ENTER()/LEAVE around
10799 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
10801 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
10803 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
10804 rather than emit_by_name.
10806 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
10807 on the widget across multiple signal emissions.
10808 (gtk_editable_delete_text): same here.
10809 (gtk_editable_class_init): set widget_class->activate_signal after
10810 editable_signals[ACTIVATE] has been created.
10812 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
10814 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
10815 position here prematurely -- we might not have the
10816 right ->min_position and ->max_position yet.
10818 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
10820 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
10821 Add error traps so if the other end of the connection
10824 * gtk/gtkselection.c (gtk_selection_notify): Clean
10825 up properly when selection property retrieval fails.
10827 * gtk/gtkselection.c (gtk_selection_request): Correctly
10828 reject SelectionRequest notifies where the handler
10831 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
10833 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
10834 when we've previously highlighted.
10836 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
10837 emit two "drag_leave" signals for Motif drops.
10839 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
10840 back the correct status messages when dropping from
10841 Motif onto a proxy window that is rejecting the
10844 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
10846 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
10847 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
10848 to compare two argument values. added gtk_arg_to_valueloc() to set a
10849 variable from an arg through its location (pointer).
10851 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
10852 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
10853 as gfloat*, uchars are collected as guchar*, ints are collected as
10856 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
10858 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
10859 Include <string.h> instead of <strings.h>.
10861 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
10862 (actually, a lot more duplicate includes occur if
10863 you trace through the sequence of #include's)
10864 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
10866 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
10868 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
10869 gtk-a-higuti-990322-[0-3]
10871 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
10872 that was causing -DX_LOCALE not to work.
10874 * gtk/gtkrc.c (gtk_rc_init):
10875 X_LOCALE will never have LC_MESSAGES defined
10877 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
10879 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
10880 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
10882 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
10883 left/right as well (gtk-michael-980726-0.patch.gz).
10885 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
10886 for pointer values, use gchar instead of char. fixed uline allocation
10887 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
10888 chunks instead of G_ALLOC_ONLY.
10889 (gtk_label_size_request): always alter requisition as passed and leave
10890 widget->requisition alone.
10891 (gtk_label_set_text): allow NULL strings.
10892 (gtk_label_new): likewise.
10894 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
10896 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
10898 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
10900 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
10901 *and* mapped (i.e. drawable).
10902 (gtk_bin_expose): only send exposes to drawable children.
10904 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
10905 (gtk_box_expose): only send exposes to drawable children.
10907 * gtk/gtkhscale.c (gtk_hscale_draw):
10908 * gtk/gtkvscale.c (gtk_vscale_draw):
10909 hm, this is an ugly one. we first compute the size of our trough area
10910 here (window relative) and then check intersection with the draw_area
10911 which is parent relative because we're a NO_WINDOW widget, so we need
10912 to offset the trough area by allocation.x and allocation.y before the
10913 check. (this must not be done for the background area though, since
10914 that's already computed parent relative).
10916 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
10918 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
10919 unrealize title buttons.
10921 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
10923 * gtk/gtkclist.c (gtk_clist_column_title_passive)
10924 (gtk_clist_column_title_active):
10925 only connect/disconnect to GtkWidgetClass::event to block mouse events.
10927 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
10928 zero initialize event, removed superfluous gdk_window_get_pointer call
10930 * gtk/gtklist.c (gtk_list_vertical_timeout)
10931 (gtk_list_horizontal_timeout): removed superfluous
10932 gdk_window_get_pointer call
10934 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
10936 * plugging problems reported by "Bruce Mitchener, Jr."
10937 <bruce@puremagic.com> due to a purify session.
10941 (gtk_style_unref): assert ref_count to be > 0.
10943 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
10945 (gtk_clist_set_shift): likewise.
10947 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
10950 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
10951 event before sending it and set send_event to TRUE (which needs to
10952 be done for *all* synthesized events).
10953 (gtk_list_vertical_timeout): likewise.
10955 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
10958 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
10959 to TRUE when synthesizing events.
10961 [ *** end of merges from 1.2 *** ]
10963 1999-11-21 Tor Lillqvist <tml@iki.fi>
10965 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
10966 (or copied from gdkconfig.h.win32 on Win32, sigh).
10968 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
10970 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
10972 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
10974 * gdk/gdkconfig.h.win32: New file.
10976 * gdk/win32/makefile.cygwin: Build just a static archive here.
10978 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
10979 for the DLL from the static archive built above.
10981 * gdk/gdk.def: Moved here from the win32 subdirectory.
10983 * gdk/win32/*: Adapt for the changed private struct organisation.
10985 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
10987 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
10989 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
10990 for wheel mice (buttons 4 and 5).
10992 1999-11-18 Tor Lillqvist <tml@iki.fi>
10994 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
10995 drawables use just the pixel field in the foreground and
10996 background GdkColor of the GdkGC.
10998 gdk_gc_set_{fore,back}ground() are called in the GIMP with
10999 GdkColors containing uninitialized (red,green,blue) fields, and
11000 just the pixel field filled in, and furthermore in the
11001 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11002 It thus turns out that we really don't need to have the full
11003 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
11004 it later to have just the pixel values.
11006 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
11008 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
11010 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
11012 * docs/gtkfaq.sgml: threads example from Erik Mouw.
11013 New question on GtkLabel background colors.
11015 * docs/gtk_tut.sgml:
11016 - Correct the example code callback
11017 function definitions.
11018 - Update the gtkdial example code, from Frans van Schaik.
11019 - Update setselection.c to current API.
11021 * examples/Makefile examples/*/*.c: Update to code
11022 listed in tutorial.
11024 1999-11-10 Tor Lillqvist <tml@iki.fi>
11026 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11027 subrange table (from the "Developing International Software for
11028 WIndows 95 and Windows NT" book) was missing the Hangul syllable
11029 block... Get the loaded font's charset correctly.
11031 (Note that this, and the other *-win32.c files, still really are
11032 the old ones, the win32 subdirectory is not ready for compilation
11033 yet after the reorg.)
11035 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
11037 * gtk/gtkclist.c: Fix off-by-one bug in parameter
11040 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
11042 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11043 on results of XQueryDeviceState().
11045 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
11047 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11048 we need to accesss only ->children. We need an accessor
11051 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11052 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11053 to get rid of gdkx.h include.
11055 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11056 and random references to 'None'.
11058 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11059 Get rid of unused #include <gdk/gdkx.h>
11061 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11062 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11065 1999-11-08 Tor Lillqvist <tml@iki.fi>
11067 * gdk/win32/gdkdraw.c
11068 * gdk/win32/gdkfont.c
11069 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11070 following yesterday's changes. (Unrelated to Owen's reorg.)
11072 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
11074 * gdk/x11/gdkinput-gxi.c: Add missing include,
11075 fix GdkWindowPrivate => GdkDrawablePrivate.
11077 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11079 * gdk/x11/Makefile.am (xinput_sources): Add missing
11080 backslash to fix building with --with-xinput=none
11082 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
11084 Move all X specific code into the x11/ directory.
11085 Aside from shuffling things around, did the following:
11087 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11088 gdk_arg_context_* - a simple argument parsing system
11089 in the style of popt.
11091 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11092 gdk/x11/gdkprivate-x11.h:
11093 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
11094 add ->klass and ->klass_data fields. The klass_data
11095 field points to an auxilliary structure that is
11096 windowing system dependent.
11098 * gdk/gdkfont.c: Make most of the measurement functions
11099 simply wrappers around gdk_text_extents().
11101 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
11102 _gdk_font_strlen() function that hides the weird
11103 behavior in gtk+-1.[02] where a string is interpreted
11104 differently for 8-bit and 16-bit fonts.
11106 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11107 to store common code for synthesizing double/triple
11110 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11111 Make all the function that modify an existing GC
11112 simply wrappers around gdk_gc_set_values().
11114 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11115 for throwing out later.
11117 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11118 GdkImagePrivate and GdkColormapPrivate to have a
11119 windowing system dependent part (GdkFontPrivateX etc.)
11120 that "derives" from the system-independent part.
11122 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11123 Got rid of the included-source-files for XInput in
11124 favor of automake conditionals. (Which didn't exist
11125 when XInput support was originally added.)
11127 * gdk/gdkrgb.c: Remove the visual id from the debugging
11128 statements since that is X11 specific; print out
11129 type/depth info instead.
11132 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
11134 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11135 loading duplicates of hashed fonts.
11137 * gdk/gdk.c (gdk_keysym_convert_case): rename
11138 gdk_XConvertCase to gdk_keysym_convert_case, allow
11139 results to be NULL in the GTK+ style.
11141 * gdk/gdkcompat.h: Started compatibility header
11144 1999-11-07 Tor Lillqvist <tml@iki.fi>
11146 * gdk/win32/gdkprivate.h: New font private structures, related to
11149 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11150 gdk_font_list_free(). On X11, will just be wrappers to
11151 XListFonts() and XFreeFontNames(). On Win32, the code previously
11152 in gtkfontsel.c is now here.
11154 New function gdk_font_xlfd_create(). On X11 will get the FONT
11155 property of the font (for GDK_FONT_FONTs), or call
11156 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11157 builds a XLFD style name from the font information in the LOGFONT
11160 New function gdk_font_xlfd_free(), which correspondingly frees the
11161 string returned by gdk_font_xlfd_create().
11163 Implement fontsets on Win32. Add a function that iterates over a
11164 wide char string and calls a callback function for each substring
11165 of wide chars from the same Unicode subrange (and thus probably
11166 available in the same real font).
11168 Improve the XLFD emulation a bit.
11170 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
11172 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
11173 Beta3, WM_IME_CHAR messages don't seem to contain the composed
11174 multi-byte char as with the Active IMM on Win9x. Oh well, handle
11175 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
11176 ImmGetCompositionStringW() to get the composed Unicode chars.
11178 * gdk/win32/gdkgc.c
11179 * gdk/win32/gdkdraw.c: Changes needed because of the font private
11182 * gdk/win32/gdk.def: Add the new functions.
11184 1999-11-04 Tor Lillqvist <tml@iki.fi>
11186 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
11187 get the Platform SDK to get <dimm.h>.
11189 * gdk/win32/gdkevents.c: More event handling fixes and
11190 simplification. Never generate motion events with is_hint true. We
11191 used to do that on bogus grounds earlier. Windows sends
11192 WM_MOUSEMOVE messages on button events even if the mouse hasn't
11193 moved, ignore these.
11195 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
11197 * gdk/win32/gdkglobals.c
11198 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
11199 the TrackMouseEvent function, and use it.
11201 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
11202 char before calling WideCharToMultiByte in order to get a string
11203 for the window title.
11205 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
11207 * gdk/win32/gdk.def: Remove obsolete functions.
11209 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
11210 /nodefaultlib and /defaultlib switches.
11212 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
11214 1999-10-31 Tor Lillqvist <tml@iki.fi>
11216 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
11219 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
11220 same type as GdkWChar, especially on Win32.
11222 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
11224 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
11225 before passing to Windows GDI for drawing etc. Convert to the
11226 system default codepage before passing to Windows as window
11229 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
11230 support changing input locale on the fly.
11232 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
11233 on-the-fly changes. Convert incoming characters from the current
11234 codepage to Unicode (and then to a UTF-8 multi-byte string) based
11235 on the current input language. Use keysym<->Unicode mapping tables
11236 and functions borrowed from xterm sources.
11238 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
11239 editions of Win9x, use the ActiveX-based Active IMM (Input Method
11240 Manager) if available. IMEs and the Active IMM are available under
11241 the disguise of Chinese, Korean and Japanese support for IE and
11242 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
11243 support is present in all editions (as long as you install it).
11245 Call DispatchMessage from gdk_events_queue() (and thus
11246 gdk_WindowProc()), instead of duplicating the code in
11249 Reworked the grab handling and propagation code, factored out
11250 duplicated code snippets into separate functions. Other cleanups,
11253 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
11254 the <dimm.h> header describing the Active IMM.
11256 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
11257 just do the same as for "single" fonts.
11259 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
11260 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
11261 the new keysyms from gdkkeysyms.h.
11263 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
11264 fontset, so that gtkentry uses wide characters.
11266 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
11267 GTk+'s system directory "gtk+", not "gtk".
11269 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
11271 * docs/gtkfaq.sgml: FAQ update
11273 1999-10-21 Tor Lillqvist <tml@iki.fi>
11275 * gdk/win32/gdkprivate.h: Add more font private data.
11277 * gdk/win32/gdkfont.c
11278 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
11279 fonts and strings. Now works much better. You still have to
11280 have a correct font selected, though. No fontset emulation yet.
11282 1999-10-19 Tor Lillqvist <tml@iki.fi>
11284 * gtk/maketypes.awk: Use G_OS_WIN32.
11286 * gtk/gtk.def: Add some missing entry points. Also some non-public
11287 ones, but PyGTK porter claims to need them.
11289 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
11290 built-in type generation.
11292 1999-10-14 Tor Lillqvist <tml@iki.fi>
11294 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
11295 GDK_FONT_FONT fonts (which is all we have for now, we don't
11296 emulate fontsets). The X11 version uses plain XDrawString in that
11297 case, too. The string passed to gdk_draw_text_wc seems to be in
11298 fact (at least, when used by gtkentry and gtktext) either in a
11299 single-byte charset, or a DBCS. Not Unicode.
11301 This fixes the problem in gtkfontsel, where even if you had
11302 selected a font with a non-Latin1 charset (windows-greek, for
11303 instance), the preview still used Latin-1 glyphs.
11305 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
11306 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
11307 (gdk_font_load): Recognize the demibold etc weights, even if we
11308 don't have the corresponding constants in the headers.
11309 (gdk_font_hash_insert): Use same hash mechanism as in the X11
11310 version. Should save font resources a bit, when we don't have
11311 multiple HFONTs for the same font.
11313 * gdk/win32/gdkprivate.h: Add the names field as in the X11
11316 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
11318 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
11321 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
11323 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
11324 layout support (as mentioned on
11325 http://www.jcinteractive.com/gnome-ui/software/widgets/)
11327 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
11330 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
11332 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
11334 * configure.in (ALL_LINGUAS): Added Galician (gl)
11336 1999-10-05 Tor Lillqvist <tml@iki.fi>
11338 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
11340 * gdk/win32/gdkcompat.c: New file, actually provide an
11341 implementation for the deprecated functions. (Just temporarily.)
11343 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
11345 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
11347 * gdk/win32/gdk.def gtk/gtk.def: Updates.
11349 1999-10-05 Kjartan Maraas <kmaraas@online.no>
11351 * configure.in: Added "uk" to ALL_LINGUAS.
11353 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
11355 * configure.in: correct checking for BeOS check
11360 * gtk/gtkitemfactory.c
11362 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
11364 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11366 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
11367 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
11368 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
11371 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
11373 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
11374 Fix a reference to window_private->destroyed.
11376 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
11377 (ugly) setting of an internal GdkWindow member to use
11378 a _slightly_ cleaner macro.
11380 * gdk/gdkprivate.h: Split GdkWindowPrivate into
11381 GdkDrawablePrivate and GdkWindowPrivate.
11382 Add extra macros for accessing GDK_DRAWABLE_ components.
11384 * *.[ch]: Massive adjustments for the above, use the
11385 new macros in a lot of places.
11387 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
11389 * gdk/gdktypes.h: Make GdkDrawable the base type,
11392 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
11394 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
11396 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
11398 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
11400 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
11402 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
11403 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
11405 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
11407 * docs/gtk-config.1: Now autogenerated.
11408 * docs/Changes-1.4.txt: started
11410 1999-10-03 Tor Lillqvist <tml@iki.fi>
11412 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
11413 to #ifdef also here.
11415 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
11416 Owen did to the X11 backend.
11418 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
11419 ScrollWindowEx when blitting inside a window, it can't be correct
11420 in the general case.
11422 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
11423 WM_GETMINMAXINFO is easier.
11425 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
11426 depth equal to the bitspixel value, not the visual's depth.
11428 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
11429 to 24 even if the bitspixel value is 32.
11431 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
11432 need to check for depth==32 when bpp==32, depth will always be 24.
11434 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
11436 * docs/Changes-1.4.txt: Started
11438 * gtk/Makefile.am (gdk_headers): Include all the new headers.
11440 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
11442 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
11445 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
11446 header to gdkinputprivate.h.
11448 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
11449 unused since before 1.2.
11451 1999-09-30 Tor Lillqvist <tml@iki.fi>
11453 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
11454 expand possible hex escapes in the font family (put there by
11455 logfont_to_xlfd if the font name isn't a legal XLFD font family,
11456 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
11457 On Win32, add hex escapes here, too.
11459 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
11461 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
11462 to #ifdef GDK_WINDOWING_X11.
11464 [ Merges from gtk-1-2 ]
11466 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
11468 * configure.in: fixed "GNU Make" check to pass with new make version
11471 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
11473 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
11474 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
11475 AM_PATH_GTK() macros don't get confused by the -pre1.
11477 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
11479 * configure.in (REBUILD): Change check for perl5
11480 to check explicitely for v >= 5.002. (5.001
11481 does not work with our scripts.)
11483 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
11485 * configure.in: evaluate $PERL for the perl version check. added
11486 --disable-rebuilds to give the user an option to completely disable
11487 any source autogeneration rules.
11489 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
11491 * configure.in: evaluate $ac_make when checking for GNU Make.
11493 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
11495 * docs/Makefile.am: added generation.txt.
11497 * Makefile.am: require automake 1.4, build README from README.in and
11498 INSTALL from INSTALL.in in dist-hook.
11501 * INSTALL.in: new files to autogenerate README and INSTALL from.
11503 * configure.in: figure whether we have GNU Make
11505 * docs/generation.txt: minor additions/corrections.
11507 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
11509 * docs/gtkfaq.sgml: FAQ Update
11511 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11513 * configure.in: Fix autoconf warnings about cross compilation by
11514 trying to provide sane defaults for AC_TRY_RUN.
11516 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
11519 * ltmain.sh: upgrade to libtool 1.3.3
11521 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
11523 * INSTALL: Indicate that the --with-glib= configure
11524 time flag is unsupported.
11526 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
11528 * docs/generation.txt: Added a file that gives
11529 documenation about the autogeneration process for
11530 various autogenerated files.
11532 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
11534 * configure.in (LIBS): Look for libgmodule in the
11537 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
11539 * docs/gtk_tut.sgml: Removed references to
11540 code examples in my directory on gtk.org as
11541 they should all be in the tutorial now.
11543 * docs/gtk_tut.sgml: Added sources for dial-test
11544 and scribble-xinput programs that were previously
11547 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
11549 * TODO: Added entry about menu keyboard navigation, removed
11550 some finished items.
11552 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
11554 * acinclude.m4: Standardize on func_dgettext
11555 not func_gettext, so that the checks for dgettext
11556 actually are paid attention to.
11558 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
11560 * configure.in (LIBS): Add $INTLLIBS into $LIBS
11561 directly, rather than repeating the checks for
11564 * INSTALL: Added information about gettext and
11567 * acinclude.m4 (LIBM): Check for dgettext, not
11568 just gettext. This should hopefully fix things wrt
11569 systems with old versions of GNU gettext installed.
11571 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
11573 * configure.in (LIBS): Look for libgmodule in the
11576 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11578 * autogen.sh: add --enable-maintainer-mode
11580 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
11582 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
11584 * docs/gtk-config.1.in:
11586 configure.in: gtk-config is now generated.
11588 * docs/gtk-config.1: Removed, now generated.
11590 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
11592 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
11593 handle CreateNotify itself, still put out a debuging message for
11594 --gdk-debug=events. made the ReparentNotify debugging message more
11596 wrap xcoords translation for ConfigureEvents into an error trap,
11597 a destroy event may already be pending, and in that case, the
11598 actuall coordinate values are not at all critical.
11600 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
11602 * gdk/gdkcc.c: Stop leaking the color_hash all over
11603 the place. Simplify and improve the logic.
11605 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
11607 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
11608 for prototypes and function implementations consistent (reported
11611 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
11613 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
11614 send_event set in debugging output.
11615 (gdk_compress_exposures): default initialize the event so we don't
11616 operate on bogus values (namely send_event).
11618 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
11620 * gdk/gdkwindow.c: When we receive an unexpected
11621 destroy notify on one of our windows, don't just
11622 warn about it, also mark our windows as destroyed.
11624 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
11626 * gdk/gdkfont.c (gdk_font_hash_insert): Add
11627 name => font and name => fontset hashes. The
11628 name => fontset hash is a _big_ win since we
11629 weren't previously caching fontsets at all and loading
11630 fontsets is expensive. The name => font hash
11631 is less of a win, but it does save us from doing
11632 repeated XQueryFont calls on the same font.
11634 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
11635 list so we can remove font/fontset from hash.
11637 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
11639 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
11640 and slightly confusing test. [ XInternAtom (,,TRUE)
11641 will never return None ].
11643 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
11645 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
11646 gdk/gdkwindow.c (gdk_window_set_hints):
11648 Don't omit setting the properties if flags == 0 -
11649 there may be an existing set of properties there
11650 already. (Very old bug. Would it be better to
11651 delete the property instead?)
11653 * gdk/gdkselection.c (gdk_selection_property_get): Fix
11654 spelling error in comment.
11656 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
11658 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
11659 to avoid stomping over gdk_error_warnings.
11661 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
11662 as (bits_per_pixel + 7) / 8. This gives the same
11663 result as before for multiples of 8, but actually
11664 a "reasonable" value for 1bit or 4bit displays.
11666 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
11668 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
11671 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
11673 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
11674 discarding configure events.
11676 1999-08-18 Federico Mena Quintero <federico@redhat.com>
11678 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
11679 refcount is greater than zero.
11681 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
11683 * gdk/gdkfont.c (gdk_font_unref): Likewise.
11685 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
11687 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
11689 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
11691 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
11692 that format 32 => sizeof(item) == 4. It really is
11695 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
11697 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
11698 core dump at all on X IO errors, only core dump
11699 if --enable-debug for X errors.
11701 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
11703 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
11704 unknown window:" message. disabled ConfigureNotify discarding code,
11705 because it led to events being processed out of order.
11707 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
11709 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
11711 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
11712 we export this function, supress error warnings and don't reset the
11713 error code in the first half of this function.
11715 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
11716 code (instead of just -1) so gdk_error_trap_pop() reveals something
11717 actually informative about the error that happened.
11720 don't rely on gdk_error_code being -1 if an error occoured, but just
11721 gdk_error_code != 0.
11723 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
11725 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
11726 pointer *before* invoking the filter function, so we at least don't
11727 crash if a filter is removed that is currently executed. window filters
11728 *really* need to be made truely reentrant at some point.
11730 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
11732 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
11733 PropertyNotify debug messages.
11735 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
11737 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
11739 * gdk/gdkim.c: Fix cut-and-paste errors for
11740 x/y and PreeditAttributes/StatusAttributes.
11742 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
11744 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
11745 G_MAXINT to 2^16 to alleviate overflow problems in
11746 various window managers.
11748 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
11750 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11753 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
11755 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
11756 Initialize size_hints.x and size_hints.y because kwm
11757 brokenly pays attention to them.
11758 (Bug #1181 - Lars Heete <hel@admin.de>)
11760 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
11762 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
11763 return value of gdk_list_visuals().
11764 (Bug #1193 - Morten Welinder <terra@diku.dk>)
11766 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
11768 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
11769 XSetIMValues to (void *) when comparing to NULL, to workaround
11770 the problem of some compilers barfing since older X headers don't
11771 have the prototype for it.
11773 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
11775 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
11776 for pseudocolor where colormap->colors was double
11779 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
11780 color value in the hash table with the pixel filled
11781 in so when we do later hash table lookups, the color
11784 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
11786 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
11789 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
11791 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
11792 pointed out by Morten Welinder <terra@diku.dk>.
11794 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
11796 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11797 default filter from the list
11799 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
11801 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11802 default filter from the list
11804 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
11806 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
11808 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
11809 g_strdup_printf instead of calcing the length separately
11811 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
11813 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
11814 that we don't do in many other places. (Fixing duplicate
11815 #include of config.h)
11817 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
11818 Otherwise, #ifndef XINPUT_NONE check in the latter
11819 doesn't work. (Bug #546)
11821 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
11823 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
11824 "None" case insensitive.
11826 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
11828 * gdk/gdkselection.c:
11829 Add error traps so if the other end of the connection
11832 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
11834 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
11835 dest_xid field into two fields - one for the window
11836 to send in messages, one to indicate the last looked
11837 up window for caching purposes. This is needed, so
11838 that Leave messages get the correct window.
11840 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
11842 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
11843 Fix warning created by people mucking around
11844 with the gsource API.
11846 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
11847 Change mapping between GIOCondition and GdkInputCondition
11848 to match the way the Linux kernel does it. This should
11849 fix problems where closed pipes were no longer signalling
11850 GDK_INPUT_READ on systems with a native poll().
11852 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
11854 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
11855 explicitly for the string "None" - it is in the XPM
11856 spec and some servers treat unknown colors in odd ways
11857 (like asking the user!)
11859 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11861 * gdk/gdkevents.c: made "->" into a "." of previous change so
11864 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
11866 * gdk/gdkevents.c (gdk_compress_exposures): Set the
11867 window field of the event structure before calling
11870 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
11872 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
11873 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
11875 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
11877 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
11878 intermediate text property - prevents major memory
11879 leak when gdk_use_mb.
11880 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
11882 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
11884 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11885 gtk-a-higuti-990322-[0-3]
11887 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
11888 sizeof(wchar_t) != sizeof (GdkWChar)
11890 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11891 that was causing -DX_LOCALE not to work.
11893 * gtk/gtkrc.c (gtk_rc_init):
11894 X_LOCALE will never have LC_MESSAGES defined
11896 * gdk/gdk.c (gdk_init_check):
11897 Remove --xim-preedit and --xim-status from argv properly.
11899 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
11900 that the client window is present on the X server
11901 before we pass it to the input method.
11903 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
11905 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
11906 if --display is specified on the command line, than
11907 the drag window will not be created on that display.
11909 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
11911 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
11912 lookups with only_if_exists == TRUE were inserting
11913 bogus values into the atom cache.
11915 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
11917 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
11918 then reset it to NULL.
11922 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
11923 key for g_hash_table_remove() in both functions, this prevents us
11924 from accessing possibly uninitialized portions of a GdkColor structure
11925 where we are only interested in its pixel value.
11927 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
11929 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11930 font hash table, if we have a GdkFontPrivate entry for this font
11931 already, simply increment its reference count, provided by Olaf Dietsche
11932 <olaf.dietsche+list.gtk@netcologne.de>.
11934 1999-09-21 Tor Lillqvist <tml@iki.fi>
11936 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
11939 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
11940 unused variables, leftovers from the X11 version.
11942 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
11944 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
11945 downcase fields on X11.
11947 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11949 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
11950 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
11952 1999-09-17 Tor Lillqvist <tml@iki.fi>
11954 * gdk/win32/gdk.def: Add gdk_threads_mutex.
11956 * gtk/makefile.msc: Correct path to libintl.
11958 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
11959 use of gint vs. int, and gint vs. gboolean in headers and
11960 definitions. Use GtkType for the *_get_type functions. Note that
11961 these changes preserve binary compatibility.
11965 * gdk/gdk.h: Fix inconsistencies: gint vs int.
11969 * gtk/gtkmenufactory.c
11970 * gtk/gtknotebook.c
11971 * gtk/gtkwidget.c: Fix inconsistencies, also gint
11974 * gtk/gtkcolorsel.[ch]
11975 * gtk/gtkcombo.[ch]
11976 * gtk/gtkdrawingarea.[ch]
11977 * gtk/gtkgamma.[ch]
11978 * gtk/gtkhandlebox.[ch]
11979 * gtk/gtkhpaned.[ch]
11980 * gtk/gtkhruler.[ch]
11982 * gtk/gtkpreview.[ch]
11983 * gtk/gtkruler.[ch]
11984 * gtk/gtksocket.[ch]
11985 * gtk/gtkstatusbar.[ch]
11986 * gtk/gtktoolbar.[ch]
11987 * gtk/gtkvbbox.[ch]
11988 * gtk/gtkvpaned.[ch]
11989 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
11992 * gtk/gtkgamma.h: Fix bug, missing () in call of
11993 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
11995 1999-09-14 Tor Lillqvist <tml@iki.fi>
11997 * gdk/gdkcolor.c (gdk_colormap_new)
11998 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
11999 colormap->colors was allocated twice.
12001 * gdk/win32/gdk.c: Remove some unused stuff.
12003 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
12006 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
12007 * gtk/gtklabel.h (gtk_label_get_type)
12008 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
12009 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
12010 in a couple of places, not guint.
12012 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12014 * configure.in,po/et.po: added Estonian language file
12016 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12018 * configure.in,po/da.po: added Danish file
12020 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12022 * docs/gtkfaq.sgml: Minor FAQ Update
12024 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12026 * docs/gtkfaq.sgml: FAQ update
12028 1999-08-27 Tor Lillqvist <tml@iki.fi>
12030 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12031 way to get window contents continually refreshed while resizing. I
12032 didn't like the effects myself, so it's not on by default.
12034 * gdk/win32/gdkprivate.h: New flag variable
12035 gdk_event_func_from_window_proc, FALSE by default.
12037 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12038 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12039 are passed --gdk-event-func-from-window-proc.
12041 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12042 and we have am event_func, call it instead of enqueing the event.
12044 1999-08-23 Tor Lillqvist <tml@iki.fi>
12046 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12047 Kelley: Set expose_count in GdkEventExposes correctly.
12049 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12050 MULTIPLE_WINDOW_CLASSES).
12052 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12053 for bug in NT, apparently NT *does* draw the end pixel, too, in
12054 LineTo with a one-pixel pen, so we don't have to do it ourselves.
12056 1999-08-21 Tor Lillqvist <tml@iki.fi>
12058 Improvements by Hans Breuer:
12060 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12062 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12063 CS_?REDRAW flags as they cause lots of (late) redraws when "show
12064 window contents while dragging" is turned on. Allocate at least
12065 one unique class for every GdkWindowType. If support for single
12066 window-specific icons is ever needed (eg. Dialog specific), every
12067 such window should get its own class.
12069 1999-08-19 Tor Lillqvist <tml@iki.fi>
12071 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12072 error that caused crashes.
12074 1999-08-17 Tor Lillqvist <tml@iki.fi>
12076 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12077 window, use ScrollWindowEx, and call UpdateWindow. This prevents
12078 bugs when for instance part of the window was outside the
12079 display. Thanks to Philippe Colantoni for finding and fixing this.
12081 1999-08-16 Tor Lillqvist <tml@iki.fi>
12083 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12084 endpoint calculations which were totally wrong. (A little RTFMing
12087 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12088 from a separate directory, not from gettext, because of licensing
12089 issues (we want to use the LGPL version).
12091 * README.win32: Mention the intl from glibc vs from gettext issue.
12093 1999-08-13 Tor Lillqvist <tml@iki.fi>
12095 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12096 in the key event handling: Now AltGr chars work again. Also,
12097 now Alt-digits are passed up as well as Control-digits.
12098 Pass keypad plus and minus as normal plus and minus.
12100 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
12102 * docs/gtkfaq.sgml: FAQ Update
12104 1999-07-25 Tor Lillqvist <tml@iki.fi>
12107 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12110 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12111 OK, but getting closer. Guard against bogus tilt data from Wacom
12112 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12113 enable easier building without Wintab.
12115 * gdk/win32/gdkinput.h
12116 * gdk/win32/gdkevents.c
12117 * gdk/win32/gdkwindow.c: Minor changes related related to above.
12119 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12120 code. As we have just one visual on Win32, no sense to have it in a
12121 table, and no need for the hash table.
12123 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12124 better on white background.
12126 1999-07-21 Tor Lillqvist <tml@iki.fi>
12128 * README.win32: Update gcc build instructions. Mention gettext is
12131 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12132 supported cursor size with GetSystemMetrics.
12134 * gdk/win32/gdkfont.c
12135 * gtk/gtkfontsel.c: Guard against some font weight and charset
12136 symbols being undefined (in mingw32 headers).
12138 * gdk/win32/makefile.cygwin
12139 * gtk/makefile.cygwin
12140 * gtk/gtkthemes.c: No longer need to have differently named
12141 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12143 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12145 * docs/gtkfaq.sgml: Long awaited FAQ update.
12147 1999-07-15 Tor Lillqvist <tml@iki.fi>
12149 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12150 it. Obscure bit manipulation needed.
12152 * gdk/win32/gdkevents.c: Logging.
12154 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12155 style (file name include compiler name) for theme engines.
12157 1999-07-13 Tor Lillqvist <tml@iki.fi>
12159 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
12161 * gdk/win32/gdkevents.c: Fix long-standing bug in key
12162 events. The key.string wasn't zero-terminated, still we strdup'ed
12163 it in gdk_event_copy(). Synthesize crossing events for button
12164 events before possible propagation.
12166 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
12168 * gdk/win32/makefile.cygwin
12169 * gtk/makefile.cygwin: Use new DLL naming style for the
12172 * gdk/win32/makefile.msc
12173 * gtk/makefile.msc: Cosmetics mostly.
12175 * gtk/gtk.def: Add missing entry points.
12177 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
12179 1999-07-09 Tor Lillqvist <tml@iki.fi>
12181 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
12182 or height is zero. Don't print a warning if Pie or Arc fails, they
12183 always fail (?) for very narrow ellipses.
12185 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
12186 the part or the destination window corresponding to source area
12187 outside of the source drawable's boundary.
12189 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
12190 anything if less than two points.
12192 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
12193 return NULL. Gtk cut-and-paste inside a single program works
12194 better this way. (It always gets the clipboard contents from
12195 Windows, not from its own copy, which is cleared anyway. I can't
12196 say I fully understand what happens... Emulating the X selection
12197 and property stuff is a bit of a mess.)
12199 * gdk/win32/gdkevents.c
12200 * gdk/win32/gdkproperty.c: A bit more verbose logging.
12202 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
12203 that never got deleted). Revamp gdk_region_shrink.
12205 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
12208 * gtk/gtk.def: Add some missing entry points.
12210 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
12213 1999-07-04 Tor Lillqvist <tml@iki.fi>
12215 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
12216 Control-digits specially.
12218 1999-07-03 Tor Lillqvist <tml@iki.fi>
12220 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
12222 1999-06-28 Tor Lillqvist <tml@iki.fi>
12224 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
12225 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
12228 1999-06-01 Jose H Mercado <jmercado@mit.edu>
12230 * gtk+.spec.in: Corrected some typos in files section.
12232 1999-06-15 Tor Lillqvist <tml@iki.fi>
12234 * README.win32: Mention using GNU gettext.
12235 * config.h.win32: Enable NLS stuff.
12236 * gtk/makefile.msc: Use GNU gettext.
12237 * gdk/win32/gdkdnd.c: Minor header reorg.
12238 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
12240 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
12241 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
12243 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
12249 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
12251 1999-05-30 Tor Lillqvist <tml@iki.fi>
12253 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
12254 SafeAdjustWindowRectEx. Don't override all calls to
12255 AdjustWindowRectEx by it, but use it only in two places: When
12256 creating a new top-level window and when moving a top-level
12259 Use screen coordinate rectangle, not client rectangle, in
12260 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
12261 when we try to place a window so that the decoration (mainly,
12262 title bar) isn't visible.
12264 These changes fix the bug that showed up for instance as the
12265 GIMP's saved top-level windows moving right and down (by an amount
12266 equal to the window decoration) for each session. This bug showed
12267 up also in testgtk's "Saved Position".
12269 gdk_window_resize also redone a bit.
12271 1999-05-25 Tor Lillqvist <tml@iki.fi>
12273 * gtk/testgtkrc: Add (commented out) Windows-style theme
12276 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
12278 1999-05-18 Tor Lillqvist <tml@iki.fi>
12280 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
12281 gdkx.h to a gdk subdirectory, so that applications can include
12282 these with <gdk/*.h> without trouble.
12284 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
12285 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
12286 have their bitmap destroyed.
12288 * gdk/win32/gdk.def: Add gdk_root_parent.
12290 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
12296 gtk/Makefile.am: changes to compile nicely (with xlib)
12299 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
12305 * ltmain.sh: upgrade to libtool 1.3
12307 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
12310 * gtk/gtkctree.c: merges from gtk-1-2
12312 1999-04-25 Tor Lillqvist <tml@iki.fi>
12314 Support added for building using a GNU toolchain on Win32,
12315 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
12317 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
12318 * config.h.win32: Changes for gcc.
12319 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
12320 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
12321 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
12322 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
12323 Protect shl stuff unavaiilable with mingw32 headers.
12324 * gdk/win32/gdkevents.c: Fix typo.
12325 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
12326 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
12327 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
12328 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
12329 the mingw32 headers.
12330 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
12331 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
12332 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
12333 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
12334 Test for NATIVE_WIN32, not _MSC_VER.
12335 * gtk/gtkmain.c: No use warning about developer version on Win32,
12336 there aren't any non-developer versions anyhow.
12337 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
12338 * gtk/makefile.msc: Use pthread from another directory. Minor other
12341 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
12343 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12344 default filter from the list
12346 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
12348 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
12349 when gtk_widget_grab_default() is called for a widget that
12350 is not within a GtkWindow.
12352 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
12354 * docs/gtk_tut.sgml, examples/clist.c: use a
12355 scrolled window in the clist example. Minor
12358 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
12360 * docs/gtk_tut.sgml: Style check from David King
12361 <dking@youvegotmail.net>
12363 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
12365 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
12366 compile with unknown value of GDK_WINDOWING
12368 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
12370 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
12371 after the rule is fired.
12372 (install-exec-local): Install gdkconfig.h only if the contents are
12373 different from the currently installed gdkconfig.h.
12375 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
12377 * gdk/Makefile.am (configexecincludedir): Rename from
12378 configincludedir so that gdkconfig.h will be installed
12379 as part of `make install-exec'.
12381 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
12387 * ltmain.sh: upgrade to libtool 1.2f
12389 * autogen.sh: libtool is not required to autogen gtk+
12391 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
12394 1999-03-18 Tor Lillqvist <tml@iki.fi>
12396 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
12397 declaring gdk variables exported/imported from the DLL. New image
12398 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
12399 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
12400 GDK_DRAG_PROTO_OLE2.
12402 * gdk/gdk.h: Merge in Win32 version: Two new functions,
12403 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
12404 declared only for the Win32 version, but could be in the X11
12405 version as well. (Needed for a Xlib-less gdk_imlib.)
12406 gdk_color_hash should have only one parameter. Declare
12407 gdk_threads_mutex with GDKVAR.
12409 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
12410 just one parameter.
12412 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
12413 per pixel, not bits.
12415 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
12416 Fetch bpp (which means bits-per-pixel here) from another place on
12417 Win32. Accept also depth==32 (which we might get on Win32) with
12420 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
12421 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
12422 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
12423 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
12424 in the backend-dependent directory, not in the common gdk
12427 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
12430 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
12432 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
12433 want to use the Gtk+ devel version (which is true, and yes - even i am
12434 currently working with the 1.2.x branch). so everyone reading this, you
12435 probably want to issue
12436 cvs checkout -r glib-1-2 glib
12438 cvs checkout -r gtk-1-2 gtk+
12439 as your next two comands.
12441 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
12443 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
12444 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
12446 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
12447 file. strongly deprecated the GTK_HAVE_* macros, we provide
12448 GTK_CHECK_VERSION() for people that need to check for certain
12451 * gtk/gtkcompat.h: removed this from CVS.
12452 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
12453 idea right from the start, it just didn't seem like that back then.
12455 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
12457 * merges from gtk-1-2:
12459 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
12461 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
12462 item factory class has been created.
12463 (gtk_item_factory_parse_rc): likewise.
12466 keep proper references for old_active_menu_item.
12467 (gtk_menu_reparent): unset the usize of the new parent,
12468 so the menu can sanely be size requested and we don't get nasty screen
12469 artefacts upon next reparentation.
12470 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
12471 enter notify. only synthesize enter notifies if the pointer really is
12472 inside the event window.
12473 (gtk_menu_popdown): use gtk_menu_shell_deselect().
12474 (gtk_menu_popup): move the background setting stuff into
12475 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
12477 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
12478 gtk_menu_shell_select_item() to select the new item.
12479 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
12480 do the right thing for deselection as well.
12482 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
12484 * gtk/gtkwidget.[hc]:
12485 (gtk_widget_accelerators_locked): return whether a widget's accelerators
12488 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
12489 existing accelerators if the widget's accelerators are locked.
12491 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
12493 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
12495 * gtk/gtkmenu.c: truely forward key press and key release events to
12496 the menu widget from the toplevel or tearoff window. we can't simply
12497 connect to that, we need to stop further processing of the events as
12500 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
12503 (gtk_menu_key_press): pass event->keyval, event->state to
12504 gtk_accelerator_valid, instead of event->keyval twice.
12505 refuse to install single letter accelerators for menus that use
12506 single letter shortcuts.
12508 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
12509 gtk_menu_ensure_uline_accel_group().
12511 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
12512 which will always return an uline accel group, made
12513 gtk_menu_get_uline_accel_group() return NULL if the group isn't
12516 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
12518 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
12520 * gtk/gtkclist.c (gtk_clist_column_title_passive):
12521 Leave button sensitive, trap button_press, button_release,
12522 motion_notify, enter_notify and leave_notify events instead.
12523 (gtk_clist_column_title_active): disconnect event handler.
12524 (gtk_clist_drag_data_get): fixed memory leak. Reported by
12525 Guillaume Laurent <glaurent@worldnet.fr>
12527 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
12529 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
12530 width/height mixups.
12532 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
12535 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
12537 * gtk/testgtk.c (create_item_factory): unref the item factory after
12538 window's destruction.
12540 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
12541 count on the menu shell around the menu item's activation, since the
12542 signal emission may cause menu shell destruction.
12544 * gtk/gtkitemfactory.c:
12545 the previous code leaked one accel group per menu. we use
12546 gtk_menu_get_uline_accel_group() now to fix that, and with that
12547 also create the underline accelerator group of the menus only if
12548 required (i.e. an underline accelerator has been specified).
12549 (gtk_item_factory_construct):
12550 (gtk_item_factory_create_item): removed code that would create an
12551 extra accel group for the menu (and leak references).
12552 (gtk_item_factory_create_item): adapted the underline accelerator
12553 installation code to properly feature gtk_menu_get_uline_accel_group().
12555 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
12556 menu->accel_group, this may return NULL if the accelerator group
12557 hasn't been set yet.
12558 added gtk_menu_get_uline_accel_group() to retrive the underline
12559 accelerator group of the menu, this will be created on demand
12560 and proper care is taken about its reference count.
12562 * gtk/gtkitemfactory.h:
12563 * gtk/gtkitemfactory.c:
12564 dumped the approach of keeping a widgets by action list on the
12565 factory since the factory<->widget destroy negotiation didn't work
12566 and would be hard to get going at all. instead we keep a list of
12567 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
12568 persistant throughout a program's life time).
12569 also, i removed the static const gchar *key_* variables, and made
12570 them inline strings (they weren't actually used anyways).
12571 (gtk_item_factory_add_item): update ifactory->items.
12572 (gtk_item_factory_destroy): destroy ifactory->items (and remove
12573 the item factory pointer from the remaining ifactory widgets).
12574 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
12575 list to find the widget.
12576 (gtk_item_factory_get_item): new function that works around
12577 gtk_item_factory_get_widget() limitations, this function will only
12578 return menu items, even for <Branch> entries.
12580 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
12582 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12583 font hash table, if we have a GdkFontPrivate entry for this font
12584 already, simply increment its reference count, provided by Olaf Dietsche
12585 <olaf.dietsche+list.gtk@netcologne.de>.
12587 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12588 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12590 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
12592 * gtk/gtkcontainer.c:
12593 (gtk_container_add_with_args):
12594 (gtk_container_addv):
12595 (gtk_container_add): before adding a child to a conatiner, make sure
12596 it is (default) constructed, this is neccessary because under certain
12597 circumstances the child will get relized and mapped immediatedly, in
12598 which case it has to be constructed already.
12600 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
12602 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
12603 values > 1 as TRUE also.
12605 1999-03-16 Tor Lillqvist <tml@iki.fi>
12607 * README.win32: New file.
12609 * configure.in: Check for lstat.
12611 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
12614 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
12616 * gtk/gtk.def: Removed CRs.
12618 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
12621 * gdk/win32/makefile.msc: Correct upwards relative paths.
12623 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
12625 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
12626 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
12627 it was connecting a void function to expose_event and the int
12628 returning function to the draw signal
12630 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
12633 Use correct path to libgmodule.la when ref'ing uninstalled copy
12634 of glib. (Already in stable branch, Bug #417)
12636 1999-03-15 Tor Lillqvist <tml@iki.fi>
12638 Win32 merge and general portability stuff:
12640 * acconfig.h,configure.in: Check for <sys/time.h>.
12642 * gdk/win32: New directory (actually, been there for a while).
12644 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
12645 NATIVE_WIN32, and use these. Always case fold on Win32. No
12646 backslashed escapes on native Win32.
12648 * gtk/{gtk.def,makefile.msc}: New files.
12650 * gtk/Makefile.am: Add above new files.
12652 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
12653 instead of <strings.h>.
12655 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
12656 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
12657 <unistd.h> appropriately.
12659 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
12660 Use ABS() (from <glib.h>) instead of abs().
12662 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
12663 of gtk (and thus glib) headers, so that WIN32 will be
12664 defined. With MS C, include <direct.h> for mkdir prototype.
12666 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
12667 some casts, needed by MS C.
12669 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
12672 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
12673 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
12674 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
12676 * gtk/gtkmain.h: Mark variables for export/import on Win32.
12678 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
12679 the event is not a hint, or its window is not the slider. Needed
12680 on Win32, at least.
12682 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
12683 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
12684 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
12685 a subdirectory of the Windows directory as gtk system
12686 configuration directory.
12688 * gtk/gtkselection.c: No chunks on Win32.
12690 * gtk/gtksocket.c: Not implemented on Win32.
12692 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
12694 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
12696 * gtk/maketypes.awk: Declare variables with a macro that expands to
12697 necessary export/import magic in the case of Win32.
12699 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
12701 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
12703 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
12704 since those were meant only for gdki18n.h.
12705 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
12706 for widechar tests.
12707 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
12709 1999-03-13 Tor Lillqvist <tml@iki.fi>
12711 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
12712 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
12714 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
12715 installed) to CFLAGS.
12717 * gdk/Makefile.am: Add rules for gdkconfig.h.
12719 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
12722 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
12723 gdkx.h anyway when compiling for X11.
12724 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
12725 general): Merge in Win32 version.
12727 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
12728 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
12729 expansion (if we don't have HAVE_PWD_H), allow for drive
12730 letters. UNC paths (\\server\share\...) are not handled yet. Also,
12731 included code from Craig Setera's port to Win32 (the one that uses
12732 X11, and the cygwin dll), even if it probably will be abandoned.
12734 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
12735 the user entered one herself. This way one can complete *.h and
12736 don't get matches on any .help files, for instance.
12738 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
12740 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12741 font hash table, if we have a GdkFontPrivate entry for this font
12742 already, simply increment its reference count, provided by Olaf Dietsche
12743 <olaf.dietsche+list.gtk@netcologne.de>.
12745 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12746 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12748 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
12750 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
12751 the number of calls to gdk_draw_point() (and thus to X) by
12752 clipping the points by hand.
12754 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
12755 the clip parameter.
12756 (gtk_handle_box_paint): Only paint the handle if the expose area
12759 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
12761 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
12763 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
12765 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
12766 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
12768 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
12770 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
12771 textmode (O_TEXT) for OS/2 version.
12773 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
12775 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
12776 GtkSpinButton, "input" and "output", to make the output more flexible.
12777 The user has to provide a mapping between adjustment->value and the
12778 output string (and vice versa, if the spin button is editable).
12779 See testgtk for examples.
12781 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
12783 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
12786 * configure.in: set gtk+ version to 1.3.0.