1 2001-01-20 Havoc Pennington <hp@pobox.com>
3 * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4 from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to
7 2001-01-22 Havoc Pennington <hp@redhat.com>
9 * demos/testanimation.c: fix to reflect gdk-pixbuf changes
11 * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
13 * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h:
14 Remove, move back to gdk-pixbuf
16 * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
17 to all the word functions
19 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
20 before doing anything on NULL layout or if we don't have the focus
22 * gtk/testtext.c (fill_example_buffer): "justification"
24 * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
25 to be called "justification" not "justify"
27 * demos/gtk-demo/textview.c (create_tags): "justification"
29 * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
31 2001-01-22 <alexl@redhat.com>
33 * gdk/gdkwindow.c (gdk_window_invalidate_region):
34 Don't leak visible_region. Use visible_region instead of region.
36 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
37 Don't do extra gdk_drawable_ref(). This is not X.
38 (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
39 gdk_fb_focused_window is ref:ed.
40 (gdk_fb_window_send_crossing_events): Watch out for destroyed
43 2001-01-22 <alexl@redhat.com>
45 * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
46 Don't leak the PangoFontDescriptor.
48 Sun Jan 21 09:58:00 2001 Jonathan Blandford <jrb@redhat.com>
50 * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
52 (gtk_tree_view_scroll_to_cell): Make work when not realized.
53 (gtk_tree_view_realize): add scroll_to support
54 (gtk_tree_view_finalize): add a finalize method. Populate.
55 (gtk_tree_view_insert_column): ref and sink the column.
56 (gtk_tree_view_append_column): ref and sink the column.
57 (gtk_tree_view_queue_draw_node): New function to handle redrawing
58 individual nodes. Should make the code much more efficient, if
61 2001-01-19 Havoc Pennington <hp@redhat.com>
63 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
64 byte_offset variable was being used to mean both "offset into
65 layout" and "offset into buffer line" which was no longer true
66 with addition of preedit string; fix
68 2001-01-19 Havoc Pennington <hp@redhat.com>
70 * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
72 * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
75 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
78 * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
79 scroll_to_cell, matches TextView scroll functions better
80 (gtk_tree_view_tree_to_widget_coords): new function
81 (gtk_tree_view_widget_to_tree_coords): new function
82 (gtk_tree_view_get_visible_rect): new function
83 (gtk_tree_view_get_path_at_pos): accept negative coordinates
84 (gtk_tree_view_draw_node_focus_rect): new function moved from
85 draw_focus, also, use width of bin_window as width of the focus
87 (gtk_tree_view_expand_row): fix bug where it didn't recognize
89 (gtk_tree_view_get_cell_rect): new function
90 (gtk_tree_view_get_path_at_pos): return the click position
91 relative to the passed-in cell
92 (gtk_tree_view_set_expander_column): new function
94 * configure.in: remove gtk-config-2.0 chmod
96 * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
97 and properly handle drags with targets we don't understand
98 (gtk_text_view_drag_end): don't stop scrolling, the source isn't
100 (gtk_text_view_drag_drop): stop scrolling here though, and set the
103 * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
105 (gtk_drag_dest_get_target_list): new function
106 (gtk_drag_dest_set_target_list): new function
108 * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
110 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
111 related to drag-and-drop
113 2001-01-19 Alexander Larsson <alexl@redhat.com>
115 * gdk/linux-fb/gdkprivate-fb.h:
116 Define EMULATE_GDKFONT.
117 Add extra pango_font stuff to GfkFontPrivate.
119 * gdk/linux-fb/gdkdrawable-fb2.c:
120 * gdk/linux-fb/gdkfont-fb.c:
121 If EMULATE_GDKFONT defined, implement a slow lame GdkFont
122 emulation using PangoFont.
124 2001-01-17 Havoc Pennington <hp@pobox.com>
126 * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
127 all the non-deprecated set_foo functions. Added missing object
128 properties, and added g_object_notify() to setters.
131 2001-01-18 Tor Lillqvist <tml@iki.fi>
134 * gtk/gtkrc.c: (Win32) Use the new
135 g_win32_get_package_installation_(sub)directory() functions.
137 * config.h.win32.in: New file.
139 * config.h.win32: Removed.
141 * configure.in: Output config.h.win32.
143 * Makefile.am: Add it to EXTRA_DIST.
145 * gtk/gtk.def: Update.
147 Wed Jan 17 16:22:54 2001 Owen Taylor <otaylor@redhat.com>
149 * gtk/gtklabel.c (gtk_label_size_request): Set the
150 attributes onto the PangoLayout even if they are newly
151 created from label->pattern.
153 Tue Jan 9 11:20:48 2001 Owen Taylor <otaylor@redhat.com>
155 * gdk/x11/gdkdnd-x11.c: Remove unused variable.
157 * gtk/gtkdnd.c: Encapsulate storing and retrieving info
158 structures in functions. Fixes bug where gtk_dataset_*
159 was accidentally still being used in one place, causing
160 every dest side event to be treated independently.
162 * gtk/gtkdnd.c: Remove last vestages of handling
163 ::draw (fixes warning)
165 * gtk/gtkentry.[ch]: Add drag and drop support.
167 * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
168 new function gtk_check_drag_threshhold() for checking
169 to check if (dx,dy) has exceeded the threshhold for starting
170 a drag and use it everywhere.
172 Mon Jan 8 11:58:05 2001 Owen Taylor <otaylor@redhat.com>
174 * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
175 add -I{includedir}/gtk-2.0.
177 * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
178 gdk/gdk-pixbuf.h: Doc fixups.
180 * gtk/gtkobject.h: Remove trailing , from enum
182 2001-01-17 Alexander Larsson <alexl@redhat.com>
184 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
185 Doh! Mixed up x and y.
187 * gdk/linux-fb/gdkglobals-fb.c:
188 Removed gdk_fb_pointer_grab_window_events,
189 added _gdk_fb_pointer_grab_owner_events and
190 _gdk_fb_keyboard_grab_owner_events.
192 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
193 Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
194 crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
195 (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
196 Send crossing events after ungrab finished.
197 (gdk_keyboard_grab): Set ..._owner_events
198 (type_masks): Move out of function.
199 (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
200 gdk_fb_keyboard_event_window): New functions, return the
201 window an event should be targeted at. Handles grabs and
202 event propagation. Can return NULL.
203 (gdk_event_make): Remove event_mask checking. Now always
206 * gdk/linux-fb/gdkkeyboard-fb.c:
207 * gdk/linux-fb/gdkproperty-fb.c:
208 * gdk/linux-fb/gdkselection-fb.c:
209 Use new event_window/gdk_event_make() behaviour.
211 * gdk/linux-fb/gdkmouse-fb.c:
212 Use new event_window/gdk_event_make() behaviour.
213 Only send motion events if in the same window.
214 If grabbed, use cursor from window if sibling of grabbed
215 window, and cursor from grabbed window otherwise.
217 * gdk/linux-fb/gdkprivate-fb.h:
218 Update gdk_fb_window_send_crossing_events, gdk_event_make
219 and grab varaible declarations. Add gdk_fb_*_event_window().
221 * gdk/linux-fb/gdkwindow-fb.c:
222 Use new event_window/gdk_event_make() behaviour.
223 Keep correct track of focus window.
224 (gdk_window_set_events): Set all specific button motion masks
225 if GDK_BUTTON_MOTION_MASK set.
227 * gtk/gtkdnd.c (gtk_drag_update):
228 Free info->last_event if gdk_drag_motion returned FALSE.
230 2001-01-16 Tor Lillqvist <tml@iki.fi>
232 * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
233 Eliminate redraws when input-only windows are shown or
234 hidden. Thanks to jpe@archaeopteryx.com.
236 Tue Jan 16 13:13:13 GMT 2001 Tony Gale <gale@gtk.org>
238 * docs/faq/gtk-faq.sgml: FAQ update:
240 - Add GTK+ and security/SUID/SGID
243 2001-01-16 Alexander Larsson <alla@lysator.liu.se>
245 * gdk/linux-fb/gdkdnd-fb.c:
248 2001-01-15 Havoc Pennington <hp@pobox.com>
250 * tests/testtreeview.c: add test stuff for CellRendererToggle
252 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
255 * gtk/gtkcellrenderertoggle.c: distinguish different event types,
256 only toggle on button press (would do release like GtkButton, but
257 we'd need implicit grab code for treeview cells)
259 2001-01-16 Tor Lillqvist <tml@iki.fi>
261 * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
263 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
264 GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
266 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
267 to g_{locale,filename}_{to,from}_utf8 to match current API.
269 * gtk/makefile.msc.in (gtk_OBJECTS)
270 * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
272 * gtk/gtk.def: Update.
274 2001-01-15 Tor Lillqvist <tml@iki.fi>
276 * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
277 implementaion that more closely mimics the events that an X server
278 would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
279 GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
280 with nested preview widgets, for instance, more responsive when
281 you move the mouse quickly into them.
282 (find_window_for_pointer_event): Make it actually compile.
283 (gdk_event_translate): Set send_event to the value of
284 InSendMessage (). This doesn't really mean the same as X11's
285 send_event flag, but is close enough, says jpe@archaeopteryx.com
287 2001-01-15 Alexander Larsson <alexl@redhat.com>
289 * gdk/linux-fb/gdkdnd-fb.c:
290 Implemented drag and drop.
291 Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
292 when it tries to free and then copy the same event (info->last_event).
293 I am not sure about why this happens, but will continue looking.
295 2001-01-15 Alexander Larsson <alexl@redhat.com>
297 * gdk/linux-fb/gdkwindow-fb.c:
298 Use gdk_window_invalidate_rect instead of
299 gdk_window_invalidate_rect_clear to minimise flashing.
300 When hiding windows you need to clear the root window though.
302 2001-01-15 Alexander Larsson <alexl@redhat.com>
304 * gdk/linux-fb/gdkdrawable-fb2.c:
305 For optization, add an full_shapes argument to gdk_fb_clip_region.
306 If this is false, only the cliprects of the shapes are used.
308 * gdk/linux-fb/gdkprivate-fb.h:
309 Export gdk_fb_window_peek_shape.
310 Add full_shapes to gdk_fb_clip_region.
312 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
313 When moving a window, don't clear everything under the it, just the
314 root window. Makes stuff faster and flash less.
315 (gdk_window_get_pointer): Correctly handle offseted shapes, due to
316 USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
320 2001-01-12 Havoc Pennington <hp@redhat.com>
322 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the
323 current invalid region, fixes redraw bug while scrolling the
326 * gtk/gtktextview.c, gtk/gtktextview.h:
327 Rearrange the scrolling/validation/etc. code in a major way,
328 so it seems to make sense to me. Probably isn't genuinely that
331 * gtk/gtktexttag.c (set_fg_color): fix name of property used for
334 * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
336 2001-01-12 Alexander Larsson <alla@lysator.liu.se>
338 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
339 Hide mouse pointer while rotation. Show it afterwards.
341 2001-01-12 Alexander Larsson <alexl@redhat.com>
343 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
344 windows in consideration when generating clip region.
346 * gdk/linux-fb/gdkfb.h:
347 Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
349 * gdk/linux-fb/gdkprivate-fb.h:
350 Add shape to GdkWindowFBDatat.
351 exported gdk_fb_window_get_abs_shape().
352 removed gdk_fb_draw_lines declaration.
354 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
355 Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
356 send focus changes when there is a grabbed window.
357 (gdk_window_get_pointer): Handle shaped windows.
358 (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
359 (gdk_fb_window_peek_shape): Returns the shape for a window,
360 handles GDK_FB_USE_CHILD_SHAPE.
361 (gdk_fb_window_get_abs_shape): Returns the shape of the window,
362 offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
363 (gdk_window_shape_combine_mask): Implement.
365 * gtk/gtkwindow-decorate.c:
366 HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
367 setting the shape of a window makes the window transparent.
369 2001-01-11 Havoc Pennington <hp@redhat.com>
371 * gtk/gtktreemodelsimple.h: Oops, broke some macros
373 2001-01-10 Havoc Pennington <hp@redhat.com>
375 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
376 add this function, bug 40251
378 * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
381 2001-01-11 Alexander Larsson <alexl@redhat.com>
384 Added ENABLE_SHADOW_FB
387 Added --disable-shadowfb
389 * gdk/linux-fb/gdkcursor-fb.c:
390 Update shadowfb when updating cursor
392 * gdk/linux-fb/gdkdrawable-fb2.c:
393 Added wrappers for shadowfb that calls the normal drawable
394 methods, but calls gdk_shadow_fb_update(bounding box) when
395 GdkWindows are drawed to.
396 Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
397 which also returns the bounding box.
399 * gdk/linux-fb/gdkfb.h:
400 Added GdkFBAngle type and gdk_fb_set_rotation declaration.
402 * gdk/linux-fb/gdkgeometry-fb.c:
403 Update shadowfb when scrolling window.
405 * gdk/linux-fb/gdkglobals-fb.c:
406 Add _gdk_fb_screen_angle.
408 * gdk/linux-fb/gdkkeyboard-fb.c:
409 Test code for screen rotation. Shift-F2 in the xlate driver
412 * gdk/linux-fb/gdkmain-fb.c:
413 Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
415 * gdk/linux-fb/gdkmouse-fb.c:
416 Use fb_width/height instead of modeinfo.xres/yres.
418 * gdk/linux-fb/gdkprivate-fb.h:
419 Added fb_men, fb_width, fb_height & fb_stride. When using
420 shadow fb these can differ from the framebuffer stuff.
421 Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
422 gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
423 _gdk_fb_screen_angle. Removed CM, RP.
425 * gdk/linux-fb/gdkrender-fb.c:
426 Added code for shadowfb handling and screen rotation using
429 * gdk/linux-fb/gdkwindow-fb.c:
430 Use fb_mem, fb_stride, fb_width, fb_height.
431 Added recompute_rowstride to reset the rowstride of all windows.
432 Added gdk_fb_recompute_all() which recomputes rootwindow size,
433 window abs positions and window rowstrides. Usefull when the
434 rotation has changed.
436 Thu Jan 11 13:16:50 GMT 2001 Tony Gale <gale@gtk.org>
438 * docs/faq/gtk-faq.sgml: update to make web site updating easier
440 2001-01-10 Havoc Pennington <hp@redhat.com>
442 * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
443 where sibling == iter
444 (gtk_tree_store_insert_after): handle sibling == iter
445 (gtk_tree_store_prepend): remove stamp checks
446 (gtk_tree_store_insert_before): ditto
447 (gtk_tree_store_append): ditto
448 (gtk_tree_store_get_path): ditto
449 (gtk_tree_store_get_value): ditto
450 (gtk_tree_store_iter_has_child): ditto
451 (gtk_tree_store_iter_n_children): ditto
452 (gtk_tree_store_iter_nth_child): ditto
453 (gtk_tree_store_insert_after): ditto
454 (gtk_tree_store_is_ancestor): ditto
455 (gtk_tree_store_iter_depth): ditto
456 (gtk_tree_store_insert_before): assert that sibling's parent is
457 the same as the passed-in parent
458 (gtk_tree_store_insert_after): assert that sibling's parent is
459 the same as the passed-in parent
462 * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience
463 function to get the first iterator in a model
465 * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
466 conventionally the "root" in this sense is just NULL afaict.
468 * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
469 where sibling == iter
470 (gtk_list_store_insert_after): handle case where sibling == iter
472 * tests/testtreeview.c (run_automated_tests): fairly lame basic
473 automated tests for ListStore, TreeStore
475 * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
476 (gtk_list_store_insert): update tail pointer, and fix it to work
477 (gtk_list_store_insert_before): update tail pointer, and fix it to work
478 (gtk_list_store_append): use tail to be faster
479 (gtk_list_store_prepend): fix it, update tail pointer
480 (gtk_list_store_insert_after): fix it, update tail pointer
482 * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for
485 2001-01-09 Havoc Pennington <hp@redhat.com>
487 * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
488 is NULL due to a pending resize
490 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
491 column width to values less than 1
493 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
494 width to be between min/max width, and still set the width
495 even if autosize is turned on, so the tree view can use this
496 function in order to autosize.
497 (gtk_tree_view_column_init): set initial width to 1 not 0
499 * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
500 setter function to modify column width, so we get notification
501 (gtk_tree_view_insert_iter_height): ditto
502 (gtk_tree_view_calc_size): ditto
503 (gtk_tree_view_check_dirty): ditto
505 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
506 properties to change all the interesting attributes of the tree
508 (gtk_tree_view_column_set_header_clickable): rename set_clickable
509 (gtk_tree_view_column_get_clickable): add
510 (gtk_tree_view_column_set_cell_renderer): don't unset the current
511 attributes; assume a cell renderer with equivalent object
512 properties has been swapped in. Do g_object_notify().
513 (gtk_tree_view_column_set_visible): g_object_notify
514 (gtk_tree_view_column_get_sizing): rename from get_col_type
515 (gtk_tree_view_column_set_sizing): g_object_notify
516 (gtk_tree_view_column_set_width): add g_object_notify
517 (gtk_tree_view_column_set_min_width): ditto
518 (gtk_tree_view_column_set_max_width): ditto
519 (gtk_tree_view_column_set_title): ditto
520 (gtk_tree_view_column_set_clickable): ditto
521 (gtk_tree_view_column_set_widget): ditto
522 (gtk_tree_view_column_set_justification): ditto
524 2001-01-09 Havoc Pennington <hp@redhat.com>
526 * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
527 there are no rows in the model
529 * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
530 NULL, then return the start of the list
532 * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
533 if we can't get any rows from an empty model
535 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
536 extraneous * after function pointer typedef usage
538 * Makefile.am: don't specify full path to cp and rm
540 * gtk/gtkcellrenderertextpixbuf.c
541 (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
542 NULL before dereferencing, fixes a segfault that happened from
545 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
546 use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
547 and reindent the function
548 (gtk_cell_renderer_pixbuf_get_size): indentation
550 * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
552 (gtk_dialog_add_buttons_valist): add g_return_if_fail
553 (gtk_dialog_set_default_response): New function, to set default
555 (gtk_dialog_set_response_sensitive): New function, to set
556 sensitivity of buttons
558 * gtk/gtkcellrendererpixbuf.c
559 (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
560 (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
562 * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
563 handle any G_TYPE_OBJECT subclass, not just the base class, and
565 (_gtk_tree_data_list_value_to_node): ditto
567 * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if
570 * gtk/gtkmain.c: add GTK_DEBUG_TREE
572 * gtk/gtkdebug.h: add GTK_DEBUG_TREE
574 2001-01-09 Tor Lillqvist <tml@iki.fi>
576 * gdk/win32/gdkevents-win32.c: Implement better mouse
577 capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
578 (find_window_for_pointer_event): New function.
579 (gdk_event_translate): Use it when handling mouse events.
581 2001-01-09 Alexander Larsson <alla@lysator.liu.se>
584 Added --with-included-loaders option
586 * gdk-pixbuf/Makefile.am:
587 * gdk-pixbuf/gdk-pixbuf-io.c:
588 Add support for including selected gdk-pixbuf loaders only.
590 * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
591 gtk_window_set_has_frame):
592 Added inline documentation.
594 * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
595 * docs/reference/gdk/tmpl/windows.sgml:
596 Added inline documentation.
598 Mon Jan 8 14:42:06 2001 Jonathan Blandford <jrb@redhat.com>
600 * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
601 realizing buttons that have already been realized.
603 Mon Jan 8 14:06:29 2001 Jonathan Blandford <jrb@redhat.com>
605 * tests/testtreeview.c (main): Show menu items before adding to
608 * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
609 around if we kill them.
611 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
612 Return if we pass in a NULL model.
614 2001-01-08 Havoc Pennington <hp@redhat.com>
616 * tests/testtreeview.c: hack on this some
618 * gtk/gtktreestore.c (gtk_tree_store_setv): rename
619 gtk_tree_store_set_valist, v is for arrays, valist for varargs
621 (gtk_tree_store_getv): rename gtk_tree_store_get_valist
623 * gtk/gtkliststore.h: Add varargs set() and get() convenience
626 2001-01-08 Alexander Larsson <alexl@redhat.com>
628 * gtk/gtkwindow-decorate.[hc]:
630 New files. Contains an implementation of a minimal WM for
634 Add the possibility for GtkWindows to specify a frame. This
635 is used for the window decoration code, but could concievably
636 be used for X programs too (xmms style windows).
637 GtkWindow->frame is the toplevel window if the window is framed.
638 The signal frame_event gets all events that are targeted to
640 (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
643 Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
644 Call out to gtkwindow-decorate.c for WM support in linx-fb.
646 2001-01-08 Alexander Larsson <alexl@redhat.com>
648 * docs/README.linux-fb:
649 Correct filename ~/.pangoft2_aliases
652 Added new function gdk_window_get_decorations.
654 * gdk/linux-fb/gdkfb.h:
655 Removed _gdk_window_get_decorations declaration.
656 Renamed _gdk_window_set_child_handler to
657 gdk_fb_window_set_child_handler.
659 * gdk/linux-fb/gdkwindow-fb.c:
660 Renamed _gdk_window_set_child_handler to
661 gdk_fb_window_set_child_handler.
663 * gdk/x11/gdkwindow-x11.c:
664 New function gdk_window_get_mwm_hints().
665 Implemented gdk_window_get_decorations.
667 * docs/reference/gdk/tmpl/windows.sgml:
668 * docs/reference/gdk/gdk-sections.txt:
669 Added gdk_window_get_decorations docs.
671 2001-01-08 Alexander Larsson <alla@lysator.liu.se>
673 * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
674 gdk_fb_window_find_focus, gdk_fb_send_focus_change,
675 gdk_fb_window_send_crossing_events):
676 Possibly send focus events when the mouse moves from one
679 2001-01-07 Tor Lillqvist <tml@iki.fi>
681 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
682 gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
683 to match current API.
685 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
686 environment variable is set, don't call g_error when on a
687 palettized (PseudoColor) display. Some people want to use GTK+
688 in 256-colour mode even though works only partially.
692 * gtk/makefile.mingw.in: Update.
694 2001-01-05 Havoc Pennington <hp@redhat.com>
696 * tests/testtreeview.c: hack on this a bit
698 * gtk/gtktextlayout.c (gtk_text_layout_class_init):
699 s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
701 * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS):
702 was spelled incorrectly
703 (GTK_IS_TREE_MODEL_SIMPLE): ditto
705 * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
706 from gtk_tree_view_set_headers_active
709 (gtk_text_tag_get_property): handle PROP_DIRECTION
710 (gtk_text_tag_set_property): g_object_notify when we toggle the _set
711 properties, bug 40235
713 * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
716 Fri Jan 5 16:16:29 2001 Owen Taylor <otaylor@redhat.com>
718 * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
719 modules/input/gtkimcontextxim.c: Adapt to new prototypes
720 for unicode,locale,filename conversion functions.
722 2001-01-05 Havoc Pennington <hp@redhat.com>
724 * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
725 broken if called on the first position in the buffer.
727 * gtk/gtktextlayout.c (line_display_index_to_iter): fix
728 forward_to_delimiters to be called only if we aren't already at
731 2001-01-05 Havoc Pennington <hp@redhat.com>
733 * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
735 2001-01-05 Alexander Larsson <alexl@redhat.com>
737 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
738 colormap in here. Sync from X port.
739 (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
741 (gdk_fb_clip_region): Comment out g_warning about empty clip region.
742 This happens now and then, and i don't think it is a bug.
743 (gdk_fb_draw_polygon): Correctly add extra point if startpoint
745 (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
748 * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
749 some of the fields filled in at least.
751 * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
752 miLineArcD is no more, remove it from the function definition.
754 2001-01-04 Havoc Pennington <hp@redhat.com>
756 * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
759 * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
760 user_data instead of tree_node
762 * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
763 TREE_VIEW_COLUMN_SIZE
765 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
766 "size" field to "width" finishes bug 40061
768 * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
769 for bitfields, bug 40268
771 2001-01-04 Havoc Pennington <hp@redhat.com>
775 s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
777 s/GtkModelSimple/GtkTreeModelSimple/g;
778 s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
779 s/gtk_model_simple/gtk_tree_model_simple/g;
780 s/gtkmodelsimple/gtktreemodelsimple/g;
782 s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
784 s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
785 s/column_set_col_type/column_set_sizing/g;
787 s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
788 s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
790 s/GtkCellRendererType/GtkCellRendererState/g;
792 * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
793 (gtk_cell_renderer_toggle_class_init): change "state" property to
794 "active", to match GtkToggleButton
795 (gtk_cell_renderer_toggle_get_active): new function, bug
797 (gtk_cell_renderer_toggle_set_active): new function
798 (gtk_cell_renderer_toggle_set_property): route changes to toggle
799 state through gtk_cell_renderer_set_active
801 Thu Jan 4 15:46:18 2001 Jonathan Blandford <jrb@redhat.com>
803 * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
804 temporarily until they work again. Brought up to date with
805 changes in the model.
806 * gtk/gtkmodelsimple.h: Brought up to date with changes in the
809 2001-01-04 Havoc Pennington <hp@redhat.com>
811 * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
812 equal to the line length, then position iterator before paragraph
813 separators. Fixes crash reported by Mikael Hermansson when
814 pressing left arrow from the start of a line.
816 * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
817 about byte indexes off the end
818 (iter_set_from_char_offset): add g_error about char offsets
821 2001-01-03 Havoc Pennington <hp@redhat.com>
823 * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
825 * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
826 of private functions; remove inclusion of private headers.
828 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
829 function, so we don't need private functions in gtktextdisplay.c
831 * gtk/gtktextiterprivate.h: underscore-ification
833 * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
834 to instead say "only useful to implement widgets"
836 * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
837 GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
838 GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
840 * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
841 This function was completely broken
843 * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
845 * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
847 * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
849 * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
851 * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
853 * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
855 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
858 * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
861 * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
862 Progress on bug 40103. Add draw_layout to draw a PangoLayout.
863 (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
864 which were not implemented.
866 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
867 insert_pixbuf signal. Rename delete_text to delete_range since it
868 also deletes pixbufs and child anchors. This almost closes bug
869 40245 (still need to deal with child anchors)
871 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
872 insert_pixbuf, change signal names as appropriate, change types of
873 signals taking marks/tags to have the specific type, not just
876 * gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
879 * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
880 unnecessary remove_contents() call
881 (gtk_option_menu_class_init): add a "changed" signal, closes
883 (gtk_option_menu_update_contents): emit "changed" if the
884 active menu item changes
886 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
887 cast to GtkObject, reported by Jonas Borgstrom
888 (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
889 we can't do stuff with side effects in finalize. Instead, spew a
890 warning if the loader isn't closed.
892 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
893 colormap in here, non-X ports probably need to sync to this change
895 * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
896 assertion that colormap != NULL, you can set the colormap to NULL
899 * Makefile.am: remove gtk-config-2.0
901 * configure.in: Use pkg-config to locate GLib. Remove
902 separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
903 and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
904 Use pkg-config to locate Pango. Output correct Pango libs to
905 gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
907 * Makefile.am (pkgconfig_DATA): install only target-specific pc
909 (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
912 * gtk+-2.0.pc.in (Requires): require the GDK for the current target
915 2001-01-03 Alexander Larsson <alla@lysator.liu.se>
918 Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
920 Tue Jan 2 16:23:05 2001 Owen Taylor <otaylor@redhat.com>
922 * gtk/gtktextlayout.c
923 (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
924 variable when moving back onto a single line.
926 2001-01-01 Havoc Pennington <hp@redhat.com>
928 * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
930 * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
932 * configure.in (LIBTOOL_EXPORT_OPTIONS): define
933 LIBTOOL_EXPORT_OPTIONS with options to control symbol export
935 2001-01-01 Havoc Pennington <hp@redhat.com>
937 * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
939 * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for
942 * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug
944 (gtk_text_attributes_copy_values): rename from
945 gtk_text_attributes_copy
946 (gtk_text_attributes_copy): a more standard GTK copy function,
947 which returns a new object
949 2001-01-01 Havoc Pennington <hp@redhat.com>
951 * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
953 * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
954 don't fill in tree_view->priv->selection, kind of an unexpected
957 * gtk/gtkcellrenderertext.c: Remove definition of _ and include
960 * gtk/gtkcellrenderer.c: Remove definition of _ and include
962 (gtk_cell_renderer_get_property): remove calls to g_value_init
964 * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
967 * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
968 and include gtkintl.h
969 (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
972 * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
974 (_gtk_tree_selection_new_from_with_view): rename, return
976 (_gtk_tree_selection_set_tree_view): rename with uscore
977 (gtk_tree_selection_get_selected): fill in the "model" out param
978 first, so it gets filled in even if we return at the top of the
980 (gtk_tree_selection_real_select_all): add a comment and an else{}
981 to clarify this a bit
982 (gtk_tree_selection_real_unselect_all): add the same else{}
984 * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
985 set_tree_view to have underscore prefixes, move them to the
986 private header, fix return type of new_with_tree_view
987 (struct _GtkTreeSelection): mark struct
990 * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
991 GtkTreeModelFlags, not a guint
992 (gtk_tree_path_prev): return gboolean not gint
993 (gtk_tree_path_up): return gboolean not gint
995 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
996 return GtkTreeModelFlags, not a guint
998 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
999 that child model is non-null before unrefing it
1000 (g_value_int_compare_func): make this a qsort compare func, not
1003 * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
1004 (add -umn to the end), and mark it unimplemented
1005 (gtk_tree_model_sort_resort): remove, this wasn't implemented, and
1006 I don't see what it's for - doesn't the model always sort itself?
1007 (gtk_tree_model_sort_set_compare): this had the wrong signature
1009 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
1010 Fix the docs to say that it destructively replaces existing
1011 attributes (previously said that it added attributes).
1012 (gtk_tree_view_column_set_visible): canonicalize bool before
1013 equality testing. Also, check for realization before
1014 hiding/showing the tree_column->window; if this window could exist
1015 before realization, then it's busted and needs fixing, we can't
1016 create GDK resources pre-realization. Also, remove
1017 superfluous queue_resize(), since set_size() does that for us.
1018 (gtk_tree_view_column_set_col_type): check realization before
1019 using tree_column->window
1021 * gtk/gtktreedatalist.c: fix filename in copyright notice
1023 2000-12-31 Havoc Pennington <hp@pobox.com>
1025 * gtk/gtktextview.c: Rearrange all the
1026 scroll-while-dragging-or-selecting code to be different, not
1027 necessarily better. ;-)
1028 (gtk_text_view_scroll_to_mark): Change this
1029 function to take within_margin as a fraction instead of a pixel
1030 value, and to take alignment arguments (indicating where to align
1031 the mark inside the visible area)
1033 * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
1036 * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
1037 behavior so that offsets past the end of the line are not
1038 allowed, and an offset equal to the line length moves the iterator
1040 (gtk_text_iter_set_line_index): make parallel change
1041 (gtk_text_iter_get_bytes_in_line): add this function
1043 * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
1044 of byte indexes off the end of the line; byte index at the end of
1045 the line now returns FALSE and doesn't fill in the requested
1046 values, byte index past the end of the line is an error. Also,
1047 don't allow -1 offset anymore, since its meaning is unclear.
1049 This change exposes some bug in visual cursor motion, where we
1050 end up with a huge invalid byte index; needs fixing. Symptom of
1051 bug is a crash when you hit up arrow.
1053 (_gtk_text_line_char_locate): match the change to byte_locate
1055 * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
1056 from start of line properly. fixes bug reported by Mikael
1057 Hermansson where backspace would delete all text before the
1060 2000-12-30 Tor Lillqvist <tml@iki.fi>
1062 * gdk/win32/gdkwindow-win32.c
1063 (gdk_window_impl_win32_get_visible_region): New function, as in
1065 (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
1066 instead of duplicating the same code here.
1068 * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
1071 * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
1073 (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
1076 * gtk/gtk.def: Update.
1078 * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
1080 2000-12-30 Havoc Pennington <hp@pobox.com>
1082 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
1083 colormap on input only windows, to avoid special cases all over
1084 the code for these windows.
1086 2000-12-26 Tor Lillqvist <tml@iki.fi>
1088 * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
1089 we are on a palettized display ("PseudoColor" in X11), as the code
1090 for that doesn't work anyway, and never has.
1092 2000-12-22 Alexander Larsson <alexl@redhat.com>
1094 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
1095 Don't use isprint() for chars > 255.
1097 2000-12-21 Havoc Pennington <hp@redhat.com>
1099 * tests/testtreeview.c: more work
1101 2000-12-21 Alexander Larsson <alexl@redhat.com>
1103 * docs/README.linux-fb:
1104 Update the docs to the new pangoft2 way.
1106 2000-12-21 Alexander Larsson <alexl@redhat.com>
1109 For linux-fb get the pangoft2 cflags and libs. This needs a recent
1111 Remove modules/linux-fb/Makefile.
1113 * gdk/linux-fb/gdkdrawable-fb2.c:
1114 Render glyphs using freetype.
1116 * gdk/linux-fb/gdkfb.h:
1117 Add new fb-specific functions needed for managing windows.
1119 * gdk/linux-fb/gdkmain-fb.c:
1120 Remove gdk_font_init/fini() calls.
1122 * gdk/linux-fb/gdkpango-fb.c:
1123 Remove old implementation. Use pangoft2 instead.
1125 * gdk/linux-fb/gdkprivate-fb.h:
1126 Remove PangoFBFont and related stuff.
1128 * gdk/linux-fb/gdkwindow-fb.c:
1129 Implement drawable->get_visible_region.
1130 Implement support for _gdk_window_set_child_handler () and
1131 _gdk_window_get_decorations().
1133 * modules/Makefile.am:
1134 Remove linux-fb subdir.
1136 * modules/linux-fb/*:
1139 2000-12-20 Jonathan Blandford <jrb@redhat.com>
1141 * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
1142 calls, as they are no longer needed.
1144 * gtk/gtktreemodelsort.c: Fix up the comparison code.
1146 * gtk/gtktreemodel.h: Start work on ::reordered signal. Need to
1147 figure out how to emit a signal on an interface.
1149 2000-12-20 Havoc Pennington <hp@redhat.com>
1151 * tests: new directory to contain tests, gtk/test* should move
1152 here sometime (with appropriate on-cvs-server hackery)
1154 * tests/testtreeview.c, tests/Makefile.am: a test
1156 * configure.in (AC_OUTPUT): add tests/Makefile
1158 * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
1159 and "invisible_set" which were missing
1161 * gtk/gtkrbtree.h: some cheesy indentation fix
1163 2000-12-20 Alexander Larsson <alexl@redhat.com>
1165 * gtk/gtkinvisible.c (gtk_invisible_realize):
1166 Attach the style to the window so that the style it is not
1167 leaked when unrealizing the window.
1170 2000-12-18 Havoc Pennington <hp@redhat.com>
1172 * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
1173 begin/end user action where appropriate
1174 (gtk_text_view_commit_handler): add begin/end user action
1176 * gtk/gtktextbuffer.c: add begin/end user action signals, and
1177 bracket interactive operations with begin/end user action pair.
1179 * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
1180 "interactive" arg from insert_text and delete_text signals.
1181 Add begin_user_action, end_user_action signals
1182 (gtk_text_buffer_begin_user_action):
1183 (gtk_text_buffer_end_user_action): New functions to delimit
1184 a user-visible action
1186 * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
1189 2000-12-18 Havoc Pennington <hp@redhat.com>
1191 * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
1192 was pretty non-working.
1194 * gtk/testtext.c (fill_file_buffer): make this a bit more robust
1195 by passing the length to g_utf8_validate().
1197 2000-12-16 Havoc Pennington <hp@pobox.com>
1199 * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
1200 Port to GObject, can go back in gdk-pixbuf after setting up
1201 a gdk-pixbuf-marshal.h header over there.
1203 * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
1204 (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
1206 (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
1208 (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
1209 here, do it when we create the buttons later
1210 (gtk_tree_view_realize_buttons): add some g_return_if_fail
1211 (gtk_tree_view_map): paranoia checks that column->button is shown
1213 (gtk_tree_view_size_request): only request visible children.
1214 Move header size calculation in here, for cleanliness, and
1215 to maintain invariants for child widgets if we eventually
1216 let users set different children inside the buttons
1217 (gtk_tree_view_map_buttons): factor out code to map buttons,
1218 since it was being called several times
1219 (gtk_tree_view_size_allocate_buttons): move_resize the drag
1220 windows instead of just moving them; their height may change
1221 if we allow random widgets in there, or the theme changes.
1222 (gtk_tree_view_size_allocate): move button size allocation
1223 above emitting the scroll signals, to ensure a sane state when we
1225 (gtk_tree_view_button_release): remove queue_resize after
1226 tree_view_set_size(), set_size() will handle any resize queuing
1228 (gtk_tree_view_focus_in): just queue a draw, don't fool with
1230 (gtk_tree_view_focus): use gtk_get_current_event() and
1231 gdk_event_get_state()
1232 (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
1233 (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
1235 (gtk_tree_view_create_button): show the button here
1236 (gtk_tree_view_button_clicked): actually emit the clicked signal
1238 (_gtk_tree_view_set_size): return right away if the size is
1239 unchanged, as a cheesy optimization
1240 (gtk_tree_view_setup_model): rename set_model_realized to
1241 setup_model to match the flag that indicates whether we've
1243 (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
1244 exist, because set_scroll_adjustment does that and it shouldn't
1245 matter what order you call these in
1246 (gtk_tree_view_get_vadjustment): ditto
1247 (gtk_tree_view_set_headers_visible): canonicalize the bool,
1249 (gtk_tree_view_set_headers_visible): call
1250 gtk_tree_view_map_buttons() instead of using cut-and-paste code
1251 (gtk_tree_view_append_column): clarify whether the return value
1252 is the count of columns before or after, and do the increment
1253 separately from the return statement so you can tell from the code.
1254 (gtk_tree_view_remove_column): ditto
1255 (gtk_tree_view_insert_column): ditto
1256 (gtk_tree_view_get_column): remove g_return_if_fail for columns
1257 outside the existing range, the docs say that outside-range
1258 columns are allowed, so we handle them as documented. (Presumably
1259 this allows a nice loop with column != NULL as test.)
1260 (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
1261 mean (left/right/center etc.).
1262 (gtk_tree_view_collapse_all): only queue a draw if we're mapped
1263 (gtk_tree_view_expand_row): add docs
1264 (gtk_tree_view_collapse_row): add docs
1266 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
1267 function to emit the clicked signal on a column
1269 * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
1271 (gdk_event_get_time): don't treat GDK_SCROLL
1272 as a button event, remove default case from switch so gcc
1273 will whine if we don't explicitly handle all event types
1275 * gtk/gtktreeselection.h: added some FIXME
1277 * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
1278 "columns" to "n_columns" and "column" to "columns" for clarity
1280 2000-12-16 Havoc Pennington <hp@pobox.com>
1282 * gtk/gtktextiter.c: General cleanup of the log attr iteration
1283 stuff. This should make e.g. the delete key work again in the
1285 (gtk_text_iter_forward_cursor_positions): handle negative count
1286 (gtk_text_iter_backward_cursor_positions): handle negative count
1287 (gtk_text_iter_forward_word_ends): handle negative count
1288 (gtk_text_iter_backward_word_starts): handle negative count
1290 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
1291 gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c,
1292 gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to
1293 GObject. No doubt will cause breakage.
1295 * demos/gtk-demo/textview.c: remove hacks around
1296 non-GObject-ification of the text objects
1298 * demos/gtk-demo/main.c (main): use g_object_set() to manipulate
1301 2000-12-14 Havoc Pennington <hp@pobox.com>
1303 * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
1304 that we have Xrender
1306 Thu Dec 14 20:22:31 2000 Owen Taylor <otaylor@redhat.com>
1308 * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
1309 Add two virtualized functions gdk_drawable_get_clip_region - to
1310 get the clip region when drawing.
1312 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
1313 use invalidate_region.
1315 * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
1318 * acconfig.h configure.in: Check for Xft. For now, assume
1319 that if Xft is found, Pango was compiled with Xft support
1322 * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
1323 gdk_colormap_query_color().
1325 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
1326 with Xft if appropriate.
1328 * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
1329 a pangoxft context if we have XFT and the environment
1330 variable GD_USE_XFT is set.
1332 * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
1333 and also possibly an XftDraw structure.
1335 * gtk/gtkfontsel.c: Handle the case where the font from the
1336 style doesn't match any of the fonts a bit better.
1338 * gtk/testgtk.c: Add tabs between directional segments for
1339 hebrew/arabic test. (Not really necessary, just a little
1342 2000-12-14 Havoc Pennington <hp@redhat.com>
1344 * gtk/testtext.c (fill_file_buffer): fix unicode validation when
1347 2000-12-14 Havoc Pennington <hp@redhat.com>
1349 * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
1350 unused call to get_last_line()
1352 * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
1353 here until boxed is working (and maybe after that - we should
1354 really not gratuitously break old code)
1356 * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
1357 specific types for font_desc and tabs args, move them to
1358 GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get
1359 fixed. Move GdkColor args to GTK_TYPE_POINTER also.
1361 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
1362 use GTK_TYPE_POINTER for signal signatures as a hack-around
1364 * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
1367 * gtk/gtktextlayout.c (line_display_iter_to_index):
1369 (line_display_index_to_iter): make static
1371 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
1372 to marshal a string not a boxed
1374 * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
1376 * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
1377 since the UTF-8 isn't validated yet
1379 * gtk/gtktextsegment.c (char_segment_check_func): don't require
1380 lines to end in '\n'
1382 * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
1383 forward_to_delimiters, and grapheme boundaries
1384 (gtk_text_view_delete_from_cursor): properly handle non-newline
1385 delimiters, and grapheme boundaries
1387 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
1388 to gtk_text_iter_forward_to_delimiters, and make it work properly
1389 if empty lines end with a character other than '\n'
1391 * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
1394 2000-12-15 Tor Lillqvist <tml@iki.fi>
1396 * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
1399 * gdk/gdk.def: Update.
1401 * gdk/win32/gdkmain-win32.c
1402 * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
1403 gdkmain-win32.c here.
1405 * gdk/win32/makefile.mingw.in (all): No need to make
1406 gdk-win32res.o here, the makefile one step up will call us to make
1409 * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
1412 * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
1414 * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
1415 call to g_source_add().
1417 * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
1418 leak. Thanks to Andreas Kemnade.
1420 2000-12-13 Havoc Pennington <hp@pobox.com>
1422 * gtk/gtktextbtree.h: Remove double _ in front of some functions
1424 * gtk/gtktext*.[hc]: update accordingly
1426 2000-12-13 Havoc Pennington <hp@pobox.com>
1428 * gtk/gtktextbtree.h: Put _ in front of every function in this
1431 * gtk/gtktext*.[hc]: update to reflect renamed btree functions
1433 2000-12-13 Alex Larsson <alexl@redhat.com>
1435 * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
1436 Add support for ps2 intellimouse.
1439 Move shift-F1 repaint handling to xlate handler only.
1441 * docs/README.linux-fb:
1443 Document the new refresh keys.
1445 Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
1447 * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
1449 * gtk/gtkbox.c: change property types from (u)long to (u)int for
1450 ::position and ::padding.
1452 * gtk/gtkcontainer.c: make ::border_width an INT property.
1454 * gtk/gtkpacker.c: make ::position an INT property.
1456 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1457 guard against NULL h/v scrollbars, since this is used at construction
1460 * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
1461 internal gtk_clist_constructor().
1463 * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
1464 gtk_ctree_constructor().
1466 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
1467 ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
1469 * docs/reference/Makefile.am: fun stuff, disabled docs generation
1470 again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
1472 * gtk/gtkwidget.[hc]:
1473 removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
1474 and gtk_widget_get().
1475 (gtk_widget_new): use g_object_new_valist().
1476 (gtk_widget_set): use g_object_set_valist().
1478 * gtk/gtkobject.[hc]:
1479 removed gtk_object_arg_get_info(), gtk_object_getv(),
1480 gtk_object_query_args(), gtk_object_newv(),
1481 gtk_object_class_add_signals(),
1482 gtk_object_class_user_signal_new(),
1483 gtk_object_class_user_signal_newv(),
1484 gtk_object_arg_set(), gtk_object_arg_get(),
1485 gtk_object_args_collect(),
1486 gtk_object_default_construct(),
1487 gtk_object_constructed(),
1488 GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
1489 removed nsignals, signals and n_args members from GtkObjectClass.
1490 (gtk_object_new): use g_object_new_valist().
1491 (gtk_object_set): use g_object_set_valist().
1492 (gtk_object_get): use g_object_get_valist().
1494 * gtk/gtkcompat.h: define gtk_object_default_construct().
1496 * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
1499 * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
1500 fucntions, cleaned up method assignments (make sure your structures
1501 are setup properly before calling out). removed all GTK_CONSTRUCTED
1504 Tue Dec 12 11:52:16 2000 Owen Taylor <otaylor@redhat.com>
1506 * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
1507 off-by-one error in checks. (Dave Lambert)
1509 2000-12-12 Alexander Larsson <alexl@redhat.com>
1511 * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
1512 Don't free gdk_fb_keyboard twice.
1514 Tue Dec 12 08:24:42 2000 Tim Janik <timj@gtk.org>
1518 (create_statusbar): get rid of object_signal:: GtkObject argument uses,
1519 use GObject swapped_signal:: properties instead.
1521 * gtk/gtkcellrenderertoggle.c:
1522 * gtk/gtkcellrenderertextpixbuf.c:
1523 * gtk/gtkcellrenderertext.c:
1524 * gtk/gtkcellrendererpixbuf.c:
1525 * gtk/gtkcellrenderer.c:
1526 * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
1527 missing warnings for invalid property ids, install properties
1528 with g_object_class_install_property() now.
1531 (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
1533 Wed Oct 25 14:17:43 2000 Owen Taylor <otaylor@redhat.com>
1535 * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
1536 to determine if a window is the focus widget within
1539 * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
1542 * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
1543 of the case where the container CAN_FOCUS to here instead
1544 of having it in each individual move-the-focus place.
1546 * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
1547 focusing to be geometric in a much more obvious sense. Arrowing
1548 around is still non-intuitive because it isn't perfect and
1549 because entries, etc, grab the arrow keys, but it at least
1550 usually will do what you expect now.
1552 * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
1555 * gtk/gtknotebook.c: Change tabs to be a single item in
1556 the focus chain. Make movement of focus on tabs with arrow
1559 * gtk/gtknotebook.c (gtk_notebook_find_child): Add
1560 CHECK_FIND_CHILD macro to give informative error messages
1561 instead of silent returns.
1563 * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
1564 flag since we handle GdkReturn on the tabs.
1566 * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
1567 windows rather than sending expose events directly.
1569 * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
1570 definition for GtkNotebookPage into .c file, since it is private.
1572 * gtk/testgtk.c (create_notebook): Add option for
1573 testing borderless notebook.
1575 * gtk/testgtk.c (page_switch): Removed egregious poking
1576 around in GTK+ internals.
1578 * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
1580 * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
1581 properly through gtk_clist_focus. Make the title headers a
1582 single item in the tab-focus chain, and make left-right wrap
1585 * gtk/gtkwindow.c (gtk_window_focus): Add a custom
1586 focus method so that wrapping around works properly.
1588 * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
1589 that is handled for the widget now.
1591 Mon Dec 11 11:41:12 2000 Owen Taylor <otaylor@redhat.com>
1593 * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
1594 widgets as TOPLEVEL.
1596 * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
1597 TOPLEVEL widgets are containers.
1599 * gtk/gtkinvisible.h: Remove useless include.
1601 2000-12-11 Havoc Pennington <hp@redhat.com>
1603 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1604 Handle chopping off \r\n and 0x2029 in addition to \n before
1605 passing to PangoLayout
1607 * gtk/gtkimcontextsimple.c
1608 (gtk_im_context_simple_get_preedit_string):
1609 return an empty string if no match is pending
1611 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
1612 assertion that the returned preedit string was sane
1614 * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
1615 s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
1616 s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
1618 Mon Dec 11 10:02:26 2000 Owen Taylor <otaylor@redhat.com>
1620 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize):
1621 Fix up finalizer to chain to its parent.
1623 2000-12-11 Alexander Larsson <alexl@redhat.com>
1625 * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
1626 Clearified the difference between the keyboard types. Wrote a note
1627 about the magic sysrq key to get out of raw mode.
1629 2000-12-09 James Henstridge <james@daa.com.au>
1631 * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
1632 member to hold masks for detecting the start of a protocol packet.
1633 (mouse_devs): add packet start masks for ps2 and ms device types.
1634 Left the mask for fidmour blank, as I have no idea what it should
1636 (handle_mouse_io): skip bytes until we get to the start of a
1637 packet. My Logitech mouse seems to be passing an extra NULL pad
1638 byte, and GPM does a similar thing here.
1639 (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
1640 this is the ms mouse driver.
1641 (gdk_fb_mouse_ms_packet): fix up button handling, which was
1642 completely broken except for button1. It was checking the wrong
1643 bit in the packet for the status of the right mouse button, and
1644 wrongly assuming right == button2 rather than 3. I fixed that and
1645 also added support for middle button (button2).
1647 2000-12-08 Havoc Pennington <hp@redhat.com>
1649 * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
1650 that cause a segfault on text insertion
1652 * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix
1655 * gtk/gtktextiter.c (test_log_attrs): use
1656 _gtk_text_buffer_get_line_log_attrs to speed things up a bit
1658 * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs):
1659 Get log attrs for a line, using a cache stored on the buffer
1661 * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
1662 reported by Jeff Franks
1665 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
1667 * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
1668 /dev/ttyS0 -> /dev/mouse
1670 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
1672 * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
1673 Added dummy gdk_fontset_load.
1675 2000-12-08 Alexander Larsson <alexl@redhat.com>
1677 * docs/README.linux-fb:
1681 * gdk/linux-fb/Makefile.am:
1682 Define GDK_DATA_PREFIX.
1684 * gdk/linux-fb/gdkmain-fb.c:
1686 Change default display to /dev/fb0.
1688 * gdk/linux-fb/gdkpango-fb.c:
1689 Add $(prefix)/share/fonts/ to font path.
1691 2000-12-08 Alexander Larsson <alla@lysator.liu.se>
1693 * gdk/linux-fb/gdkkeyboard-fb.c:
1694 New file containing the abstracted keyboard driver. Most code
1695 taken from gdkinput-ps2.c
1697 * gdk/linux-fb/gdkinput-ps2.c:
1700 * gdk/linux-fb/Makefile.am:
1701 Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
1703 * gdk/linux-fb/gdkcolor-fb.c:
1704 display->fb was renamed to display->fb_fd.
1706 * gdk/linux-fb/gdkcursor-fb.c:
1707 gdk_mouse_get_info -> gdk_fb_mouse_get_info
1709 * gdk/linux-fb/gdkinput.c:
1710 Moved gdk_input_init here from gdkinput-ps2.c
1712 * gdk/linux-fb/gdkmain-fb.c:
1713 display->fb was renamed to display->fb_fd.
1714 Now the tty and the console is opened here instead
1715 of in the keyboard driver. Also check GDK_VT to see what
1717 Move gdk_beep () here from gdkinput-ps2.c
1718 gdk_mouse_get_info -> gdk_fb_mouse_get_info
1720 * gdk/linux-fb/gdkmouse-fb.c:
1722 gdk_mouse_get_info -> gdk_fb_mouse_get_info
1723 Return correct keyboard modifiers.
1724 GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
1726 * gdk/linux-fb/gdkprivate-fb.h:
1727 Add tty and vt info to display.
1728 Add orignal modeinfo storage to display
1729 Update global functions
1731 * gdk/linux-fb/gdkwindow-fb.c:
1732 Added gdk_fb_window_find_focus().
1733 gdk_mouse_get_info -> gdk_fb_mouse_get_info
1735 2000-12-07 Havoc Pennington <hp@pobox.com>
1737 * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of
1738 function, noticed by Alex
1740 2000-12-06 Elliot Lee <sopwith@redhat.com>
1742 * configure.in: Detect freetype properly
1744 * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
1747 2000-12-06 Alexander Larsson <alexl@redhat.com>
1749 * gdk/linux-fb/Makefile.am:
1752 * gdk/linux-fb/gdkmouse-fb.c:
1753 New file. Abstracted the mouse drivers a bit.
1755 * gdk/linux-fb/gdkcursor-fb.c:
1756 The cursor hide/show functions was moved here from gdkinput-ps2.c.
1758 * gdk/linux-fb/gdkinput-ps2.c:
1759 Removed old mouse handling code. Moved cursor handling code
1760 to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
1761 gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
1764 * gdk/linux-fb/gdkmain-fb.c:
1765 Pass NULL pointers for x,y in gdk_mouse_get_info call.
1767 * gdk/linux-fb/gdkprivate-fb.h:
1768 Removed public gdk_fb_find_common_ancestor, added and renamed
1769 functions for the new mouse handling code.
1771 * gdk/linux-fb/gdkwindow-fb.c:
1772 Moved gdk_fb_window_send_crossing_events here. added global
1773 variable gdk_fb_window_containing_pointer. made
1774 gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
1775 renamed to gdk_mouse_get_info.
1777 2000-12-06 Alexander Larsson <alexl@redhat.com>
1779 * gdk/linux-fb/gdkevents-fb.c:
1780 Update to match latest gmain/gsource changes.
1782 * gdk/linux-fb/gdkinput-ps2.c:
1783 Bogus gdk_keymap_get_entries_for_keycode implementation so that
1784 it links. Will be implemented later.
1786 2000-12-03 Havoc Pennington <hp@pobox.com>
1788 * gdk/Makefile.am: add gdkkeys.[hc]
1790 * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
1791 files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
1793 * acconfig.h, configure.in: add checks and command line options
1796 * gdk/x11/gdkkeys-x11.c: Implement the above functions
1798 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
1799 and group in the key event
1801 * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
1802 field with the low-level hardware key code, and a group
1803 field with the keyboard group
1805 * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
1806 and declare a couple globals used for keymap handling
1808 * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
1809 hold down Shift-Control and type a hex number to get a Unicode
1810 character corresponding to the hex number
1811 (gtk_im_context_simple_get_preedit_string): Fix cursor position
1812 (return bytes not chars)
1814 2000-12-05 Elliot Lee <sopwith@redhat.com>
1816 * gdk/gdkcolor.h: Make GdkColor specify element sizes
1817 to avoid waste on 64-bit platforms.
1819 Tue Dec 5 15:49:31 2000 Owen Taylor <otaylor@redhat.com>
1821 * INSTALL: Fix link to PNG home, remove reference
1824 * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
1826 * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
1829 * gtk/gtkcheckmenuitem.c: Permanently turn on
1832 * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
1833 be NULL. (Vladimir Klebanov, #26545)
1835 * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
1836 some signed/unsigned comparison problems. (#6510,
1839 * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
1840 return type to boolean (Oskar Liljeblad, #18648)
1842 2000-12-05 Alexander Larsson <alexl@redhat.com>
1844 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
1845 Remove bogus colormap setting.
1847 2000-12-05 Alexander Larsson <alexl@redhat.com>
1849 * gdk/linux-fb/gdkcolor-fb.c:
1850 More complete colormap handling. Now GdkRGB work in 8 bpp modes.
1852 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
1855 Tue Dec 5 13:17:53 GMT 2000 Tony Gale <gale@gtk.org>
1857 * docs/tutorial/gtk-tut.sgml: DND updates
1859 2000-12-05 Alexander Larsson <alla@lysator.liu.se>
1861 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
1862 Remove old debug g_warning().
1863 (gdk_fb_draw_drawable): The src argument can be either a wrapper
1864 or an implementation, just pass the implementation to draw_drawable_2.
1866 * gdk/linux-fb/gdkprivate-fb.h:
1867 Added GDK_IS_DRAWABLE_IMPL_FBDATA()
1869 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
1870 clear and invalidate area when window is destroyed.
1871 (send_map_events): Remove old commented out code.
1873 2000-12-05 Alexander Larsson <alexl@redhat.com>
1875 * gdk/linux-fb/gdkpango-fb.c:
1876 Use italic instead of oblique in font aliases.
1878 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
1879 _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
1880 other unsupported functions.
1882 2000-12-04 Havoc Pennington <hp@redhat.com>
1884 * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
1886 * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
1888 * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
1890 * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary
1891 hack to avoid infinite loops (synthetic expose event) -
1892 Owen has more appropriate fixes in a branch he'll check in later.
1894 * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
1895 separator, CR, and CRLF as line ends
1897 * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
1898 into lines using pango_find_paragraph_boundary(); other bits of
1899 the widget are still going to be broken if the boundary isn't '\n'
1902 2000-12-04 Alexander Larsson <alexl@redhat.com>
1904 * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
1907 * gdk/linux-fb/gdkpango-fb.c:
1908 Copied some 26.6 scaling macros from pango to clean up the rounding.
1909 (pango_fb_font_get_glyph_info): Correct sign on x value.
1911 * gdk/linux-fb/gdkprivate-fb.h:
1912 Removed unreferenced external functions.
1914 * modules/linux-fb/Makefile.am: Use ` instead of '.
1916 * modules/linux-fb/basic.c:
1917 Remove dead code. In particular the dummy lang engine which broke all
1918 pango layouts in GtkFB. Don't include tables-big.i anymore.
1920 * modules/linux-fb/tables-big.i:
1921 Upgrade to latest version from pango. Left for reference, basic_ranges
1924 2000-12-04 Havoc Pennington <hp@redhat.com>
1926 Fix bugs Alex found:
1928 * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
1931 * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
1933 * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
1935 * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw()
1936 implementation in here, apparently the expose() implementation was
1939 2000-12-04 Alexander Larsson <alexl@redhat.com>
1941 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
1942 Return positive descent.
1944 2000-12-02 Havoc Pennington <hp@pobox.com>
1946 * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
1949 * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
1950 calls gdk_window_process_updates() to push the exposes through
1951 (gtk_widget_class_init): No more draw signal, no
1952 gtk_widget_real_draw()
1954 * gtk/gtkbin.c (gtk_bin_draw): remove
1956 * gtk/gtkbox.c (gtk_box_draw): remove
1958 * gtk/gtkbutton.c (gtk_button_draw): remove
1960 * gtk/gtkcalendar.c (gtk_calendar_draw): remove
1962 * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
1964 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
1966 * gtk/gtkclist.c (gtk_clist_draw): remove
1968 * gtk/gtkentry.c (gtk_entry_draw): remove
1970 * gtk/gtkeventbox.c (gtk_event_box_draw): remove
1972 * gtk/gtkfixed.c (gtk_fixed_draw): remove
1974 * gtk/gtkframe.c (gtk_frame_draw): remove
1976 * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
1978 * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
1980 * gtk/gtklayout.c (gtk_layout_draw): remove
1982 * gtk/gtklist.c (gtk_list_draw): remove
1984 * gtk/gtklistitem.c (gtk_list_item_draw): remove
1986 * gtk/gtkmenu.c (gtk_menu_draw): remove
1988 * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
1990 * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
1992 * gtk/gtknotebook.c (gtk_notebook_draw): remove
1994 * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
1996 * gtk/gtkpacker.c (gtk_packer_draw): remove
1998 * gtk/gtkrange.c (gtk_range_draw): remove
2000 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
2002 * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
2004 * gtk/gtktable.c (gtk_table_draw): remove
2006 * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
2008 * gtk/gtktext.c (gtk_text_draw): remove
2010 * gtk/gtktextview.c (gtk_text_view_draw): remove
2012 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
2014 * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
2016 * gtk/gtktree.c (gtk_tree_draw): remove
2018 * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
2020 * gtk/gtktreeview.c (gtk_tree_view_draw): remove
2022 * gtk/gtkviewport.c (gtk_viewport_draw): remove
2024 * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
2026 * gtk/gtkvscale.c (gtk_vscale_draw): remove
2028 * gtk/gtkwindow.c (gtk_window_draw): remove
2030 2000-20-01 Anders Carlsson <andersca@gnu.org>
2032 * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
2033 a GtkToggleButton is both insensitive and active, it was being
2034 drawn by the GtkButton draw handler which doesn't check the
2035 state. Now it's calling gtk_toggle_button_paint instead.
2037 2000-12-01 Havoc Pennington <hp@redhat.com>
2039 * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
2040 dangling pointers to the appearance attributes from the
2043 * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
2044 width/height to mean "full width/height of drawable"
2046 * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
2047 click to select word/line
2049 * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters
2050 when getting log attrs. Get a slice, so that pixmaps and stuff
2051 are properly handled.
2053 * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
2054 paste into the selection (replaces selection now, previously
2055 crashed or added to selection). Reveals longstanding btree bug -
2056 select multiple lines, middle-click on the selection, boom. This
2057 isn't related to my changes though.
2059 * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
2060 PangoLogAttrs changes
2061 (gtk_entry_move_backward_word): ditto
2063 * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
2064 functions return bool whether the iter moved onto a
2065 dereferenceable position.
2067 * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
2068 functions for motion in terms of display lines.
2070 * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
2071 get the buffer a mark is inside
2073 2000-12-01 Alexander Larsson <alexl@redhat.com>
2075 * gdk/linux-fb/Makefile.am:
2076 * modules/linux-fb/Makefile.am:
2077 Freetype 2 final uses freetype-config
2079 * gdk/linux-fb/gdkpango-fb.c:
2080 Upgrade to use Freetype 2 final.
2081 More flexible support for font aliases, this also fixes a bug with
2082 GtkFontSelector, as the aliases must be visible in the font/family list,
2083 or GtkFontSelector reads uninitialized memory.
2085 2000-11-30 Hidetoshi Tajima <tajima@eng.sun.com>
2087 * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
2088 XGetIMValues to properly terminate variable argument list, and do
2089 NULL return check for ic_values and xim_styles.
2091 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
2092 Restore preedit state after XmbResetIC().
2094 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
2095 XvaCreateNestedList() should take XvaNestedList, but not
2098 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
2099 preedit_draw_callback, preedit_caret_callback): Match
2100 "preedit-changed" signal name to "preedit_changed" to be
2101 consistent to the spec.
2103 * gtk/gtkimcontextsimple.c (check_table):
2104 Match "preedit-changed" to "preedit_changed" to be consistent
2107 Thu Nov 30 23:03:04 2000 Owen Taylor <otaylor@redhat.com>
2109 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
2110 gc->clip_region == NULL>
2112 2000-11-30 Tor Lillqvist <tml@iki.fi>
2114 Changes by Hans Breuer:
2116 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
2117 Dont't use negative width and height as max_hints. This fixes
2118 Owen's recent testgtk changes for win32.
2120 * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
2121 gdk_win32_hdc_release): These are exported and may be called with
2122 other drawable types than our GdkDrawableImplWin32 (?).
2124 * gdk/gdkwindow.c: Backing store appears to work on Windows now,
2125 so always #define USE_BACKING_STORE.
2127 * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
2128 of printf for debugging output.
2130 * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
2132 * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
2134 * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
2137 * gtk/gtktexttypes.h: Ditto.
2139 * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
2140 (GDK_VoidSymbol) also if in case of arg check failure.
2142 * gtk/gtkimcontextsimple.c
2143 (gtk_im_context_simple_get_preedit_string): Don't assign cursor
2144 position to the pointer, but to the variable it points to.
2146 * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
2148 * gtk/gtk.def: Updates.
2150 2000-11-29 Elliot Lee <sopwith@redhat.com>
2152 * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
2153 GTK_TYPE_TREE_MODEL.
2155 2000-11-29 Alexander Larsson <alexl@redhat.com>
2157 * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
2158 Set the size of the font from the description.
2159 (gdk_text_width): Gross hack that calculates the width
2160 of text by text_length * size/2. This is necessary because
2161 GtkLabel does some ugly gtk_string_width call to calculate
2163 (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
2165 Wed Nov 29 13:39:19 GMT 2000 Tony Gale <gale@gtk.org>
2167 * docs/tutorial/gtk-tut.sgml: DND updates
2169 2000-11-29 Alexander Larsson <alexl@redhat.com>
2171 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2172 If you pass width or height == 0 to gdk_window_clear_area they
2173 should be calculated from the window size.
2175 2000-11-29 Alexander Larsson <alexl@redhat.com>
2177 * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
2178 a grab, but no grab-cursor, use the cursor from the grabbed
2179 window. (gdk_fb_window_send_crossing_events): Send normal
2180 enter/leave notifications if grab and owner_events == TRUE.
2182 2000-11-29 Alexander Larsson <alexl@redhat.com>
2184 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2185 Do implicit button grabs, even if the window doesn't
2187 (gdk_fb_window_send_crossing_events): If there is a
2188 grab, only the grabbed window gets normal enter/leave
2189 notifications. On ungrab go from grabbed window to current.
2190 Don't send any notification to b when propagating from c -> b.
2191 If setting a grab on window, don't set prev_window.
2192 (handle_mouse_input): Send enter/leave events to the window the
2193 mouse is over, not the grabbed one.
2195 2000-11-28 Elliot Lee <sopwith@redhat.com>
2197 * gdk/gdkregion-generic.c: Zap warning.
2198 * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
2199 * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
2201 2000-11-28 Alexander Larsson <alla@lysator.liu.se>
2203 * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2204 The cursor should be hidden if it is part of either the
2205 source or destination region. Not only if it is in both.
2206 (gdk_window_set_transient_for): Silence warnings.
2208 2000-11-28 Alexander Larsson <alexl@redhat.com>
2210 * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
2211 The default mode in X is Pie Arcs, therefore that is
2214 2000-11-28 Alexander Larsson <alexl@redhat.com>
2216 * gdk/linux-fb/gdkinput-ps2.c:
2217 Implement correct EnterNotify/LeaveNotify:
2218 (gdk_fb_window_send_crossing_events): New function that sends
2219 all GdkCrossingEvents from the last mouse-window to the specified
2221 (gdk_fb_window_visibility_crossing): Removed function.
2222 (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
2223 (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
2224 instead of gdk_window_get_pointer() for better readability.
2226 * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
2227 gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
2229 * gdk/linux-fb/gdkprivate-fb.h:
2230 removed gdk_fb_window_visibility_crossing, added
2231 gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
2233 gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
2234 New function that finds the least common ancestor of two windows.
2235 (gdk_window_show, gdk_window_hide):
2236 Use gdk_fb_window_send_crossing_events.
2237 (gdk_fb_window_move_resize): Send configure events to toplevel
2238 windows. Use gdk_fb_window_send_crossing_events.
2240 2000-11-27 Havoc Pennington <hp@redhat.com>
2242 * gtk/gtkprivate.h (enum): Remove a trailing comma
2244 2000-11-27 Federico Mena Quintero <federico@helixcode.com>
2246 * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
2247 the "changed" callback of the adjustment. We need to redraw the
2248 spin button's arrows when the adjustment's range changes.
2249 (adjustment_changed_cb): Draw the arrows.
2250 (gtk_spin_button_value_changed): Draw the arrows.
2252 2000-11-23 Alexander Larsson <alexl@redhat.com>
2254 * gdk/linux-fb/gdkselection-fb.c:
2255 Initial selection implementation.
2257 * gtk/gtkselection.c:
2258 if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
2259 requestor in gtk_selection_request.
2261 * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
2262 Added gdk_selection_property atom.
2264 * gdk/linux-fb/gdkprivate-fb.h:
2265 Export _gdk_selection_window_destroyed.
2266 Removed mask_off_x/y from GdkCursorPrivateFB.
2267 Removed hbearing, added top, left to PangoFBGlyphInfo.
2269 * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2270 Call _gdk_selection_window_destroyed
2271 (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
2272 the root window has been created.
2273 (static_dx_hack, static_dy_hack, compare_draw_rects,
2274 gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
2275 in region. They are already sorted. Instead just traverse them in
2276 reverse if draw_direction < 0.
2278 * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2279 Double-clicks must be sent after the normal button_press.
2280 (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
2282 * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
2283 Pass _gdk_fb_screen_gc instead of NULL.
2285 * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2286 Initialize gdk_selection_property.
2287 (gdk_event_make): Remove unused code.
2289 * gdk/linux-fb/gdkcursor-fb.c:
2290 Make the pixmap for the cursor the same size as the mask. Also remove
2291 the mask_off_x/y fields in GdkCursorPrivateFB and combine
2292 _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
2293 Now the whole cursor is visible.
2295 * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2296 Fix bug where xdest+height instead of ydest+height was used
2297 to calculate if the source and dest overlapped. This fixes the
2298 redraw bug when the main window in testgtk was scrolled when
2299 partially covered by a tall window.
2300 Copy rectangles in region in order depending on draw_direction.
2301 Also moved the draw_direction flipping of start_y and end_y into
2302 the gc functions, as this might not be what all of them want.
2303 (gdk_fb_draw_lines): Support dashed lines.
2304 (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
2305 so that the text is positioned correctly (was 1 pixel high).
2307 gdk/linux-fb/gdkgc-fb.c:
2308 Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
2309 all lines were drawn a pixel to short. Also checked the default of
2310 the rest of the values, and they're the same as X now.
2312 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
2313 Clean up pixel positioning of the glyphs. Just use bgy->top and
2314 bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
2315 to all divisions to get correct rounding behaviour.
2317 * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
2318 gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
2319 Moved start_y/end_y flip into draw_drawable implementations.
2320 Flip also x rendering when draw_direction < 0.
2321 Remove unneccesary multiply with draw_direction.
2323 Wed Nov 22 14:11:19 GMT 2000 Tony Gale <gale@gtk.org>
2325 * docs/tutorial/gtk-tut.sgml:
2326 - get rid of gtk_toggle_button_toggled FUD
2327 - start DND section - needs work - based on:
2328 http://wolfpack.twu.net/docs/gtkdnd/
2330 2000-11-22 Alexander Larsson <alexl@redhat.com>
2332 * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
2333 Correct calculation of font metrics. Now GtkEntrys have sane
2336 2000-11-22 Alexander Larsson <alexl@redhat.com>
2339 Add new type GdkSpan
2341 * docs/reference/gdk/gdk-sections.txt,
2342 docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
2344 Implement and document gdk_region_spans_intersect_foreach.
2346 * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
2347 Add new file gdkrender-fb.c which contains all core
2349 Add gdk_fb_fill_rectangle_generic (old rectangle code) and
2350 gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
2351 (optimized rectangle fillers).
2353 * gdk/linux-fb/gdkdrawable-fb2.c:
2354 Move all rendering code to gdkrender-fb.c.
2355 Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
2356 Use the new span intersection functions in gdk_fb_fill_spans.
2357 gdk_fb_draw_rectangle() clips filled rectangles and calls
2358 gc->fill_rectangle with the result.
2359 gdk_fb_fill_spans() gets extra argument "sorted".
2361 * gdk/linux-fb/gdkevents-fb.c:
2362 Remove unused includes and defines.
2363 New function gdk_fb_get_time() to get correct time for events.
2365 * gdk/linux-fb/gdkinput-ps2.c:
2366 Use gdk method of generating multiple-clicks (gdk_event_button_generate)
2367 Make sure to set the time of all events.
2369 * gdk/linux-fb/gdkmain-fb.c:
2370 Use gdk_fb_get_time ().
2372 * gdk/linux-fb/gdkprivate-fb.h:
2373 New virtual GC calls: fill_span & fill_rectangle.
2374 Export gdk_fb_get_time().
2375 gdk_fb_fill_spans() gets extra argument "sorted".
2377 * gdk/linux-fb/mi*.c:
2378 Use GdkSpan instead of GdkRectangle.
2379 Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
2380 from XFree 4 source)
2382 2000-11-22 <jrb@redhat.com>
2384 * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
2385 reversing the order in an if statement will do. Doing so managed
2386 to make the treemodelsort half work. Other half will follow after
2387 I get the insert function fully fixed.
2389 2000-11-21 Elliot Lee <sopwith@redhat.com>
2390 * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
2391 more than 2 bits. Besides, I need to implement an evil hack. :)
2393 Tue Nov 21 14:17:51 GMT 2000 Tony Gale <gale@gtk.org>
2395 * docs/tutorial/gtk-tut.sgml: minor corrections
2397 2000-11-20 Jonathan Blandford <jrb@redhat.com>
2398 * gtk/gtktreemodelsort.h: Add convertion functions to let you
2399 convert to and from relative path's and iters.
2401 * gtk/treestoretest.c: move to having a sorted/unsorted view. Start
2402 testing sorting functions a bit better. Currently broken -- will
2405 2000-11-20 Havoc Pennington <hp@redhat.com>
2407 * gtk/gtkwidget.c: Documented a bunch of functions in here
2408 (gtk_widget_realize): Warn if you try to realize
2409 a widget with no parent that isn't a toplevel
2410 (gtk_widget_intersect): return a gboolean
2412 2000-11-20 Havoc Pennington <hp@redhat.com>
2414 * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
2415 gtk/testtext.c: Semi-finish widget embedding. Need guffaw
2416 scrolling to be implemented in GDK to finish. Also, right now
2417 we just size_allocate all children on every layout change,
2418 which is pretty lame. Test commented out of testtext.c,
2419 until it works better.
2421 2000-11-20 Alexander Larsson <alla@lysator.liu.se>
2423 * gdk/linux-fb/gdkdrawable-fb2.c:
2424 Removed unused arguments from gdk_fb_drawable_get_pixel().
2426 * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
2427 Renamed fidur specific mouse packet data in MouseDevice to
2428 generic. Used it in ps2 mouse handling code to avoid blocking
2431 Sat Nov 18 18:00:17 2000 Jonathan Blandford <jrb@redhat.com>
2433 * demos/gtk-demo/main.c: Changed to have the list become
2434 non-italic when the demo window is destroyed through an external
2435 event (like a close button). Doing so found three bugs in the
2438 * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
2440 * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
2441 we actually set the cell.
2443 * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
2445 * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
2446 free a leaked path. Thanks memprof.
2448 Sat Nov 18 11:58:17 2000 Owen Taylor <otaylor@redhat.com>
2450 * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix
2451 off-by-one error when destroying allocated segments
2452 on failure. (Elliot)
2454 Sat Nov 18 11:45:09 2000 Owen Taylor <otaylor@redhat.com>
2456 * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
2457 memleaks found by Evan Martin.
2459 Fri Nov 17 20:14:20 2000 Owen Taylor <otaylor@redhat.com>
2463 * NEWS: Updates for 1.3.2
2465 2000-11-17 Tor Lillqvist <tml@iki.fi>
2467 * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
2468 but in general for window system specific events.
2471 * gtk/makefile.mingw.in
2472 * gtk/makefile.msc.in: Update.
2474 * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
2476 Thu Nov 16 16:11:39 2000 Owen Taylor <otaylor@redhat.com>
2478 * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
2479 distribute gtk.immodules.
2481 * gtk/Makefile.am (install-data-local): Don't install the
2482 gtk.immodules file created for the uninstalled modules;
2483 instead run gtk-query-immodules after install
2485 Wed Nov 15 21:51:31 2000 Owen Taylor <otaylor@redhat.com>
2487 * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
2488 -rpath to the right install location.
2490 * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
2493 * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
2496 2000-11-15 Havoc Pennington <hp@pobox.com>
2498 * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
2499 patch from Mikael Hermansson to temporarily stop blinking while
2500 the user is using the keyboard to type or navigate.
2502 Also, when blinking, stay on for longer than we stay off. Also,
2503 return from start_cursor_blink if !cursor_visible, to save
2504 checking that flag all over the place before we call
2507 Thu Nov 16 01:25:51 2000 Robert Brady <robert@suse.co.uk>
2509 * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
2510 only contain a "fontset" line, which is now ignored.
2512 * gtk/gtkentry.c (gtk_entry_button_release): Make
2513 double-click-to-select-word work.
2515 Wed Nov 15 20:16:54 2000 Owen Taylor <otaylor@redhat.com>
2517 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end):
2518 Don't move back one char when we are actually at the end of the
2521 2000-11-15 Robert Brady <robert@suse.co.uk>
2523 * modules/input/iminuktitut.c (inuktitut_compose_seqs):
2526 * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
2527 bind_textdomain_codeset.
2529 (gtk_init_check): Make the warning about translating default:LTR
2532 Wed Nov 15 18:39:40 2000 Owen Taylor <otaylor@redhat.com>
2534 * **/Makefile.am : remove unecessary rules for win32-specific
2535 config-substituted targets. If you want these rules, use
2536 --enable-maintainer-mode (called automatically by autogen.sh).
2537 Stops a lot of unneccessary make-time warnings.
2539 * gtk/gtktext{layout,display}.c: Factor in total width as
2540 well as screen when figuring alignment for word-wrap as well as
2541 no wrap; this is necessary to handle lines that cannot be wrapped
2544 2000-11-15 Havoc Pennington <hp@redhat.com>
2546 * gtk/testtext.c: Implement essential color cycling feature
2548 2000-11-15 Havoc Pennington <hp@redhat.com>
2550 * gtk/gtktextview.c (changed_handler): Invalidate the side windows
2551 when we invalidate the main window.
2553 * gtk/testtext.c (create_view): Get rid of text_changed_callback,
2554 GtkTextView will now invalidate the side windows for us when text
2557 Wed Nov 15 16:02:20 2000 Owen Taylor <otaylor@redhat.com>
2559 * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
2560 unconditionally, since we may need to update the horizontal
2561 scrollbars even if the height didn't change.
2563 * gtk/gtktextlayout.c (add_preedit_attrs): Always get
2564 the extra attrs, since some of them affect size.
2566 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
2569 2000-11-15 Havoc Pennington <hp@redhat.com>
2571 * gtk/gtktextlayout.c (set_para_values): If indent is negative,
2572 don't move the first line out into the margin, instead move the
2573 whole paragraph in order to make space for the first line within
2576 2000-11-15 Havoc Pennington <hp@redhat.com>
2578 * gtk/gtktextview.c (changed_handler): offset redraw rect by
2579 xoffset in addition to yoffset, so horizontal scrolling doesn't
2582 2000-11-15 Havoc Pennington <hp@redhat.com>
2584 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
2586 (render_layout_line): fix reversed test that caused weird
2587 underlines to get drawn
2589 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
2591 * gdk/linux-fb/gdkprivate-fb.h:
2594 2000-11-15 Alexander Larsson <alla@lysator.liu.se>
2596 * gdk/linux-fb/gdkprivate-fb.h:
2597 Added virtual functions set_pixel, get_color,
2598 fill_span and draw_drawable to the GC.
2599 Added global _gdk_fb_screen_gc to use instead of
2600 NULL when drawing to the screen.
2601 Added _gdk_fb_gc_calc_state() prototype.
2603 * gdk/linux-fb/gdkgc-fb.c:
2604 Call _gdk_fb_gc_calc_state() on any gc state change.
2606 * gdk/linux-fb/gdkglobals-fb.c:
2607 Add _gdk_fb_screen_gc
2609 * gdk/linux-fb/gdkdrawable-fb2.c:
2610 _gdk_fb_gc_calc_state() calculates best functions
2611 for the GC state and depth.
2612 Moved bpp specialized code to separate functions.
2613 Added optimized 24 bpp AA draw_drawable.
2615 * gdk/linux-fb/gdkevents-fb.c:
2616 Silence gcc warning.
2618 * gdk/linux-fb/gdkimage-fb.c:
2619 Use _gdk_fb_screen_gc
2621 * gdk/linux-fb/gdkwindow-fb.c:
2622 Init and use _gdk_fb_screen_gc
2624 * gdk/linux-fb/mitypes.h:
2625 Remove unused types.
2627 2000-11-14 Havoc Pennington <hp@pobox.com>
2629 * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
2632 2000-11-14 Havoc Pennington <hp@pobox.com>
2634 * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
2636 * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
2637 unknown char, no real reason we were using a variable.
2638 Remove gtk_text_unknown_char variable. Fix all the text widget
2641 * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC,
2642 since the Unicode spec seems to prefer that character for our
2645 Wed Nov 15 02:18:01 2000 Robert Brady <robert@suse.co.uk>
2647 * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return
2648 value of g_getenv() isn't freeable, so g_strdup it.
2650 * modules/input/inuktitut.c: Inuktitut input method.
2652 * modules/input/Makefile.am: Build this.
2654 2000-11-14 Elliot Lee <sopwith@redhat.com>
2656 * gtk/Makefile.am: Install gtk.immodules, needed for operation
2659 Tue Nov 14 20:13:06 2000 Owen Taylor <otaylor@redhat.com>
2661 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
2662 reversed > that was causing Home to go to end of previous line.
2664 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
2665 modified-keypresses (leave for bindings.)
2667 * modules/input/Makefile.am: Remove useless -export-dynamic
2668 from module LDFLAGS.
2670 2000-11-14 Havoc Pennington <hp@redhat.com>
2672 * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
2675 * gtk/gtktextdisplay.c (render_layout_line): Take rise into
2676 account. Also, render rise, underline, background, etc. for
2677 pixbufs as well as text. Also, draw underlines one pixel higher.
2679 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
2680 PangoAttribute for the rise, so it gets drawn properly. Also,
2681 add the GtkTextAppearance attribute for pixbuf/widget segments
2682 as well; we should go ahead and have rise, underline, background,
2683 stipple work for those
2685 * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
2688 2000-11-15 Tor Lillqvist <tml@iki.fi>
2690 * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
2692 * gtk/gtk.def: Update.
2694 * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
2696 (gtk_rc_get_im_module_file): Use run-time installation directory
2699 * gdk/win32/rc/gdk.rc: Remove.
2700 * gdk/win32/rc/gdk.rc.in: New file.
2701 * gdk/win32/rc/Makefile.am: New file
2702 * gdk/win32/Makefile.am: Corresponding changes.
2704 * gtk/gtk.rc: Remove.
2705 * gtk/gtk-win32.rc.in: New file.
2706 * gtk/Makefile.am: Corresponding changes.
2708 * configure.in: Corresponding changes.
2710 * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
2711 has a built gtkcompat.h. Developers using CVS code on Win32 can
2712 hand-edit it from gtkcompat.h.in.
2714 * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
2715 gtkcompat.h from gtkcompat.h.win32.
2717 2000-11-14 Havoc Pennington <hp@redhat.com>
2719 * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
2720 to default to GDK_ACTION_MOVE if the drag is within a single
2721 widget. Defaults to GDK_ACTION_COPY between widgets.
2723 Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
2725 * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
2727 * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
2729 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
2732 * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
2734 * configure.in (GTK_VERSION): Up to 1.3.2
2736 * modules/input/Makefile.am (im_xim_la_SOURCES): Add
2739 * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
2740 missing doc comment.
2742 2000-11-14 Alexander Larsson <alexl@redhat.com>
2744 * modules/linux-fb/basic.c:
2745 Use the glib iconv wrappers.
2747 2000-11-13 Havoc Pennington <hp@pobox.com>
2749 * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
2752 * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
2753 scroll the GdkWindows before realization.
2755 2000-11-13 Havoc Pennington <hp@redhat.com>
2757 * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug
2758 where GC didn't always get updated properly
2760 * demos/gtk-demo/textview.c (create_tags): Use subattributes
2761 of fonts instead of setting the entire font
2763 * gtk/testtext.c (fill_example_buffer): Use "size" instead of
2766 * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
2768 * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into
2769 a bunch of individually-settable font attributes. You can still
2770 use the "font" and "font_desc" args, they just set all the font
2773 2000-11-13 Elliot Lee <sopwith@redhat.com>
2775 * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
2777 Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
2779 * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
2780 * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
2782 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
2785 2000-11-13 Havoc Pennington <hp@redhat.com>
2787 * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of
2790 * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
2793 * gtk/testtext.c: Test pixels above/below/inside paragraphs
2796 * gtk/gtktextview.c: Implement object args and setters/getters for
2797 all the aspects of the GtkTextAttributes that are not set from
2798 GtkWidget attributes. This is spacing, justification, margins,
2801 (gtk_text_view_set_arg)
2802 (gtk_text_view_get_arg): implement get/set for editable, wrap mode
2804 (gtk_text_view_class_init): Add args for justify, left_margin,
2805 right_margin, indent, and tabs
2808 * gtk/gtktextlayout.c (set_para_values): fix to display indent
2811 * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute,
2812 replace with indent attribute
2814 * gtk/gtktextlayout.c (set_para_values): multiply indent by
2817 * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
2818 rearranging code to do that
2819 (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
2820 i.e. don't subtract the top_margin first, just to keep
2821 all margin-futzing in one place.
2823 * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
2825 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
2826 special case of last line, Pango now handles this itself.
2827 (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the
2829 (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
2830 (find_display_line_above): wasn't moving the byte index as it
2831 iterated over lines, so always returned byte 0. Also, port to use
2833 (find_display_line_below): same problem as
2834 find_display_line_above. Also, port to use PangoLayoutIter.
2836 2000-11-13 Alexander Larsson <alexl@redhat.com>
2838 * gdk/linux-fb/*.[ch]:
2839 Massive reindent to gtk+ standard. My hands hurt.
2841 * gdk/linux-fb/gdkcolor-fb.c:
2842 Move GdkColorPrivateFB from inherited to windowing_data
2844 * gdk/linux-fb/gdkcursor-fb.c:
2845 _gdk_cursor_new_from_pixmap made static
2847 * gdk/linux-fb/gdkdnd-fb.c:
2848 GdkDragContextPrivate moved to windowing_data
2850 * gdk/linux-fb/gdkdrawable-fb2.c:
2851 Removed endian.h, use glib endianness macros instead
2852 Some cleanups in the usage of GDK_DRAWABLE_FBDATA
2853 and GDK_DRAWABLE_IMPL_FBDATA
2855 * gdk/linux-fb/gdkfont-fb.c:
2856 Add empty gdk_font_load(). Needed for linking of Gtk+.
2858 * gdk/linux-fb/gdkimage-fb.c:
2859 Removed endian.h, use glib endianness macros instead
2860 Moved GdkImagePrivateFB to windowing_data
2861 gdk_image_new_bitmap didn't always allocate enough
2864 * gdk/linux-fb/gdkinput-ps2.c:
2865 Added semi-working support for MS serial mice.
2867 * gdk/linux-fb/gdkprivate-fb.h:
2868 s/GdkWindowPrivate/GdkWindowObject/
2869 Removed GdkWindowPrivate typedef
2870 s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
2871 Removed GDK_DRAWABLE_P
2872 Move GdkColorPrivateFB from inherited to windowing_data
2873 Moved GdkImagePrivateFB to windowing_data
2875 * gdk/linux-fb/gdkvisual-fb.c:
2876 Removed some unused debug code.
2878 * gdk/linux-fb/gdkwindow-fb.c:
2879 Use stock cursors instead of including X headers.
2880 s/GdkWindowPrivate/GdkWindowObject/
2882 * gdk/linux-fb/mitypes.h:
2883 Removed unused types.
2885 * modules/linux-fb/basic.c:
2886 Use the pango fribidi wrappers.
2888 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2890 * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
2891 gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
2892 gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
2893 gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
2894 GEqualFunc where applicable.
2896 * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
2897 pango_font_description_equal as changed in pango.
2899 * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
2901 * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
2903 * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
2905 * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
2907 * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
2909 * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
2911 * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
2912 gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
2914 * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
2915 gtk_rc_styles_compare -> gtk_rc_styles_equal.
2917 2000-11-12 Havoc Pennington <hp@pobox.com>
2919 * demos/gtk-demo/Makefile.am (democodedir): change demo install
2920 dir to datadir/gtk+-2.0/demo
2922 * demos/gtk-demo/textview.c: Text widget demo; reveals all
2923 sorts of text widget and Pango font bugs. Urgh.
2925 * demos/gtk-demo/Makefile.am (demos): Add textview.c
2927 * demos/gtk-demo/main.c (create_tree): Add instructions at top of
2928 tree that you should double click to see the demo. Fix
2929 types of variables to reflect changed return values from
2930 GtkTreeStore and GtkTreeViewColumn constructors.
2932 * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
2933 newly-created buffer to prepare for GObject semantics
2935 * gtk/testtext.c: don't leak the buffer with GObject semantics
2937 * gtk/testtextbuffer.c: ditto
2939 2000-11-12 Havoc Pennington <hp@pobox.com>
2941 Rename this testgtk to gtk-demo to avoid confusion, and
2942 install it so people can use it as a supplement to
2945 * demos/gtk-demo: Moved from demos/testgtk
2947 * demos/testgtk: Removed
2949 * configure.in: make Makefile in gtk-demo
2951 * demos/gtk-demo/Makefile.am: Install sample source to
2952 datadir/gtk-demo (maybe there's a better place?), and
2953 rename the binary to gtk-demo
2955 * demos/gtk-demo/main.c (load_file): Load installed sample
2956 source if source isn't found in pwd.
2958 2000-11-09 Havoc Pennington <hp@pobox.com>
2960 * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char"
2961 argument to set the char displayed when visibility == FALSE
2962 (gtk_entry_create_layout): If !entry->visible, replace
2963 all chars with the "invisible char"
2965 * gtk/testgtk.c: Test the invisible_char deal
2967 Mon Nov 13 02:16:33 2000 Robert Brady <robert@suse.co.uk>
2969 * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
2970 can't get a native font in the right encoding.
2972 Mon Nov 13 00:09:29 2000 Robert Brady <robert@suse.co.uk>
2974 * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
2977 Sun Nov 12 19:11:42 2000 Owen Taylor <otaylor@redhat.com>
2979 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
2980 Fix warning when moving between paragraphs.
2982 * gtk/gtkentry.[ch]: Change move => move_cursor,
2983 delete => delete_from_cursor, insert => insert_at_cursor
2985 Sun Nov 12 22:52:51 2000 Robert Brady <robert@suse.co.uk>
2987 * modules/input/imviqr.c: A vietnamese VIQR-based input method.
2989 * modules/input/imthai-broken.c: A Thai input method for use if
2990 Thai keys are really generating Latin1 keysyms.
2992 * modules/input/Makefile.am: Build these.
2994 Sun Nov 12 22:15:35 2000 Robert Brady <robert@suse.co.uk>
2996 * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c:
2997 g_filename_{to,from}_utf8 now takes an extra parameter.
2999 * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
3000 strftime into UTF-8.
3002 (column_from_x, gtk_calendar_paint_day_names): Support RTL
3005 (gtk_calendar_paint_day_names): Draw day names in the right
3008 Sun Nov 12 14:10:09 2000 Owen Taylor <otaylor@redhat.com>
3010 * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
3011 problem with using result of g_get_charset() backwards -
3012 pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
3014 * gtk/gtkwindow.c (gtk_window_compute_hints): Support
3015 negative min_width/height and max_width/height to
3016 mean "requisition"; this allows setting a window
3017 to be user-resizable in only one direction easily.
3019 * gtk/testgtk.c (create_main_window): Remove hard-coded
3020 usize - set a default size in the vertical direction.
3022 Sun Nov 12 13:33:01 2000 Owen Taylor <otaylor@redhat.com>
3024 * gtk/gtkrange.c: Add some missing casts. Support
3025 2 and 3 button clicks on the arrows to mean
3026 "move by pages" and "jump to end". (Like gtkspinbutton)
3028 2000-11-12 Hans Breuer <Hans@Breuer.Org>
3030 * gdk/win32/makefile.msc : reflect build module changes
3032 * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
3033 from GdkPixmap*, cast implementation member instead.
3035 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
3036 passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src
3037 maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
3038 more Gdi functions return value checking.
3039 (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
3040 GdkImagePrivateWin32 *.
3042 * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
3043 menus useable again. Add #pragma message to keep reminded on this issue.
3044 (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
3045 windows. This allows to enable backing store on Win32!
3047 * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
3048 in drawable is of impl type. Correct specific type checks appropriate.
3050 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check
3051 GDK_WINDOW_DESTROYED before allocating new resources.
3053 * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
3055 * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
3056 (gdk_window_foreign_new) initialize parent handle.
3057 (gdk_window_destroy_notify) add GDK_IS_WINDOW check
3059 * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
3060 Let the GDI invalidate the window on MoveWindow call to fix scrolling
3061 problems (e.g. main buttons in testgtk).
3063 Sat Nov 11 23:07:30 2000 Owen Taylor <otaylor@redhat.com>
3065 * gtk/gtkentry.c (gtk_entry_key_press): Call
3066 gtk_widget_activate for GDK_Return.
3068 * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
3069 of preedit cursor position.
3071 Sun Nov 5 04:24:53 2000 Owen Taylor <otaylor@redhat.com>
3073 * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
3076 Tue Sep 19 10:54:22 2000 Owen Taylor <otaylor@redhat.com>
3078 * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
3079 out support for multiple locales; that simple doesn't
3080 work reliably with current Xlib
3082 * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
3083 gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
3084 Add support for positioning the cursor within the preedit string.
3086 Mon Sep 18 23:56:32 2000 Owen Taylor <otaylor@redhat.com>
3088 * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
3089 at XIM input method module.
3091 * gtk/gtktextview.c: Check for bindings after passing
3092 events to im context filter.
3094 Mon Sep 18 11:50:51 2000 Owen Taylor <otaylor@redhat.com>
3096 * gtk/gtktextlayout.c (add_preedit_attrs): Handle
3097 empty attribute lists properly.
3099 Sun Sep 17 10:08:16 2000 Owen Taylor <otaylor@redhat.com>
3101 * gtk/queryimmodules.c (main): Return non-zero exit
3102 status if errors were encountered querying any
3105 * modules/input/Makefile.am (moduledir): remove
3106 leftover bin program target.
3108 * docs/make-todo: Fix typo in error message.
3110 Sat Sep 16 14:04:30 2000 Owen Taylor <otaylor@redhat.com>
3112 * configure.in: Add modules/input/Makefile
3114 Sat Sep 16 14:01:52 2000 Owen Taylor <otaylor@redhat.com>
3116 * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
3117 don't include gtkthemes.h.
3119 * gtk/testgtk.c gtk/testtext.c: Set environment variables
3122 * gtk/Makefile.am: Add new .c and .h files, build
3123 gtk-query-immodules and use it to create a gtk.immodules
3124 file for use of test programs.
3126 * gtk/gtkpreview.c: remove extra blank line.
3128 Sat Sep 16 13:21:04 2000 Owen Taylor <otaylor@redhat.com>
3130 * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
3131 Add the ability to add extra tables beyond the default
3132 one, and also the ability to have compose sequences
3133 that are prefixes of other compose sequences.
3135 * gtk/gtkimcontextsimple.c: Export a preedit string which
3136 consists of possible candidates for keystrokes that have
3137 been entered but not yet committed.
3139 * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
3140 gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
3142 * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
3143 Add a function to add input-method switching menu items
3146 * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
3147 when switching input methods.
3149 * gtk/gtkimcontextsimple.[ch]: Change the format of
3150 the compose table to allow compose tables of different
3153 Sat Sep 16 13:05:48 2000 Owen Taylor <otaylor@redhat.com>
3155 * gtk/gtkimmodule.[ch]: Support routines for loading
3156 GtkIMContext implementations dynamically at runtime.
3158 * modules/input/imcyrillic-translit.c: A sample input
3159 method (based on GtkIMContextSimple with an extra table),
3160 which demonstrates preedit strings and the module
3161 system for input modules
3163 * gtk/queryimmodules.c: Program to query the available
3164 input modules and write the results into a file.
3166 * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
3167 extra config options "im_module_file" (cache file for
3168 input method modules), and "im_module_path" - path
3169 to look for modules when generating cache file.
3173 Sat Sep 16 13:09:06 2000 Owen Taylor <otaylor@redhat.com>
3175 * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
3176 generic code from gtkthemes into a new abstraction
3177 GtkModule which has the logic for implementing
3178 a loadable module which implements a number of
3181 Sat Sep 16 13:07:13 2000 Owen Taylor <otaylor@redhat.com>
3183 * gtk/gtkeditable.[ch]: Convert GtkEditable from
3184 a class into an interface
3186 * gtk/gtkoldeditable.[ch]: Move the old editable
3187 implementation into here, so legacy widgets can
3188 still rely on the implemenation. GtkOldEditable
3189 exports GtkEditable. Make selection handling
3190 code use new text conversion functions (and
3191 handle UTF-8 as a side-effect). Use GtkClipboard
3194 * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
3195 Adopt to match above changes.
3197 * gtk/gtkentry.[ch]: Implement GtkEditable directly,
3198 avoid GtkOldEditable implementation. Restructure
3199 to reduce number of places that modify state directly.
3200 Move to GtkBindingSet. Display the preedit string.
3201 Queue recomputation of PangoLayout and scroll position
3202 to improve effiency of doing complex changes naively.
3203 Add a menu with cut/copy/paste and input method selection.
3205 Thu Sep 14 22:11:05 2000 Owen Taylor <otaylor@redhat.com>
3207 * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
3208 to set preedit string and attributes; display preedit string by
3209 inserting string and attributes at cursor when creating the
3212 * gtk/gtktextlayout.c: Move all conversions between byte
3213 positions in PangoLayout and GtkTextIter into new functions
3214 line_display_iter_to_index/index_to_iter that properly
3215 handle the preedit string.
3217 * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
3218 it to return const char * (eventually will end up
3219 as GCONST char *, most likely.)
3221 * gtk/gtktextview.[ch]: Handle the preedit string, call
3222 gtk_im_context_reset() as necessary, add a menu to switch
3225 * gtk/gtktextlayout.[ch]: Remove useless
3226 gtk_text_layout_get_log_attrs() function.
3228 2000-11-11 Tor Lillqvist <tml@iki.fi>
3231 * gtk/gtk.def: Update.
3233 * gdk/win32/*.c: Add last argument to g_type_register_static()
3236 * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
3238 * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
3239 generated by older wheel mouse drivers. Get the correct y
3240 coordinate from WM_MOUSEWHEEL messages.
3242 * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
3243 gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
3244 gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
3245 Debugging functions.
3247 * gdk/win32/gdkprivate-win32.h: Declare them.
3249 * gdk/win32/gdkinput-win32.h: Add declaration for
3250 gdk_input_window_destroy().
3252 * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
3254 Fri Nov 10 19:06:41 2000 Jonathan Blandford <jrb@redhat.com>
3256 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
3257 function to help handle keeping things in sync.
3259 Fri Nov 10 12:10:34 2000 Jonathan Blandford <jrb@redhat.com>
3261 * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
3264 * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
3265 (gtk_list_store_class_init): use the new BOXED marshallers.
3267 * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
3268 new_with_values to new_with_types.
3269 (gtk_tree_store_get_column_type): add this.
3270 (gtk_tree_store_class_init): use the new BOXED marshallers.
3272 * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
3273 mirror some POINTER marshallers.
3275 Thu Nov 9 11:23:22 2000 Jonathan Blandford <jrb@redhat.com>
3277 * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
3278 allow more interesting iterators. Also, made the lifecycle of
3279 iterators more explicit.
3281 * gtk/gtktreemodelsort.[ch]: New model for sorting.
3283 * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
3286 2000-11-09 Alexander Larsson <alexl@redhat.com>
3288 * demos/testgtk/menus.c:
3289 Changes to make the new testgtk compile after
3290 gtk_menu_append was removed.
3292 * gdk/linux-fb/gdkdrawable-fb2.c
3293 (gdk_fb_get_depth, gdk_fb_get_visual,
3294 gdk_drawable_impl_fb_class_init): Implement
3295 these drawable functions. Now GtkImages work again.
3297 * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
3299 * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
3301 * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
3302 gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
3303 Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
3304 GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
3306 2000-11-08 Havoc Pennington <hp@pobox.com>
3308 * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
3309 visible_set args, don't know where these had gone, I thought they
3312 * gtk/testtext.c: Add a menu item to apply invisibility tag;
3313 now we can test the feature and see that it's totally broken.
3315 2000-11-08 Havoc Pennington <hp@pobox.com>
3317 Make DND copy pixbufs and tags when source and target share a
3320 * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
3321 in-process GTK_TEXT_BUFFER_CONTENTS target
3322 (gtk_text_view_drag_data_received): Paste from
3323 GTK_TEXT_BUFFER_CONTENTS if we receive it.
3325 2000-11-08 Alexander Larsson <alexl@redhat.com>
3327 * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
3330 * gtk/gtkmenu.c: Add support for scrolling menus.
3331 Remove gtk_menu_append/prepend/insert, these have been moved to
3332 gtkcompat.h as #defines.
3334 * gtk/gtkcompat.h.in:
3335 Add compatibility #defines for gtk_menu_append/prepend/insert
3337 * gtk/gtkmenu.h: Add data needed for scrolling menus.
3338 GtkMenuPositionFunc gets an extra argument push_in.
3339 gtk_menu_append/prepend/insert removed.
3341 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
3342 positioning behaviour to fit to scrolling menus.
3344 * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
3345 into menuitem->submeny. That is wrong, and broke torn
3346 off submenus of torn off menus, since they were unrealized
3347 when the first menu was unrealized.
3349 * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
3350 gtk_menu_shell_select_item() since these need to be overridden in
3353 * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
3354 positioning behaviour to fit to scrolling menus.
3355 (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
3356 the current item so that it is prelighted when the menu pops up.
3357 This is a workaround to the fact that the menu doesn't get the
3358 initial enter event (due to grabs).
3360 * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
3361 s/gtk_menu_append/gtk_menu_shell_append/
3363 * gtk/gtknotebook.c:
3364 s/gtk_menu_insert/gtk_menu_shell_insert/
3366 * gtk/testgtk.c (create_menu, create_menus):
3367 Create the first menu with 50 items so that menu scrolling
3371 Patch from Jonathan Blandford <jrb@redhat.com>
3373 * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
3374 system to handle size requests. First, we ask what the size of
3375 the toggle is. Then, when allocating the size, we allocate the
3376 toggle_size first. This way we can have multiple menu-item
3377 classes w/o needing a seperate class for each.
3379 * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
3380 * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
3382 * gtk/gtkcheckmenuitem.c
3383 (gtk_check_menu_item_toggle_size_request): New function to handle
3384 the toggle size-request.
3386 2000-11-07 Havoc Pennington <hp@redhat.com>
3388 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
3389 Half-ass somewhat fix this function, so that scrolling to the
3390 insertion point works. Pango hacking is in the future to really
3393 * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
3394 length of data, no longer used.
3396 * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
3397 method contents in here, get rid of destroy method
3398 (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
3399 that were backward. Remove debug spew.
3400 (cut_or_copy): Make the clipboard work with insert_range to
3401 preserve tags and pixbufs, not just the primary selection.
3403 2000-11-07 Havoc Pennington <hp@redhat.com>
3405 * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename
3406 to gtk_text_mark_get_visible
3408 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
3409 bug that was generating an invalid iterator
3411 * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
3412 ensure_char_offsets() in front of code placing the iter in an
3415 * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
3416 make override_location arg const
3417 (paste): Replace the selection if we paste into the
3420 * gtk/gtkselection.h: Remove "GtkSelectioData"
3421 (struct _GtkSelectionData): move the definition here.
3423 * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
3424 Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
3426 * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
3428 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
3429 (gtk_text_buffer_insert_range_interactive): implement
3430 (gtk_text_buffer_get_tags): Remove, replaced by
3431 gtk_text_iter_get_tags()
3433 * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
3434 limit parameter, to avoid infinite linear scan.
3435 (gtk_text_iter_backward_search): Add search limit
3436 (gtk_text_iter_forward_find_char): Add search limit
3437 (gtk_text_iter_backward_find_char): Add search limit
3439 2000-11-07 Alexander Larsson <alla@lysator.liu.se>
3441 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
3442 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
3443 gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
3444 gdk/linux-fb/gdkwindow-fb.c:
3445 use g_object_new() instead of g_type_create_instance() which
3446 is a private function for fundamental type implementations.
3448 * gdk/linux-fb/gdkinput-ps2.c:
3449 Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
3450 instead just store the current modifier state. Add a (somewhat broken)
3451 keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
3452 Rename exported function gdk_input_ps2_get_mouseinfo to
3453 gdk_input_get_mouseinfo.
3455 * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
3456 gdk/linux-fb/gdkwindow-fb.c:
3457 gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
3460 2000-11-02 Havoc Pennington <hp@redhat.com>
3462 * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
3463 use stock buttons. Should be 100% source compatible, appropriate
3464 filesel fields now point to dialog->vbox and dialog->action_area.
3465 On the bizarre side, dialog->action_area and filesel->action_area
3466 are not the same widget.
3467 (gtk_file_selection_init): Put some padding around the selection
3468 entry, so it isn't touching the GtkDialog separator.
3470 * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog,
3471 use stock buttons, etc. Should also be source compatible.
3472 Set the dialog default title in _init not _new().
3474 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
3475 Use stock buttons; don't put a button box inside the existing
3476 dialog button box. Don't bother with push/pop colormap anymore.
3478 * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more
3479 specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
3480 for message dialog, and necessary for the font selection and color
3481 selection with help and apply buttons.
3483 * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer
3484 to the created button widget. Set GTK_CAN_DEFAULT on the button.
3485 (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
3486 between buttons, put less padding around the action area.
3487 (gtk_dialog_run): Exit on unmap rather than on destroy.
3488 This will also exit the loop if the widget is hidden.
3489 (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
3490 instead of GTK_RESPONSE_NONE; since we're already adding a bunch
3491 of GTK_RESPONSE_* stuff, this seems cleaner, and lets you
3492 special-case delete event.
3494 * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
3497 Sun Nov 5 05:32:39 2000 Tim Janik <timj@gtk.org>
3499 * gtk/testgtk.c (uposition_stop_configure): provide a toggle
3500 button to temporarily disable position recording in the
3501 "saved position" test.
3503 Sat Nov 4 05:37:17 2000 Tim Janik <timj@gtk.org>
3505 * gtk/gtkthemes.c: added compat code that temporarily implements
3506 GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
3507 going to be revamped by owen's upcoming GtkModule patches, but
3508 untill then people want gtk to build, right? ;)
3510 2000-11-04 Havoc Pennington <hp@pobox.com>
3512 * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
3515 * docs/Changes-2.0.txt: Add note about
3516 gtk_container_get_toplevels()
3518 * gtk/gtktextview.h: formatting
3520 * gtk/gtktextview.c: don't start descriptions with "Returns",
3523 Sat Nov 4 10:12:27 2000 Owen Taylor <otaylor@redhat.com>
3525 * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
3526 look for glib-2.0.m4 not glib.m4. (Ali Abdin)
3528 2000-11-03 Havoc Pennington <hp@redhat.com>
3530 * gtk/gtktexttagtable.c: Docs
3531 (gtk_text_tag_table_size): return a signed int
3533 * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
3534 (gtk_text_tag_event): make the event_object a GObject
3536 * gtk/gtktextview.c: Write API docs for all functions.
3538 * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
3539 for gtk_text_view_get_window_type() called on one of the private
3542 * gtk/gtktextview.c: Instead of accessing text_view->buffer
3543 directly, call get_buffer() which demand-creates a default
3544 buffer. So gtk_text_view_new() can be used to create a view with a
3545 default buffer in it, if you just want an empty text box users can
3546 put data in. Useful for GUI builders also.
3548 2000-11-03 Pablo Saratxaga <pablo@mandrakesoft.com>
3550 * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
3551 the charset encodign portion MUST be in lowercase.
3552 * gtk/gtkrc.az: added file for Azeri language
3554 2000-11-03 Havoc Pennington <hp@redhat.com>
3556 Get widgets working on the btree/buffer side. Display of them
3559 * gtk/gtktextview.c: start implementing child widget stuff
3561 * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
3563 * gtk/gtktextlayout.c: handle embedded widgets
3565 * gtk/gtktextdisplay.c: handle embedded widgets
3567 * gtk/gtktextchild.c: Implement all the child anchor goo
3569 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
3572 * gtk/gtktextbtree.c: Add child anchor table to the btree struct
3573 (insert_pixbuf_or_widget_segment): abstract out common portions of
3574 creating a child anchor or a pixbuf segment.
3575 (gtk_text_btree_create_child_anchor): new function
3576 (gtk_text_btree_unregister_child_anchor): new function
3578 * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
3579 allocate_child signal on GtkTextLayout
3581 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
3583 (gtk_text_iter_get_child_anchor): new function
3585 * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
3586 default handler for the changed signal, which calls
3587 gtk_text_buffer_set_modified(), instead of just always emitting
3588 changed then calling set_modified() manually. I guess this is
3589 maybe more flexible. It seems logical.
3591 Fri Nov 3 08:58:38 2000 Tim Janik <timj@gtk.org>
3593 * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
3596 * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
3598 Thu Nov 2 14:10:51 2000 Owen Taylor <otaylor@redhat.com>
3600 * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
3603 2000-11-02 Havoc Pennington <hp@redhat.com>
3605 * gtk/testgtk.c (create_labels): had a test backward
3607 * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
3608 fields, so the dest GC ends up with the correct clip origin,
3609 etc. Fixes a bug where colored labels didn't redraw
3612 2000-11-02 Alexander Larsson <alexl@redhat.com>
3614 * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
3615 gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
3616 gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
3617 Add last argument to t_type_register_static call.
3619 * gdk/linux-fb/gdkdrawable-fb2.c:
3620 Add last argument to t_type_register_static call.
3621 export the get_image drawable virtual function.
3623 * gdk/linux-fb/gdkimage-fb.c:
3624 Add last argument to t_type_register_static call.
3625 rename gtk_image_get to _gdk_fb_get_image and
3626 export it for use by gdkdrawable-fb2.
3628 * gdk/linux-fb/gdkprivate-fb.h:
3629 export _gdk_fb_get_image.
3631 * gdk/linux-fb/gdkselection-fb.c:
3632 Add new api call stubs.
3635 Missing ( in linux-fb part.
3637 * modules/linux-fb/Makefile.am:
3638 Must link with gdk_pixbuf or get unresolved symbol.
3640 2000-11-01 Havoc Pennington <hp@pobox.com>
3642 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use
3643 GTK_TYPE_TEXT_ITER and BOXED marshallers
3645 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
3647 * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
3649 * gtk/gtk-boxed.defs: add GtkTextIter
3651 * gtk/gtkmarshal.list: Add marshallers for text widget that
3652 properly use OBJECT and BOXED
3654 2000-11-01 Havoc Pennington <hp@redhat.com>
3656 * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
3658 * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
3659 before returning it.
3661 2000-11-01 Havoc Pennington <hp@redhat.com>
3663 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3664 Clip the rectangle to be rendered to the drawable, since
3665 get_from_drawable() requires a region within the drawable
3667 2000-11-01 Havoc Pennington <hp@redhat.com>
3669 * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
3672 Wed Oct 25 20:10:57 2000 Owen Taylor <otaylor@redhat.com>
3674 * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
3677 2000-11-01 Havoc Pennington <hp@pobox.com>
3679 * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
3681 (gtk_label_finalize): unref the attr list if any.
3683 * gtk/testgtk.c (create_get_image): close test on second click
3684 (make_message_dialog): close dialog if it exists
3686 * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
3688 * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
3691 * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
3692 from Pango markup format
3693 (gtk_label_set_markup_with_accel): ditto but with accelerator
3696 * gtk/gtkimage.c (gtk_image_expose): reformatting.
3698 * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
3699 reflect current state of GDK - use gdk_drawable_get_colormap, etc.
3700 Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
3701 call gdk_window_get_origin().
3703 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3704 implement GDK_PIXBUF_ALPHA_FULL
3706 Wed Nov 1 03:43:42 2000 Tim Janik <timj@gtk.org>
3708 * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
3709 g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
3710 g_signal_handlers_disconnect_matched to block/unblock and disconnect
3711 multiple handlers respectively, instead of only treating the
3712 first handler found (bug reported by owen).
3714 Mon Oct 30 19:23:50 2000 Jonathan Blandford <jrb@redhat.com>
3716 * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
3718 * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
3720 * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
3721 gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
3722 gtk/gtktreeviewcolumn.h: Fixed inline docs.
3724 * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
3725 widget. Needs writing someday.
3727 * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
3730 2000-10-30 Havoc Pennington <hp@redhat.com>
3732 * gtk/gtktextview.h, gtk/gtktextview.c:
3733 Rename delete_at_cursor delete_from_cursor, and
3734 move to move_cursor.
3736 2000-10-30 Havoc Pennington <hp@redhat.com>
3738 * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
3739 gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
3740 gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
3741 gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
3742 gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
3743 gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
3744 gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
3745 gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
3746 gtktexttypes.h, gtktextview.c, gtktextview.h:
3748 Massive reindentation and reformatting. Arg alignment and comments
3749 still need fixing in various places.
3751 2000-10-30 Havoc Pennington <hp@redhat.com>
3753 * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
3754 to be named insert_at_cursor and delete_at_cursor so C++ can
3757 2000-10-28 Tor Lillqvist <tml@iki.fi>
3759 * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
3760 to get a double directory separator in case the home directory
3761 ends with one. This would cause trouble especially on Windows,
3762 where the path will be confused with the syntax for an an UNC
3763 (network share) path \\server\share\path.
3764 (gtk_rc_add_initial_default_files): Ditto.
3766 Sat Oct 28 02:33:09 2000 Robert Brady <robert@suse.co.uk>
3768 * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
3770 * gtk/gtktextview.c: Use correct marshallers.
3772 Fri Oct 27 17:56:26 2000 Jonathan Blandford <jrb@redhat.com>
3774 * gtk/gtkliststore.c: Not sure how this ever worked. Fixed it to
3775 use new iter stuff, and added all the appropriate signals et al.
3777 * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
3778 code is internal to gtk only.
3780 2000-10-28 Tor Lillqvist <tml@iki.fi>
3783 * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
3784 glib-genmarshal etc.
3786 Fri Oct 27 20:15:00 2000 Tim Janik <timj@gtk.org>
3788 * gtk/Makefile.am: added dependancies for testtextbuffer which broke
3791 Fri Oct 27 18:51:44 2000 Tim Janik <timj@gtk.org>
3793 * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
3795 2000-10-27 Robert Brady <robert@suse.co.uk>
3797 * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic),
3798 en_GB (British), ia (Interlingua).
3800 2000-10-26 Havoc Pennington <hp@redhat.com>
3802 * gtk/gtktextiter.c (my_strrstr): fix constness warning
3805 nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
3807 * gtk/gtktextsegment.c (char_segment_new): rename
3808 (_char_segment_new_from_two_strings): rename
3809 (_toggle_segment_new): rename
3811 * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
3812 (make_clipboard_widget): make it static
3813 (text_get_func): static
3814 (text_clear_func): static
3816 * gtk/gtkcolorsel.c (adjustment_changed): make this function
3818 (hex_changed): make it static
3819 (hsv_changed): make it static
3820 (opacity_entry_changed): make it static
3822 * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
3823 (toggle_segment_check_func): rename with _gtk
3825 * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
3826 (_widget_segment_new): rename
3827 (_widget_segment_add): rename
3828 (_widget_segment_remove): rename
3829 (_widget_segment_ref): rename
3830 (_widget_segment_unref): rename
3832 * gtk/gtktextmark.c (_mark_segment_new): Rename
3833 _gtk_mark_segment_new
3835 2000-10-26 Havoc Pennington <hp@redhat.com>
3837 * gtk/gtkmarshal.list: add new marshallers used by the text widget
3838 * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3841 * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
3844 * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
3845 gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
3846 license on these files.
3848 * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
3851 * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to
3852 runtime random number different for each tree, instead of
3853 a constant I made up.
3855 Thu Oct 26 07:36:16 2000 Tim Janik <timj@gtk.org>
3857 * gtk/Makefile.am: buncha cleanups, kludged build sources
3858 dependencies with a Makefile: oldest-source-stamp dependancy
3859 for the moment. automake is really fighting us here, with
3860 intentionally not allowing user-defined rules or dependancies
3861 prior to it's -include $(DEP_FILES) statement. sucks rocks!
3863 * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
3864 to public headers. tehy have a comment stating that they are
3865 "semi-public" aren't included by gtk.h and if enums popup there,
3866 they can be /*< skip >*/-ed.
3868 * gtk/gtktextlayout.h:
3869 * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
3870 added LGPL... <SIGH>
3872 Wed Oct 25 20:40:25 2000 Jonathan Blandford <jrb@redhat.com>
3874 * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
3875 GtkTreeIter. Added iterators everywhere.
3877 * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
3879 * gtk/gtktreeviewselection.c: Changed to use the iterators.
3881 * gtk/gtktreestore.c: Changed to use the iterators.
3883 * gtk/gtkliststore.c: Commented out the code. Will convert to
3886 * gtk/gtkmodelsimple.c: Commented out the code. Will convert to
3889 * gtk/treestoretest.c: Changed to use iterators.
3891 * demos/testgtk/main.c: Moved to use the new iterator system.
3893 Thu Oct 26 02:10:32 2000 Tim Janik <timj@gtk.org>
3895 * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
3896 localization misbehaviour.
3898 * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
3899 a useless type without copy/free.
3901 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
3902 of GTK_TYPE_CTREE_NODE.
3904 Thu Oct 26 00:51:52 2000 Tim Janik <timj@gtk.org>
3907 (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
3910 * gtk/gtk-boxed.defs (GtkSelectionData): specify
3911 gtk_selection_data_copy and gtk_selection_data_free
3912 do GtkSelectionData work as params in signals.
3914 Wed Oct 25 20:47:41 2000 Tim Janik <timj@gtk.org>
3916 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
3917 implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
3918 couldn't they at least give it a non-standard name?
3920 * gtk/gtktextlayout.c: arg! yet another implementation of
3921 gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
3923 * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
3924 gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
3925 home. now i know this _is_ a conspiracy.
3927 * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
3930 * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
3931 (gtk_accel_group_create_add): marshaller signature fixups.
3933 * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
3934 pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
3936 * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
3939 Tue Oct 24 23:59:21 2000 Tim Janik <timj@gtk.org>
3941 * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
3942 due to the signal system changes, it wouldn't build currently. to
3945 * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
3947 * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
3948 so it needs gtk_marshal_VOID__ENUM() instead of
3949 gtk_marshal_NONE__UINT().
3951 * gdk/gdk*.c: adapted type registration functions.
3953 * gtk/gtkbindings.c:
3954 * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
3957 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
3960 (gtk_object_destroy):
3961 (gtk_object_shutdown): fixed recursion guards. basically we have to
3962 catch the case where any of GObject.shutdown() or gtk_object_destroy()
3963 is called during ::destroy, and avoid recursion there.
3965 * gtk/gtktypeutils.c:
3966 * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
3967 boxed_copy/boxed_free. this needs a more general solution based on a
3968 publically installed code-generator utility.
3970 * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
3971 glib's gobject has support for that now.
3972 define GtkSignalMarshaller in terms of GSignalCMarshaller.
3974 Mon Oct 23 09:36:42 2000 Tim Janik <timj@gtk.org>
3976 * gtk/gtksignal.[hc]:
3977 * gtk/gtkmarshal.[hc]:
3978 * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
3979 compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
3980 removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
3983 * *.c: marshaller name fixups.
3985 * gtk/gtkmarshal.list: added a comment briefing the format.
3987 Sun Oct 22 23:14:39 2000 Tim Janik <timj@gtk.org>
3989 * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
3990 compatibility macros here now. more specifically, most of
3991 the API is preserved (yes, _most_, nonwithstanding the
3992 following exceptions listed, the API is stil lHUGE ;)
3993 things that got removed completely:
3994 GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
3995 gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
3996 gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
3997 gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
3998 gtk_signal_remove_emission_hook().
3999 non-functional functions variants:
4000 gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
4001 the GtkCallbackMarshal argument to gtk_signal_connect_full() is
4002 not supported anymore.
4003 (gtk_signal_compat_matched): new internal function to aid
4004 implementation of the compatibility macros, it provides
4005 functionality to block/unblock/disconnect handlers based
4008 * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
4010 * *.c: adaptions to new type registration API signatures.
4012 Fri Oct 20 15:26:33 2000 Tim Janik <timj@gtk.org>
4014 * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
4016 2000-10-25 Robert Brady <robert@suse.co.uk>
4018 * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
4019 gdk_property_delete): If window == NULL, assume the root window.
4020 (restoring the behaviour that was in 1.2).
4022 * gtk/testtext.c (save_buffer): Allow creation of new files when
4025 (fill_file_buffer): Don't die if a UTF-8 sequence is split across
4028 2000-10-25 Tor Lillqvist <tml@iki.fi>
4030 * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
4032 * gdk/win32/gdkdrawable-win32.c
4033 * gdk/win32/gdkimage-win32.c
4034 * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
4037 * gdk/win32/gdkcc-win32.c
4038 * gdk/win32/gdkcolor-win32.c
4039 * gdk/win32/gdkfont-win32.c
4040 * gdk/win32/gdkinput-win32.c
4041 * gdk/win32/gdkmain-win32.c
4042 * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
4044 2000-10-24 Havoc Pennington <hp@redhat.com>
4046 * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
4047 it a static function
4049 * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
4050 redraw text when a tag is applied to it.
4052 * gtk/gtktexttag.c (gtk_text_tag_affects_size)
4053 (gtk_text_tag_affects_nonsize_appearance): private functions to
4054 see if a tag requires various kinds of redraw/layout to be queued
4057 * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
4059 * gtk/testtext.c (fill_example_buffer): Put the cursor
4060 at the start of the buffer, so search works by default
4062 * gtk/gtktextiter.c (lines_match): init match_start always
4064 * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
4065 function, get iter at a line + a byte index
4067 * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
4068 to set byte position within a line
4069 (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
4071 2000-10-23 Havoc Pennington <hp@redhat.com>
4073 * gtk/testtext.c: Re-enable the "find" dialog
4075 * gtk/testgtk.c: Add test for gdk_drawable_get_image
4077 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
4078 the arguments to gdk_draw_drawable were in the wrong order
4079 (gdk_window_paint_init_bg): This function was ignoring the
4080 init_region, instead of clipping to it, so the entire backing
4081 pixmap was cleared on every begin_paint()
4082 (gdk_window_begin_paint_region): Hmm, the same list-walking bug
4083 was in here again, the loop kept using the same GtkWindowPaint
4085 (gdk_window_begin_paint_region): Fix a bug where we had two
4086 x_offset instead of x_offset and y_offset
4088 * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
4089 before we get the image.
4090 (gdk_draw_drawable): get the composite before we draw the drawable.
4091 (gdk_drawable_real_get_composite_drawable): default
4092 get_composite_drawable implementation that returns the drawable
4095 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
4096 get_composite_drawable virtual function
4098 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
4101 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
4102 make this work if the source drawable is a GdkDrawableImplX11
4103 instead of a public drawable type. This is really broken; the
4104 problem is that GdkDrawable needs a virtual method get_xid(), but
4105 of course that doesn't work in practice. Enter RTTI.
4107 Also, improve mismatched depth message.
4109 * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
4112 * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
4113 install _gdk_x11_get_image as our implementation of get_image
4115 * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
4116 _gdk_x11_get_image and export for use in gdkdrawable-x11.c
4118 * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
4119 gdk_drawable_get_image
4121 * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
4123 * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
4126 * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
4127 trailing semicolon after for loop
4129 Mon Oct 23 12:07:57 2000 Owen Taylor <otaylor@redhat.com>
4131 * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
4132 where font_desc for widget's context lagged widget's font_desc by
4135 2000-10-22 Tor Lillqvist <tml@iki.fi>
4137 * gdk/win32/gdkgc-win32.c
4138 * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
4140 * gtk/makefile.mingw.in
4141 * gtk/gtk.def: Updates.
4143 * gtk/testgtk.c: sleep() is called _sleep in MS's C
4146 * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
4148 * gtk/makefile.msc: Remove
4150 * gtk/makefile.msc.in: New file, like makefile.mingw.in.
4152 * gtk/Makefile.am: Add it.
4154 * configure.in: Generate it.
4156 * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
4157 * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
4158 something even if not implemented, to satisfy picky MSVC.
4160 Patches by Hans Breuer:
4162 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
4163 SetBkMode() and SetTextAlign() before calling
4164 pango_win32_render().
4166 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
4167 Set hcliprgn to NULL after destroying it.
4168 (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
4170 * gdk/win32/gdkgeometry-win32.c
4171 (_gdk_windowing_window_queue_antiexpose): More effective
4174 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
4175 depth as default, not the visual's.
4177 * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
4178 against empty title.
4180 * gdk/win32/gdkprivate-win32.h: Define a helper macro,
4183 * gdk/win32/gdkimage-win32.c: Use it.
4185 2000-10-22 Robert Brady <robert@suse.co.uk>
4187 * configure.in: Check for bind_textdomain_codeset
4189 * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset
4190 present, make use of it.
4192 Add a translatable string "default:LTR" which, if translated
4193 to "default:RTL", will cause the default direction to be
4196 * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget
4197 direction if marked as flippable.
4199 * gtk/gtkhscale.c: Mark widget as flippable.
4201 2000-10-04 Havoc Pennington <hp@redhat.com>
4203 * gtk/testgtk.c (create_buttons): create some stock buttons
4204 with the default accel group
4205 (create_image): test some new GtkImage features
4206 (make_message_dialog): test GtkMessageDialog
4207 (create_modal_window): fix someone's bizzarro indentation
4209 * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement
4210 GTK_WIN_POS_CENTER_ON_PARENT.
4211 Add "destroy with parent" setting, which means the window goes
4212 away with its transient parent.
4213 (gtk_window_get_default_accel_group): get the default accel group
4215 (gtk_window_set_destroy_with_parent): set/unset destroy with
4217 (gtk_window_read_rcfiles): invalidate icon set caches
4218 after reloading rcfiles
4220 * gtk/gtkenums.h (GtkWindowPosition): add
4221 GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog
4222 on its parent window when the dialog is mapped for the first time.
4224 * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add
4225 a simple message dialog class
4227 * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event
4228 handler to emit response signal, and maybe later it would
4229 honor a hide_on_delete flag - though that isn't there yet.
4230 Set border width on the vbox to 2, so we get some padding.
4231 Use a button box for the action area.
4232 (gtk_dialog_key_press): synthesize a delete event if Esc
4233 is pressed and the GtkWidget key press handler didn't
4234 handle the escape key.
4235 (gtk_dialog_new_with_buttons): new function creates a dialog
4236 with some default buttons in it.
4237 (gtk_dialog_add_action_widget): add an activatable widget
4238 as a button in the dialog - you can also add a non-activatable
4239 widget by accessing the action area directly.
4240 (gtk_dialog_add_button): add a simple button - stock ID or
4241 label - to the action area
4242 (gtk_dialog_response): emit response signal
4243 (gtk_dialog_run): block waiting for the dialog, return
4244 the response. Override normal delete_event behavior, so that
4245 delete_event does nothing inside gtk_dialog_run().
4247 * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
4248 emitted when an action widget is clicked or the dialog gets
4251 * gtk/gtk.h: add gtkmessagedialog.h
4253 * gtk/Makefile.am: add gtkmessagedialog.[hc]
4255 2000-10-18 Havoc Pennington <hp@redhat.com>
4257 * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
4258 where any number of empty lines would get skipped
4260 * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
4263 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
4264 warning about invalid iterators (explain more thoroughly)
4265 (gtk_text_iter_in_region): rename gtk_text_iter_in_range
4267 * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
4270 * demos/*.c: Add error handling
4272 * gtk/gtktextbuffer.c: don't modify const iterators
4274 * gtk/gdk-pixbuf-loader.c: Add full error handling here
4276 * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
4279 * gtk/gtkiconfactory.c: Update to reflect addition of error
4280 handling to gdk-pixbuf loaders
4282 Wed Oct 18 11:14:05 2000 Owen Taylor <otaylor@redhat.com>
4284 * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
4285 move to new modularized testgtk.
4287 2000-10-17 Jonathan Blandford <jrb@redhat.com>
4289 * gtk/gtktreeview.c: Draw the arrows correctly.
4291 * gtk/gtktreemodel.c: Added user docs.
4293 * gtk/gtk.h: remove gtktreedatalist.h.
4295 * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
4296 parent when generating my type.
4298 * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
4299 POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
4301 2000-10-16 Jonathan Blandford <jrb@redhat.com>
4303 * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
4304 GtkTreeModel from object to interface.
4306 2000-10-16 Havoc Pennington <hp@redhat.com>
4308 * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing
4311 2000-10-16 Jonathan Blandford <jrb@redhat.com>
4313 * gtk/gtktreeselection.c: Add API documentation to all public
4316 * gtk/gtktreeviewcolumn.c: Added API documentation to all public
4319 2000-10-15 Jonathan Blandford <jrb@redhat.com>
4321 * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
4322 proposed by Guy Harris <gharris@flashcom.net>. Also, added API
4323 docs to all public functions.
4325 * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
4326 gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
4327 gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
4328 gtk/gtktreemodel.h, gtk/gtktreeselection.c,
4329 gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
4332 2000-10-14 Robert Brady <robert@suse.co.uk>
4334 * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
4336 2000-10-12 Jonathan Blandford <jrb@redhat.com>
4338 * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
4339 values other then G_TYPE_STRING.
4340 * gtk/gtktreeselection.c: Minor commenting updates.
4341 * gtk/gtktreeview.c: Format updates.
4343 2000-10-09 Tor Lillqvist <tml@iki.fi>
4345 * README.win32: Update.
4347 * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
4348 lines that had been deleted by mistake (?).
4350 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
4351 also the case fg==white and bg==black (but still not randomly
4352 coloured cursors). Thanks to Wolfgang Sourdeau.
4354 * gdk/win32/*.c: Silence gcc -Wall.
4356 * gtk/gtk.def: Add missing entry points.
4358 Fixes by Hans Breuer:
4361 * gdk/win32/makefile.msc: Update.
4363 * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
4364 some MSVC thing, presumably), cause breakpoint on failures. Add
4365 GDK_NOR case. Call g_log_set_always_fatal.
4367 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
4368 should be pased by reference.
4370 * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
4372 * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
4374 * gdk/win32/gdkevents-win32.c
4375 * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
4377 * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
4378 implementation object.
4380 * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
4383 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
4384 Use the wrapper object.
4386 2000-10-06 Havoc Pennington <hp@redhat.com>
4388 * Makefile.am (SRC_SUBDIRS): contrib subdir
4390 * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
4391 so it can be used in Xlib version
4393 * demos/testpixbuf.c (update_timeout): error checking from 1.0
4396 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
4397 change from 1.0 tree that returns first frame of animation
4398 if the loaded file is an animation.
4400 * contrib: add new directory to hold stuff that comes with GTK+
4401 but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
4403 * configure.in: add contrib/*
4405 2000-10-05 Havoc Pennington <hp@redhat.com>
4407 * demos/testpixbuf-save.c: add pixbuf save test
4409 * demos/Makefile.am: add testpixbuf-save.c
4411 2000-10-05 Jonathan Blandford <jrb@redhat.com>
4413 * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
4414 GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
4415 * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
4416 * gtk/gtktreeselection.[ch]: Replaced
4417 "node_selected"/"node_unselected" signal with "selection_changed"
4420 2000-10-04 Jonathan Blandford <jrb@redhat.com>
4422 * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
4425 2000-10-04 Jonathan Blandford <jrb@redhat.com>
4427 * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
4430 Wed Oct 4 15:52:15 2000 Owen Taylor <otaylor@redhat.com>
4432 * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
4433 Move list pointer forwards before removing item from
4434 list. (Crash reported by Salmaso Raffaele)
4436 * gdk/gdkwindow.h: Remove spurious trailing ,
4438 * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
4439 dependencies on uninstalled libraries, sorry folks.
4441 2000-10-04 Havoc Pennington <hp@redhat.com>
4443 * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
4444 gtk/gtkiconfactory.c: Fix copyrights
4446 * demos/testpixbuf.c: add inline pixbuf test
4448 Mon Sep 25 15:05:17 2000 Owen Taylor <otaylor@redhat.com>
4450 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
4451 Add gdk_window_iconify.
4453 * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
4454 (gdk_window_set_geometry_hints): Add win_gravity
4455 to geometry structure.
4457 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
4458 Implement _NET_WM_PING.
4460 * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
4461 Set _NET_WM_PID on the client leader.
4463 * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
4464 Handle UTF-8 better.
4466 * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
4467 UTF-8 better, set _NET_WM_NAME as well. Only set
4468 icon name if it hasn't previously been explicitely
4471 2000-10-03 Havoc Pennington <hp@redhat.com>
4473 * gtk/testtextbuffer.c: clean up trailing whitespace,
4474 add extensive tests for tag toggle iteration.
4476 * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
4479 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
4480 optimize case where the tag root is on level 1
4481 (gtk_text_line_previous_could_contain_tag): attempt to implement
4482 (gtk_text_line_next_could_contain_tag): Abstract out node_compare
4485 * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
4486 Implement this, though not very efficiently.
4488 * gtk/gtktextiterprivate.h: reformat
4490 * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
4493 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
4494 this to properly revalidate the iterators.
4496 * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
4497 properly at the end of the line (and therefore on empty lines)
4499 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
4500 maybe we should return a value...
4502 2000-10-03 Tor Lillqvist <tml@iki.fi>
4504 * config.h.win32: Guard definition of alloca(). glib.h now handles
4508 * gtk/gtk.def: Add new entry points.
4510 Changes just to make GTK+ build without errors on Win32. No hope
4511 of it working in its current state, though...:
4513 * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings. Add
4514 some functions from the X11 backend, just to make GTK+ build.
4516 * gdk/makefile.mingw.in
4517 * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
4518 number. Add new object files.
4520 * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
4521 GetMessageTime to get timestamp (where on X11 uses
4522 gdk_x11_get_server_time()).
4524 2000-10-02 Havoc Pennington <hp@pobox.com>
4526 * gtk/gtktextview.c: text_window_* weren't static and should have
4528 Start work on child widgets; not yet complete, syncing to
4531 * gtk/gtktextchild.h: change this to contain a public interface,
4532 starting work on child interfaces.
4533 * gtk/gtktextchildprivate.h: move private interfaces here
4535 * gtk/Makefile.am: update to reflect gtktextchildprivate.h
4537 * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
4538 gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
4539 gtk/gtktextmark.c: copyright notices
4541 * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
4544 * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
4547 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4550 2000-09-30 Havoc Pennington <hp@pobox.com>
4552 * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
4553 NULL start/end pointers
4555 * gtk/gtktextbuffer.c: Write some docs
4556 (gtk_text_buffer_get_selection_bounds): Allow start/end to be
4557 NULL, so you can just check whether there's a selection.
4559 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
4560 cleanup_line or segments_changed ourselves, it gets done
4563 * gtk/gtktextmark.h:
4564 s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
4566 * gtk/gtktextsegment.h: Clean up some indentation and naming mess
4568 * gtk/gtktextmark.c: delete some more old Tk cruft
4570 * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
4571 mark before removing it, so we can emit MARK_DELETED with a valid
4573 (gtk_text_buffer_mark_set): hold ref across signal emission
4575 * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
4576 whining about attempts to delete special marks
4578 * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
4579 underscore, since it's internal.
4581 * gtk/gtktextbuffer.h: Remove find_string prototype, this is
4582 now implemented in terms of iterators in gtktextiter.h
4584 * gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
4585 New function, destructively sets contents of buffer. Also
4586 a convenient way to clear the buffer by setting text to ""
4588 * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
4589 multiline string literal
4591 * gtk/testtext.c (text_changed_callback): Redraw line numbers if
4594 * gtk/gtktextiter.c (forward_char): Return FALSE if new location
4595 is not dereferenceable
4596 (gtk_text_iter_forward_lines): fix return value
4598 2000-09-29 Havoc Pennington <hp@redhat.com>
4600 * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
4602 * gtk/gtktextview.c: Implement drag thresholding; change functions
4603 that set border window size to have nicer name
4604 (gtk_text_view_mark_set_handler): Fix this to have the
4607 * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
4609 * gtk/testtext.c: Update with API changes, put line numbers on
4612 * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
4615 * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
4616 pixbuf; delete a big block of #if 0 Tk code
4618 * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
4619 insert_pixmap with insert_pixbuf
4621 2000-09-29 Martin Baulig <baulig@suse.de>
4623 * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
4624 confusion with the GdkPixbuf of the GNOME 1.x platform.
4626 2000-09-29 Havoc Pennington <hp@pobox.com>
4628 * gtk/gtktextview.c: Implement the side windows.
4630 * gtk/testtext.c: Implement simple line numbering in the
4631 left side window; seems to make scrolling sloooow. Oops.
4632 Also, cursor blink is for some reason causing redraws
4633 of the line numbers. Should investigate...
4635 2000-09-28 Havoc Pennington <hp@redhat.com>
4637 * gtk/gtktextview.c: Set up infrastructure to deal with lots of
4638 scrolling child windows, and draw focus rectangle properly.
4640 (gtk_text_view_buffer_to_window_coords):
4641 Coordinate transformation to deal with all these freaking windows
4643 (gtk_text_view_window_to_buffer_coords): transform the other way
4645 * gtk/testtext.c (create_buffer): Update to match Pango API change
4647 * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
4649 (foreach_unref): don't emit remove signal from finalize, just
4650 set tag's parent to NULL
4652 2000-09-26 Havoc Pennington <hp@redhat.com>
4654 * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
4657 2000-09-26 Havoc Pennington <hp@redhat.com>
4659 * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
4660 headers into the private header list
4662 * Makefile.am (pkgconfig_DATA): install pkg-config files
4664 * configure.in: add pkg-config files
4666 * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
4668 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
4669 outstanding icon caches on theme change.
4671 * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
4674 (GtkIconSource): Specification for creating a pixbuf
4675 appropriate for a direction/state/size triplet from
4676 a source pixbuf or filename
4678 (GtkIconSet): List of GtkIconSource objects that are used to
4679 create the "same" icon (e.g. an OK button icon), and cache for
4682 (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
4683 up the icon set for a given stock ID. GTK maintains a stack of
4684 GtkIconFactory to search, and applications or libraries can add
4685 additional icon factories on top of the stack
4687 * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
4688 the set of GtkIconSource specified for a given stock ID into
4689 a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
4690 RcStyle, under the specified stock ID.
4692 * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
4693 render_icon used to derive a GdkPixbuf from a GtkIconSource.
4694 This allows people to theme how prelight, insensitive, etc. are
4697 (gtk_style_lookup_icon_set): Look up a stock ID in the list of
4698 icon factories for a style, and return the resulting
4701 (gtk_style_render_icon): Render an icon using the render_icon
4702 method in the GtkStyleClass.
4704 * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
4705 Use the style for a given widget to look up a stock ID, get the
4706 icon set, and render an icon using the render_icon method
4709 * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
4710 (contains information about a stock item), the built-in stock item
4711 IDs, and functions to add/lookup stock items.
4713 * gtk/stock-icons/*: Stock icons that come with GTK
4715 * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
4716 a button based on a GtkStockItem
4717 (gtk_button_new_accel): Takes a uline string and accel group, and
4718 installs the accelerator.
4720 * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
4721 image-display widget.
4723 2000-09-25 Havoc Pennington <hp@redhat.com>
4725 * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
4727 * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
4728 Fix a bug when removing node data, we didn't properly
4729 re-splice the linked list after removing the data.
4731 * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
4732 GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
4734 * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
4736 * gtk/gtktextlayout.c (set_para_values): Set tab array
4737 for the layout from the GtkTextTag.
4739 * gtk/gtktexttypes.h: delete tab and search cruft,
4740 remove g_convert() in favor of GLib version
4742 * gtk/gtktexttypes.c: remove tab implementation from here,
4745 * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
4746 tab stuff using new PangoTabArray from Pango
4748 * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
4749 unused border_width stuff
4751 Thu Sep 14 12:21:12 2000 Owen Taylor <otaylor@redhat.com>
4753 * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
4754 glib) and now useless utf_to_latin1() latin1_to_utf()
4756 * gtk/gtktextview.[ch]: Change ::move_insert and
4757 ::delete_text action signals to ::move and ::delete;
4758 create the signals with the right enumeration type,
4759 not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
4760 C-v bindings, change Home, End to move to beginning/end
4761 of line, Add C-Home C-End to move to beginning/end
4762 of buffer. Change ::cut_text to ::cut_clipboard, etc;
4763 combine ::scroll_text into ::move; use new GtkSelectionData
4764 functions to simplify DND text handling.
4766 * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
4767 deletion enumerations here, rename enumeration values to
4768 be consistently plural.
4770 * gtk/gtktextbuffer.c: Use new clipboard interfaces
4771 for cut/copy/paste and primary selection.
4773 * gtk/gtktextbuffer.[ch]: Remove excess time and
4774 'interactive' arguments from cut/copy/paste;
4775 rename cut to cut_clipboard, etc; remove
4776 gtk_text_buffer_get_clipboard_contents().
4778 * gtk/gtktextlayout.[ch]: Add
4779 gtk_text_layout_move_iter_to_line_end() to move the iter to
4782 * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
4783 Functions to set or get a UTF-8 string on the selection
4786 * gtk/gtkclipboard.[ch]: New, simplified selection handling
4789 * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
4790 created widgets - one of these is useless if we don't.
4792 * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
4793 a public function clear all targets registered for the
4796 * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
4797 Never call gtk_widget_realize() - that was just asking
4798 for bizarre side-effects.
4800 * gtk/gtkselection.c (gtk_selection_owner_set): Call
4801 gdk_selection_owner_set even if the widget is the
4802 same so that we reliably update the timestamp on
4805 * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a
4806 gdk_x11_get_server_time() function.
4808 * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
4809 gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
4810 Add some tricky filtering on serial numbers for
4811 selection clear events to fix up long-standard
4812 race condition FIXME's in gtkselection.c.
4814 * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
4815 routines to convert from utf8 to compound text or
4816 STRING and from a text property to UTF-8.
4818 * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add
4819 a convenience function gdk_get_current_event_time().
4821 * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
4822 and free selection_data->data properly
4824 Sat Sep 9 10:23:53 2000 Owen Taylor <otaylor@redhat.com>
4826 * gtk/gtkthemes.c: Remove some unecessary includes.
4828 2000-09-08 Jonathan Blandford <jrb@redhat.com>
4830 * gtk/gtktextdisplay.c
4831 * gtk/gtktextlayout.c
4834 * gtk/testtext.c: Change the overstrike property to strikethrough,
4835 to closer match pango.
4837 Fri Sep 8 14:28:00 2000 Owen Taylor <otaylor@redhat.com>
4839 * gtk/gtktextview.c: Fix up visibility so that focus,
4840 cursor_visible and blink interact properly. Reenable cursor blink
4841 which had been roughly disabled. Make blink and focus
4844 * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
4845 Add a flag for whether to display insertion cursor and
4846 a function to set the flag.
4848 * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
4849 get_line_y() to get_line_yrange(), to be a bit more generally
4852 Thu Sep 07 20:54:33 2000 George Lebl <jirka@5z.com>
4854 * gtk/gtkmenu.c: in gtk_menu_set_submenu_navigation_region
4855 do stop_navigating_submenu, to clear last timeout properly.
4856 Also in gtk_menu_motion_notify move ignore_enter above
4857 the conditional to make it always happen as suggested by Owen
4859 2000-09-07 Tor Lillqvist <tml@iki.fi>
4861 * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
4863 * gdk/win32/gdkwin32.h: Add more definitions missing from the free
4866 * gdk/win32/gdkprivate-win32.h: Add a couple of missing
4869 * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
4870 (gdk_win32_get_colormap): A line had been deleted by mistake.
4872 * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
4873 (gdk_event_translate): Handle more virtual keycodes to be able to
4874 generate GDK events for Control-comma, Control-period, etc.
4876 * gtk/gtk.def: Add some missing entry points.
4878 Thu Sep 7 11:47:02 2000 Owen Taylor <otaylor@redhat.com>
4880 * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
4881 Doc comment fixing. (Mostly non-matching parameter names.)
4883 * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
4884 comments a little to avoid looking like a doc comment.
4886 * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
4887 GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
4888 conversions be changed to GError?)
4890 * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT):
4891 Move private #defines into .c file.
4893 * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
4894 order of argument addition, remove duplicates.
4896 * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
4897 parent class is FrameClass, not BinClass.
4899 * gtk/gtk.h: Add gtkinvisible, which was missing.
4900 (It's occasionalyl useful for client apps, if seldom.)
4902 * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
4905 Wed Sep 6 09:53:15 2000 Owen Taylor <otaylor@redhat.com>
4907 * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
4908 coordinates when creating window, instead of GDK-space
4909 coordinates. (Avoid BadValue on too large windows.)
4911 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4913 * configure.in (use_mmx_asm): Remove conftest* after use along the
4914 lines of AC_TRY_COMPILE.
4916 * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
4917 of g_dirname, which is deprecated.
4918 (gtk_rc_parse_any): Removed calls to
4919 g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
4921 * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
4922 Removed calls to g_hash_table_{freeze,thaw}, as they are
4925 * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
4926 instead of g_basename.
4928 2000-09-04 Elliot Lee <sopwith@redhat.com>
4930 * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
4933 Sun Sep 03 00:47:08 2000 George Lebl <jirka@5z.com>
4935 * gtk/gtkwidget.h: Add some documenting comments about
4936 GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
4937 just as owen said on irc.
4939 * gtk/gtkwindow.c (gtk_window_set_default): Don't blindly
4940 set HAS_DEFAULT. Only set it if there isn't another window
4941 holding it (a focus window which RECEIVES_DEFAULT) and only unset
4942 it if the widget is not the focused window with RECEIVES_DEFAULT.
4943 This fixes weird double default bugs in dialogs which has things
4944 call gtk_window_set_default at times.
4946 Fri Sep 1 22:39:07 2000 Owen Taylor <otaylor@redhat.com>
4948 * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
4949 Nils Barth and David Santiago to improve submenu
4950 navigation. The patch does this by creating a triangular
4951 region from the point where the pointer leaves the
4952 menu to the submenu. While the pointer is in
4953 that region and a timeout has not expired, events
4954 that would cause the active submenu to change are
4957 Fri Sep 1 15:34:46 2000 Owen Taylor <otaylor@redhat.com>
4959 * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
4960 moving a toplevel window immediately after sizing it would
4961 result in it being sized back to the old size since
4962 impl->width, impl->height aren't updated until we hear
4963 back from the server. There is still a (longstanding) bug
4964 here that gdk_window_get_size() will give the wrong size
4965 until we do hear back.
4967 2000-08-31 Havoc Pennington <hp@redhat.com>
4969 * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h,
4970 gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c,
4971 gtk/gtktexttagprivate.h, gtk/gtktextview.c:
4972 Rename GtkTextStyleValues to GtkTextAttributes
4974 2000-08-31 Havoc Pennington <hp@pobox.com>
4976 * gtk/gtktextbtree.c (GtkTextBTree): cache end line,
4977 for rapid testing whether an iterator is the end iterator
4978 (gtk_text_btree_new): init end line cache
4979 (gtk_text_line_is_last): use fast cached line to
4980 see if we're the last line.
4981 (get_last_line): use cached line here too, should
4982 speed up some random unrelated code.
4984 2000-08-30 Havoc Pennington <hp@pobox.com>
4986 * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
4989 * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
4990 delete_text signals. This allows the signals to be used for
4993 * gtk/gtktextbuffer.c: Change signal handler signatures;
4994 provide "interactive" argument when emitting insert_text or
4997 2000-08-30 Havoc Pennington <hp@pobox.com>
4999 * gtk/gtktextbuffer.c: Docs
5001 Fri Aug 25 12:16:15 2000 Owen Taylor <otaylor@redhat.com>
5003 * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
5004 from switch statements, since Tor removed the enumeration
5007 * gdk/x11/gdkimage-x11.c (gdk_image_get):
5008 s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
5010 2000-08-29 Elliot Lee <sopwith@redhat.com>
5011 * */*.h: Use G_GNUC_CONST.
5013 2000-08-27 Havoc Pennington <hp@pobox.com>
5015 * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
5016 minor indentation fixes, inserted some FIXME about stuff I
5017 realized was broken while documenting it.
5018 (gtk_text_iter_get_pixmap): allow out params to be NULL, following
5021 Tue Aug 22 12:33:24 2000 Owen Taylor <otaylor@redhat.com>
5023 * gtk/testgtk.c (create_styles): Fix double free of
5026 Mon Aug 21 22:39:18 2000 Owen Taylor <otaylor@redhat.com>
5028 * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
5030 * gtk/testgtk.c (create_styles): Add a test for modifying
5031 the style through gtk_widget_modify_*.
5033 * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
5034 a function to get the current modifier style.
5036 * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
5037 of the passed in GtkRcStyle instead of ref'ing it.
5039 * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
5041 2000-08-20 Tor Lillqvist <tml@iki.fi>
5044 * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
5045 shared memory image+pixmap GdkImage type, or
5046 gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
5049 * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
5050 actually call gtk_init_abi_check(), passing also
5051 sizeof(GtkWindow). Ditto for gtk_init_check().
5054 * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
5055 New functions, used to check that the GTK+-using code has been
5056 compiled using the correct compiler and switches. In particular,
5057 with gcc one has to use the -fnative-struct switch as GTK+ is
5060 Fri Aug 18 17:27:46 2000 Owen Taylor <otaylor@redhat.com>
5062 * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
5063 ->prev fields when merging lists. (Found simultaneously
5064 by Pawel Salek and Jakub Jelinek)
5066 2000-08-12 Tor Lillqvist <tml@iki.fi>
5069 * gtk/gtk.def: Add missing entries.
5071 * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
5072 OUT_TT_ONLY_PRECIS, try to get a TrueType font.
5074 * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
5075 function. Dummy implementation at this point.
5077 * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
5078 rules. Undefine GTK_COMPILATION when compiling the test programs.
5080 * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
5082 2000-08-11 Tor Lillqvist <tml@iki.fi>
5084 * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
5085 to convert back and forth from UTF-8 and the "system" (or "current
5086 locale") charset when necessary. Indentation/spacing cleanup.
5088 2000-08-10 Havoc Pennington <hp@redhat.com>
5090 * Makefile.am (snapshot): Change the format of the snapshot
5091 version to match glib
5093 * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
5094 from EXTRA_DIST since it doesn't seem to exist
5096 2000-08-10 Tor Lillqvist <tml@iki.fi>
5098 * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
5099 version of the directory name (not the UTF-8 one) when building
5100 the path name to stat().
5102 2000-08-03 Elliot Lee <sopwith@redhat.com>
5104 * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
5105 PANGO_ATTR_SHAPE set.
5107 Thu Aug 3 09:17:06 2000 Owen Taylor <otaylor@redhat.com>
5109 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
5110 Peter Osterlund to simplify the code while keeping the
5111 functionality the same.
5113 Wed Aug 2 14:57:38 2000 Owen Taylor <otaylor@redhat.com>
5115 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
5116 is_viewable() test further inside the function, since removing the
5117 window from the redraw list without clearing ->update_area
5118 was also very broken.
5120 2000-08-02 Tor Lillqvist <tml@iki.fi>
5122 * configure.in: Check for <unistd.h>.
5124 2000-08-01 Martin Baulig <baulig@suse.de>
5126 * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
5127 to display the message that this is a development version of GTK+.
5129 Mon Jul 31 18:37:36 2000 Owen Taylor <otaylor@redhat.com>
5131 * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
5132 was depending on widget->allocation instead of the width of text_area,
5133 which was incorrect for subclasses like GtkSpinButton.
5135 * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
5136 with width == 1 tests that should be width == -1.
5138 Mon Jul 31 16:45:48 2000 Owen Taylor <otaylor@redhat.com>
5140 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken,
5141 (broken, Elliot, every single window blank on X) custom code with call
5142 to gdk_window_is_viewable() which a) prevents code duplicate and
5145 2000-07-31 Elliot Lee <sopwith@redhat.com>
5147 * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
5148 to get the GDK_PARENT_ROOT() macro to work.
5149 * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
5150 * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
5151 of, windows that aren't shown.
5152 * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
5155 Mon Jul 31 13:53:16 BST 2000 Tony Gale <gale@gtk.org>
5157 * docs/gtkfaq.sgml docs/gtk-faq.sgml:
5158 s/gtk_main_iteration/g_main_iteration/
5160 Did this already in change:
5161 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
5162 don't know how it got reverted.
5164 2000-07-31 Stanislav Brabec <utx@penguin.cz>
5166 * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
5167 gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
5169 * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
5172 2000-07-30 Pablo Saratxaga <pablo@mandrakesoft.com>
5174 * configure.in,po/{sp,sr}.po: Added Serbian files
5176 2000-07-30 Tor Lillqvist <tml@iki.fi>
5178 * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
5180 * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
5181 Remove the g_pipe_readable_msg stuff. Not needed with new GLib
5182 GIOChannel implementation.
5184 * gdk/win32/gdkinput.c
5185 * gdk/win32/gdkpango-win32.c: Update license name here, too.
5187 * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
5188 definition to match prototype.
5190 * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
5192 2000-07-27 Elliot Lee <sopwith@redhat.com>
5194 * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
5195 function, to allow handling image formats that cannot be detected
5196 by looking at content alone.
5198 Thu Jul 27 13:13:21 BST 2000 Tony Gale <gale@gtk.org>
5200 * docs/tutorial/*.gif *.jpg *.eps
5201 Update these to the same look-n-feel.
5202 Why does including images in DocBook suck so badly?
5204 Thu Jul 27 05:06:29 2000 Tim Janik <timj@gtk.org>
5206 * gtk/gtktable.c: applied patch from Phil Thompson
5207 <phil@river-bank.demon.co.uk> that enables space settings for
5208 the last row/columns as well.
5210 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
5212 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
5213 updates the license headers to the GNU Lesser General Public License,
5214 as well as updating the copyright year to 2000.
5216 2000-07-26 Robert Brady <rwb197@zepler.org>
5218 * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
5219 and po/Makefile, was installing and looking for them under gtk20
5220 and gtk2 respectively.
5222 2000-07-25 Havoc Pennington <hp@redhat.com>
5224 * gtk/testtext.c: Comment out some stuff that depends on the rest
5227 2000-07-25 Havoc Pennington <hp@redhat.com>
5229 * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
5232 2000-07-25 Havoc Pennington <hp@redhat.com>
5234 * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
5237 * gtk/gtktextview.h: To be consistent with usage of "line"
5238 throughout the API to mean "newline-terminated thingy", change
5239 MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
5242 (GtkTextView): Add flags for default editability, and whether to
5243 show the cursor. Add functions to get/set that. Add
5245 (gtk_text_view_get_iter_location): new function
5247 * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
5249 (g_convert): Add g_convert temporarily, will go in glib in a bit
5251 * gtk/gtktexttagtable.h: include gtktexttag.h, and define
5252 GtkTextTagTableForeach instead of brokenly using GHFunc.
5253 Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
5255 * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
5256 moved to public header.
5258 * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
5259 "invisible", since "elide" was a bad name.
5260 (gtk_text_tag_get_priority): Added
5262 (GtkTextStyleValues): put this in public header, along with
5263 functions to use it.
5265 * gtk/gtktextmarkprivate.h: Include more headers, since we no
5266 longer include gtktextbtree.h.
5268 * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
5269 gtk_text_mark_deleted
5271 * gtk/gtktextlayout.h: Don't include the "really private" headers,
5272 only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
5273 to make this possible. Now we only need to install
5274 gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
5275 (However the Makefile.am isn't changed yet because of the
5276 logistics of merging gtk-hp-patches piecemeal)
5278 * gtk/gtktextiterprivate.h: include btree header, so it compiles;
5279 rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
5280 gtk_text_iter_get_line is now used in the public API for a
5283 * gtk/gtktextiter.h: Clean up function names to be more
5284 consistent. Always call char offset "offset" and byte index
5285 "index". A "line" is always a line number.
5287 (gtk_text_iter_is_last): new function, more efficient than
5288 the existing way to check
5289 (gtk_text_iter_is_first): new function, also more efficient
5291 (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
5293 (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
5294 gtk_text_iter_forward_char, etc.
5296 (gtk_text_iter_forward_to_tag_toggle): Renamed from
5297 forward_find_tag_toggle, since this isn't a linear search
5299 (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
5301 (gtk_text_iter_forward_search, gtk_text_iter_backward_search):
5302 New functions, search for a buffer substring.
5304 * gtk/gtktextbuffer.h: Add fields to store whether a paste is
5305 interactive and default editable (since we need to store that info
5306 until we receive the selection data).
5308 Remove all the _at_char and at_line etc. versions of functions;
5309 only have iterator versions.
5311 Add _interactive() versions of functions, that consider the
5312 editability of text. (FIXME add interactive flag to the
5313 insert/delete signals per Darin's suggestion)
5315 (gtk_text_buffer_get_tag_table): new function, demand-creates the
5316 tag table if necessary
5318 Remove declaration of gtk_text_buffer_get_iter_from_string
5320 (_gtk_text_buffer_get_btree): private/internal function, added.
5323 * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
5324 (gtk_text_line_is_last): new function
5326 2000-07-25 Havoc Pennington <hp@redhat.com>
5328 * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
5329 using GtkProgressBar. See Changes-2.0.txt for details.
5331 * gtk/gtkprogressbar.c: Add object arguments "fraction" and
5332 "pulse_step" which are the equivalent of
5333 gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
5336 * gtk/gtkprogress.h (struct _GtkProgress): Add a field
5337 (use_text_format) to mark whether text set on the progress bar is
5338 a format string. Deprecate entire GtkProgress interface.
5340 * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
5341 (gtk_progress_build_string): make this a no-op if use_text_format
5344 * docs/Changes-2.0.txt: Describe progress bar changes.
5346 2000-07-25 Tor Lillqvist <tml@iki.fi>
5348 * Makefile.am: Include the build directory.
5350 * configure.in: Generate build/Makefile, build/win32/Makefile,
5351 gdk/, gdk/win32/, and gtk/makefile.mingw.
5353 * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
5354 Add GETTEXT_PACKAGE.
5357 * gtk/gtk.def: Updates.
5360 * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
5361 need them any longer.
5363 * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
5365 * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
5366 PANGOWIN32_LIBS and gdk_pixbuf.
5368 * gdk/win32: Compiles, but no doubt doesn't work at all.
5370 * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION.
5372 * gdk/win32/gdkinput.c: New file, temporarily.
5374 * gdk/win32/gdkinput-win32.h: New file
5376 * gdk/win32/gdkinputprivate.h: Remove.
5378 * gdk/win32/gdkpango-win32.c: New file.
5380 * gtk/makefile.mingw.in: New file
5382 * gtk/makefile.cygwin: Removed
5384 * gtk/Makefile.am: Update accordingly.
5386 * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
5387 made externally visible.
5389 * gtk/gtkmain.c: Use it.
5391 * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
5394 * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
5396 2000-07-24 Elliot Lee <sopwith@redhat.com>
5397 * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
5398 individual backends already.
5399 * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
5400 again. Yes, there really is a good reason for this, if you are using the gdkregion
5401 internals, and if you're not, why do you care?
5402 * gdk/gdkwindow.c: Fix inverted condition
5403 * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
5404 * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
5405 * gtk/gtkrange.c: Redraw trough when moving.
5406 * gtk/gtktypeutils.c: Fix warning by adding const cast.
5407 * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
5409 2000-07-23 Tor Lillqvist <tml@iki.fi>
5411 * configure.in: Check for mkstemp and sigsetjmp. Output
5412 gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
5414 More work on GDK for Win32. Still in an intermediate state.
5416 * gdk/makefile.cygwin
5417 * gdk/win32/makefile.cygwin: Removed.
5419 * gdk/makefile.mingw.in
5420 * gdk/win32/makefile.mingw.in: New files.
5423 * gdk/win32/Makefile.am: Generate and distribute them.
5425 * gdk/win32/gdkwindow-win32.h
5426 * gdk/win32/gdkdrawable-win32.h
5427 * gdk/win32/gdkpixmap-win32.h: New files.
5429 * gdk/win32/gdkcolor-win32.c
5430 * gdk/win32/gdkcursor-win32.c
5431 * gdk/win32/gdkdrawable-win32.c
5432 * gdk/win32/gdkgc-win32.c
5433 * gdk/win32/gdkimage-win32.c
5434 * gdk/win32/gdkprivate-win32.h
5435 * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
5436 Rename fields and variables called xcursor, xid, etc (these names
5437 were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
5439 Sat Jul 22 17:41:26 2000 Owen Taylor <otaylor@redhat.com>
5441 * gtk/gtkentry.[ch]: Fix some problems with vertical
5444 * gtk/gtkentry.c (gtk_entry_find_position): Fix
5445 char/byte confusion.
5447 Sat Jul 22 11:16:05 2000 Owen Taylor <otaylor@redhat.com>
5449 * gtk/gtktextview.c (changed_handler): Fix bug where
5450 redraw wasn't being done properly when height of
5451 dirty region changed.
5453 * demos/Makefile.am: Remove various references to
5456 Fri Jul 21 15:28:13 2000 Owen Taylor <otaylor@redhat.com>
5458 * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
5459 PangoAttrShape to reserve space for pixmaps, add
5460 GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
5461 in the display functions.
5463 * gtk/testgtk.c (create_layout): Set some more exotic
5464 scrolled window options
5466 * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
5467 Add function to set the shadow type of a window, to allow
5468 putting a shadow around widgets such as GtkLayout or GnomeCanvas
5469 which don't draw their own frame.
5471 Fri Jul 21 16:34:42 BST 2000 Tony Gale <gale@gtk.org>
5473 * docs/tutorial/package-db-tutorial.sh: New file for
5474 packaging DocBook format tutorial
5476 Fri Jul 21 14:23:51 BST 2000 Tony Gale <gale@gtk.org>
5478 * docs/tutorial/gtk-tut.sgml: Minor updates
5480 * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
5482 2000-07-19 Tor Lillqvist <tml@iki.fi>
5484 * gtk/gtksignal.c: Fix C++ comment.
5486 * gtk/gtkimmulticontext.c
5487 * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
5488 don't return value from void functions.
5490 * gtk/gtk.def: Add gtk_rc_style_unref.
5492 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5494 * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
5495 gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
5496 gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
5497 gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
5498 gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
5499 gtk/gtktypeutils.h: Include files outside of the extern "C"
5500 block. Makes some C++ compiler happy. Reported by Denis Vakatov
5501 <vakatov@peony.nlm.nih.gov>.
5503 Wed Jul 19 14:07:57 BST 2000 Tony Gale <gale@gtk.org>
5505 * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
5506 Completes first pass. Hurrah!
5508 Tue Jul 18 17:17:55 BST 2000 Tony Gale <gale@gtk.org>
5510 * docs/tutorial/gtk-tut.sgml: More clean ups.
5512 Mon Jul 17 18:52:38 2000 Owen Taylor <otaylor@redhat.com>
5514 * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
5515 paint the background of the text area which was accidentally
5516 removed at some point.
5518 * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:
5520 - Move most of the functionality from the theme vtable
5521 into GtkRcStyleClass and GtkStyleClass. The moved
5522 vtable functions were changed a bit in the move to
5523 work better in their new home.
5525 - Get rid of the engine and engine_data fields from
5526 GtkRcStyle and GtkStyle; instead the theme
5527 engine derives theme-specific subclasses of GtkRcStyle
5530 - Add extra dlsym() found entry point to themes,
5531 theme_create_rc_style().
5533 * gtk/gtkstyle.c: Copy xthickness, ythickness fields
5534 in gtk_style_real_copy.
5536 * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
5537 to register a type associated with an engine. (The engine
5538 won't be unloaded as there is an instance of the type.)
5541 Mon Jul 17 18:19:06 BST 2000 Tony Gale <gale@gtk.org>
5543 * docs/tutorial/gtk-tut.sgml: Clean ups.
5545 Mon Jul 17 13:59:29 BST 2000 Tony Gale <gale@gtk.org>
5547 * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
5548 of cleaning up to do.
5550 2000-07-15 Tor Lillqvist <tml@iki.fi>
5552 * gdk/testgdk.c: New file, quick hack to test backends for
5553 pixel-by-pixel correctness of the most simple graphic operations.
5555 Fri Jul 14 20:30:25 2000 Owen Taylor <otaylor@redhat.com>
5557 * Really release 1.3.1
5559 * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
5562 Fri Jul 14 18:40:39 2000 Owen Taylor <otaylor@redhat.com>
5566 Fri Jul 14 16:21:26 2000 Owen Taylor <otaylor@redhat.com>
5568 * gtk/gtktextlayout.c: use FALSE for size_only most
5569 of the time when calling gtk_text_layout_get_line_display()
5570 to avoid causing double reshapes when a redraw follows
5573 Tue Jul 11 11:13:40 2000 Owen Taylor <otaylor@redhat.com>
5575 * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
5576 appropriate region and gdk_window_process_updates() so trough
5577 updating doesn't lag behind the window being scrolled.
5579 * gdk/gdkgc.c: Make parent_class pointer static.
5581 Sun Jul 9 21:31:23 2000 Owen Taylor <otaylor@redhat.com>
5583 * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
5586 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
5587 cut-and-paste error in computing memory offset for 4 channels.
5589 Fri Jul 14 14:05:02 2000 Owen Taylor <otaylor@redhat.com>
5591 * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
5592 gtk_rc_append_default_pixmap_path(), since it wasn't
5593 adding an interesting path and we don't have a meaningful
5594 default for this value.
5596 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
5598 * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
5599 gtk-config to gtk-config-2.0 move gtk_.m4 to
5602 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
5603 gdk/Makefile.am demos/Makefile.am: Change
5604 library names to libgtk-1.3.la, etc, so that we
5605 can distinguish gtk-1.2 and gtk-2.0 on the linkline.
5607 * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
5608 gdk/Makefile.am gdk/x11/Makfile.am
5609 Move include files into /usr/include/gtk-2.0,
5610 /usr/lib/gtk-2.0/include/
5612 * autogen.sh acconfig.h configure.in gtk/gtkmain.c
5613 gtk/gtkintl.h: Change package for gettext from
5614 gtk+ to gtk20. Put hack in autogen.sh to modify
5615 po/Makefile.in.in after gettextize to make this
5618 * gtk+.spec: Some updates, not tested.
5620 * gdk-pixbuf/Makefile.am: Move loaders into
5621 $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
5623 * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
5624 $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
5625 to THEMENAME/gtk-2.0/. Move engine directory to
5626 $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
5628 2000-07-12 Tor Lillqvist <tml@iki.fi>
5630 Win32 changes, still doesn't build though.
5632 * gdk/makefile.cygwin
5633 * gdk/win32/makefile.cygwin
5634 * gtk/makefile.cygwin: Updates.
5636 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
5637 default values for fg and bg pixel as X11 does (0 and 1), not
5638 black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
5639 Use 0 for pen width by default (treated as 1 anyway later, but for
5640 apps that might check the value in the GdkGC).
5641 (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
5642 interface to gdk_gc_predraw and _postdraw.
5644 * gdk/win32/gdkwin32.h
5645 * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
5647 * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
5648 extraneous semicolon.
5650 * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
5652 * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
5653 not the Win32 bitspixel value.
5655 * gdk/win32/gdkcc-win32.c:
5656 * gdk/win32/gdkcolor-win32.c
5657 * gdk/win32/gdkprivate-win32.h
5658 * gdk/win32/gdkwin32.h: Changes to make compilable, with new
5659 GDK object structure.
5661 Tue Jul 11 20:59:35 2000 Tim Janik <timj@gtk.org>
5663 * docs/tutorial/gtk_tut_12.es.sgml (name):
5664 * docs/tutorial/gtk_tut_it.sgml (name):
5665 * docs/tutorial/gtk_tut_fr.sgml (name):
5666 * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
5667 outdated email adress: s/timj@psynet.net/timj@gtk.org/.
5669 Tue Jul 11 13:10:57 BST 2000 Tony Gale <gale@gtk.org>
5671 * docs/faq/gtk-faq.sgml: Cleanup indenting and various
5674 Tue Jul 11 08:04:58 2000 Tim Janik <timj@gtk.org>
5676 * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
5677 a bug here, never been here and never fixed anything ;(
5678 (don't segfault if tree->root_tree is NULL, which happens prior
5679 to widget realization, but puke instead).
5681 Tue Jul 11 06:38:42 2000 Tim Janik <timj@gtk.org>
5683 * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
5684 add the necessary tokens.
5686 * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
5687 (gtk_rc_style_to_style): copy thicknesses.
5688 (gtk_rc_init_style): apply thicknesses.
5689 (gtk_rc_parse_style): parse xthickness and ythickness.
5691 * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
5693 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
5695 (_gdk_windowing_window_init):
5696 * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
5697 (gdk_pixmap_create_from_data):
5698 (gdk_bitmap_create_from_data):
5700 * gdk/x11/gdkimage-x11.c (gdk_image_get):
5702 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
5703 * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
5704 * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
5705 (gdk_colormap_get_system):
5707 * gdk/gdkwindow.c (gdk_window_init):
5708 * gtk/gtkstyle.c (gtk_style_new):
5709 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
5710 * gdk/gdkpixmap.c (gdk_pixmap_init):
5711 * gtk/gtkrc.c (gtk_rc_style_new):
5712 use g_object_new() instead of g_type_create_instance() which
5713 is a private function for fundamental type implementations.
5715 Thu Jul 6 16:12:14 2000 Owen Taylor <otaylor@redhat.com>
5717 * configure.in: Add check for db2html
5719 Thu Jul 6 14:53:05 2000 Owen Taylor <otaylor@redhat.com>
5721 * gtk/gtktypeutils.c (gtk_type_init): Add a temporary
5722 hack to set glib_debug_objects based on gtk_debug_flags.
5724 Thu Jul 6 14:12:13 2000 Owen Taylor <otaylor@redhat.com>
5726 * INSTALL.in: Update the Prerequisites section.
5728 * Makefile.am demos/Makefile.am docs/Makefile.am
5729 docs/tutorial/Makefile.am gdk/x11/Makefile.am
5730 gdk/linux-fb/Makefile.am: Dist fixes
5732 Thu Jul 6 12:26:03 2000 Owen Taylor <otaylor@redhat.com>
5734 * NEWS: 10,000 foot view of 1.3.1 changes.
5736 Thu Jul 6 11:54:03 2000 Owen Taylor <otaylor@redhat.com>
5738 * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
5739 gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
5740 gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
5741 gdk/x11/gdkmain-x11.c:
5743 Patch from George Lebl to add a GdkGrabStatus enumeration to use
5744 as a return value of gdk_*_grab(). Previously, we just
5745 returned the X11 values directly.
5747 Thu Jul 6 11:27:44 2000 Owen Taylor <otaylor@redhat.com>
5749 * gdk/x11/Makefile.am: Patch from George Lebl to
5750 install all the headers in the right place.
5752 Tue Jul 4 13:13:01 BST 2000 Tony Gale <gale@gtk.org>
5754 * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
5755 initial conversion to DocBook.
5757 2000-07-04 Tor Lillqvist <tml@iki.fi>
5759 * README.win32: Improve a bit.
5761 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
5762 WM_SYSCHAR, and other changes to get handling of Alt+nnn or
5763 Alt+0nnn on the numpad (used to enter characters by numeric code
5764 from current DOS or ANSI codepage) working correctly, as in other
5767 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
5768 same argument validity tests as in X11 version.
5769 (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
5771 * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
5772 definitions in case missing from headers.
5774 * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
5775 destroy the window-specific cursor.
5776 (RegisterGdkClass): Use the global gdk_ProgInstance instead of
5777 calling GetModuleHandle(NULL).
5778 (gdk_window_set_cursor): Reworked to always copy the passed cursor
5779 with CopyCursor before setting it as the window-specific
5780 cursor. It is OK for the caller to destroy the GdkCursor (and thus
5781 also its Windows cursor) after calling this function. Destroy any
5782 previous window-specific cursor.
5784 Mon Jul 3 17:54:49 2000 Owen Taylor <otaylor@redhat.com>
5786 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
5787 font charset is iso8859-1, not iso-8859-1.
5789 Mon Jul 3 17:08:14 2000 Owen Taylor <otaylor@redhat.com>
5791 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
5792 Use g_get_charset() instead of g_get_codeset().
5794 * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
5795 Comment out some strdup'ing functions to keep timj
5796 happy until we finish fighting this out.
5798 Mon Jul 3 14:24:16 2000 Owen Taylor <otaylor@redhat.com>
5800 * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
5803 * gtk/gtktable.c (gtk_table_attach): Fix missed merge
5804 from 1.2 for parent/child states.
5806 * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
5809 * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
5810 event structures, replace with a generic axes field. Replace
5811 deviceid/sourec with GdkDevice *device.
5813 * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
5814 to extract particular axis use value from event. (Also
5815 can be used for normal X/Y.)
5817 * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
5818 allow for arbitrary number of axes, namespace everything
5819 as gdk_device_*. Replace guint32 deviceid with GdkDevice *
5822 * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
5823 Get rid of the gdk_input_vtable setup if favor of simply
5824 defining the functions in gdkinput-none/gxi/xfree.c in
5825 a similar fashion to the way that the port structure is
5828 * gtk/gtkdnd.c: Fix fields of synthesized button press event
5829 for new event structures.
5831 * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
5832 new device interfaces.
5834 Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
5836 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
5837 set the initial text.
5839 * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
5840 gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
5841 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
5842 gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
5844 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
5845 pango_layout_set_font_description to simplify.
5847 Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
5849 * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
5850 pango_layout_set_font_description to simplify.
5852 Sun Jul 2 17:06:40 2000 Owen Taylor <otaylor@redhat.com>
5854 * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
5855 gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
5856 pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
5858 * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
5859 PANGO_PIXELS() macro.
5861 Sun Jul 2 15:24:41 2000 Owen Taylor <otaylor@redhat.com>
5863 * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
5864 that returns a PangoContext owned by the widget and updated to
5865 match future changes in the widget. Also, make
5866 gtk_widget_create_pango_layout() use this context. If we ever
5867 add a ::changed signal to PangoContext, this will make things
5868 much more convenient.
5870 * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
5871 in the appropriate places instead of destroying the layouts and
5874 * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
5875 in a few strategic places.
5877 Sun Jul 2 14:37:58 2000 Owen Taylor <otaylor@redhat.com>
5879 * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call
5880 gtk_widget_size_request() on reparented child, if one. Otherwise,
5881 queue_resize() on the child never results in it getting size-requested
5884 * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
5885 in option menus, so that (with luck) people won't copy it into
5886 their apps in the future.
5888 * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
5889 to gtk_option_menu_calc_size. This isn't perfect, but should fix
5890 a lot of problems with changing the size of the menu's menu
5891 items after adding it to the option menu.
5893 * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
5895 * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
5896 the text direction for a widget changes.
5898 * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
5899 ::direction_changed to get rid of various hacks.
5901 Sun Jul 2 13:19:12 2000 Owen Taylor <otaylor@redhat.com>
5903 * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
5906 Sun Jul 2 13:06:26 2000 Owen Taylor <otaylor@redhat.com>
5908 * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
5909 flag to the structure. Do not call XFreePixmap on pixmaps created
5910 by gdk_pixmap_foreign_new().
5912 Sun Jul 2 12:45:50 2000 Owen Taylor <otaylor@redhat.com>
5914 * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
5915 value using GdkRGB functionality given GdkColormap and GdkColor.
5916 (name not final, waiting for inspiration.)
5918 * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
5919 set the foreground/background of a GC using the GC's colormap
5920 and GdkRGB. (name not final, waiting for inspiration.)
5922 * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from
5923 gdk_rgb_get_cmap(), put #define in gdkcompat.h.
5925 * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
5926 gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
5927 purely a function of the corresponding colormap. Make
5928 gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
5930 * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
5931 gdk_pixbuf_*create_from_xpm_* in terms of
5932 gdk_pixbuf_new_from_xpm_data(), move into platform independent
5935 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
5936 advantage of the new draw_rgb_32_image_dithalign.
5938 * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
5940 * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
5943 * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
5945 * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
5946 which we initialize from the drawable when the GC is created,
5947 if the drawable has a colormap.
5949 * gdk/x11/gdkgc-x11.c: include string.h for memset.
5951 * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
5953 * gtk/gtklayout.[ch]: Remove unsed configure serial member.
5955 Sat Jul 1 16:28:32 2000 Owen Taylor <otaylor@redhat.com>
5957 * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
5958 actually returning expose events, make sure to set
5959 the count field properly.
5961 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
5962 accidentally reintroced bug which always cleared
5963 the graphics_exposures value.
5965 Wed Jun 28 18:03:09 BST 2000 Tony Gale <gale@gtk.org>
5967 * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
5969 Wed Jun 28 17:49:05 BST 2000 Tony Gale <gale@gtk.org>
5971 * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
5973 Wed Jun 28 13:31:55 BST 2000 Tony Gale <gale@gtk.org>
5975 * docs/faq/gtk-faq.sgml: Start of Section 6.
5977 Mon Jun 26 19:37:04 2000 Owen Taylor <otaylor@redhat.com>
5979 * configure.in: Put 1.3.1 in warning message, not 1.3.0.
5981 (Fixes problem with drawing childless frames. Pointed out
5982 by and a first patch from Anders)
5984 * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
5985 compute a child_allocation, even if we don't have a child.
5987 * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
5988 Always chain to the parent's impl, even if we don't have a child.
5990 Mon Jun 26 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
5992 * gdk/gdkrgb.c: If possible, create only a single shm segment and
5993 use multiple parts of it instead of creating a bunch of separate
5994 segments, since the maximum number of segments per system is not
5995 large. (This might be worth backporting to GTK+-1.2.x if we make a
5998 * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
5999 structure in preparation for per-colormap GdkRGB.
6001 * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
6002 to False when we get EINVAL from shmget so that the caller of
6003 gdk_image_new can retry with a smaller segment size.
6005 Mon Jun 26 13:01:16 BST 2000 Tony Gale <gale@gtk.org>
6007 * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
6009 Fri Jun 23 17:54:23 2000 Tim Janik <timj@gtk.org>
6011 * configure.in: make the current version number 1.3.1 (binary age 0,
6014 * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
6015 gtkcompat.h is all we want.
6017 * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
6018 GLib primitive types. fixed g_type_register_fundamental() argument
6021 * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
6024 * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
6025 object code cleanup, comment trigraph fixes, etc...
6027 2000-06-23 Havoc Pennington <hp@redhat.com>
6029 * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark
6030 instead of making up a bogus name for first_para_mark
6032 * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow
6035 Thu Jun 22 17:43:51 BST 2000 Tony Gale <gale@gtk.org>
6037 * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
6039 2000-06-21 Havoc Pennington <hp@pobox.com>
6041 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
6042 we didn't check window->bg_pixmap != GDK_NO_BG.
6044 * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
6047 Thu Jun 22 14:02:19 BST 2000 Tony Gale <gale@gtk.org>
6049 * docs/faq/gtk-faq.sgm: Move file to here.
6050 TODO: Update Makfile.am
6052 Thu Jun 22 13:41:09 BST 2000 Tony Gale <gale@gtk.org>
6054 * docs/gtk-faq.sgm: Add Section 2
6056 Thu Jun 22 08:43:45 BST 2000 Tony Gale <gale@gtk.org>
6058 * docs/gtk-faq.sgm: New file. Start of DocBook
6061 Wed Jun 21 23:04:17 2000 Owen Taylor <otaylor@redhat.com>
6063 * configure.in (GDK_PIXBUF_MAJOR): Define version
6064 numbers for GDK_PIXBUF_*, as they get substituted
6065 into a header file. Need to consider versioning
6066 for gdk-pixbuf more carefully later.
6068 2000-06-21 Raja R Harinath <harinath@cs.umn.edu>
6070 Work with srcdir != builddir.
6071 * demos/testanimation.c: Don't include "gdk-pixbuf.h". Use
6072 <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
6073 * demos/testpixbuf.c: Likewise.
6074 * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
6075 * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h". Use
6077 * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h". Don't include
6079 * demos/Makefile.am (INCLUDES): Remove unneeded directories.
6081 Wed Jun 21 19:45:02 2000 Owen Taylor <otaylor@redhat.com>
6083 * TODO.xml: Change 1.4 version numbers to 2.0.
6085 Wed Jun 21 19:29:08 2000 Owen Taylor <otaylor@redhat.com>
6087 * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
6088 fixups to GTK+ standard.
6090 Wed Jun 21 16:38:13 2000 Owen Taylor <otaylor@redhat.com>
6092 * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
6095 * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
6098 * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
6099 gdk-pixbuf with GDK dependencies moved into GDK.
6101 * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
6102 move gdk-pixbuf-loader here until GObject has signals.
6104 * demos/: New directory of demos. Move demos from
6107 * demos/pixbuf-init.c: Small bit of code to check for
6108 loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
6109 set GDK_PIXBUF_MODULEDIR appropriately.
6111 * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
6112 define which no longer makes sense.
6114 2000-06-21 Havoc Pennington <hp@redhat.com>
6116 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
6117 gtk_get_default_language
6119 * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language):
6120 new function to get the default language
6122 * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c:
6123 s/gtk_text_view_style_values/gtk_text_style_values/
6125 * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
6126 Add a "language" field to tags.
6128 (gtk_text_tag_set_arg): Fix bug in setting
6129 "bg_full_height_set" tag.
6131 2000-06-21 Havoc Pennington <hp@redhat.com>
6133 * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
6136 * gtk/gtktexttypes.c: Remove UTF functions, use glib
6137 stuff instead when possible.
6139 * gtk/gtktexttypes.h: Delete some unused constants
6141 * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
6142 testtextbuffer.c: use glib instead of custom unicode routines
6144 Wed Jun 21 12:50:58 2000 Owen Taylor <otaylor@redhat.com>
6146 * docs/es/: Removed mistakenly added generated sgml
6148 * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
6149 Remove outdated info files.
6151 * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
6152 Moved tutorial files into subdir
6154 * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
6157 * docs/man/gtk_button.pod: Remove. (contents will be
6158 integrated into gtk-reference button page.)
6160 * configure.in docs/Makefile.am docs/tutorial/Makefile.am
6161 docs/faq/Makefile.am: Adjust for new organization
6163 2000-06-21 Christopher Blizzard <blizzard@redhat.com>
6165 * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
6166 not $(MKINSTALLDIRS)
6168 Wed Jun 21 12:24:28 2000 Owen Taylor <otaylor@redhat.com>
6170 * gtk/testgtk.c (create_text): Finish the job Elliot started
6171 of removing font setting test for text widget. (Since text widget
6172 and GdkFont are not deprecated, and cause portability problems.)
6174 Wed Jun 21 11:41:43 2000 Owen Taylor <otaylor@redhat.com>
6176 * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
6177 gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
6178 Remove use of libunicode in favor of new GLib functions.
6180 * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
6181 nano-x, framebuffer. The X11 include is just a hack until we get
6182 the necessary functions in gdkcolor.h, so there is no reason to
6183 add other includes of platforms.
6185 * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert
6186 window bigger than the screen change.
6188 * gtk/testgtk.c: Revert some random changes from Elliot
6189 that had no particular point and were causing testgtkrc
6190 not to function correctly.
6192 * gdk/gdkregion-generic.h: Revert change from Elliot. Just
6193 because GdkSegment and GdkRegionBox have the same fields,
6194 it doesn't mean that 'typedef GdkSegment GdkRegionBox'
6195 results in clearer code.
6197 * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
6198 gdk_input_translate_coordinates): Fix missed GdkObjectification
6200 2000-06-18 Elliot Lee <sopwith@redhat.com>
6202 * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
6203 * gtk/gtk{plug,socket}.h: Missed commits from previous.
6205 2000-06-20 Havoc Pennington <hp@redhat.com>
6207 * modules/linux-fb/Makefile.am: Make this compile
6208 without framebuffer enabled
6210 * gdk/linux-fb/Makefile.am: Add conditional to not build
6211 framebuffer unless specified in configure
6213 * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
6214 the size of the target instead of source if -1 was passed for
6217 * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
6218 width/height confusion.
6220 2000-06-19 Havoc Pennington <hp@redhat.com>
6222 * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
6223 GDK_DRAWABLE_XID. In the future, we probably want to make it
6224 faster with G_DISABLE_CHECKS turned on.
6226 2000-06-14 Havoc Pennington <hp@redhat.com>
6228 * gdk/Makefile.am: add gdkpixmap.c
6230 * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
6231 s/gdk_image_init/_gdk_windowing_image_init
6233 * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
6236 * gdk/gdkcolor.h: make GdkColormap a GObject subclass
6238 * gdk/gdkcompat.h: remove GdkWindowType compat, since
6239 GdkWindowType is now non-deprecated;
6240 change gdk_window_get_type() compat to be
6241 gdk_window_get_window_type().
6243 * gdk/gdkdnd.h: make GdkDragContext a GObject.
6245 * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
6246 virtual GObject. Make all functions call into the vtable.
6247 Move gdk_image_put() guts in here. Remove GdkDrawableType
6248 and gdk_drawable_get_type(), these are now GdkWindow-specific.
6249 draw_image, get_depth, get_size, set_colormap, get_colormap,
6250 get_visual added to the vtable.
6252 * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
6253 GObject. Virtualize everything.
6254 (gdk_gc_new_with_values): remove check for destroyed window,
6255 because now GdkWindow::create_gc will check this.
6256 (gdk_gc_set_values): New function to set GC values, this
6257 was already implemented but wasn't in the header
6259 * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
6261 * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
6262 _gdk_window_draw_image(), remove _gdk_windowing_window_class,
6263 remove _gdk_window_class; add _gdk_window_impl_get_type() and
6264 _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
6265 _gdk_windowing_window_init, rename gdk_image_init to
6266 _gdk_windowing_image_init.
6268 * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
6269 (gdk_draw_layout): Remove check for destroyed window,
6270 because all the drawable methods already check it.
6272 * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
6273 Add gdkpixmap.c which contains implementation of GdkDrawable
6274 virtual table (by chaining to a platform-specific implementation
6277 * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
6278 GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
6279 GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
6280 GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
6283 * gdk/gdktypes.h: #include <glib-object.h>
6285 * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
6286 Move most functionality to platform-specific implementation
6287 object. GdkWindow itself now handles the backing store, then
6288 chains to the platform-specific implementation.
6289 (gdk_window_get_window_type): return GdkWindowType of the window.
6290 (gdk_window_peek_children): New routine, returns the children of
6292 (gdk_window_get_children): Was in X11-specific code and did
6293 XQueryTree. Changed to simply return a copy of window->children;
6294 so it can go in cross-platform code.
6296 * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
6298 * gdk/x11/gdkcolor-x11.c: implement X-specific parts of
6299 GdkColormap; just changed to use the new private data instead
6300 of casting to GdkColormapPrivate.
6302 * gdk/x11/gdkcursor-x11.c: added a couple typechecks to
6305 * gdk/x11/gdkdnd-x11.c: Change the way we access private fields
6306 (private data member in the GObject).
6307 (xdnd_manager_source_filter): Function had broken
6308 error handling, fix it (use gdk_error_trap_push).
6310 * gdk/x11/gdkdrawable-x11.c: This file now implements
6311 a base class for GdkWindowImplX11/GdkPixmapImplX11. This
6312 base class is purely for the convenience of the X port,
6313 and not part of the interface to cross-platform GDK.
6315 * gdk/x11/gdkevents-x11.c: Reflect various renamings.
6317 * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
6318 specific to X, and returned by the create_gc virtual method
6319 of GdkDrawableImplX11.
6320 (gdk_x11_gc_set_dashes): Change this to take an array of gint8
6321 rather than gchar, this was also changed in the GdkGC vtable.
6322 (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
6323 mask is 0, return immediately, instead of checking every flag.
6324 This is faster, and keeps us from segfaulting if values is NULL
6325 and the mask contains some nonzero flags.
6327 * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
6330 * gdk/x11/gdkglobals-x11.c: change type of grab window, since
6331 GdkWindowPrivate is gone.
6333 * gdk/x11/gdkim-x11.c: rename things that got renamed.
6335 * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
6336 remove the image_put stuff that got transferred to GdkDrawable.
6338 * gdk/x11/gdkinput.c: renamings
6340 * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
6342 * gdk/x11/gdkpixmap-x11.c: GObject conversion
6344 * gdk/x11/gdkprivate-x11.h: indentation fixes
6346 * gdk/x11/gdkproperty-x11.c: renamings
6348 * gdk/x11/gdkselection-x11.c: renamings
6350 * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
6351 implements the platform-specific "impl" object.
6352 Moved gdk_window_get_children to gdk/gdkwindow.c
6354 * gdk/x11/gdkx.h: Remove all the private structs and private datas
6355 that no longer exist. Add declaration of GdkGCX11 object here.
6356 Fix all the macros to still work.
6358 * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
6359 GdkDragContext from the boxed types since they are now GObjects.
6361 * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
6362 moved xthickness/ythickness into the instance. GtkStyleClass
6363 functions are now in the standard vtable for GtkStyle, so you have
6364 to create a GObject subclass to write a theme engine.
6365 (gtk_style_copy): fixed a leaked PangoFontDescription
6366 (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
6367 can be the standard GObject function.
6370 s/style->klass->[xy]thickness/style->[xy]thickness
6371 s/pango_layout_unref/g_object_unref/
6373 * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
6375 * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
6376 accessing GDK internals.
6378 * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
6379 accessing GDK internals.
6381 2000-06-18 Elliot Lee <sopwith@redhat.com>
6383 * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
6385 * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
6386 problem by calculating event position relative to the trough
6387 rather than the slider.
6388 * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
6390 * gdk/gdkgc.h: Add GDK_NOR.
6392 * configure.in, Makefile.am: Add modules top level dir
6393 * configure.in: Only use pangox library if building x11 target.
6394 * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
6396 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
6398 * gtk/gtkcolorsel.c: Change private class member to be named
6399 private_data throughout the file.
6401 * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
6402 private_data to avoid clashing with keyword.
6404 Fri Jun 16 22:24:22 2000 Christopher Blizzard <blizzard@redhat.com>
6406 * gdk/gdkdnd.h: Add comment to remove warning.
6408 Sun Jun 18 15:35:35 2000 Pablo Saratxaga <pablo@mandrakesoft.com>
6410 * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
6411 Byelorussian language; changed the Makefile and file names
6414 Mon Jun 12 16:58:40 2000 Owen Taylor <otaylor@redhat.com>
6416 * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
6417 rather than gdk_window_hide; this makes things work
6418 correctly if the window is programmatically hidden while
6421 Sun Jun 11 12:46:19 2000 Owen Taylor <otaylor@redhat.com>
6423 * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
6424 cut and paste typo where wrong pixmap was being
6425 unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
6427 Sun Jun 11 10:22:36 2000 Owen Taylor <otaylor@redhat.com>
6429 * gtk/gtkselection.c (gtk_selection_bytes_per_item):
6430 Add helper function to compute format / bytes
6431 relationship. Use in a couple places to fix up
6432 errors which assume 8 * format.
6434 * gtk/gtkselection.c (gtk_selection_request): Use 32
6435 rather than 8 * sizeof (GdkAtom), to work correctly
6438 Thu Jun 8 21:54:51 2000 Christopher Blizzard <blizzard@redhat.com>
6440 * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
6442 (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
6445 * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
6446 checking macros return NULL since the function has a return value.
6448 Wed Jun 7 15:44:42 2000 Owen Taylor <otaylor@redhat.com>
6450 * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
6451 GTK+ from building at all.
6453 * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
6455 Mon Jun 5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
6457 * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
6458 gtk/Makefile.am: make it possible to configure gtk for different
6459 targets on the same platform. The library name is now
6460 libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
6461 flag. Only the x11 target compiles right now.
6462 * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
6463 gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
6464 * gdk/nanox/gdk*generic*: delete generic region code.
6465 * gdk/linux-fb/gdk*generic*: delete generic region code.
6466 * README.nanox: update information.
6468 Tue Jun 6 10:53:59 2000 Owen Taylor <otaylor@redhat.com>
6470 * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
6471 prepend not append. (Pointed out by Brett Hall.)
6473 Tue Jun 6 01:59:57 2000 Owen Taylor <otaylor@redhat.com>
6475 * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
6477 Mon Jun 5 16:00:09 2000 Owen Taylor <otaylor@redhat.com>
6479 * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
6480 need this later, and this makes sure that the atexit for
6481 glib gets called after that for GDK, so atexits are
6482 properly ordered for object leak checking.
6484 * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
6486 * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call
6487 pango_x_shutdown_display()
6489 * gtk/simple.c (main): Close window on destroy.
6491 Mon Jun 5 11:50:02 2000 Owen Taylor <otaylor@redhat.com>
6493 * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
6494 to treat initial creation different from setting with
6495 regards to the graphics-exposures parameter, so add a parameter
6496 indicating whether this is initial or not.
6498 Mon Jun 5 13:29:31 2000 Owen Taylor <otaylor@redhat.com>
6500 * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
6501 to sort of work by adding an extra return_exposes arg
6502 to gdk_event_translate() - it might be better to simply
6503 deprecate the function altogether and force people to rewrite
6504 without it. gdk_window_scroll() handles most of it, and where
6505 gdk_window_scroll() doesn't work, simply redrawing more does.
6507 * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
6510 * gtk-config.in: Include PANGO_CFLAGS/LIBS.
6512 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a
6513 bunch of pretty much useless /* Print debugging info */ comments
6514 which had drifted away from the code they were commenting.
6516 2000-06-02 Havoc Pennington <hp@pobox.com>
6518 * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
6519 is in working order.
6521 * gtk/testtext.c: Change to reflect anonymous mark API
6523 * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
6525 * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
6526 field, which was unused.
6528 * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
6531 * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*
6533 * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
6534 flag on the insertion point and selection bound
6536 Throughout, use GtkTextMark instead of GtkTextLineSegment, and
6537 make mark-manipulation functions take a GtkTextMark* instead of a
6540 * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
6541 GtkTextMarkBody; will be used to detect attempts to delete
6542 the permanent marks (insert and selection bound)
6544 * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer
6546 Fri Jun 2 12:56:01 2000 Owen Taylor <otaylor@redhat.com>
6548 * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
6551 * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event):
6552 Honor DOUBLE_BUFFRED_FLAG
6554 * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
6555 function to set the DOUBLE_BUFFERED flag.
6557 * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
6558 or not exposes done on the widget should be double-buffered.
6560 * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
6561 to be what would be expected. (Fixes problem with a
6562 g_return_if_fail() validating a TextDirection enumeration)
6564 Thu Jun 1 23:05:13 2000 Owen Taylor <otaylor@redhat.com>
6566 * gtk/gtkwidget.c: Remove all references to
6567 offscreen flag which was no longer used.
6569 * gtk/gtkprivate.h (enum): Remove unused flags and compress.
6571 * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
6572 for non-null label_widget->parent.
6574 * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
6575 which no longer was used.
6577 * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
6579 * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
6582 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
6583 check for destroyed windows.
6585 Thu Jun 1 13:48:45 2000 Owen Taylor <otaylor@redhat.com>
6587 * gtk/gtkimmulticontext.c: Add a finalize method and unref
6588 the slave context there.
6590 * gtk/gtkinvisible.[ch]: Make reference counting behavior
6591 identical to GtkWindow.
6593 Thu Jun 1 01:54:11 2000 Owen Taylor <otaylor@redhat.com>
6595 * Makefile.am gdk/gdkpango.c: Copy the layout render function from
6596 pangox to here, so we can write them independent of rendering
6597 system, using GDK primitives.
6599 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
6600 gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
6601 since we have a rendering-system independent implementation in
6602 terms of draw_glyphs().
6604 * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
6605 function to render a single line.
6607 * gdk/x11/gdkpango.c: Move the guts of this file mostly
6608 into ../gdkpango.c, which simplifies things, since we
6609 don't have to deal with raw X gc's.
6611 Fri May 19 04:28:16 2000 Owen Taylor <otaylor@redhat.com>
6613 * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
6614 get the logical attributes for a given GtkTextLine.
6616 Tue May 30 16:05:39 2000 Owen Taylor <otaylor@redhat.com>
6618 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
6619 g_locale_get_codeset() to g_get_codeset() change.
6621 Tue May 30 15:03:19 2000 Owen Taylor <otaylor@redhat.com>
6623 * gtk/testcalendar.c (calendar_font_selection_ok): Use font
6626 * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
6629 * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
6630 redoing (vastly simplifying) for Pango. Still needs quite
6631 a bit of work. (Size selection is currently poor. List of
6632 predefined sizes is not a good idea, since all of these
6633 sizes won't necessarily be distinct.)
6635 Tue May 30 13:50:19 2000 Owen Taylor <otaylor@redhat.com>
6637 * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
6638 CODESET results for LANG=C.
6640 Mon May 29 15:49:10 2000 Owen Taylor <otaylor@redhat.com>
6642 * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
6643 which takes a stringized pango font description;
6644 ignore the older 'font' and 'fontset' declarations.
6646 * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
6647 field with a GdkFont derived via gdk_font_from_description(),
6648 for compatibility. (Should we just remove it entirely?
6649 Probably too much compatibility breakage, but people
6650 should be migrating to the new Pango stuff as quickly
6653 Mon May 29 15:47:41 2000 Owen Taylor <otaylor@redhat.com>
6655 * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
6657 Mon May 29 15:44:46 2000 Owen Taylor <otaylor@redhat.com>
6659 * gtk/gtkcalender.c: Roughly pango-ized. Really needs
6660 redoing; there are some bugs in size allocation right
6661 now, the semi-existant distinction between header / day
6662 fonts was removed, but, with Pango, could actually
6663 be made functional in a nice way.
6665 * gtk/testcalender: Move calender from examples into this
6666 directory as a test program. (We really need to restrcture
6667 testgtk into a whole directory full of tests for every
6668 widget or functionality group, separated into multiple .c
6671 Mon May 29 15:19:56 2000 Owen Taylor <otaylor@redhat.com>
6673 * gtk/testgtk.c (file_exists): Fix stupid typo that
6674 was keeping RC file from being loaded.
6676 * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
6679 Mon May 29 14:31:27 2000 Owen Taylor <otaylor@redhat.com>
6681 * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
6682 Add function to load a GdkFont from a PangoFontDescription.
6684 2000-05-29 Tor Lillqvist <tml@iki.fi>
6686 * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
6687 variable should be of type GdkEventPrivate.
6689 Fri May 26 17:16:40 2000 Owen Taylor <otaylor@redhat.com>
6691 * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
6692 to have any widget for the label, use a GtkLabel widget
6693 to display the text. (Based partially on a patch from
6696 (Quite a bit of code reorganization - strip 90% of the
6697 guts out of gtkaspectframe and add a single virtual
6698 func to GtkFrameClass - compute_child_allocation.)
6700 Fri May 26 12:00:02 2000 Owen Taylor <otaylor@redhat.com>
6702 * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
6703 (Removed clist->row_center_offset field because caching
6704 it wasn't saving time or code, added private function
6705 _gtk_clist_create_cell_layout()).
6707 Wed May 24 15:59:37 2000 Owen Taylor <otaylor@redhat.com>
6709 * gtk/gtkaccellabel.c: Pangoized.
6711 * gtk/[hv]ruler.c: Pangoized
6713 Mon May 22 19:23:59 2000 Owen Taylor <otaylor@redhat.com>
6715 * gtk/gtkfilesel.c (gtk_file_selection_init):
6716 Use gtk_clist_set_column_auto_resize() to remove need
6717 need for manual column width computations.
6719 Mon May 22 18:50:26 2000 Owen Taylor <otaylor@redhat.com>
6721 * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
6722 ensuring Pango correctness, and considerably simplifying the
6725 * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
6727 * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
6728 getting of numbers of lines.
6730 * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
6731 to the actual requested width of the lable, not to the wrap
6734 * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
6736 * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
6737 gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
6739 * gtk/gtktextview.c: Fix structure inheritance.
6741 * gtk/gtkprogressbar.c: Pangoize.
6743 Mon May 22 15:47:30 2000 Owen Taylor <otaylor@redhat.com>
6745 * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
6748 * gtk/gtktextlayout.c (find_display_line_above): Fixed
6749 bug with computing line tops.
6751 * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
6753 Thu May 18 18:53:31 2000 Owen Taylor <otaylor@redhat.com>
6755 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
6756 and y_offset coordinates to do what we need now. (The offset between
6757 buffer and layout coordinates has been reintroduced, but is a
6758 bit different than before.)
6760 * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
6761 handle the adjustments ourselves, and scroll as necessary using
6762 the new gdk_window_scroll().
6764 The advantage of this is that when we are incrementally revalidating,
6765 we are essentially rearranging things around the visible portion
6766 of the screen. With the old setup, the visible portion of the
6767 screen was moved around in the layout, so scrolling and redrawing
6768 to track that caused jumping of the display. Since we now
6769 control the scrolling ourselves, we can suppress this and
6770 only redraw when things actually change.
6772 Thu May 18 18:47:25 2000 Owen Taylor <otaylor@redhat.com>
6774 * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
6775 the region not just redisplay it after-all, since we store the
6776 cursors in the LineDisplay. (Ugly interactions here between
6777 GtkLayout and GtkTextBTree here.)
6779 * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
6781 Thu May 18 18:43:21 2000 Owen Taylor <otaylor@redhat.com>
6783 * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
6784 Added function to scroll contents of a window while keeping the
6785 window constant. Works by XCopyArea or guffaw-scrolling depending
6786 on the details of how the window is set up. (guffaw-scrolling
6787 still needs to be filled in.)
6789 Wed May 17 22:36:53 2000 Owen Taylor <otaylor@redhat.com>
6791 * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
6792 move the debugging that was tied to a global variable
6795 * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
6797 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
6798 validated flag, in line data instead of setting height/width to
6799 -1. This allows us to perform operations with partially invalid
6800 buffer (using the old size for invalid lines) and thus to do
6801 incremental vaidation. Keep height/width aggregates up to date
6802 when deleting text and rebalancing the tree.
6804 * gtk/gtktextbtree.[ch]: Add functions validate a line
6805 (gtk_text_btree_validate_line), and to validate up
6806 to a number of pixels (gtk_text_btree_validate).
6808 * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
6809 that indicates that something is changed and a revalidation
6810 pass is needed. Change ::need_repaint to ::changed, and
6811 make it take old and new yranges instead of a rectangle.
6813 * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
6814 the line_data_destroy() function from
6815 gtk_text_btree_add_view() to a virtual function in
6818 * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
6819 since we are handling partial repaints in a different fashion
6822 * gtk/gtktextbtree.[ch]: Only repaint the changed portion
6823 of the selection instead of queueing a repaint on the
6826 * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
6827 get_selection_bounds() down to btree, make the function
6828 in buffer a wrapper around the btree function.
6830 * gtk/gtktextlayout.[ch]: Add functions to check if the
6831 layout is valid and to recompute either a range of pixels
6832 aroudn a line or a certain total number of pixels.
6834 * gtk/gtktextlayout.[ch]: Cache a single line display;
6835 now that we only redraw the needed portions, the hit rate
6836 for this cache is quite high.
6838 * gtk/gtktextview.[ch]: Keep track of the first paragraph
6839 on the screen so that when re-laying-out the buffer, we can
6840 keep the same place. This requires connecting to ::value_changed
6843 * gtk/gtktextview.[ch]: Add idle functions to revalidate
6844 the buffer after we receive an ::invalidated signal.
6846 Wed May 17 22:10:47 2000 Owen Taylor <otaylor@redhat.com>
6848 * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
6849 to max of allocation and layout size, not just to the
6852 * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
6853 Invalidate window so it gets redrawn properly.
6855 * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
6856 to mean the entire window.
6858 * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
6861 Mon May 15 14:51:31 2000 Owen Taylor <otaylor@redhat.com>
6863 * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
6864 to get the name of a mark.
6866 * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
6867 to find the paragraph from a y position.
6869 Thu May 11 12:57:20 2000 Owen Taylor <otaylor@redhat.com>
6871 * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
6872 nodes have width/height >= 0, not > 0.
6874 Tue May 9 21:29:06 2000 Owen Taylor <otaylor@redhat.com>
6876 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
6877 Add a size_only flag, so when we only need the size, we don't create
6878 useless appearance attributes.
6880 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
6881 duplicate setting of font description.
6883 * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
6885 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
6887 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
6888 EXTRA_DIST. It does not work well when the file that
6889 everything depends on is not in the tarball.
6891 Wed Apr 26 00:56:14 2000 Owen Taylor <otaylor@redhat.com>
6893 * gtk/testgtk.c: Some hacks and fixes so that it basically
6894 works when not sitting in the GTK+ build tree.
6896 2000-05-03 Havoc Pennington <hp@redhat.com>
6898 * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6899 Properly determine the ordering of the tag root and the current
6900 line within the tree. Previous algorithm only worked if the tag
6901 root's immediate parent was the common root of both the current
6902 line and the tag root.
6904 Wed Apr 26 00:43:00 2000 Owen Taylor <otaylor@redhat.com>
6906 * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
6909 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
6910 the widget text directional dynamically.
6912 * gtk/gtktextview.[ch]: Added functions to get and set default
6915 Tue Apr 25 23:47:38 2000 Owen Taylor <otaylor@redhat.com>
6917 * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
6918 in cursor location computation.
6920 Tue Apr 25 23:22:59 2000 Owen Taylor <otaylor@redhat.com>
6922 * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
6923 vadjusment values properly when layout gets smaller.
6925 * gtk/gtktextview.c (need_repaint_handler): Areas being
6926 passed in are far completely inaccurate, and sometimes
6927 too small, so, for now, just queue a redraw on the
6928 whole visible region.
6930 2000-04-25 Havoc Pennington <hp@redhat.com>
6932 * gtk/gtktextbtree.c (summary_destroy): new function to
6933 destroy tag summary nodes
6934 (gtk_text_line_next_could_contain_tag): this function was
6935 totally broken if the line passed in wasn't below the tag
6937 (gtk_text_btree_first_could_contain_tag): In the tag == NULL
6938 "wildcard" case, we have to do a linear scan. Blah.
6939 (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
6940 we have to do the linear scan
6941 (tag_removed_cb): When a tag is removed from the tag table,
6942 remove the GtkTextTagInfo node from the btree.
6943 (gtk_text_btree_spew): Implement the spew function, for
6944 our debugging pleasure.
6946 Tue Apr 25 19:40:18 2000 Owen Taylor <otaylor@redhat.com>
6948 * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
6949 a problem with referring to the wrong buffer.
6951 * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
6953 * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
6954 font description to gtk_style_new() - otherwise things
6955 don't work without a .gtkrc file.
6957 * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
6958 tags table if we create it ourself, too.
6960 * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
6961 it was conflicting with XKB modifiers.
6963 * gtk/gtktextview.[ch]: Add simple support for
6966 Mon Apr 24 19:34:18 2000 Owen Taylor <otaylor@redhat.com>
6968 * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
6969 with deletion from last commit.
6971 Mon Apr 24 19:29:40 2000 Owen Taylor <otaylor@redhat.com>
6973 * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
6974 in the context from the current locale.
6976 * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
6977 context, not hardcoded value.
6979 * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
6982 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
6984 * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
6985 attributes - that doesn't handle partial-glyph selection
6986 properly. Instead use new pango_layout_line_get_x_ranges()
6987 functionality to draw the selection.
6989 * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
6990 now properly handles out-of-range coordinates.
6992 * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
6994 * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
6997 * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
6998 for paragraphs opposite to the base direction of the widget.
7000 * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
7002 * gtk/gtktextlayout.c: Don't split segments on marks, since that
7003 causes Arabic words to reshape as you cursor through.
7005 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
7006 cursor position when moving vertically with the arrow keys and
7007 scrolling with page-up/page-down. (Arrow keys save only the X,
7008 scrolling saves both X and Y.)
7010 This means you can line-up / line-down or page-up / page-down
7011 without losing your place, and also that moving vertically
7012 with the cursor keys keeps the same X position, not the same
7015 * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
7016 arrow keys move by display lines, not paragraphs.
7018 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
7020 * gtk/gtklayout.c: Make sure that the bin window is at least
7021 as big as the allocation. (Should we also make sure that the
7022 bin window is big enough to completely cover widget->window?)
7024 * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
7025 function to get the onscreen rectangle.
7027 * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
7028 for offsets in window coordinates.
7030 Sun Apr 16 16:13:27 2000 Owen Taylor <otaylor@redhat.com>
7032 * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
7035 * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
7036 from the widget direction.
7038 * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
7039 Add a "direction" attribute.
7041 * gtk/gtktextview.c: global s/tkxt/text_view/.
7043 * gtk/testtext.c: Added long block of text in Arabic, to test out
7044 the direction attributes. (Some problems with the shaping system
7045 for arabic become obvious - like the fact the cursor splits words
7046 into unjoined pieces.)
7048 Fri Apr 14 12:54:34 2000 Owen Taylor <otaylor@redhat.com>
7050 * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
7052 * gtk/gtktextlayout.c: Fix up alignment.
7054 * gtk/testtext.c: Add some tests for centering, wrapping.
7056 Fri Apr 14 09:26:22 2000 Owen Taylor <otaylor@redhat.com>
7058 * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7059 Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
7060 If we wrote GTK+-specific layout-render function this could just replace
7061 the draw_layout() operation in the vtable.
7063 * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
7064 pango_layout_get_cursor_pos() and use that function.
7066 * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
7067 is a non-static symbol.
7069 * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
7070 with gtk_text_btree_find_line_by_y()
7072 * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
7073 renderer that handles GtkTextAppearance attributes.
7075 * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
7077 - Move the values in the style that don't affect geometry into a
7078 GtkTextAppearance structure.
7079 - Change underline to take a PangoUnderline and "font" a string
7080 representation of a font description
7081 - Add a "font_desc" attribute which takes a FontDescription structure.
7083 * gtk/gtktextlayout.[ch]:
7085 - Get rid of the display-line list per each line. Instead, we
7086 generate, on demand, a GtkTextLineDisplay structure which]
7087 contains a PangoLayout * and other necesary information
7088 (offsets, cursor locations) for displaying a paragraph.
7089 - Get rid of the code to wrap lines, create display chunks,
7090 etc. Instead, we just go through a paragraph and convert
7091 it into the necessary inputs to a PangoLayout.
7092 - Implement a new attribute type, GtkTextAttrAppearance. This
7093 holds a GtkTextAppearance, and is used to pass colors,
7094 stipple, etc, through from the layout to the display without
7095 having to use lots and lots of individual attributes.
7096 - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
7097 in terms of PangoLayout functions.
7099 * gtk/gtktextview.c:
7101 - Handle passing the necessary PangoContext to the layout
7102 - Some fixups in painting to deal with the automatic backing store
7103 and offsetting of GTK+-1.4
7104 - Add a style_set handler so that the default style reacts
7105 properly to theme changes.
7107 * gtk/gtktext?*.[ch]: Random code-style fixes.
7109 * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
7111 Mon Apr 10 10:33:45 2000 Owen Taylor <otaylor@redhat.com>
7113 * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
7114 in original form preparatory to Pango-ization and gdkimcontext-ization.
7116 Thu Apr 6 19:25:39 2000 Owen Taylor <otaylor@redhat.com>
7118 * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
7119 so that we can derive from gtkimcontext in language bindings properly.
7121 Thu Apr 6 16:02:52 2000 Owen Taylor <otaylor@redhat.com>
7123 * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
7124 Add a compose table including (almost) all the compose combinations
7125 from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
7126 data in the XIM implementation.
7128 * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
7129 Moved functions to convert keyvalues from and to unicode here from
7130 the win32 port and made them public.
7132 Wed Apr 5 16:37:29 2000 Owen Taylor <otaylor@redhat.com>
7134 * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
7136 Wed Apr 5 16:27:45 2000 Owen Taylor <otaylor@redhat.com>
7138 * gtk/gtkimcontext.[ch]: Base class for new input context system
7140 * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
7141 the real input context implementation to be loaded from modules
7142 and switched on the fly.
7144 * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
7145 context that just does direct keysymbol => unicode translation.
7147 * gtk/gtkentry.[ch]: Start switching editing over to using
7148 GtkInputContext. (No handling of preedit yet.)
7150 Wed Apr 5 15:48:41 2000 Owen Taylor <otaylor@redhat.com>
7152 * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
7153 many substitutions. (klass should not be subsituted.)
7155 Wed Apr 5 00:18:14 2000 Owen Taylor <otaylor@redhat.com>
7157 * configure.in: Add checks for Pango
7159 * configure.in docs/Makefile.am: Add test for sgml2html
7160 and allow 'make dist' without building html, but print out
7161 warnings in that case. (For making snapshots)
7163 * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
7164 Add Pango libraries and C flags
7166 * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7167 Add function (gdk_draw_layout) to draw a pango layout.
7169 * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
7170 for getting Pango contexts for GDK.
7172 * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
7174 * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
7177 * gtk/gtkentry.c: Hack in simple Hebrew input with direct
7178 keysym => unicode translations. More languages can be added
7179 here, but real input-method support is needed.
7181 * docs/Changes-1.4.txt: Added note about entry behavior.
7183 * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
7184 to set the reading direction for a widget and the global direction.
7185 Add test which allows toggling the global direction. Two private
7186 flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
7188 * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
7189 gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
7191 * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
7193 * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
7194 underlining now handled by Pango.
7196 * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
7197 to RCStyle and Style. (Having both this and the old font name and GdkFont
7200 * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
7201 convenience functions for creating contexts and layouts for widgets.
7203 * gtk/testgtk.c: Enhance label tests with multilingual labels.
7205 2000-05-29 Jonathan Blandford <jrb@redhat.com>
7207 * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
7208 titles to be active, even if they aren't visible.
7209 (gtk_clist_column_titles_passive): Ditto.
7211 2000-05-21 Nils Barth <nils_barth@post.harvard.edu>
7215 * gtktypeutils.h: Spelling/grammar fixes in comments.
7217 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
7219 * gdk/nanox/*.h: add missing header files.
7221 Fri May 19 11:52:59 2000 Tim Janik <timj@gtk.org>
7223 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
7225 (gtk_drawing_area_size): queue a resize.
7227 Sun Mar 26 03:21:28 2000 Tim Janik <timj@gtk.org>
7229 * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
7230 the handlers, also invalidate them. bug nailed down by Karl Nelson
7231 <kenelson@ece.ucdavis.edu>.
7233 Fri May 19 06:49:23 2000 Tim Janik <timj@gtk.org>
7235 * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
7236 "(nil)" foundries, patch from Grigorios Magklis.
7238 * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
7239 on non-available fonts, based on a patch by Grigorios Magklis
7240 <maglis@cs.rochester.edu>.
7242 2000-05-18 Elliot Lee <sopwith@redhat.com>
7244 * gdk/x11/gdkregion-generic.c: If a region does not have any
7245 rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
7246 instead of GDK_OVERLAP_RECTANGLE_IN.
7248 2000-05-17 Jonathan Blandford <jrb@redhat.com>
7250 * gtk/gtklayout.c (gtk_layout_map): Remove references to
7251 OFFSCREEN, as it is no longer necessary.
7253 Wed May 17 10:52:12 2000 Owen Taylor <otaylor@redhat.com>
7255 * gtk/gtkcolorsel.c: Patch from David Santiago
7256 <mrcooger@cyberverse.com> to change things so that the
7257 indicator of the active palette entry is done independently,
7258 not via the focus, since it should always be visible.
7260 2000-05-17 Tor Lillqvist <tml@iki.fi>
7262 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
7263 refcount leaks as in the X11 backend.
7265 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
7268 * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
7269 backend. Add _gdk_windowing_window_destroy().
7271 * gtk/gtkcolorsel.c: Include correct backend-specific header.
7272 Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
7273 either, but these probably do exist on nanox?)
7275 * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
7276 which isn't necessarily defined by <math.h>.
7278 * gtk/gtkobject.c (gtk_object_init): Don't go up the class
7279 ancestry past GtkObject.
7281 * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
7284 * gtk/gtk.def: Update corresponding to recent changes.
7286 * gtk/makefile.{cygwin,msc}: Updates.
7288 Fri May 12 18:46:51 2000 Owen Taylor <otaylor@redhat.com>
7290 * docs/Changes-1.4.txt: A bit of editing.
7292 * gdk/gdkwindow.c (_gdk_window_clear_update_area)
7293 * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
7294 to clear the update area for the window, and clear it
7295 when hiding a window.
7297 * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
7298 if window destroyed.
7300 * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
7302 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
7303 gdk_window_destroy() to the generic code, since there was a lot of
7304 window-system-independent logic it in. Add a function:
7306 _gdk_window_destroy()
7308 to the internal API to destroy a window without unreferencing it.
7311 _gdk_windowing_window_destroy()
7313 That does the windowing-system-dependent part of destroying
7316 Fri May 12 11:07:41 2000 Owen Taylor <otaylor@redhat.com>
7318 * gtk/testgtk.c: Fix various memory leaks of pixmaps.
7320 Fri May 12 11:06:10 2000 Owen Taylor <otaylor@redhat.com>
7322 * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
7323 Make gtk_widget_shape_combine_mask() keep a reference count on
7324 the pixmap since it keeps it around.
7326 Fri May 12 10:53:29 2000 Owen Taylor <otaylor@redhat.com>
7328 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
7331 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
7332 leak with event filters.
7334 Thu May 11 14:29:44 2000 Owen Taylor <otaylor@redhat.com>
7336 * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
7337 signal handlers with the right data arguments. (Fixes
7338 some warnings when a widget was repeatedly set as a drag
7341 * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
7342 window so we can avoid avoid setting the DND properties on the
7343 toplevel window repeatedly.
7345 2000-05-13 Tor Lillqvist <tml@iki.fi>
7347 * gdk/win32/gdkwin32.h: Define more message types missing from
7350 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
7351 call gdk_window_destroy_notify(). It was never called. This
7352 probably meant that the GdkWindow was never freed. Thanks Owen for
7355 * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
7356 window as destroyed before calling DestroyWindow(). DestroyWindow()
7357 causes a call to the window procedure (gdk_WindowProc), which
7358 calls gdk_event_translate(), which calls
7359 gdk_window_destroy_notify(), which gets confused unless the window
7360 is set as destroyed.
7362 * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
7363 this function to indicate it's win32 only. Put inside #ifdef
7366 * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
7367 debugging function. (gdk_event_translate:) Add a default branch
7368 that uses the above function to print debug messages with all
7369 Windows messages symbolically.
7371 * gdk/win32/gdkprivate-win32.h: Declare it, and
7372 gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
7374 Fri May 12 20:07:32 2000 Tim Janik <timj@gtk.org>
7376 * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
7379 Fri May 12 17:13:32 2000 Tim Janik <timj@gtk.org>
7381 * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
7383 * gtk/gtktext.c: made the adjustments no-construct args, simply
7384 provide default adjustments.
7385 (gtk_text_destroy): release adjustments.
7387 * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
7388 adjustment argument non-construct.
7390 * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
7391 instead of in finalize.
7392 (gtk_progress_get_text_from_value):
7393 (gtk_progress_get_current_text):
7394 (gtk_progress_set_value):
7395 (gtk_progress_get_percentage_from_value):
7396 (gtk_progress_get_current_percentage):
7397 (gtk_progress_set_percentage):
7398 (gtk_progress_configure): ensure an adjustment is present.
7400 Thu May 11 01:24:08 2000 Tim Janik <timj@gtk.org>
7402 * gtk/gtkcolorsel.[hc]:
7403 * gtk/gtkcolorseldialog.[hc]:
7404 * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
7405 their parent implementation, use bit fields for boolean values, don't
7406 create unused widgets, usage of glib types, braces go on their own
7407 lines, function argument alignment, #include directives etc. etc. etc..
7409 * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
7411 Wed May 10 23:29:52 2000 Tim Janik <timj@gtk.org>
7413 * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
7415 * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
7418 * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
7420 (gtk_combo_destroy): don't keep a pointer to a destroyed window.
7422 * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
7423 to NULL when the toplevel is getting destroyed.
7424 (gtk_menu_set_tearoff_state): same here for the tearoff_window.
7426 (gtk_menu_init): store the information of whether we have to
7427 readd the initial child ref_count during destruction in a new
7428 GtkMenu field needs_destruction_ref_count.
7430 * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
7431 here, those reading: learn from my mistake! ;)
7432 in order for set_?adjustment to support a default adjustemnt if
7433 invoked with an adjustment pointer of NULL, the code read (pseudo):
7434 if (v->adjustment) unref (v->adjustment);
7435 if (!adjustment) adjustment = adjustment_new ();
7436 if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
7437 now imagine the first unref to actually free the old adjustment and
7438 adjustment_new() creating a new adjustment from the very same memory
7439 portion. here, the latter comparision will unintendedly fail, and
7440 all hell breaks loose.
7441 (gtk_viewport_set_hadjustment):
7442 (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
7443 after unreferencing it.
7445 * gtk/gtkcontainer.[hc]: removed toplevel registration
7446 functions: gtk_container_register_toplevel(),
7447 gtk_container_unregister_toplevel() and
7448 gtk_container_get_toplevels() which had wrong semantics
7449 anyways: it didn't reference and copy the list.
7451 * gtk/gtkwindow.c: we take over the container toplevel registration
7452 bussiness now. windows are registered across multiple destructions,
7453 untill they are finalized. the initial implicit reference count
7454 users are holding on windows is removed with the first destruction
7456 (gtk_window_init): ref & sink and set has_user_ref_count, got
7457 rid of gtk_container_register_toplevel() call. add window to
7459 (gtk_window_destroy): unref the window if has_user_ref_count
7460 is still set, got rid of call to
7461 gtk_container_unregister_toplevel().
7462 (gtk_window_finalize): remove window from toplevel list.
7463 (gtk_window_list_toplevels): new function to return a newly
7464 created list with referenced toplevels.
7465 (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
7467 * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
7468 adjustment a non-construct arg.
7469 * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
7470 * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
7471 * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
7473 * gtk/gtkrange.c: added some realized checks.
7474 (gtk_range_destroy): get rid of the h/v adjustments in the
7475 destroy handler instead of finalize. remove timer.
7476 (gtk_range_get_adjustment): demand create adjustment.
7478 * gtk/gtkviewport.c: made h/v adjustment non-construct args.
7479 we simply create them on demand now and get rid of them in
7480 the destroy handler.
7481 (gtk_viewport_destroy): get rid of the h/v adjustments in the
7482 destroy handler instead of finalize.
7483 (gtk_viewport_get_hadjustment):
7484 (gtk_viewport_get_vadjustment):
7485 (gtk_viewport_size_allocate): demand create h/v adjustment
7488 * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
7489 gtk_widget_real_destroy () functionality.
7490 (gtk_widget_real_destroy): reinitialize with a new style, instead
7491 of setting widget->style to NULL.
7493 Fri May 5 13:02:09 2000 Tim Janik <timj@gtk.org>
7495 * gtk/gtkcalendar.c:
7496 * gtk/gtkbutton.c: ported _get_type() implementation over to
7497 GType, either to preserve memchunks allocation facilities,
7498 or because Gtk+ 1.0 GtkTypeInfo was still being used.
7500 * gtk/gtkobject.[hc]: derive from GObject. ported various functions
7501 over. prepare for ::destroy to be emitted multiple times.
7502 removed reference tracer magic. chain into GObjectClass.shutdown()
7503 to emit ::destroy signal.
7505 * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
7508 * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
7515 * gtk/gtkargcollector.c:
7516 * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
7517 not being a fundamental anymore, and to work with the new
7518 type system (nuked fundamental type varargs clutter).
7520 * gtk/*.c: install finalize handlers in the GObjectClass
7521 part of the class structure.
7522 changed direct GTK_OBJECT()->klass accesses to
7524 changed direct object_class->type accesses to GTK_CLASS_TYPE().
7526 * gtktypeutils.[hc]: use the reserved fundamental ids provided by
7527 GType. made most of the GTK_*() type macros and Gtk* typedefs
7528 simple wrappers around macros and types provided by GType.
7529 most notably, a significant portion of the old API vanished:
7532 GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
7533 GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
7536 GTK_TYPE_C_CALLBACK,
7540 gtk_type_set_varargs_type(),
7541 gtk_type_get_varargs_type(),
7542 gtk_type_check_object_cast(),
7543 gtk_type_check_class_cast(),
7544 gtk_type_describe_tree(),
7545 gtk_type_describe_heritage(),
7547 gtk_type_children_types(),
7548 gtk_type_set_chunk_alloc(),
7549 gtk_type_register_enum(),
7550 gtk_type_register_flags(),
7551 gtk_type_parent_class().
7552 replacements, where available are described in ../docs/Changes-1.4.txt.
7553 implemented compatibility functions for the remaining API.
7555 * configure.in: depend on glib 1.3.1, use gobject module.
7557 Thu May 11 12:39:50 2000 Owen Taylor <otaylor@redhat.com>
7559 * TODO.xml: Various updates to current status.
7561 Wed May 10 20:25:04 2000 Owen Taylor <otaylor@redhat.com>
7563 * gtk.m4: Print out version when test succeeds.
7565 Wed May 10 16:38:17 2000 Owen Taylor <otaylor@redhat.com>
7567 * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
7568 gtk/gtkhsv.[ch]: Color selection dialog rewrite.
7570 (Original triangle color selector from Simon Budig
7571 <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
7572 from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
7573 Santiago <mrcooger@cyberverse.com>)
7575 * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
7576 out into a separate widget.
7578 * gtk/testgtk.c: Add some checkbuttons for toggling palette
7579 and opacity controls.
7581 Wed May 10 16:08:09 2000 Owen Taylor <otaylor@redhat.com>
7583 * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
7584 snuck in prematurely.
7586 2000-05-07 Tor Lillqvist <tml@iki.fi>
7588 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
7589 had deleted a ! operator by mistake, which caused
7590 GDK_SELECTION_CLEAR events never to be generated, which caused
7591 only the first copy to the clipboard from an gtkeditable to
7592 actually cause a copy to the Windows clipboard.
7594 2000-05-06 Tor Lillqvist <tml@iki.fi>
7596 * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
7597 compilation, too. Current mingw gcc distributions include the
7598 necessary headers. Also the necessary IIDs are now in mingw
7599 headers/libraries, and own definitions unnecessary.
7601 More hacking on OLE2 DND, still doesn't work though, and thus
7604 * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
7607 Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
7609 * gdk/nanox/*: nano-X port work in progress.
7610 * gdk/simple.c: simple test for Gdk.
7611 * README.nanox: notes about the port: read this first!
7612 * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
7615 Fri May 5 11:18:47 2000 Owen Taylor <otaylor@redhat.com>
7617 * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
7618 gdk_window_clear() into common code, implement in terms of
7619 gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
7620 not redirected to the backing rectangle.
7622 Wed Apr 26 01:53:23 2000 Owen Taylor <otaylor@redhat.com>
7624 * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
7625 EXTRA_DIST. It does not work well when the file that
7626 everything depends on is not in the tarball.
7628 Tue Apr 25 22:20:41 2000 Owen Taylor <otaylor@redhat.com>
7630 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
7631 with recursion where process_updates() is called from
7632 an expose handler. (GtkTextView is highly broken in
7633 doing this, but it should work, so it is a nice test
7636 Sun Apr 23 23:39:18 2000 Owen Taylor <otaylor@redhat.com>
7638 * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
7639 handle the case where updates are queued during processing of
7642 Tue Apr 18 14:16:50 2000 Owen Taylor <otaylor@redhat.com>
7644 * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
7645 window is on gdk_display - use that instead of segfaulting.
7647 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
7649 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
7650 broken and require an empty arg, give it to them.
7652 Fri Apr 28 19:34:32 2000 Tim Janik <timj@gtk.org>
7654 * gtk/gtklabel.h: indentation fixes.
7656 2000-05-02 Tor Lillqvist <tml@iki.fi>
7658 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
7659 draw too narrow or too low arcs, they seem to fail, at least with
7660 some display drivers.
7662 * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
7664 Large changes to the Win32 backend, partially made necessary by
7665 the changes to the backend-independent internal
7666 structures. Attempts to implement similar backing store stuff as
7667 on X11. The current (CVS) version of the Win32 backend is *not* as
7668 stable as it was before the no-flicker branch was merged. A
7669 zipfile with that version is available from
7670 http://www.gimp.org/win32/. That should be use by "production"
7671 code until this CVS version is usable. (But note, the Win32
7672 backend has never been claimed to be "production quality".)
7674 * README.win32: Add the above comment about versions.
7676 * gdk/gdkwindow.c: Don't use backing store for now on Win32.
7678 * gdk/gdk.def: Update.
7680 * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
7681 presumably be replaced by some more better mechanism as 1.4 gets
7682 closer to release shape.
7684 * gdk/makefile.{cygwin,msc}: Update.
7686 * gdk/win32/*.c: Correct inclusions of the backend-specific and
7687 internal headers. Change code according to changes in these. Use
7688 gdk_drawable_*, not gdk_window_* where necessary.
7690 * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
7693 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
7694 to interpret single characters as UTF-8. Thanks to Hans Breuer.
7695 Use correct function name in warning messages.
7697 * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
7698 GSourceFuncs gdk_event_prepare and gdk_event_check.
7699 (gdk_event_get_graphics_expose): Do implement, use
7700 PeekMessage. Thanks to Hans Breuer.
7701 (event_mask_string): Debugging function to print an GdkEventMask.
7702 (gdk_pointer_grab): Use it.
7704 * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
7705 (old) book I used claimed was Hangul actually is CJK Unified
7706 Ideographs Extension A. Also, Hangul Syllables were missing.
7709 * gdk/win32/gdkgc-win32.c: Largish changes.
7711 * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
7712 g_win32_getlocale() from GLib, and not setlocale() to get current
7715 * gdk/win32/gdkprivate-win32.h
7716 * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
7717 gdkwin32.h, similarily as in the X11 backend.
7719 * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
7720 assignment was used instead of equals in if test. Thanks to Hans
7723 * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
7726 * gdk/win32/makefile.{cygwin,msc}
7727 * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
7728 path to the Win32 headers that works also with the mingw compiler.
7730 * gtk/gtkstyle.c: Include <string.h>.
7732 2000-04-26 Havoc Pennington <hp@redhat.com>
7734 * gtk/gtklabel.c (gtk_label_get_text): Add this function,
7735 replacing the broken gtk_label_get ()
7737 2000-04-15 Havoc Pennington <hp@pobox.com>
7739 * gdk/gdkdnd.h: clean up enum format, remove extra comma,
7740 this keeps scanner scripts from getting confused.
7742 * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
7743 data, rather than void
7745 2000-04-15 Tor Lillqvist <tml@iki.fi>
7747 * gtk/gtkclist.c (gtk_clist_motion)
7748 * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
7749 with is_hint FALSE, get x and y from the event. They used to be
7750 used uninitialised. The Win32 backend never sends motion events
7751 marked as hints. This for instance fixes the annoying file and
7752 font selector behaviour in the Win32 version.
7754 2000-04-14 Tor Lillqvist <tml@iki.fi>
7756 * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
7757 gtk_private_n_signals variables, they are used by some software,
7760 * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
7761 installation directory from the Registry, where the installer
7764 Fri Apr 7 17:19:27 2000 Owen Taylor <otaylor@redhat.com>
7766 * gdk/x11/Makefile.am: Fix problem with installation directory for
7769 * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
7770 <mrcooger@cyberverse.com> so that when selecting menus with the
7771 mouse, the first item will not be selected, but when selecting
7772 with an accelerator, or navigating left-right on a menubar with
7773 the menus popped up, the first item will be selected.
7775 2000-04-05 Dan Damian <dand@dnttm.ro>
7777 * configure.in: Added "ro" to ALL_LINGUAS.
7779 Wed Apr 5 00:08:36 2000 Owen Taylor <otaylor@redhat.com>
7781 * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
7784 * Makefile.am (EXTRA_DIST): Fix typo.
7786 * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
7787 to catch gdkconfig.h
7789 * gtk/gtkitemfactory.c: Added FIXME.
7791 2000-03-30 Jonathan Blandford <jrb@redhat.com>
7793 * gtk/gtkpaned.c (gtk_paned_get_position): oops.
7794 s/return_if_fail/return_val_if_fail/g and add a return value.
7796 Mon Mar 27 20:56:14 2000 Owen Taylor <otaylor@redhat.com>
7798 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
7801 * gdk/gdkinput.h: Fix missing line from merge.
7803 Mon Mar 27 20:39:49 2000 Owen Taylor <otaylor@redhat.com>
7805 * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
7806 instead of gdkprivate.h.
7808 Sun Mar 12 15:19:24 2000 Owen Taylor <otaylor@redhat.com>
7810 * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
7811 parent class to correctly be GtkDialogClass.
7813 Thu Feb 24 23:58:21 2000 Owen Taylor <otaylor@redhat.com>
7815 * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
7816 toplevel windows and their immediate children by their parents,
7817 since the size of toplevel windows is out of our immediate
7818 control and we don't get any real benefit from trying to track
7819 this size for clipping.
7821 * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
7822 for input_only windows.
7824 * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
7825 to fix some hacks and make sure that we don't try to set the
7826 background of input only windows.
7828 Thu Feb 24 18:11:46 2000 Owen Taylor <otaylor@redhat.com>
7830 * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
7831 the _really_ internal stuff, and leave gdkprivate.h for the fake private
7832 stuff that we've traditionally exposed.
7834 * gdk/**.c: Use gdkinternals.h where appropriate.
7836 * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
7837 not include gdkprivate-x11.h, move all stuff of conceivable public
7838 interest into gdkx.h; keep all really private stuff in
7839 uninstalled header gdkprivate-x11.h.
7841 * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
7842 image->image_put on windows through a new function _gdk_window_draw_image()
7843 to allow us to do backing store for images. (Sort of ugly)
7845 * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
7846 contexts locally so that we can offset them properly when drawing
7847 onto backing pixmaps.
7849 * gdk/gdkinput.h: Reindented
7851 * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
7852 pixmap or color for the window, so we can properly initialize
7853 our double-buffer pixmaps, and also so that we temporarily set
7854 a background of None while scrolling.
7856 * gdk/gdkregion.h: Revise region boolean operators to have an
7857 interface that is actually convenient - switch from creating new
7858 regions on every op, to "methods" that modify existing regions
7859 (A = A OP B). 3 argument forms which allow dest == src, would also
7860 be possible, but the current interfaces seem to map nicely
7861 onto what needs to be done. (There is quite a lot of region
7864 * gdk/gdkregion.h: Add constructor from rectangle and a copy
7867 * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
7868 gdkpoly-generic.h: Copy region code from Xlib, switch it over
7869 to 32 bit coordinates, modify it to be mostly GTK+ style
7870 and to have interfaces that match gdkregion.h.
7872 * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
7873 double-buffered drawing. gdk_window_begin_paint_{rect,region}()
7874 create a backing pixmap and redirect all drawing to
7875 that backing pixmap until a matching gdk_window_end_paint().
7877 * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
7878 Create a special drawable class for GtkWindow's that
7879 redirects the drawing to the backing pixmap as necessary
7880 and then calls the real operations in _gdk_windowing_window_class.
7882 * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
7883 Store invalid region for each window. Generate expose events for invalid
7884 region in an idle. This replaces both the expose compression
7885 and the redrawing queuing in GTK+. It is both more efficient and
7886 simpler than either one individually and far more so then the
7889 * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
7890 Emulate 32 bit coordinates for windows with 16 bit coordinates
7891 by offsetting drawing, guffaw scrolling techniques and
7892 mapping/unmapping child windows as necessary.
7894 * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
7895 where, when invalid regions are processed, the region is stored,
7896 and if expose events come in that are detectably duplicate
7897 the processed exposes (by comparison of event serial numbers),
7898 the stored region is subtracted out of those exposes.
7900 * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
7901 regions newly exposed when scrolling or resizing windows.
7902 This, combined with forcing processesing of queued invalidated
7903 regions, gives nice flicker-free scrolling.
7905 * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
7906 invalidated regions after every scroll.
7908 * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
7909 emulation in GDK. Its, for all practical purposes just a
7910 GtkViewport/GtkFixed hybrid now.
7912 * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
7913 (16-bit) structures as necessary instead of just casting.
7915 * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
7916 in terms of the structures from gdkregion-generic.c, using appropriate
7917 offsets from GDK to X11 coordinates. Cache clip mask and
7918 origin and ts origin locally and only flush to the server
7919 when drawing, to avoid constantly setting and resetting these
7920 values when offsetting GC's for scrolling and backing pixmaps.
7922 * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
7924 * gtk/gtkcontainer.c: Call process_all_updates at end
7925 of resizing to reduce flicker. (Avoids having redraw
7926 lag arbitrarily behind resize under some circumstances)
7928 * gtk/gtkentry.c: Remove old backing store code, and simply take
7929 advantage of the new backing store capabilities of GDK.
7931 * gtk/gtkmain.c: Simple implementation of widget backing
7932 store - simply push a paint while handling each expose.
7933 (Should really be configurable widget for widget.)
7935 * gtk/gtkwidget.c: Remove all the old complicated redraw
7936 code, and simply invalidate the GDK windows from
7937 gdk_window_queue_clear(), etc. (Sigh, so much carefully
7938 debugged complexity ... gone to the winds.)
7940 Remove all the code for suppressing expose events while
7941 resizes are pending; this isn't needed since the invalid
7942 areas won't be processed until after the resizes are
7943 processed, since they are in a lower priority idle.
7945 Thu Feb 24 15:37:41 2000 Owen Taylor <otaylor@redhat.com>
7947 * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
7948 and height of dest rectangle for non-intersecting rectangles.
7950 Sun Feb 20 16:47:31 2000 Owen Taylor <otaylor@redhat.com>
7952 * gtk/gtkwidget.h: Make GtkAllocation just a typedef
7955 Sun Feb 20 11:27:00 2000 Owen Taylor <otaylor@redhat.com>
7957 * gdk/gdk{events,image,private,types,window}.h
7958 gdk/x11/gdkinputprivate.h: Change all coordinates
7959 from int16 to int. Also, Change width and height from
7960 unsigned to signed to avoid all the stupid C
7963 Sat Feb 19 12:01:53 2000 Owen Taylor <otaylor@redhat.com>
7965 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
7966 Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
7967 Add some more detailed checking.
7969 * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
7970 New function to retrieve the depth of a drawable.
7972 * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
7973 field, reorder fields to save memory.
7975 Mon Dec 13 14:06:03 1999 Owen Taylor <otaylor@redhat.com>
7977 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
7978 of the background image instead of scaling the background down to
7981 * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
7982 which temporarily set slider to wrong size.
7984 * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
7987 Wed Nov 17 18:36:05 1999 Owen Taylor <otaylor@redhat.com>
7989 2000-03-23 Jonathan Blandford <jrb@redhat.com>
7991 * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
7993 2000-03-17 Tor Lillqvist <tml@iki.fi>
7995 * gdk/win32/gdkevents-win32.c: Remove the #ifndef
7996 USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
7998 * gdk/win32/gdkfont-win32.c
7999 * gdk/win32/gdkproperty-win32.c
8000 * gdk/win32/gdkselection-win32.c
8001 * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
8004 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
8006 * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
8008 Mon Mar 13 18:37:55 2000 Owen Taylor <otaylor@redhat.com>
8010 * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
8011 is called without trapping X errors.
8013 Fri Feb 25 10:48:53 2000 Owen Taylor <otaylor@redhat.com>
8015 * gtk/gtkrc.*: Fix problem where stray '"' characters found their
8016 way into the fontset lists.
8018 Tue Feb 22 08:52:52 2000 Tim Janik <timj@gtk.org>
8020 * gtk/gtkthemes.h: add extern "C" scope.
8022 Mon Feb 21 20:16:42 2000 Lars Hamann <lars@gtk.org>
8024 * gtk/gtkclist.c: applied patch from Guy Harris <guy@netapp.com>
8025 to make appends to the list constant. (gtk-guy-990901-0.patch)
8027 Mon Feb 14 22:50:10 2000 Tim Janik <timj@gtk.org>
8029 * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
8030 for the typename hash table.
8032 Mon Feb 14 15:01:23 2000 Owen Taylor <otaylor@redhat.com>
8034 * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
8035 to make sure we never divide by zero.
8036 (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
8038 Mon Feb 14 12:29:38 2000 Owen Taylor <otaylor@redhat.com>
8040 * gtk/gtkfontsel.c: Apply patch from
8041 SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
8042 better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
8044 Also, some cleanups in atom handling.
8046 Sun Feb 13 08:02:21 2000 Tim Janik <timj@gtk.org>
8048 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8051 Fri Feb 11 02:19:32 2000 Tim Janik <timj@gtk.org>
8053 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
8054 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
8055 * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
8056 more guint wrap-around bugs before going to bed.
8058 Thu Feb 10 16:16:35 2000 Tim Janik <timj@gtk.org>
8060 * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
8061 guint wrap arounds in allocation.width.
8063 * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
8064 process untill we fit the allocation given.
8066 Tue Feb 8 09:38:29 2000 Tim Janik <timj@gtk.org>
8069 (gtk_widget_unrealize): guard widget access with ref/unref
8070 around signal emission.
8071 (gtk_widget_hide): same here, but also check its destroyed
8072 state before queueing a resize.
8074 Tue Feb 8 03:05:55 2000 Tim Janik <timj@gtk.org>
8076 * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
8077 of gtk_default_insensitive_bg as insensitive base color.
8079 * gtk/gtktext.c (gtk_text_style_set): set the background color according
8080 to the widget's state.
8081 (gtk_text_realize): same here.
8082 (gtk_text_state_changed): same here.
8083 (draw_bg_rect): compare background color against base[] from
8084 GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
8086 Mon Feb 7 04:01:55 2000 Tim Janik <timj@gtk.org>
8088 * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
8089 grabs are active, unless a delete event is send to the toplevel
8090 of the currently grab holding widget.
8092 Sun Feb 6 10:13:15 2000 Owen Taylor <otaylor@redhat.com>
8094 * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
8095 debugging g_print's.
8097 Fri Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
8099 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
8100 ever make the scrolled-window requisition ever depend on the
8101 visibility state of the scrollbars for the AUTOMATIC policy.
8102 This breaks the GTK+ requisition model, and causes loops.
8104 Fri Feb 4 15:09:12 2000 Owen Taylor <otaylor@redhat.com>
8106 * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
8107 the default font to avoid problems with XFree86-4.0 where the
8108 default charset is iso10646-1, not iso8859-1.
8110 Thu Feb 3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
8116 * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
8118 * gtk/Makefile.am: minor cosmetic consistency tweak
8120 Thu Feb 3 14:46:01 2000 Owen Taylor <otaylor@redhat.com>
8122 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
8123 the activate_time to 0, so that we handle a quick
8124 press/release press/release properly and don't suppress
8125 the second release. (Red Hat bug #7545)
8127 Wed Feb 2 22:25:17 2000 Tim Janik <timj@gtk.org>
8129 * gtk/gtkctree.c (row_delete):
8130 (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
8131 bugs with destruction notifier, *always* update internal
8132 structures *before* calling user code.
8134 Sun Jan 30 20:10:52 2000 Lars Hamann <lars@gtk.org>
8136 A few more fixes for bug #5487, #2051, #2677.
8138 (gtk_clist_button_press): Reset clist->anchor to -1 if event->type is
8139 not GDK_BUTTON_PRESS.
8140 (resync_selection): resync only if selection_mode is
8141 GTK_SELECTION_EXTENDED
8142 * gtk/gtkctree.c (resync_selection): same here
8144 Sun Jan 30 12:29:20 2000 Owen Taylor <otaylor@redhat.com>
8146 * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
8147 gdk_drag_get_selection() and gtk_menu_detach().
8149 [ From Jeroen Ruigrok/Asmodai ]
8151 Sat Jan 29 10:11:56 2000 Owen Taylor <otaylor@redhat.com>
8153 * gtk/gtknotebook.c (gtk_notebook_size_request):
8154 page->tab_label can be NULL.
8156 2000-01-25 Havoc Pennington <hp@pobox.com>
8158 * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
8161 * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
8163 * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
8165 * gdk/gdkproperty.c (gdk_property_get): return boolean
8167 * gdk/gdkinput.c (gdk_input_set_mode): return boolean
8169 * gdk/gdkim.c (gdk_im_ready): return boolean
8171 * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
8173 * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
8174 glib clash, should fix glib)
8176 * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
8177 (gdk_get_show_events): return gboolean, and canonicalize
8180 * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
8182 (gdk_colors_alloc): gboolean whether to be contiguous
8183 (gdk_color_equal): return gboolean since we are a predicate
8184 and not a qsort() (this looks semi-wrong due to glib breakage,
8185 IMO glib should be fixed)
8187 * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
8188 (gdk_get_use_xshm): return gboolean
8189 (gdk_pointer_is_grabbed): return gboolean
8191 * gdk/gdk.h: Change prototypes to match all the above changes,
8192 and re-run egtk-format-protos as required.
8194 Fri Jan 28 12:28:17 2000 Owen Taylor <otaylor@redhat.com>
8196 * gtk/gtkctree.c (resync_selection):
8197 * gtk/gtkclist.c (resync_selection):
8199 Return immediately if clist->drag_pos < 0. This is a workaround
8200 for the corrupt state that the clist gets into when a
8201 GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
8203 Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
8205 * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
8206 variable from recent commit.
8208 Thu Jan 27 15:22:09 2000 Owen Taylor <otaylor@redhat.com>
8210 * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
8212 Thu Jan 27 18:00:55 2000 Tim Janik <timj@gtk.org>
8214 * gtk/Makefile.am: prefix all autogenerated source that get build in
8215 $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
8216 in builddir. since we subsequently cd into srcdir for autogeneration,
8217 the paths have to be stripped from the target file names, thusly we
8218 use $(@F) as target names now.
8219 put a comment about configure.in's --disable-rebuilds option,
8220 which can be used for non-writable source directories, for development
8221 setups though, srcdir has to be *writable*.
8223 hu Jan 27 00:15:03 2000 Owen Taylor <otaylor@redhat.com>
8225 * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
8226 Finish the job of allowing event to be NULL.
8227 (Fixes bug #4283, reported by Chris Blizzard)
8229 * gtk/gtkentry.c (entry_adjust_scroll): When calculating
8230 things so that the cursor appears on screen, properly
8231 take into account INNER_BORDER.
8232 (Fixes bug #4754, reported by Antonio Campos)
8234 Wed Jan 26 23:12:28 2000 Owen Taylor <otaylor@redhat.com>
8236 * gtk/gtknotebook.c (gtk_notebook_map): Don't
8237 show the tab_label unless it itself is visible.
8239 gtk/gtknotebook.c (gtk_notebook_size_request):
8240 Do a better job of making sure that the visibility
8241 of the tab label corresponds to whether it should
8244 Wed Jan 26 21:17:03 2000 Owen Taylor <otaylor@redhat.com>
8246 * gtk/gtkoptionmenu.c (gtk_option_menu_position):
8247 Use the requisition, not the allocation, since the
8248 allocation has not necessarily been computed yet.
8249 (Pointed out by Eugene Osintsev)
8251 Wed Jan 26 19:44:25 2000 Owen Taylor <otaylor@redhat.com>
8253 * gtk/gtkstyle.c (gtk_style_new): Dont' set
8254 style/base[GTK_STATE_INSENSITIVE] both to
8255 gtk_default_insensitive_bg!
8256 (Bug #2187, reported by Jonathan Blandford)
8258 * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
8259 Add Alt_L, Alt_R to list of invalid accelerators.
8260 (Bug #3736, reported by Vlad Harchev)
8262 Wed Jan 26 19:01:56 2000 Owen Taylor <otaylor@redhat.com>
8264 * gtk/gtkfilesel.c (open_ref_dir): Fix several
8265 bugs which occured after an attempt to open
8266 invalid home directory left cmpl_state->reference_dir == NULL.
8268 - completion on files in home directory didn't work
8269 - completion on an empty string caused segfault
8271 (Bug #3678, reported by Steve Ratcliffe)
8273 * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
8274 cut and paste error that was causing scales to
8275 be incorrectly positioned.
8277 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
8279 2000-01-27 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
8281 * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
8282 when checking for dcgettext, if we've found we needed
8285 Wed Jan 26 18:06:07 2000 Owen Taylor <otaylor@redhat.com>
8287 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
8288 queue_clear on NO_WINDOW widgets during a reparent,
8289 since at that point the window and widget heirarchies
8290 are out of sync. This stops crashing in some cases
8291 (the scrolled window reparent test, for instance), and
8292 _probably_ won't cause drawing errors.
8294 * gtk/testgtk.c: Make the reparenting-a-scrolled-window
8295 test do what it was supposed to do and be robust against
8296 window closings, etc. (Bug #2443)
8298 Wed Jan 26 16:56:54 2000 Owen Taylor <otaylor@redhat.com>
8300 * gtk/gtkentry.c: Fix return values on mouse events.
8301 (Bug #2686, Sky <seb_sky@yahoo.com>)
8303 * gtk/genmarshal.pl: Fix up handling of FOREIGN.
8304 (pointed out by George Lebl)
8306 * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
8307 (From Ettore Perazzoli <ettore@helixcode.com>)
8309 Mon Jan 24 10:44:48 2000 Owen Taylor <otaylor@redhat.com>
8311 * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
8312 clicks between rows or outside calender area correctly.
8313 (Patch from Damon Chaplin)
8315 * gtk/gtkclist.c (gtk_clist_set_row_data_full):
8316 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
8317 Call destroy function when overwriting existing data.
8318 (Pointed out by Damon Chaplin)
8320 Tue Jan 25 09:55:41 2000 Owen Taylor <otaylor@redhat.com>
8322 * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
8323 which was causing problems on various systems with Xmu.
8324 This hasn't been needed for a very long time.
8327 Sun Jan 23 22:27:36 2000 Owen Taylor <otaylor@redhat.com>
8329 * gdk/gdki18n.h: Include <ctype.h> when defining
8330 gdk_isw* in terms of is* as a fallback.
8331 (Bug #4106 - Dan Winship <danw@MIT.EDU>)
8333 Sun Jan 23 22:12:36 2000 Owen Taylor <otaylor@redhat.com>
8335 * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
8336 realize the widget when it is size allocated!
8339 * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
8340 Removed unused call to gdk_window_get_size() that
8341 showed up when the above was fixed.
8343 Sat Jan 22 15:44:30 2000 Owen Taylor <otaylor@redhat.com>
8345 * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
8346 fix up widget->window when the widget is a
8347 NO_WINDOW container widget.
8349 Sat Jan 22 12:40:48 2000 Owen Taylor <otaylor@redhat.com>
8351 * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
8352 to account for the fact that feof() does _not_
8353 return TRUE on errors, and thus avoid infinite loops
8354 when trying to use gdk_pixmap_create_from_xpm()
8355 on unreadable values.
8357 Fri Jan 21 18:32:43 2000 Owen Taylor <otaylor@redhat.com>
8359 * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
8361 Fri Jan 21 16:24:08 2000 Owen Taylor <otaylor@redhat.com>
8363 * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
8364 gdk_gc_set_dashes to take gint8 instead of gchar to
8365 make it clearer that it is _not_ a NULL terminated string.
8367 * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
8368 gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
8369 gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
8372 Thu Dec 30 04:51:05 1999 Tim Janik <timj@gtk.org>
8374 * gtk/gtkvscale.c (gtk_vscale_pos_background):
8375 * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
8376 background size relative to our allocation, guard against small
8377 allocations, we may have not yet been size allocated.
8379 Thu Dec 2 10:59:14 1999 Owen Taylor <otaylor@redhat.com>
8381 * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
8382 not just version == 3. We implement all 3 + most of 4 -
8383 (we don't support matching text/plain;charset=iso-8859-1
8384 to a dest that expects text/plain). We'll still advertise
8385 3 to be safe, but any client implementing version >= 3
8386 must interoperate with 3.
8388 Tue Mar 14 11:53:31 2000 Owen Taylor <otaylor@redhat.com>
8390 * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
8391 background and gc members, add a warning in gtk_tooltips_set_color()
8392 indicating that this function is deprecated.
8394 Thu Mar 9 22:10:56 GMT 2000 Tony Gale <gale@gtk.org>
8396 * docs/gtkfaq.sgml: FAQ Update:
8397 - Minor cleanups (Emmanuel, me)
8399 I need to add a new signal to a GTK+ widget. Any idea? (timj)
8400 How can I retrieve the text from a GtkMenuItem? (timj)
8401 How do I validate/limit/filter the input to a GtkEntry? (me)
8402 Memory does not seem to be released when I free the list
8403 nodes I've allocated (timj)
8405 2000-03-07 Tor Lillqvist <tml@iki.fi>
8407 * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
8408 (gdk_win32_gdi_failed) New function for reporting errors from GDI,
8409 for which it is no use to call GetLastError onWin9x.
8410 (gdk_other_api_failed) New function, for general error
8411 reporting without calling GetLastError.
8412 (gdk_win32_api_failed) OTOH, this function always calls
8413 GetLastError. (gdk_win32_last_error_string) Remove this function,
8414 GLib has the equivalent now.
8416 * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
8417 call them with function name, file name and line number in the
8420 * gdk/win32/*.c: Use the new macros for reporting errors from GDI
8423 * gtk/gtk.def: Add some missing entry points.
8425 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
8426 gtk_paned_set_gutter_size, which don't exist any longer, as void.
8428 Fixes by Hans Breuer:
8430 * gdk/makefile.msc: Update for debugging.
8432 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
8433 implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
8434 PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
8437 * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
8440 * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
8442 * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
8444 2000-03-04 Tor Lillqvist <tml@iki.fi>
8446 * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
8447 just pixel value of background colour.
8449 * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
8450 containing code snippet previously duplicated in a couple of
8453 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
8456 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
8457 GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
8458 events for autorepeated Shift, Control and Alt keys. Use
8461 * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
8462 pointer is inside the window the cursor of which we are setting,
8463 call SetCursor immediately.
8465 * gdk/win32/makefile.cygwin
8466 * gtk/makefile.cygwin: If we don't have the build number stamp
8469 * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
8470 gtk_paned_set_gutter_size as empty.
8472 * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
8474 Tue Feb 29 13:10:00 GMT 2000 Tony Gale <gale@gtk.org>
8476 * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
8477 gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
8478 docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
8479 docs/gtk_tut.sgml docs/gtk.texi TODO:
8481 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
8483 Sat Feb 26 11:46:25 GMT 2000 Tony Gale <gale@gtk.org>
8485 * gtk/gtkcalendar.c: Implement num_marked_dates,
8486 and don't emit mutiple day_selected signals on
8489 2000-02-25 Jonathan Blandford <jrb@redhat.com>
8491 * docs/make-todo (lineno): let title and logo be configurable so
8492 that GNOME can use this script too.
8494 * TODO.xml: added logourl and a title
8496 Fri Feb 25 11:12:00 2000 Owen Taylor <otaylor@redhat.com>
8498 * TODO.xml: Added some UI items, and an explanatory
8499 comment at the top of the file.
8501 Thu Feb 24 09:07:28 2000 Tim Janik <timj@gtk.org>
8503 * TODO.xml: some updates, added abunch of new entries.
8504 a note for those fiddeling with this file, when done
8506 $ ./docs/make-todo TODO.xml >/dev/null
8507 and correct output errors before comitting changes.
8509 Wed Feb 23 22:59:50 2000 Owen Taylor <otaylor@redhat.com>
8511 * TODO.xml: Added XML-structured TODO file.
8512 * docs/make-todo: python script to turn TODO.xml into
8515 2000-02-23 Jonathan Blandford <jrb@redhat.com>
8517 * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
8518 the function to let it draw the seven dots, instead of the old,
8519 much maligned, method.
8520 (draw_dot): New function to draw a dot.
8522 * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
8523 to draw the handle inside the border width as opposed to outside.
8524 Use paint function instead of gdk_draw_point.
8526 * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
8527 to draw the handle inside the border width as opposed to outside.
8528 Use paint function instead of gdk_draw_point.
8530 * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
8531 Change indenting to be more GTK like.
8533 Wed Feb 23 10:54:14 GMT 2000 Tony Gale <gale@gtk.org>
8535 * docs/gtk_tut.sgml: New section on GtkCalendar
8536 * examples/calendar: Update example code
8538 Tue Feb 22 13:54:12 GMT 2000 Tony Gale <gale@gtk.org>
8540 * docs/gtkfaq.sgml: FAQ Update
8542 2000-02-19 Anders Carlsson <andersca@gnu.org>
8544 * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
8545 to prevent the scroll event to be propagated upwards.
8547 Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
8549 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
8550 OwnerGrabButtonMask from button entries for
8551 GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
8553 * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
8554 to the event mask (which will result in button/press release
8555 being added to the event mask on Unix) so scrolling works
8556 for layouts in scroll windows.
8558 * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
8560 Patch from Anders Carlsson <andersca@gnu.org> to add
8563 * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
8564 scrolling to the "Test Scrolling" part of testgtk.
8566 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
8568 * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
8569 it against GDK_SCROLL.
8571 * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
8572 way of mouse wheel scrolling.
8574 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
8576 * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
8578 * gtk/gtkmain.c: Removed previous mouse wheel hack.
8580 * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
8581 gdk_event_mask_table.
8583 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
8584 GdkEventScroll handler.
8586 * gdk/gdkevents.h: Added GdkEventScroll structure.
8588 Thu Feb 17 17:10:12 2000 Owen Taylor <otaylor@redhat.com>
8590 * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
8591 and Anders Carlsson to change the Paned widgets so that they
8592 can be dragged from anywhere along the length. Also change
8593 the way that this is drawn to make this apparent.
8595 * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
8596 from George Lebl to check that option_menu->menu is present
8597 before getting history.
8599 2000-02-14 Tor Lillqvist <tml@iki.fi>
8601 * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
8602 before the assertion for non-NULL segment list.
8604 * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
8605 Seems that pattern brushes *must* be 8x8 pixels! At least on my
8606 machine, but it might be display driver dependent. Sigh, so make
8607 sure the stipple is that size. Does Windows suck or what?
8609 * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
8612 2000-02-13 Havoc Pennington <hp@pobox.com>
8614 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
8616 (gdk_cursor_new): init refcount to 1
8618 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
8620 2000-02-13 Tor Lillqvist <tml@iki.fi>
8622 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
8623 so that we don't have to do unnecessary settings to the HDC.
8625 * gdk/win32/gdkdrawable-win32.c
8626 * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
8629 * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
8630 the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
8631 GDI paths, call WidenPath to get the outline of the stroken path,
8632 and then fill the outline (with the brush that was built from the
8635 * gdk/win32/gdkgc-win32.c: Factor out common code from
8636 _gdk_win32_gc_new and gdk_win32_gc_set_values into
8637 gdk_win32_gc_values_to_win32values. Use correct colour for
8638 SetBkColor() (Until now the code actually used a random colour in
8639 the call to SetBkColor()... but that didn't show up as not many
8640 GDI APIs use the background colour. Pattern (opaque stippled)
8643 * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
8644 gdk_win32_api_failed): New functions for error logging.
8646 * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
8647 WIN32_API_FAILED to call them, passing function or file name and
8650 * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
8652 * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
8653 GdkColor for foreground and background in GdkGCWin32Data.
8655 * gdk/makefile.cygwin: Link in the resource object separately.
8657 * gdk/win32/rc/gdk.rc
8658 * gtk/gtk.rc (New file)
8659 * gdk/win32/makefile.cygwin
8660 * gtk/makefile.cygwin: Update build number in DLLs automatically,
8663 Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org>
8665 * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
8666 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
8667 * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
8668 * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
8669 parameters given and cursor->ref_count. coding style fixups.
8671 * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8674 * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
8675 fix up widget macros and add _GET_CLASS() variant.
8677 * gtk/*.c: some GtkType fixups.
8679 2000-02-09 Tor Lillqvist <tml@iki.fi>
8681 * gdk/win32/gdkproperty-win32.c
8682 * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
8685 2000-02-04 Tor Lillqvist <tml@iki.fi>
8687 * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
8688 g_filename_to_utf8 to convert the font names Windows gives us from
8689 whatever is the default codepage to UTF-8.
8690 (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
8691 in the other direction.
8693 * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
8694 error in debugging output.
8696 2000-02-02 Tor Lillqvist <tml@iki.fi>
8698 * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
8699 and height parameters to gdk_window_clear_area(). Not minus one.
8701 Wed Feb 2 11:58:05 2000 Owen Taylor <otaylor@redhat.com>
8703 * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
8704 checks if the widget passed to gtk_drag_get_data() was not the
8707 2000-02-01 Tor Lillqvist <tml@iki.fi>
8709 * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
8710 g_filename_from_utf8 functions (which were added a moment ago to
8711 GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
8714 gtk_file_selection_get_filename returns the filename in the C
8715 runtime encoding. It calls g_filename_from_utf8, but copies the
8716 returned string to a static buffer, which is returned. I think
8717 this is better than returning the result from g_filename_from_utf8
8718 directly, which would mean all apps that use it would have to free
8719 the return value. Or should this function care about this issue at
8720 all? Maybe a new function with clearly defined semantics.
8722 * gtk/gtkfilesel.h: Add comment about
8723 gtk_file_selection_get_filename returning the filename in the C
8728 * gdk/makefile.{cygwin,msc}
8729 * gtk/gtk.def: Updates.
8731 * gdk/gdkcursor-win32.c: Initialise refcount.
8733 2000-01-31 Yuan-Chung Cheng <platin@linux.org.tw>
8735 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
8737 2000-01-30 Havoc Pennington <hp@pobox.com>
8739 * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
8742 * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
8744 * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then
8745 implemented in platform-specific code
8747 * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
8749 * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
8752 * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
8753 put an underscore in front
8755 * gdk/gdkcursor.c: new file, implements
8756 gdk_cursor_ref/gdk_cursor_unref
8758 * gdk/gdkcursor.h: Refcount GdkCursor
8760 * gdk/gdkcompat.h (gdk_cursor_destroy): compat
8762 2000-01-29 Tor Lillqvist <tml@iki.fi>
8765 * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
8767 Tue Jan 25 11:43:21 2000 Owen Taylor <otaylor@redhat.com>
8769 * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
8770 structures to properly inherit from GtkWidget not GtkBin.
8772 Sun Jan 23 20:28:24 2000 Owen Taylor <otaylor@redhat.com>
8774 * gtk+.spec.in: Added lib/gtk+/include/* to %files
8775 (bug #5178 - Peter Wainright)
8777 * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
8778 so that it will be installed.
8779 (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
8781 Fri Jan 21 16:29:28 2000 Owen Taylor <otaylor@redhat.com>
8783 * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
8784 for the GtkStyleClass vtable const.
8786 * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
8787 take a const string argument like GtkTranslateFunc. This will
8788 require changes in use code.
8790 2000-01-19 Tor Lillqvist <tml@iki.fi>
8792 * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
8793 semantics (to mimic the X11 backend, which just calls XClearArea)
8794 is to check for zero width (and height), and in that case use the
8795 window's width minus x (height minus y). This fixes for instance
8796 some redraw problems with gtkclist, which were easily noticeable
8797 in the gtk file selection widget.
8799 (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
8802 2000-01-13 Tor Lillqvist <tml@iki.fi>
8806 * gdk/x11/Makefile.am
8807 * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
8809 * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
8812 2000-01-09 Tor Lillqvist <tml@iki.fi>
8814 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
8815 WM_MOVE for iconified or invisible windows. This fixes various
8816 problems when minimising windows. Thanks to Bernd Herd.
8818 2000-01-05 Tor Lillqvist <tml@iki.fi>
8820 * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
8821 backend's draw_lines method, not draw_points.
8823 2000-01-02 Tor Lillqvist <tml@iki.fi>
8825 * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
8826 before Owen's reorganisation: Don't have queued_events and
8827 queued_tail statics in this file, but use gdk_queued_events and
8828 gdk_queued_tail. This makes exposure event compression work again.
8830 (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
8833 1999-12-30 Tor Lillqvist <tml@iki.fi>
8835 * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
8836 gdkkeysyms.h to get the GDK_* keysym constants that are needed by
8837 gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
8838 doesn't do anything.
8840 * gdk/gdk.def: Add gdk_xid_table_insert.
8842 * gdk/win32/gdkprivate-win32.h
8843 * gdk/win32/gdkevents-win32.c
8844 * gdk/win32/gdkinput-win32.c
8846 * gdk/win32/gdkwindow-win32.c: Remove the superfluous
8847 extension_events field in the GdkWindowWin32Data struct. Use only
8848 the extension_events field in GdkWindowPrivate. Previously one was
8849 set, and the other one tested, which broke tablet
8850 functionality. Thanks to Keishi Suenaga for pointing this out.
8852 1999-12-18 Tor Lillqvist <tml@iki.fi>
8854 * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
8855 When handling a single character (text length == 1), don't handle
8856 it as if it was UTF-8.
8858 1999-12-11 Tor Lillqvist <tml@iki.fi>
8860 * Makefile.am: Distribute README.win32.
8863 * gdk/win32/Makefile.am: Distribute Win32 files.
8865 * gdk/makefile.msc: New file.
8867 * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
8870 * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
8871 gdk_error_code as GDKVAR, as they are referred outside GDK.
8873 * gdk/win32/makefile.msc: Update.
8875 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
8876 tweaks. Check only if at least one of those Unicode subrange bits
8877 we care for is set. If no code page bits are set, guess (wildly)
8878 based on the charset.
8880 * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
8882 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
8888 * gtk/gtkselection.c
8890 * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
8891 appropriate. There must be a cleaner way to handle this?
8893 * gtk/gtkrc.c: Must include windows.h on Win32.
8895 * gtk/testgtk.c: No need to include gdkx.h.
8897 * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
8899 1999-12-07 Tor Lillqvist <tml@iki.fi>
8901 * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
8902 the rbearing is set to the same as the width, but this should be
8905 1999-12-06 Tor Lillqvist <tml@iki.fi>
8907 * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
8908 function. If Windows doesn't tell us what Unicode subranges a font
8909 covers, guesstimate based on the codepages it covers. This will
8910 hopefully help those Windows versions or fonts that don't give us
8911 any useful Unicode subrange information with GetTextCharsetInfo.
8912 Call this function in gdk_font_load_internal.
8914 * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
8917 Fri Dec 3 14:09:50 1999 Owen Taylor <otaylor@redhat.com>
8919 * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
8920 New function, long needed.
8922 Wed Dec 1 22:35:43 1999 Owen Taylor <otaylor@redhat.com>
8924 * gdk/gdkproperty.h x11/gdkproperty.c: Change
8925 only_if_exists argument of gdk_atom_intern to
8928 1999-11-25 Tor Lillqvist <tml@iki.fi>
8930 * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin):
8931 Fix two copy&paste errors.
8933 * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
8936 * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
8937 GdkWin32SingleFont struct.
8939 * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
8940 subranges of loaded fonts. Clear font signature first, in case
8941 GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
8942 ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
8944 * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
8945 Unoffset clip region.
8947 1999-11-23 Tor Lillqvist <tml@iki.fi>
8949 * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
8950 event->any.window before calling filter functions.
8952 Fri Nov 19 10:34:41 1999 Owen Taylor <otaylor@redhat.com>
8954 * gtk/gtkgamma.h: Adapt cast macros to standard.
8958 Tue Nov 16 10:15:54 1999 Owen Taylor <otaylor@redhat.com>
8960 * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
8961 If translation does not include a '/', use entire
8962 translation instead of crashing.
8964 Sun Oct 31 22:21:11 1999 Tim Janik <timj@gtk.org>
8966 * docs/gtk_tut.sgml:
8967 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
8969 Sat Oct 30 09:09:09 1999 Owen Taylor <otaylor@redhat.com>
8971 * gtk/gtkselection.c (gtk_target_list_remove): Use
8972 g_list_remove_link, not g_list_remove.
8974 [ From Geert Bevin <gbevin@thunderstorms.org> ]
8976 Sun Oct 24 07:41:40 1999 Tim Janik <timj@gtk.org>
8978 * gtk/gtkclist.c (real_undo_selection): commented out g_print()
8979 statement upon unselection (how the heck did that slip in?).
8981 Sat Oct 23 03:03:08 1999 Tim Janik <timj@gtk.org>
8983 * gtk/gtktext.c (gtk_text_freeze):
8984 (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
8985 in frozen state (and aparently crashes). patch provided by Anders
8986 Melchiorsen <and@kampsax.dtu.dk>.
8988 Sat Oct 23 02:53:20 1999 Tim Janik <timj@gtk.org>
8990 * fix insensitive default/focus widget activation,
8991 reported by Matt Goodall <mgg@isotek.co.uk>.
8993 * gtk/gtkwindow.c (gtk_window_key_press_event):
8994 (gtk_window_activate_default):
8995 (gtk_window_activate_focus):
8996 return handled=FALSE for actiavtion of insensitive default
8997 widgets. return handled=TRUE for activation of insensitive
8998 focus widgets. don't activate in either case.
9000 Tue Oct 19 09:55:08 1999 Owen Taylor <otaylor@redhat.com>
9002 * gtk-config.in (lib_gtk): Switch order of @x_cflags@
9003 and $glib_cflags to match library order and in the
9004 theory that an old version of GLib is more likely to
9005 be in the include directory for X then vice-versa.
9008 Tue Oct 19 09:46:49 1999 Owen Taylor <otaylor@redhat.com>
9010 * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
9011 to determine the locale for fontsets, not LC_MESSAGES;
9012 the user may want English messages with a handling
9013 for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
9014 will still be broken) (Bug #2891)
9016 Tue Oct 19 20:36:42 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
9018 * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
9020 Tue Oct 19 12:15:13 1999 Changwoo Ryu <cwryu@adam.kaist.ac.kr>
9022 * gtk/gtkrc.ko: Changed the Korean default fontset.
9024 Fri Oct 8 02:32:47 1999 Owen Taylor <otaylor@redhat.com>
9026 * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
9027 where when scrolling to the left or top double exposes
9028 were done, causing major slowdowns.
9030 Thu Oct 7 18:31:55 1999 Owen Taylor <otaylor@redhat.com>
9032 * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
9033 names to lowercase and alphanumeric, before looking
9036 * gtk/Makefile.am: Install codeset variant gtkrc files
9037 with normalized names.
9039 Thu Oct 7 22:52:42 1999 Tim Janik <timj@gtk.org>
9041 * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
9042 popup menus when the menu is already visible, but its parent
9043 is still hidden, (happens after tornoff window got hidden).
9045 Thu Oct 7 11:09:55 1999 Owen Taylor <otaylor@redhat.com>
9047 * gtk/Makefile.am (install-data-local): Fix
9048 a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
9049 deleted, causing error messages on install.
9051 Thu Oct 7 11:03:06 1999 Owen Taylor <otaylor@redhat.com>
9053 * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
9054 the handle as well, since we now sometimes ignore
9055 exposes on the handle while resizing.
9057 Wed Oct 6 18:02:31 1999 Owen Taylor <otaylor@redhat.com>
9059 * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
9060 extra g_free introduced in one of the last one or two
9063 Wed Oct 6 16:38:36 1999 Owen Taylor <otaylor@redhat.com>
9065 * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
9066 consistent, put each style that a gtkrc.* file creates
9067 in a unique namespace, remove old files before installing.
9069 Wed Oct 6 14:31:16 1999 Owen Taylor <otaylor@redhat.com>
9071 * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
9072 gtk_rc_init is called multiple times. (Yes, people who
9073 do that have bugs in their code.)
9075 Tue Oct 5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
9077 * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
9078 Remove it since it's generated by the Makefile anyway
9080 Tue Oct 5 02:43:41 1999 Owen Taylor <otaylor@redhat.com>
9082 * gdk/gdkinputcommon.h (gdk_input_device_new): Free
9083 device->info.axes for core pointer.
9085 Thu Sep 30 13:55:25 1999 Owen Taylor <otaylor@redhat.com>
9087 * gtk/testgtk.c (destroy_idle_test): Rename idle to
9088 idle_id, to deal with obsolete, broken C libraries.
9090 Mon Sep 27 02:50:15 1999 Owen Taylor <otaylor@redhat.com>
9092 * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
9093 allocation->x/y twice!
9095 * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
9096 consistent with gtk_vscale_pos_trough().
9098 Sun Sep 26 19:44:34 1999 Owen Taylor <otaylor@redhat.com>
9100 * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
9101 be queueing a resize on a toplevel container between
9102 the time we show it and when we map it. So, we need
9103 to test GTK_WIDGET_VISIBLE() for toplevels, and only
9104 use GTK_WIDGET_DRAWABLE() for child windows.
9106 Thu Sep 23 16:41:03 1999 Owen Taylor <otaylor@redhat.com>
9108 * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
9111 Fri Sep 24 00:51:45 1999 Tim Janik <timj@gtk.org>
9113 * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
9114 container DRAWABLE (instead of VISIBLE), so we don't queue
9115 resizes on non-toplevel containers.
9117 Sun Sep 19 18:13:31 1999 Owen Taylor <otaylor@redhat.com>
9119 * gtk/gtkselection.[ch]: Make the data argument
9122 Sat Sep 18 21:27:40 1999 Owen Taylor <otaylor@redhat.com>
9124 * gtk/gtkwindow.c: Try to behave sensibly if
9125 the focus widget is the window itself. (Should
9126 we allow this at all?)
9128 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
9130 * gtk/gtkwidget.c (gtk_widget_set_sensitive):
9131 * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
9132 * gtk/gtknotebook.c (gtk_notebook_set_show_border):
9133 * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
9134 in prototypes and implementations consistent (Tomas Ogren).
9136 * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
9137 before the widget is unparented (reported by damon).
9139 * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
9140 since we provide unsigned data anyways.
9142 Thu Sep 16 21:32:01 1999 Owen Taylor <otaylor@redhat.com>
9144 * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
9145 the call to gtk_tooltips_layout_text() until later.
9147 * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
9148 Call gtk_widget_ensure_style() before using the style.
9150 Wed Sep 15 02:52:19 1999 Owen Taylor <otaylor@redhat.com>
9152 * gtk/gtkwidget.c (gtk_widget_event): Added workaround
9153 for old widgets that don't propagate draws to all
9154 children. (Namely gnome-dock for gnome-libs <= 1.0.16)
9156 Tue Sep 14 19:22:19 1999 Tim Janik <timj@gtk.org>
9158 * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
9159 for a redraw but just the widget that requested the resize.
9161 Tue Sep 14 18:29:47 1999 Tim Janik <timj@gtk.org>
9163 * gtk/gtkcontainer.c: added new widget level method
9164 gtk_container_set_reallocate_redraws() and a GtkContainer flag
9165 reallocate_redraws : 1 to reflect the setting, exported this through
9166 the argument system as a boolean ::reallocate_redraws.
9168 * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
9169 on the widget because the allocation changes, do so as well for
9170 widget->parent if the parent has reallocate_redraws set to TRUE.
9171 with that containers requesting reallocation redraws get automatically
9172 redrawn if their children changed allocation (this unfortunately
9173 affects also other children that didn't change allocation, but we
9174 cannot work around that before 1.3).
9176 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
9178 * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
9179 _and_ height are >0 (not _or_).
9181 * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
9182 instead of gtk_container_queue_resize(), which is a core gtk internal
9183 function (must have been on crack when i queued that).
9185 * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
9186 we can check more reliably if we want to discard expose events.
9187 * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
9190 * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
9191 we simply trust these events. for deciding whether to discard exposes,
9192 check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
9194 Mon Sep 13 15:01:21 1999 Owen Taylor <otaylor@redhat.com>
9196 * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9197 queues of areas that are completely off screen.
9199 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
9200 logic for handleboxes.
9202 * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
9203 check on width/height.
9205 Mon Sep 13 02:22:47 1999 Tim Janik <timj@gtk.org>
9207 * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
9208 we are fine with using $@ the way we do (if we actually encounter
9209 brokeness with $@ in VPATH builds because of additional path prefixes,
9210 we need to use $(@F) actually).
9212 Mon Sep 13 01:34:53 1999 Tim Janik <timj@gtk.org>
9214 * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
9215 short lived bugs, that would allow language bindings to do surgeries
9218 Fri Sep 10 15:22:50 1999 Owen Taylor <otaylor@redhat.com>
9220 * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
9221 where comparison was being done against an uninitialized
9222 value causing intermittant results depending on
9223 compiler flags. Also make it clearer that we aren't
9224 ever initializing the child as 0x0 (though this will
9225 be caught in gtk_widget_size_allocate())
9227 Fri Sep 10 10:06:56 1999 Owen Taylor <otaylor@redhat.com>
9229 * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
9230 gtk_window_unset_transient_for() call after we do checks
9231 involving the old transient parent.
9232 [ From Lance Capser <lmc@cyberhighway.net> ]
9234 1999-09-07 Raja R Harinath <harinath@cs.umn.edu>
9236 * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
9239 Mon Sep 6 00:11:56 1999 Lars Hamann <lars@gtk.org>
9241 * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
9242 no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
9244 1999-09-03 Raja R Harinath <harinath@cs.umn.edu>
9246 * gtk/Makefile.am (gen_sources): Improve VPATH builds.
9247 `$@' is valid only in the build dir, not after we've done
9248 `cd $srcdir'. Also use `test -f' instead of less portable
9251 Fri Sep 3 15:59:56 1999 Owen Taylor <otaylor@redhat.com>
9253 * gtk/gtktext.c (correct_cache_insert): Rewrite
9254 for simplicity, and hopefully correctness.
9255 (Fixes bug #1322, which was a segfault when
9256 on some insertions with the properties around
9257 the insertion set up just wrong.)
9259 * gtk/gtktext.c (gtk_text_adjustment): When we receive
9260 a "changed" signal, clamp the new value to the adjustment
9261 bounds to avoid segfaulting if someone tries to change
9262 the adjustment to a bogus value. (Bug #1795)
9264 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
9266 * gtk/gtkmain.c: Ignore unexpected destroy notifies
9267 for children, for toplevel windows handle them
9270 * gtk/gtkplug.c: Add an unrealize handler so that
9271 we unref plug->socket_window when we are done
9274 Fri Sep 3 14:52:54 1999 Owen Taylor <otaylor@redhat.com>
9276 * gtk/gtktext.c (clear_area): Fix stupid signedness
9277 problem that was causing background to sometimes
9280 Fri Sep 3 12:26:33 1999 Owen Taylor <otaylor@redhat.com>
9282 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
9284 * gtk/gtkmenu.c (gtk_menu_position): Make
9285 sure we never position menus with negative x, y,
9286 since gtk_widget_set_uposition() can't handle that.
9288 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
9289 Modify the positioning code a bit so that we always
9290 put the top-left corner onscreen. (This is for
9291 UI reasons, gtk_menu_position() now takes care of
9292 gtk_widet_set_uposition() brokeness.)
9294 Fri Sep 3 03:06:30 1999 Tim Janik <timj@gtk.org>
9296 * gtk/Makefile.am: fixed up things for -jx, x > 1.
9298 Sun Sep 5 08:48:51 1999 Owen Taylor <otaylor@redhat.com>
9300 * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
9301 RC style that is passed in. The lack of the ref
9302 before was a bug. If people worked around this
9303 bug, this will introduce a slight memory leak
9304 in their code. The code should typically look like:
9306 rc_style = gtk_rc_style_new ();
9308 gtk_widget_modify_style (widget, rc_style);
9309 gtk_rc_style_unref (rc_style);
9311 * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
9312 the style if it was already set.
9314 * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
9315 style if it was set before.
9317 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
9319 * gtk/testgtk.c (main): Add a check to see if we
9320 are being run from the correct directory and
9321 to quit nicely if we are not.
9323 * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
9326 Thu Sep 2 23:00:03 1999 Tim Janik <timj@gtk.org>
9328 * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
9331 queue resizes unconditionally (gtk_widget_queue_resize will figure
9332 what to do if the window is not realized).
9333 (gtk_window_move_resize): only recenter the window
9334 for GTK_WIN_POS_CENTER_ALWAYS.
9335 (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
9336 the same way as GTK_WIN_POS_CENTER.
9338 Thu Sep 2 22:39:27 1999 Tim Janik <timj@gtk.org>
9340 * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
9341 with (!(info->last_flags & GDK_HINT_POS)) instead of
9342 (!info->last_flags & GDK_HINT_POS).
9344 * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
9345 new_height unconditionally, because we use these values even if
9346 !default_size_changed && !hints_changed.
9347 comented the (default_size_changed || hints_changed) case with
9348 respect to resize rejects from the window manager.
9350 * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
9351 in the zvt condition hack, since this includes the window hints, set
9352 the hints after the handling_resize case.
9354 * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
9355 window is initially shown with to the geometry.
9357 Thu Sep 2 07:38:56 1999 Tim Janik <timj@gtk.org>
9359 * gtk/gtkwindow.c (gtk_window_move_resize):
9360 s/size_changed/default_size_changed/g so i know what's
9361 really going on (frying brain on smaller flame now).
9363 Thu Sep 2 05:47:47 1999 Tim Janik <timj@gtk.org>
9365 * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
9366 we have size_changed upon handling_resize. this is a gross
9367 workaround for the broken zvt widget and should be removed in
9368 1.3 again (search for FIXME).
9369 Owen provided an accurate comment for this:
9371 /* We could be here for two reasons
9372 * 1) We coincidentally got a resize while handling
9374 * 2) Our computation of size_changed was completely
9375 * screwed up, probably because one of our children
9376 * is broken. It's probably a zvt widget.
9378 * For 1), we could just go ahead and ask for the
9379 * new size right now, but doing that for 2)
9380 * might well be fighting the user (and can even
9381 * trigger a loop). Since we really don't want to
9382 * do that, we requeue a resize in hopes that
9383 * by the time it gets handled, the child has seen
9384 * the light and is willing to go along with the
9385 * new size. (this happens for the zvt widget, since
9386 * the size_allocate() above will have stored the
9387 * requisition corresponding to the new size in the
9390 * This doesn't buy us anything for 1), but it shouldn't
9391 * hurt us too badly, since it is what would have
9392 * happened if we had gotten the configure event before
9393 * the new size had been set.
9396 Wed Sep 1 20:46:11 1999 Owen Taylor <otaylor@redhat.com>
9398 * gtk/gtkrc.c: deal properly with the fact that RC
9399 style lists may include rc styles more than once.
9401 * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
9402 unused static function.
9404 * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
9405 stack of directories of RC files currently being
9406 parsed and implicitely add them to pixmap path.
9408 This fixes a bug where the directory would get
9409 appended then overwritten by pixmap_path declarations.
9411 (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
9413 * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
9414 theme's exit function. (Patch from Peter Wainwright,
9417 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
9418 Add a destroy() handler to take care of removing
9419 group for menu item. (Fixes bug #1197)
9421 * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
9424 Wed Sep 1 21:27:42 1999 Tim Janik <timj@gtk.org>
9426 * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
9427 roundtrip to figure window's width and height, since we know that
9428 anyways from widget->allocation.
9430 Wed Sep 1 12:37:44 1999 Owen Taylor <otaylor@redhat.com>
9432 * gtk/gtkwindow.c (gtk_window_move_resize): Compute
9433 the hints after we request the new size.
9435 Wed Sep 1 10:38:37 1999 Owen Taylor <otaylor@redhat.com>
9437 * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
9438 GTK_WIDGET_REALIZED() assertion - we can compute the
9439 hints before we are realized.
9441 * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
9442 hint changing so that we have a value of hints_changed
9443 when we decide whether to constrain the window size.
9445 * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
9447 * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
9448 change back to G_MAXINT.
9450 Wed Sep 1 06:54:59 1999 Tim Janik <timj@gtk.org>
9452 * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
9453 new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
9454 contain uncluttered values.
9455 (gtk_window_compute_hints): simply assert that window is realized
9456 and that geometry_info is valid, since we rely on this anyways.
9457 (gtk_window_constrain_size): major cleanups to the code.
9458 if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
9459 for the base size, instead of the minimums. use 32767 as max width
9460 and height (like in gtkwindow.c) instead of G_MAXINT.
9462 Wed Sep 1 04:41:25 1999 Tim Janik <timj@gtk.org>
9464 * cleaned up the GtkContainer.need_resize flag handling mess, we
9465 only need to force resize requests when we were prematurely
9466 realized, or our widget tree was modified when we were temporarily
9467 hidden. handling these cases directly upon showing the window (i.e.
9468 while the GdkWindow is still unmapped) avoids the need to wait for
9469 a configure event response and therefore makes the GUI more snappier
9470 and avoids blank windows during the roundtrip.
9474 (gtk_widget_show): don't queue resizes on toplevels, they know how
9475 to deal with matters.
9477 * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
9478 flag directly for not visible resize containers and spare us unecessary
9482 (gtk_window_realize): if we need to enforce premature size allocation,
9483 queue a container resize so we are correctly resized later on.
9485 (gtk_window_size_request):
9486 don't freak around with the ->need_resize flag,
9487 gtk_container_queue_resize() will care about that.
9489 handle initial resizing issues here, we can handle matters better in
9490 this place, especially since we know that our GdkWindow is still
9492 (gtk_window_move_resize):
9493 don't care about ->need_resize at all.
9494 handle size changes properly that occoured while we waited for a
9497 Tue Aug 31 15:58:46 1999 Owen Taylor <otaylor@redhat.com>
9499 * gtk/gtkwidget.c (gtk_widget_set_uposition):
9500 * gtk/gtkwindow.[hc] (gtk_window_reposition):
9501 Move the hint setting code from gtk_widget_set_uposition
9502 to here; set the hints so that we respect any previously
9505 * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
9506 change the window hints here or move the window here,
9507 let that happen in gtk_window_move_resize().
9509 Tue Aug 31 06:58:52 1999 Tim Janik <timj@gtk.org>
9511 * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
9512 to already queued resizes (and therefore redraws) on a widget, check
9513 its anchestry as well.
9515 * gtk/gtkcontainer.c:
9516 (gtk_container_queue_resize): clear resize widgets for resize
9517 containers before aborting prematurely. this is especially important
9518 for toplevels which may need imemdiate processing or their resize
9519 handler to be queued.
9520 (gtk_container_dequeue_resize_handler): added new internal function for
9523 * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
9524 configure event, take possible changes in window position into account
9526 if we request a new window size, queue up a resize handler that will
9527 last until the configure event response arrives.
9528 combined the ->need_resize case (initial show) with the general size
9529 (hints) changed case and added even more comments.
9530 if !auto_shrink, only revert to the old allocation if the new size
9531 is smaller than the current allocation.
9533 Tue Aug 31 11:55:20 1999 Owen Taylor <otaylor@redhat.com>
9535 * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
9536 gtk_window_set_geometry_hints
9537 gtk_window_set_default_size):
9538 When hints are set, queue a resize so that the hints will
9539 be eventually reset on the toplevel.
9541 * gtk/gtkwindow.c (gtk_window_show): Use
9542 gtk_window_compute_default_size(). Clear the need_resize flag
9543 on the initail map so that we don't unnecessarily trigger the
9546 * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
9547 into separate functions. Compare the hints we are setting
9548 with what we set last time so that we can accurately
9549 tell when we need to reset the hints.
9551 * gtk/gtkwindow.c (gtk_window_compute_default_size): New
9552 function to figure out the size from requisition
9555 * gtk/gtkwindow.c (gtk_window_constrain_size): Function
9556 from fvwm to constrain a size to the geometry hints.
9558 * gtk/gtkwindow.c (gtk_window_compare_hints): New function
9559 to compare two sets of geometry hints.
9561 * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
9562 from gtk_window_set_hints(), just compute the hints,
9565 * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
9566 code from gtk_window_move_resize() to separate function,
9569 Tue Aug 31 13:05:03 1999 Owen Taylor <otaylor@redhat.com>
9571 * gtkrc.h: Move the ref_count member out of the GtkRcStyle
9572 structure into a new private structure.
9574 * gtkrc.c: Split GtkRcStyle into public/private.
9575 In the private part, add a list of pointers to the
9576 RcStyle lists this RcStyle participates in.
9578 * gtkrc.c: When a RcStyle is free, remove all
9579 lists referencing it from the
9580 realized_style_ht hash, and free those lists.
9582 * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
9583 gtk_rc_init(), since that adds the default styles
9584 to the list of parsed RC files again.
9586 * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
9588 Thu Aug 26 14:14:42 1999 Tim Janik <timj@gtk.org>
9590 * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
9591 checks that ensure that a widget's allocation is at least 1 in width
9592 and height. (GNOME note: this doesn't affect old panel code anymore,
9593 because GtkSocket will request width and height of at least 1 since
9596 * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
9597 allocated yet (happens if the user realizes the window prematurely),
9598 size request and allocate it.
9599 (gtk_window_size_allocate): guard against guint underflows.
9601 Wed Aug 25 19:01:36 1999 Lars Hamann <lars@gtk.org>
9603 * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
9604 in gtk_built_sources, so gtk.defs gets built prior to all other
9607 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
9610 invoke indent on gtkmarshal.*.
9611 rewrote source generation rules, use COPYING as oldest source tag for
9612 a piggyback rule to generate all sources from (don't touch it ;).
9613 major cleanups, strip spaces on build rules for GNU Make.
9615 * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
9616 source and target files from commandline arguments. don't invoke indent.
9618 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
9620 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
9621 notebook after switch to avoid drawing problems.
9622 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
9624 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
9626 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
9628 Sat Aug 21 14:07:36 1999 Lars Hamann <lars@gtk.org>
9630 * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
9631 notebook after switch to avoid drawing problems.
9632 (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
9634 (gtk_notebook_pages_allocate): don't map not visible tab_labels,
9636 (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
9638 Wed Aug 18 09:20:10 1999 Tim Janik <timj@gtk.org>
9641 we use window->need_resize from configure_event now, to indicate that
9642 the gtkwindow should keep its allocation (e.g. because the user resized
9643 the window through window manager handles). resize_count is now reliably
9644 used to figure whether we got the allocation we requested from the
9646 configure events get queued as resizes now, the real stuff (size
9647 computation and allocation) now only goes on in gtk_window_move_resize().
9648 GtkWindow's requisition now contains its *real* requisition (like all
9649 other widgets), *not* taking usize into account.
9650 geometry_info->last_{width|height} is now updated from set_hints() only
9651 so it always contains the last hints we set for the window manager.
9652 made some event handlers return TRUE instead of FALSE.
9653 the overall code should be much more straight forward now, and the
9654 significant code portions are accompanied by comments now.
9655 (gtk_window_set_hints):
9656 removed requisition argument and made it
9657 fetch the requisition through gtk_widget_get_child_requisition.
9658 we also don't move the gdkwindow here anymore, gtk_window_move_resize()
9661 ensure that the widget is realized before calling
9662 gtk_container_check_resize() (and thus gtk_window_move_resize()), also
9663 ensure that we got properly size requested and allocated before
9665 (gtk_window_configure_event):
9666 ignore plain window moves, or reallocate the widget tree through the
9667 resize queue otherwise.
9668 (gtk_window_move_resize):
9669 mostly rewrote this function to figure window manager hints more
9670 reliably, coalesce window moves and resizes to reduce configure events
9671 and do actuall size allocations.
9673 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
9675 * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
9676 that have a resize pending, because a redraw is already queued for them.
9678 * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
9679 hack to clear resize_widgets.
9681 * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
9682 for resize containers prior to size allocation. (this is also a bit
9683 ugly, but avoids side effects for stopped emissions and is thus more
9685 (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
9687 * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
9688 function from gtk_tooltips_expose, as we connect to ::expose_event
9691 1999-08-18 Federico Mena Quintero <federico@redhat.com>
9693 * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
9695 (gtk_target_list_unref): Likewise.
9697 * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
9699 Tue Aug 17 15:47:07 1999 Owen Taylor <otaylor@redhat.com>
9701 * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
9702 guard against division by zero. (Fixes bug #1339)
9704 Tue Aug 17 10:56:49 1999 Owen Taylor <otaylor@redhat.com>
9706 * gtk/gtkentry.c (gtk_move_{forward,backward}_word):
9707 Prevent the trivial leak of information of allowing
9708 word motion when the entry is not visible.
9710 Tue Aug 17 10:28:52 1999 Owen Taylor <otaylor@redhat.com>
9712 * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
9713 modality to error dialog as well as confirmation dialogs.
9714 (Bug #1803, reported by Rosanna Wing Sze Yuen)
9716 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
9718 * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
9720 (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
9722 * gtk/Makefile.am (install-data-local): Solaris apparently
9723 has various troubles with ln -f; use rm first instead.
9724 (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
9726 1999-07-30 Raja R Harinath <harinath@cs.umn.edu>
9728 * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
9729 use `cp' followed by `rm' (the `rm' was already there).
9731 July 30, 1999 Elliot Lee <sopwith@redhat.com>
9733 * configure.in: Fix autoconf warnings about cross compilation by
9734 trying to provide sane defaults for AC_TRY_RUN.
9735 * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
9736 put them into $(srcdir) when generated. Also add a dependency of
9737 gtksignal.h on gtkmarshal.h for -j builds.
9738 * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
9740 Wed Jul 28 09:29:19 1999 Owen Taylor <otaylor@redhat.com>
9742 * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
9743 GDK_THREADS_{LEAVE,ENTER} pair.
9744 (From Paul Fisher <pnfisher@redhat.com>)
9746 Fri Jul 23 01:00:15 1999 Tim Janik <timj@gtk.org>
9748 * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
9749 width and height are always >0 (owen).
9751 Fri Jul 23 00:00:47 1999 Tim Janik <timj@gtk.org>
9753 * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
9754 change that assured that a widget's allocated with and height are
9755 always >1, since this breaks *buggy* panel code. unfortunately this
9756 back-breaks the gimp's color selector.
9758 * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
9759 allocation is always >0 in width and height, before sending the
9760 configure event; this is a *gross* hack to get the gimp back to work.
9762 * marked both cases with TODO-1.3
9764 Wed Jul 21 15:47:39 1999 Owen Taylor <otaylor@redhat.com>
9766 * gtk/gtktext.c: Don't display wrap indicators when
9767 text is not editable and word wrap is on.
9769 Wed Jul 21 08:21:40 1999 Tim Janik <timj@gtk.org>
9771 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
9772 option menus here as they are not derived from menu shell, assure that
9773 the option menu has a menu we can add items to.
9775 Tue Jul 20 23:29:48 1999 Tim Janik <timj@gtk.org>
9777 * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
9778 width/height to (gint) before calculations and check against < 0 to
9779 avoid guint wraparounds.
9781 Sun Jul 18 00:35:49 1999 Tim Janik <timj@gtk.org>
9783 * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
9784 width and height is never zero. sanity check both dimensions against
9785 32767 and issue a warning if the allocation is greater than that.
9787 Wed Jul 7 15:03:30 1999 Owen Taylor <otaylor@redhat.com>
9789 * gtk/gtkmain.c (gtk_events_pending): Unlock around call
9790 to g_main_pending() as well.
9792 Wed Jul 7 14:59:01 1999 Owen Taylor <otaylor@redhat.com>
9794 * gtk/gtkmain.c (gtk_main_iteration): Unlock around
9795 call to g_main_iteration() - since that will regrab
9796 GTK+ lock to process events.
9798 Thu Jul 1 15:01:55 1999 Owen Taylor <otaylor@redhat.com>
9801 - Regularize with the rest of GTK+ by making widget->requisition
9802 not reflect the set_usize()
9803 - Always recompute geometry hints, then check if they
9804 changed before sending them to the X server. The
9805 previous checks for changes would fail in a number
9808 Thu Jul 1 11:55:59 1999 Owen Taylor <otaylor@redhat.com>
9810 * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
9812 Wed Jun 30 19:26:36 1999 Owen Taylor <otaylor@redhat.com>
9816 - Instantaneously update on modifier key presses
9817 - Allow cancellation of the drag with Escape.
9819 Tue Jun 29 17:04:09 1999 Owen Taylor <otaylor@redhat.com>
9821 * gtk/testgtk.c (create_handle_box): Set the policy
9822 to auto_shrink - otherwise the appearance is rather
9823 strange when flipping between horizontal and vertical.
9825 Mon Jun 28 09:29:52 1999 Tim Janik <timj@gtk.org>
9827 * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
9828 (gtk_window_set_default_size): don't change a value if it's < 0.
9831 Sun Jun 27 11:00:33 1999 Tim Janik <timj@gtk.org>
9833 * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
9835 Mon Jun 28 12:08:25 1999 Owen Taylor <otaylor@redhat.com>
9837 * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
9838 add an extra "/" when concating "/" + filename.
9839 (From Matt Grossman <mattg@oz.net>)
9841 Mon Jun 28 10:57:12 1999 Owen Taylor <otaylor@redhat.com>
9843 * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
9844 for fg_gc if we set it for drawing pixmap.
9846 Tue Jun 15 12:45:12 1999 Owen Taylor <otaylor@redhat.com>
9848 Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
9850 * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
9851 already set, call old engine's destroy function and
9852 unref the old engine.
9854 Thu Jun 10 17:59:38 1999 Tim Janik <timj@gtk.org>
9856 * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
9858 Wed Jun 9 15:13:16 1999 Tim Janik <timj@gtk.org>
9860 * gtk/gtkaccelgroup.h: mark certain functions as internal.
9862 Wed Jun 9 13:48:28 1999 Tim Janik <timj@gtk.org>
9864 * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
9865 expand behaviour changed.
9867 * gtk/gtklabel.c (gtk_label_set_pattern):
9868 (gtk_label_set_justify):
9869 (gtk_label_set_line_wrap):
9870 don't bother invoking queue_clear, the reallocation does
9871 that for us, always free_words so the upcoming resize will
9872 relayout the label's contents.
9874 Wed Jun 9 12:50:48 1999 Tim Janik <timj@gtk.org>
9876 * applied argument implementation patches from Elena Devdariani
9879 * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
9880 ::space_style, ::relief
9881 * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
9882 * gtk/gtkpreview.c: ::expand
9883 * gtk/gtkpaned.c: ::handle_size, ::gutter_size
9884 * gtk/gtknotebook.c: ::homogeneous
9885 * gtk/gtklabel.c: ::wrap
9886 * gtk/gtklist.c: ::selection_mode
9887 * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
9888 * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
9889 * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
9890 * gtk/gtkclist.c: ::sort_type
9891 * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
9892 * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
9894 Tue Jun 1 23:38:38 1999 Owen Taylor <otaylor@redhat.com>
9896 * gtk/gtkstyle.c: Removed ill-thought-out part of last
9899 Tue Jun 1 23:30:09 1999 Owen Taylor <otaylor@redhat.com>
9901 * gtk/gtkstyle.c (gtk_style_attach): Get the reference
9902 counting right when we have to attach a new style
9903 for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
9905 * gtk/gtkstyle.c: Documented the refcounting
9906 peculularities of gtk_style_attach.
9908 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
9910 * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
9913 * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
9914 of GTK_TOPLEVEL for creating the window.
9916 1999-06-01 Tim Janik <timj@dhcpd7.redhat.com>
9918 * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
9919 the last argument (reported by Per Winkvist).
9921 Tue May 25 13:13:12 1999 Owen Taylor <otaylor@redhat.com>
9923 Fixes for invisible XOR lines (Frank Loemker
9924 <floemker@TechFak.Uni-Bielefeld.DE>)
9926 * gtk/gtkclist.c (gtk_clist_realize): Always use
9927 a non-zero pixel for GDK_XOR.
9929 * gtk/gtkvpaned.c gtk/gtkhpaned.c:
9930 Use GDK_INVERT instead of GDK_XOR.
9932 Wed May 12 21:56:40 1999 Lars Hamann <lars@gtk.org>
9934 * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
9935 signals if h/voffsets differ from adjustment values.
9936 Reportet by Jerome Bolliet <bolliet@in2p3.fr>
9938 Mon May 10 04:20:41 1999 Tim Janik <timj@gtk.org>
9940 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
9941 ::selection-done emissions up to the topmost menu shell.
9943 Fri May 7 10:15:14 1999 Owen Taylor <otaylor@redhat.com>
9945 * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
9946 the user data on the window before destroying it.
9948 * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
9949 unrealize handler to take care of destroying
9950 notebook->panel properly.
9951 (Bug #1198 - Morten Welinder <terra@diku.dk>)
9953 * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
9954 of g_new and g_realloc to stop memory leak. (Actually,
9955 we could just use g_realloc(), but I'm not 100% sure
9957 (Bug #1196 - Morten Welinder <terra@diku.dk>)
9959 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
9961 * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
9963 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
9966 * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
9967 with bin/button confusion.
9969 Thu May 6 04:53:26 1999 Tim Janik <timj@gtk.org>
9971 * gtk/testgtk.c: in the ItemFactory test, link radio items together,
9972 and show how preselection of radio items is done.
9974 Sun May 2 13:31:14 1999 Tim Janik <timj@gtk.org>
9976 * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
9977 * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
9978 * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
9979 * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
9980 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
9981 * gtk/gtktable.c (gtk_table_attach):
9982 * gtk/gtklist.c (gtk_list_insert_items):
9983 * gtk/gtkmenushell.c (gtk_menu_shell_insert):
9984 * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
9985 * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
9986 * gtk/gtkbin.c (gtk_bin_add):
9987 * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
9988 * gtk/gtkfixed.c (gtk_fixed_put):
9989 * gtk/gtklayout.c (gtk_layout_put):
9990 general fixups to container_add logic. always realize child if
9991 child->parent is realized, only map the child and queue a resize
9992 if child and child->parent are both visible.
9994 Fri Apr 30 09:02:28 1999 Tim Janik <timj@gtk.org>
9996 * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
9997 instead of gtk_container_foreach to walk and unrealize children, so
9998 composite children get also unrealized.
9999 (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
10000 (gtk_widget_map): assert that the widget is visible (basic constrain).
10001 (gtk_widget_real_map): assert that the widget is realized (basic
10004 Fri Apr 29 00:53:20 1999 Tim Janik <timj@gtk.org>
10006 * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
10008 Tue May 4 09:32:08 1999 Owen Taylor <otaylor@redhat.com>
10010 * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
10011 file for iso-8859-2 locales.
10013 * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
10015 Tue Apr 27 16:38:32 1999 Owen Taylor <otaylor@redhat.com>
10017 * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
10018 (Pointed out by andy@rz.uni-karlsruhe.de and others).
10019 Remove some suspicious and useless lines.
10021 Tue May 4 08:44:08 1999 Owen Taylor <otaylor@redhat.com>
10023 * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
10024 width,height = 0, 0 to mean - here to edge of window,
10025 instead of -1, -1, since the former is all we support.
10027 Tue May 4 08:34:43 1999 Owen Taylor <otaylor@redhat.com>
10029 * gtk/gtkmain.c (gtk_main): Correctly free list nodes
10030 when removing from quit_functions list.
10032 Tue Apr 27 14:17:16 1999 Tim Janik <timj@gtk.org>
10034 * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
10036 Tue Apr 27 18:23:35 1999 Owen Taylor <otaylor@redhat.com>
10038 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
10039 When redrawing characters on non-visible entry, use appropriate
10040 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
10042 Tue Apr 27 01:31:40 1999 Lars Hamann <lars@gtk.org>
10044 * gtk/gtkclist.c (drag_dest_cell): compute destination cell
10045 from drag coordinates.
10046 (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
10047 use drag_dest_cell.
10049 * gtk/gtktree (drag_dest_cell)
10050 (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
10053 Wed Apr 21 21:26:11 1999 Tim Janik <timj@gtk.org>
10055 * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
10056 translate_* fields.
10057 (gtk_item_factory_finalize): invoke translate_notify independant from
10059 (gtk_item_factory_set_translate_func): likewise.
10060 (gtk_item_factory_destroy): only remove ifactory pointer from those
10061 widgets that belong to us (stupid me).
10063 Mon Apr 19 12:05:31 1999 Owen Taylor <otaylor@redhat.com>
10065 * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
10066 rc_style list when lookup succeeeds.
10068 Thu Apr 15 01:11:24 1999 Lars Hamann <lars@gtk.org>
10070 * gtk/gtkctree.c (resync_selection):
10071 * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
10072 * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
10075 Fri Apr 9 19:22:19 1999 Owen Taylor <otaylor@redhat.com>
10077 * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
10078 Add some missing GDK_THREADS_ENTER()/LEAVE around
10079 timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
10081 Thu Apr 8 20:10:33 1999 Tim Janik <timj@gtk.org>
10083 * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
10084 rather than emit_by_name.
10086 * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
10087 on the widget across multiple signal emissions.
10088 (gtk_editable_delete_text): same here.
10089 (gtk_editable_class_init): set widget_class->activate_signal after
10090 editable_signals[ACTIVATE] has been created.
10092 Wed Apr 7 22:59:47 1999 Owen Taylor <otaylor@redhat.com>
10094 * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
10095 position here prematurely -- we might not have the
10096 right ->min_position and ->max_position yet.
10098 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
10100 * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
10101 Add error traps so if the other end of the connection
10104 * gtk/gtkselection.c (gtk_selection_notify): Clean
10105 up properly when selection property retrieval fails.
10107 * gtk/gtkselection.c (gtk_selection_request): Correctly
10108 reject SelectionRequest notifies where the handler
10111 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
10113 * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
10114 when we've previously highlighted.
10116 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
10117 emit two "drag_leave" signals for Motif drops.
10119 * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
10120 back the correct status messages when dropping from
10121 Motif onto a proxy window that is rejecting the
10124 Sat Mar 27 23:32:13 1999 Tim Janik <timj@gtk.org>
10126 * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
10127 the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
10128 to compare two argument values. added gtk_arg_to_valueloc() to set a
10129 variable from an arg through its location (pointer).
10131 * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
10132 gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
10133 as gfloat*, uchars are collected as guchar*, ints are collected as
10136 Mon Mar 29 17:45:47 1999 Owen Taylor <otaylor@redhat.com>
10138 * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
10139 Include <string.h> instead of <strings.h>.
10141 * gtk/gtkstyle.c: Fix double include of gtkthemes.h
10142 (actually, a lot more duplicate includes occur if
10143 you trace through the sequence of #include's)
10144 gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
10146 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
10148 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
10149 gtk-a-higuti-990322-[0-3]
10151 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
10152 that was causing -DX_LOCALE not to work.
10154 * gtk/gtkrc.c (gtk_rc_init):
10155 X_LOCALE will never have LC_MESSAGES defined
10157 Thu Mar 25 12:38:31 1999 Tim Janik <timj@gtk.org>
10159 * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
10160 g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
10162 * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
10163 left/right as well (gtk-michael-980726-0.patch.gz).
10165 * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
10166 for pointer values, use gchar instead of char. fixed uline allocation
10167 leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
10168 chunks instead of G_ALLOC_ONLY.
10169 (gtk_label_size_request): always alter requisition as passed and leave
10170 widget->requisition alone.
10171 (gtk_label_set_text): allow NULL strings.
10172 (gtk_label_new): likewise.
10174 Wed Mar 24 09:24:03 1999 Tim Janik <timj@gtk.org>
10176 * gtk/gtkdrawingarea.[hc]: type/macro fixups.
10178 Mon Mar 22 05:51:34 1999 Tim Janik <timj@gtk.org>
10180 * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
10181 *and* mapped (i.e. drawable).
10182 (gtk_bin_expose): only send exposes to drawable children.
10184 * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
10185 (gtk_box_expose): only send exposes to drawable children.
10187 * gtk/gtkhscale.c (gtk_hscale_draw):
10188 * gtk/gtkvscale.c (gtk_vscale_draw):
10189 hm, this is an ugly one. we first compute the size of our trough area
10190 here (window relative) and then check intersection with the draw_area
10191 which is parent relative because we're a NO_WINDOW widget, so we need
10192 to offset the trough area by allocation.x and allocation.y before the
10193 check. (this must not be done for the background area though, since
10194 that's already computed parent relative).
10196 Mon Mar 22 00:41:39 1999 Lars Hamann <lars@gtk.org>
10198 * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
10199 unrealize title buttons.
10201 Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
10203 * gtk/gtkclist.c (gtk_clist_column_title_passive)
10204 (gtk_clist_column_title_active):
10205 only connect/disconnect to GtkWidgetClass::event to block mouse events.
10207 * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
10208 zero initialize event, removed superfluous gdk_window_get_pointer call
10210 * gtk/gtklist.c (gtk_list_vertical_timeout)
10211 (gtk_list_horizontal_timeout): removed superfluous
10212 gdk_window_get_pointer call
10214 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
10216 * plugging problems reported by "Bruce Mitchener, Jr."
10217 <bruce@puremagic.com> due to a purify session.
10221 (gtk_style_unref): assert ref_count to be > 0.
10223 * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
10225 (gtk_clist_set_shift): likewise.
10227 * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
10230 * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
10231 event before sending it and set send_event to TRUE (which needs to
10232 be done for *all* synthesized events).
10233 (gtk_list_vertical_timeout): likewise.
10235 * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
10238 * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
10239 to TRUE when synthesizing events.
10241 [ *** end of merges from 1.2 *** ]
10243 1999-11-21 Tor Lillqvist <tml@iki.fi>
10245 * gdk/gdkconfig.h: Remove, as this is a file generated by configure
10246 (or copied from gdkconfig.h.win32 on Win32, sigh).
10248 * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
10250 * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
10252 * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
10254 * gdk/gdkconfig.h.win32: New file.
10256 * gdk/win32/makefile.cygwin: Build just a static archive here.
10258 * gdk/makefile.cygwin: New file. Get the win32-specific stuff
10259 for the DLL from the static archive built above.
10261 * gdk/gdk.def: Moved here from the win32 subdirectory.
10263 * gdk/win32/*: Adapt for the changed private struct organisation.
10265 * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
10267 Sun Nov 21 16:44:35 1999 Stefan Jeske <stefan@gtk.org>
10269 * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support
10270 for wheel mice (buttons 4 and 5).
10272 1999-11-18 Tor Lillqvist <tml@iki.fi>
10274 * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
10275 drawables use just the pixel field in the foreground and
10276 background GdkColor of the GdkGC.
10278 gdk_gc_set_{fore,back}ground() are called in the GIMP with
10279 GdkColors containing uninitialized (red,green,blue) fields, and
10280 just the pixel field filled in, and furthermore in the
10281 visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
10282 It thus turns out that we really don't need to have the full
10283 GdkColor for fg and bg in GdkGCWin32Data after all. Will change
10284 it later to have just the pixel values.
10286 Mon Nov 15 17:17:51 GMT 1999 Tony Gale <gale@gtk.org>
10288 * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
10290 Sat Nov 13 22:30:29 GMT 1999 Tony Gale <gale@gtk.org>
10292 * docs/gtkfaq.sgml: threads example from Erik Mouw.
10293 New question on GtkLabel background colors.
10295 * docs/gtk_tut.sgml:
10296 - Correct the example code callback
10297 function definitions.
10298 - Update the gtkdial example code, from Frans van Schaik.
10299 - Update setselection.c to current API.
10301 * examples/Makefile examples/*/*.c: Update to code
10302 listed in tutorial.
10304 1999-11-10 Tor Lillqvist <tml@iki.fi>
10306 * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
10307 subrange table (from the "Developing International Software for
10308 WIndows 95 and Windows NT" book) was missing the Hangul syllable
10309 block... Get the loaded font's charset correctly.
10311 (Note that this, and the other *-win32.c files, still really are
10312 the old ones, the win32 subdirectory is not ready for compilation
10313 yet after the reorg.)
10315 Wed Nov 10 17:26:49 GMT 1999 Tony Gale <gale@gtk.org>
10317 * gtk/gtkclist.c: Fix off-by-one bug in parameter
10320 Wed Nov 10 12:12:03 1999 Owen Taylor <otaylor@redhat.com>
10322 * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
10323 on results of XQueryDeviceState().
10325 Mon Nov 8 16:40:43 1999 Owen Taylor <otaylor@redhat.com>
10327 * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
10328 we need to accesss only ->children. We need an accessor
10331 * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
10332 DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
10333 to get rid of gdkx.h include.
10335 * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
10336 and random references to 'None'.
10338 * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
10339 Get rid of unused #include <gdk/gdkx.h>
10341 * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
10342 gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
10345 1999-11-08 Tor Lillqvist <tml@iki.fi>
10347 * gdk/win32/gdkdraw.c
10348 * gdk/win32/gdkfont.c
10349 * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
10350 following yesterday's changes. (Unrelated to Owen's reorg.)
10352 Mon Nov 8 16:18:25 1999 Owen Taylor <otaylor@redhat.com>
10354 * gdk/x11/gdkinput-gxi.c: Add missing include,
10355 fix GdkWindowPrivate => GdkDrawablePrivate.
10357 * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
10359 * gdk/x11/Makefile.am (xinput_sources): Add missing
10360 backslash to fix building with --with-xinput=none
10362 Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com>
10364 Move all X specific code into the x11/ directory.
10365 Aside from shuffling things around, did the following:
10367 * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
10368 gdk_arg_context_* - a simple argument parsing system
10369 in the style of popt.
10371 * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
10372 gdk/x11/gdkprivate-x11.h:
10373 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
10374 add ->klass and ->klass_data fields. The klass_data
10375 field points to an auxilliary structure that is
10376 windowing system dependent.
10378 * gdk/gdkfont.c: Make most of the measurement functions
10379 simply wrappers around gdk_text_extents().
10381 * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
10382 _gdk_font_strlen() function that hides the weird
10383 behavior in gtk+-1.[02] where a string is interpreted
10384 differently for 8-bit and 16-bit fonts.
10386 * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
10387 to store common code for synthesizing double/triple
10390 * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
10391 Make all the function that modify an existing GC
10392 simply wrappers around gdk_gc_set_values().
10394 * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
10395 for throwing out later.
10397 * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
10398 GdkImagePrivate and GdkColormapPrivate to have a
10399 windowing system dependent part (GdkFontPrivateX etc.)
10400 that "derives" from the system-independent part.
10402 * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
10403 Got rid of the included-source-files for XInput in
10404 favor of automake conditionals. (Which didn't exist
10405 when XInput support was originally added.)
10407 * gdk/gdkrgb.c: Remove the visual id from the debugging
10408 statements since that is X11 specific; print out
10409 type/depth info instead.
10412 Wed Nov 3 18:14:49 1999 Owen Taylor <otaylor@redhat.com>
10414 * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
10415 loading duplicates of hashed fonts.
10417 * gdk/gdk.c (gdk_keysym_convert_case): rename
10418 gdk_XConvertCase to gdk_keysym_convert_case, allow
10419 results to be NULL in the GTK+ style.
10421 * gdk/gdkcompat.h: Started compatibility header
10424 1999-11-07 Tor Lillqvist <tml@iki.fi>
10426 * gdk/win32/gdkprivate.h: New font private structures, related to
10429 * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
10430 gdk_font_list_free(). On X11, will just be wrappers to
10431 XListFonts() and XFreeFontNames(). On Win32, the code previously
10432 in gtkfontsel.c is now here.
10434 New function gdk_font_xlfd_create(). On X11 will get the FONT
10435 property of the font (for GDK_FONT_FONTs), or call
10436 XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
10437 builds a XLFD style name from the font information in the LOGFONT
10440 New function gdk_font_xlfd_free(), which correspondingly frees the
10441 string returned by gdk_font_xlfd_create().
10443 Implement fontsets on Win32. Add a function that iterates over a
10444 wide char string and calls a callback function for each substring
10445 of wide chars from the same Unicode subrange (and thus probably
10446 available in the same real font).
10448 Improve the XLFD emulation a bit.
10450 * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
10452 * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
10453 Beta3, WM_IME_CHAR messages don't seem to contain the composed
10454 multi-byte char as with the Active IMM on Win9x. Oh well, handle
10455 WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
10456 ImmGetCompositionStringW() to get the composed Unicode chars.
10458 * gdk/win32/gdkgc.c
10459 * gdk/win32/gdkdraw.c: Changes needed because of the font private
10462 * gdk/win32/gdk.def: Add the new functions.
10464 1999-11-04 Tor Lillqvist <tml@iki.fi>
10466 * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
10467 get the Platform SDK to get <dimm.h>.
10469 * gdk/win32/gdkevents.c: More event handling fixes and
10470 simplification. Never generate motion events with is_hint true. We
10471 used to do that on bogus grounds earlier. Windows sends
10472 WM_MOUSEMOVE messages on button events even if the mouse hasn't
10473 moved, ignore these.
10475 * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
10477 * gdk/win32/gdkglobals.c
10478 * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
10479 the TrackMouseEvent function, and use it.
10481 * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
10482 char before calling WideCharToMultiByte in order to get a string
10483 for the window title.
10485 * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
10487 * gdk/win32/gdk.def: Remove obsolete functions.
10489 * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
10490 /nodefaultlib and /defaultlib switches.
10492 * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
10494 1999-10-31 Tor Lillqvist <tml@iki.fi>
10496 * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
10499 * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
10500 same type as GdkWChar, especially on Win32.
10502 * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
10504 * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
10505 before passing to Windows GDI for drawing etc. Convert to the
10506 system default codepage before passing to Windows as window
10509 * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
10510 support changing input locale on the fly.
10512 * gdk/win32/gdkevent.c: Support input language (keyboard locale)
10513 on-the-fly changes. Convert incoming characters from the current
10514 codepage to Unicode (and then to a UTF-8 multi-byte string) based
10515 on the current input language. Use keysym<->Unicode mapping tables
10516 and functions borrowed from xterm sources.
10518 Support IMEs (Input Method Editors) for CJK languages. On non-CJK
10519 editions of Win9x, use the ActiveX-based Active IMM (Input Method
10520 Manager) if available. IMEs and the Active IMM are available under
10521 the disguise of Chinese, Korean and Japanese support for IE and
10522 Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
10523 support is present in all editions (as long as you install it).
10525 Call DispatchMessage from gdk_events_queue() (and thus
10526 gdk_WindowProc()), instead of duplicating the code in
10529 Reworked the grab handling and propagation code, factored out
10530 duplicated code snippets into separate functions. Other cleanups,
10533 * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
10534 the <dimm.h> header describing the Active IMM.
10536 * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
10537 just do the same as for "single" fonts.
10539 * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
10540 gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
10541 the new keysyms from gdkkeysyms.h.
10543 * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
10544 fontset, so that gtkentry uses wide characters.
10546 * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
10547 GTk+'s system directory "gtk+", not "gtk".
10549 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
10551 * docs/gtkfaq.sgml: FAQ update
10553 1999-10-21 Tor Lillqvist <tml@iki.fi>
10555 * gdk/win32/gdkprivate.h: Add more font private data.
10557 * gdk/win32/gdkfont.c
10558 * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
10559 fonts and strings. Now works much better. You still have to
10560 have a correct font selected, though. No fontset emulation yet.
10562 1999-10-19 Tor Lillqvist <tml@iki.fi>
10564 * gtk/maketypes.awk: Use G_OS_WIN32.
10566 * gtk/gtk.def: Add some missing entry points. Also some non-public
10567 ones, but PyGTK porter claims to need them.
10569 * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
10570 built-in type generation.
10572 1999-10-14 Tor Lillqvist <tml@iki.fi>
10574 * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
10575 GDK_FONT_FONT fonts (which is all we have for now, we don't
10576 emulate fontsets). The X11 version uses plain XDrawString in that
10577 case, too. The string passed to gdk_draw_text_wc seems to be in
10578 fact (at least, when used by gtkentry and gtktext) either in a
10579 single-byte charset, or a DBCS. Not Unicode.
10581 This fixes the problem in gtkfontsel, where even if you had
10582 selected a font with a non-Latin1 charset (windows-greek, for
10583 instance), the preview still used Latin-1 glyphs.
10585 * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
10586 use GetTextExtentPoint32W, use GetTextExtentPoint32A.
10587 (gdk_font_load): Recognize the demibold etc weights, even if we
10588 don't have the corresponding constants in the headers.
10589 (gdk_font_hash_insert): Use same hash mechanism as in the X11
10590 version. Should save font resources a bit, when we don't have
10591 multiple HFONTs for the same font.
10593 * gdk/win32/gdkprivate.h: Add the names field as in the X11
10596 1999-10-11 ERDI Gergo <cactus@cactus.rulez.org>
10598 * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
10601 1999-10-09 ERDI Gergo <cactus@cactus.rulez.org>
10603 * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
10604 layout support (as mentioned on
10605 http://www.jcinteractive.com/gnome-ui/software/widgets/)
10607 Wed Oct 6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
10610 * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
10612 1999-10-05 Jesus Bravo Alvarez <jba@pobox.com>
10614 * configure.in (ALL_LINGUAS): Added Galician (gl)
10616 1999-10-05 Tor Lillqvist <tml@iki.fi>
10618 * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
10620 * gdk/win32/gdkcompat.c: New file, actually provide an
10621 implementation for the deprecated functions. (Just temporarily.)
10623 * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
10625 * gtk/makefile.{cygwin,msc}: Update gdk_headers.
10627 * gdk/win32/gdk.def gtk/gtk.def: Updates.
10629 1999-10-05 Kjartan Maraas <kmaraas@online.no>
10631 * configure.in: Added "uk" to ALL_LINGUAS.
10633 Mon Oct 4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
10635 * configure.in: correct checking for BeOS check
10640 * gtk/gtkitemfactory.c
10642 * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
10644 Mon Oct 4 16:16:53 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
10646 * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
10647 encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
10648 languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
10651 Sun Oct 3 18:13:44 1999 Owen Taylor <otaylor@redhat.com>
10653 * gtk/gtkwidget.c (gtk_reset_shapes_recurse):
10654 Fix a reference to window_private->destroyed.
10656 * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
10657 (ugly) setting of an internal GdkWindow member to use
10658 a _slightly_ cleaner macro.
10660 * gdk/gdkprivate.h: Split GdkWindowPrivate into
10661 GdkDrawablePrivate and GdkWindowPrivate.
10662 Add extra macros for accessing GDK_DRAWABLE_ components.
10664 * *.[ch]: Massive adjustments for the above, use the
10665 new macros in a lot of places.
10667 Sun Oct 3 15:16:24 1999 Owen Taylor <otaylor@redhat.com>
10669 * gdk/gdktypes.h: Make GdkDrawable the base type,
10672 Sun Oct 3 15:08:44 1999 Owen Taylor <otaylor@redhat.com>
10674 * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
10676 Sun Oct 3 14:26:15 1999 Owen Taylor <otaylor@redhat.com>
10678 * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
10680 Sun Oct 3 14:16:23 1999 Owen Taylor <otaylor@redhat.com>
10682 * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
10683 gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
10685 * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
10687 * docs/gtk-config.1: Now autogenerated.
10688 * docs/Changes-1.4.txt: started
10690 1999-10-03 Tor Lillqvist <tml@iki.fi>
10692 * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
10693 to #ifdef also here.
10695 * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
10696 Owen did to the X11 backend.
10698 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
10699 ScrollWindowEx when blitting inside a window, it can't be correct
10700 in the general case.
10702 * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
10703 WM_GETMINMAXINFO is easier.
10705 * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
10706 depth equal to the bitspixel value, not the visual's depth.
10708 * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
10709 to 24 even if the bitspixel value is 32.
10711 * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
10712 need to check for depth==32 when bpp==32, depth will always be 24.
10714 Fri Oct 1 18:03:36 1999 Owen Taylor <otaylor@redhat.com>
10716 * docs/Changes-1.4.txt: Started
10718 * gtk/Makefile.am (gdk_headers): Include all the new headers.
10720 * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
10722 * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
10725 * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
10726 header to gdkinputprivate.h.
10728 * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
10729 unused since before 1.2.
10731 1999-09-30 Tor Lillqvist <tml@iki.fi>
10733 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
10734 expand possible hex escapes in the font family (put there by
10735 logfont_to_xlfd if the font name isn't a legal XLFD font family,
10736 mainly if it contains slashes). (gtk_font_selection_create_xlfd):
10737 On Win32, add hex escapes here, too.
10739 Wed Sep 29 19:55:35 1999 Owen Taylor <otaylor@redhat.com>
10741 * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
10742 to #ifdef GDK_WINDOWING_X11.
10744 [ Merges from gtk-1-2 ]
10746 Wed Sep 8 07:13:29 1999 Tim Janik <timj@gtk.org>
10748 * configure.in: fixed "GNU Make" check to pass with new make version
10751 Fri Sep 3 16:04:41 1999 Tim Janik <timj@gtk.org>
10753 * gtk-config.in (--version): don't echo @GTK_VERSION@, but
10754 @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
10755 AM_PATH_GTK() macros don't get confused by the -pre1.
10757 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
10759 * configure.in (REBUILD): Change check for perl5
10760 to check explicitely for v >= 5.002. (5.001
10761 does not work with our scripts.)
10763 Wed Aug 25 15:45:46 1999 Tim Janik <timj@gtk.org>
10765 * configure.in: evaluate $PERL for the perl version check. added
10766 --disable-rebuilds to give the user an option to completely disable
10767 any source autogeneration rules.
10769 Mon Aug 23 23:16:14 1999 Tim Janik <timj@gtk.org>
10771 * configure.in: evaluate $ac_make when checking for GNU Make.
10773 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
10775 * docs/Makefile.am: added generation.txt.
10777 * Makefile.am: require automake 1.4, build README from README.in and
10778 INSTALL from INSTALL.in in dist-hook.
10781 * INSTALL.in: new files to autogenerate README and INSTALL from.
10783 * configure.in: figure whether we have GNU Make
10785 * docs/generation.txt: minor additions/corrections.
10787 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
10789 * docs/gtkfaq.sgml: FAQ Update
10791 July 30, 1999 Elliot Lee <sopwith@redhat.com>
10793 * configure.in: Fix autoconf warnings about cross compilation by
10794 trying to provide sane defaults for AC_TRY_RUN.
10796 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
10799 * ltmain.sh: upgrade to libtool 1.3.3
10801 Thu Jul 8 11:30:18 1999 Owen Taylor <otaylor@redhat.com>
10803 * INSTALL: Indicate that the --with-glib= configure
10804 time flag is unsupported.
10806 Mon Jul 5 20:36:03 1999 Owen Taylor <otaylor@redhat.com>
10808 * docs/generation.txt: Added a file that gives
10809 documenation about the autogeneration process for
10810 various autogenerated files.
10812 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
10814 * configure.in (LIBS): Look for libgmodule in the
10817 Thu Jun 17 13:57:31 1999 Owen Taylor <otaylor@redhat.com>
10819 * docs/gtk_tut.sgml: Removed references to
10820 code examples in my directory on gtk.org as
10821 they should all be in the tutorial now.
10823 * docs/gtk_tut.sgml: Added sources for dial-test
10824 and scribble-xinput programs that were previously
10827 Fri Jun 4 00:08:59 1999 Owen Taylor <otaylor@redhat.com>
10829 * TODO: Added entry about menu keyboard navigation, removed
10830 some finished items.
10832 Mon May 31 00:11:24 1999 Owen Taylor <otaylor@redhat.com>
10834 * acinclude.m4: Standardize on func_dgettext
10835 not func_gettext, so that the checks for dgettext
10836 actually are paid attention to.
10838 Wed May 5 10:47:54 1999 Owen Taylor <otaylor@redhat.com>
10840 * configure.in (LIBS): Add $INTLLIBS into $LIBS
10841 directly, rather than repeating the checks for
10844 * INSTALL: Added information about gettext and
10847 * acinclude.m4 (LIBM): Check for dgettext, not
10848 just gettext. This should hopefully fix things wrt
10849 systems with old versions of GNU gettext installed.
10851 Tue Jun 29 15:59:25 1999 Owen Taylor <otaylor@redhat.com>
10853 * configure.in (LIBS): Look for libgmodule in the
10856 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
10858 * autogen.sh: add --enable-maintainer-mode
10860 * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
10862 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
10864 * docs/gtk-config.1.in:
10866 configure.in: gtk-config is now generated.
10868 * docs/gtk-config.1: Removed, now generated.
10870 Thu Sep 23 17:59:59 1999 Tim Janik <timj@gtk.org>
10872 * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
10873 handle CreateNotify itself, still put out a debuging message for
10874 --gdk-debug=events. made the ReparentNotify debugging message more
10876 wrap xcoords translation for ConfigureEvents into an error trap,
10877 a destroy event may already be pending, and in that case, the
10878 actuall coordinate values are not at all critical.
10880 Sat Sep 18 22:24:15 1999 Owen Taylor <otaylor@redhat.com>
10882 * gdk/gdkcc.c: Stop leaking the color_hash all over
10883 the place. Simplify and improve the logic.
10885 Fri Sep 17 09:57:15 1999 Tim Janik <timj@gtk.org>
10887 * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
10888 for prototypes and function implementations consistent (reported
10891 Tue Sep 14 18:23:01 1999 Tim Janik <timj@gtk.org>
10893 * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
10894 send_event set in debugging output.
10895 (gdk_compress_exposures): default initialize the event so we don't
10896 operate on bogus values (namely send_event).
10898 Thu Sep 2 16:33:59 1999 Owen Taylor <otaylor@redhat.com>
10900 * gdk/gdkwindow.c: When we receive an unexpected
10901 destroy notify on one of our windows, don't just
10902 warn about it, also mark our windows as destroyed.
10904 Sun Sep 5 08:10:53 1999 Owen Taylor <otaylor@redhat.com>
10906 * gdk/gdkfont.c (gdk_font_hash_insert): Add
10907 name => font and name => fontset hashes. The
10908 name => fontset hash is a _big_ win since we
10909 weren't previously caching fontsets at all and loading
10910 fontsets is expensive. The name => font hash
10911 is less of a win, but it does save us from doing
10912 repeated XQueryFont calls on the same font.
10914 * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
10915 list so we can remove font/fontset from hash.
10917 Thu Sep 2 19:02:37 1999 Owen Taylor <otaylor@redhat.com>
10919 * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
10920 and slightly confusing test. [ XInternAtom (,,TRUE)
10921 will never return None ].
10923 Sat Sep 4 08:39:26 1999 Owen Taylor <otaylor@redhat.com>
10925 * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
10926 gdk/gdkwindow.c (gdk_window_set_hints):
10928 Don't omit setting the properties if flags == 0 -
10929 there may be an existing set of properties there
10930 already. (Very old bug. Would it be better to
10931 delete the property instead?)
10933 * gdk/gdkselection.c (gdk_selection_property_get): Fix
10934 spelling error in comment.
10936 Wed Sep 1 14:05:30 1999 Owen Taylor <otaylor@redhat.com>
10938 * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
10939 to avoid stomping over gdk_error_warnings.
10941 * gdk/gdkimage.c (gdk_image_new): compute image->bpp
10942 as (bits_per_pixel + 7) / 8. This gives the same
10943 result as before for multiples of 8, but actually
10944 a "reasonable" value for 1bit or 4bit displays.
10946 Mon Aug 23 19:11:17 1999 Tim Janik <timj@gtk.org>
10948 * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
10951 Tue Aug 17 07:43:04 1999 Tim Janik <timj@gtk.org>
10953 * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
10954 discarding configure events.
10956 1999-08-18 Federico Mena Quintero <federico@redhat.com>
10958 * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
10959 refcount is greater than zero.
10961 * gdk/gdkwindow.c (gdk_window_unref): Likewise.
10963 * gdk/gdkfont.c (gdk_font_unref): Likewise.
10965 * gdk/gdkgc.c (gdk_gc_unref): Likewise.
10967 * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
10969 Wed Aug 11 01:04:57 1999 Owen Taylor <otaylor@redhat.com>
10971 * gdk/gdkproperty.c (gdk_property_get): Fix assumption
10972 that format 32 => sizeof(item) == 4. It really is
10975 Tue Jun 29 23:02:42 1999 Owen Taylor <otaylor@redhat.com>
10977 * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
10978 core dump at all on X IO errors, only core dump
10979 if --enable-debug for X errors.
10981 Thu Jun 24 17:06:23 1999 Tim Janik <timj@gtk.org>
10983 * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
10984 unknown window:" message. disabled ConfigureNotify discarding code,
10985 because it led to events being processed out of order.
10987 Thu Jun 24 12:22:02 1999 Tim Janik <timj@gtk.org>
10989 * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
10991 * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
10992 we export this function, supress error warnings and don't reset the
10993 error code in the first half of this function.
10995 * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
10996 code (instead of just -1) so gdk_error_trap_pop() reveals something
10997 actually informative about the error that happened.
11000 don't rely on gdk_error_code being -1 if an error occoured, but just
11001 gdk_error_code != 0.
11003 Thu Jun 24 11:50:07 1999 Tim Janik <timj@gtk.org>
11005 * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
11006 pointer *before* invoking the filter function, so we at least don't
11007 crash if a filter is removed that is currently executed. window filters
11008 *really* need to be made truely reentrant at some point.
11010 Mon Jun 14 11:10:15 1999 Tim Janik <timj@gtk.org>
11012 * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
11013 PropertyNotify debug messages.
11015 Wed May 5 22:51:06 1999 Owen Taylor <otaylor@redhat.com>
11017 Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
11019 * gdk/gdkim.c: Fix cut-and-paste errors for
11020 x/y and PreeditAttributes/StatusAttributes.
11022 Wed May 5 22:24:21 1999 Owen Taylor <otaylor@redhat.com>
11024 * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
11025 G_MAXINT to 2^16 to alleviate overflow problems in
11026 various window managers.
11028 Wed Apr 21 00:42:08 1999 Owen Taylor <otaylor@redhat.com>
11030 * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11033 Wed May 5 12:42:01 1999 Owen Taylor <otaylor@redhat.com>
11035 * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
11036 Initialize size_hints.x and size_hints.y because kwm
11037 brokenly pays attention to them.
11038 (Bug #1181 - Lars Heete <hel@admin.de>)
11040 Wed May 5 11:38:56 1999 Owen Taylor <otaylor@redhat.com>
11042 * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
11043 return value of gdk_list_visuals().
11044 (Bug #1193 - Morten Welinder <terra@diku.dk>)
11046 Tue May 4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
11048 * gdk/gdkim.c (gdk_im_real_open): cast the return value of
11049 XSetIMValues to (void *) when comparing to NULL, to workaround
11050 the problem of some compilers barfing since older X headers don't
11051 have the prototype for it.
11053 Mon Apr 19 10:11:12 1999 Owen Taylor <otaylor@redhat.com>
11055 * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
11056 for pseudocolor where colormap->colors was double
11059 * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
11060 color value in the hash table with the pixel filled
11061 in so when we do later hash table lookups, the color
11064 Sun May 2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
11066 * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
11069 Tue Apr 27 11:17:35 1999 Owen Taylor <otaylor@redhat.com>
11071 * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
11072 pointed out by Morten Welinder <terra@diku.dk>.
11074 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
11076 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11077 default filter from the list
11079 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
11081 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11082 default filter from the list
11084 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
11086 * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
11088 * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
11089 g_strdup_printf instead of calcing the length separately
11091 Tue Apr 13 02:49:33 1999 Owen Taylor <otaylor@redhat.com>
11093 * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
11094 that we don't do in many other places. (Fixing duplicate
11095 #include of config.h)
11097 * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
11098 Otherwise, #ifndef XINPUT_NONE check in the latter
11099 doesn't work. (Bug #546)
11101 Sun Apr 11 14:38:03 1999 Tim Janik <timj@gtk.org>
11103 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
11104 "None" case insensitive.
11106 Tue Apr 6 16:38:51 1999 Owen Taylor <otaylor@redhat.com>
11108 * gdk/gdkselection.c:
11109 Add error traps so if the other end of the connection
11112 Tue Apr 6 12:24:21 1999 Owen Taylor <otaylor@redhat.com>
11114 * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
11115 dest_xid field into two fields - one for the window
11116 to send in messages, one to indicate the last looked
11117 up window for caching purposes. This is needed, so
11118 that Leave messages get the correct window.
11120 Mon Apr 5 13:21:30 1999 Owen Taylor <otaylor@redhat.com>
11122 * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
11123 Fix warning created by people mucking around
11124 with the gsource API.
11126 * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
11127 Change mapping between GIOCondition and GdkInputCondition
11128 to match the way the Linux kernel does it. This should
11129 fix problems where closed pipes were no longer signalling
11130 GDK_INPUT_READ on systems with a native poll().
11132 Mon Apr 5 17:11:57 1999 Owen Taylor <otaylor@redhat.com>
11134 * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
11135 explicitly for the string "None" - it is in the XPM
11136 spec and some servers treat unknown colors in odd ways
11137 (like asking the user!)
11139 Thu Apr 1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11141 * gdk/gdkevents.c: made "->" into a "." of previous change so
11144 Thu Apr 1 18:41:25 1999 Owen Taylor <otaylor@redhat.com>
11146 * gdk/gdkevents.c (gdk_compress_exposures): Set the
11147 window field of the event structure before calling
11150 1999-03-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
11152 * gdk/gdk.c (gdk_init_check): Use False as the last argument to
11153 XInternAtom() here. This is a particularly Old And Nasty(tm) bug.
11155 Mon Mar 29 17:31:52 1999 Owen Taylor <otaylor@redhat.com>
11157 * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
11158 intermediate text property - prevents major memory
11159 leak when gdk_use_mb.
11160 gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
11162 Mon Mar 29 17:02:58 1999 Owen Taylor <otaylor@redhat.com>
11164 Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11165 gtk-a-higuti-990322-[0-3]
11167 * gdk/gdkfont.c (gdk_text_extents_wc): Make work when
11168 sizeof(wchar_t) != sizeof (GdkWChar)
11170 * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11171 that was causing -DX_LOCALE not to work.
11173 * gtk/gtkrc.c (gtk_rc_init):
11174 X_LOCALE will never have LC_MESSAGES defined
11176 * gdk/gdk.c (gdk_init_check):
11177 Remove --xim-preedit and --xim-status from argv properly.
11179 * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
11180 that the client window is present on the X server
11181 before we pass it to the input method.
11183 Tue Mar 9 10:46:49 1999 Owen Taylor <otaylor@redhat.com>
11185 * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
11186 if --display is specified on the command line, than
11187 the drag window will not be created on that display.
11189 Tue Mar 9 10:38:24 1999 Owen Taylor <otaylor@redhat.com>
11191 * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
11192 lookups with only_if_exists == TRUE were inserting
11193 bogus values into the atom cache.
11195 Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
11197 * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
11198 then reset it to NULL.
11202 (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
11203 key for g_hash_table_remove() in both functions, this prevents us
11204 from accessing possibly uninitialized portions of a GdkColor structure
11205 where we are only interested in its pixel value.
11207 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
11209 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11210 font hash table, if we have a GdkFontPrivate entry for this font
11211 already, simply increment its reference count, provided by Olaf Dietsche
11212 <olaf.dietsche+list.gtk@netcologne.de>.
11214 1999-09-21 Tor Lillqvist <tml@iki.fi>
11216 * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
11219 * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
11220 unused variables, leftovers from the X11 version.
11222 * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
11224 * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
11225 downcase fields on X11.
11227 Mon Sep 20 13:17:39 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11229 * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
11230 Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
11232 1999-09-17 Tor Lillqvist <tml@iki.fi>
11234 * gdk/win32/gdk.def: Add gdk_threads_mutex.
11236 * gtk/makefile.msc: Correct path to libintl.
11238 Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
11239 use of gint vs. int, and gint vs. gboolean in headers and
11240 definitions. Use GtkType for the *_get_type functions. Note that
11241 these changes preserve binary compatibility.
11245 * gdk/gdk.h: Fix inconsistencies: gint vs int.
11249 * gtk/gtkmenufactory.c
11250 * gtk/gtknotebook.c
11251 * gtk/gtkwidget.c: Fix inconsistencies, also gint
11254 * gtk/gtkcolorsel.[ch]
11255 * gtk/gtkcombo.[ch]
11256 * gtk/gtkdrawingarea.[ch]
11257 * gtk/gtkgamma.[ch]
11258 * gtk/gtkhandlebox.[ch]
11259 * gtk/gtkhpaned.[ch]
11260 * gtk/gtkhruler.[ch]
11262 * gtk/gtkpreview.[ch]
11263 * gtk/gtkruler.[ch]
11264 * gtk/gtksocket.[ch]
11265 * gtk/gtkstatusbar.[ch]
11266 * gtk/gtktoolbar.[ch]
11267 * gtk/gtkvbbox.[ch]
11268 * gtk/gtkvpaned.[ch]
11269 * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
11272 * gtk/gtkgamma.h: Fix bug, missing () in call of
11273 gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS.
11275 1999-09-14 Tor Lillqvist <tml@iki.fi>
11277 * gdk/gdkcolor.c (gdk_colormap_new)
11278 * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
11279 colormap->colors was allocated twice.
11281 * gdk/win32/gdk.c: Remove some unused stuff.
11283 * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
11286 * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
11287 * gtk/gtklabel.h (gtk_label_get_type)
11288 * gtk/gtktipsquery.c (gtk_tips_query_get_type)
11289 * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
11290 in a couple of places, not guint.
11292 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11294 * configure.in,po/et.po: added Estonian language file
11296 Wed Sep 1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11298 * configure.in,po/da.po: added Danish file
11300 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
11302 * docs/gtkfaq.sgml: Minor FAQ Update
11304 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
11306 * docs/gtkfaq.sgml: FAQ update
11308 1999-08-27 Tor Lillqvist <tml@iki.fi>
11310 Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
11311 way to get window contents continually refreshed while resizing. I
11312 didn't like the effects myself, so it's not on by default.
11314 * gdk/win32/gdkprivate.h: New flag variable
11315 gdk_event_func_from_window_proc, FALSE by default.
11317 * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
11318 environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
11319 are passed --gdk-event-func-from-window-proc.
11321 * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
11322 and we have am event_func, call it instead of enqueing the event.
11324 1999-08-23 Tor Lillqvist <tml@iki.fi>
11326 * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
11327 Kelley: Set expose_count in GdkEventExposes correctly.
11329 * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
11330 MULTIPLE_WINDOW_CLASSES).
11332 * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
11333 for bug in NT, apparently NT *does* draw the end pixel, too, in
11334 LineTo with a one-pixel pen, so we don't have to do it ourselves.
11336 1999-08-21 Tor Lillqvist <tml@iki.fi>
11338 Improvements by Hans Breuer:
11340 * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
11342 * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
11343 CS_?REDRAW flags as they cause lots of (late) redraws when "show
11344 window contents while dragging" is turned on. Allocate at least
11345 one unique class for every GdkWindowType. If support for single
11346 window-specific icons is ever needed (eg. Dialog specific), every
11347 such window should get its own class.
11349 1999-08-19 Tor Lillqvist <tml@iki.fi>
11351 * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
11352 error that caused crashes.
11354 1999-08-17 Tor Lillqvist <tml@iki.fi>
11356 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
11357 window, use ScrollWindowEx, and call UpdateWindow. This prevents
11358 bugs when for instance part of the window was outside the
11359 display. Thanks to Philippe Colantoni for finding and fixing this.
11361 1999-08-16 Tor Lillqvist <tml@iki.fi>
11363 * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
11364 endpoint calculations which were totally wrong. (A little RTFMing
11367 * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
11368 from a separate directory, not from gettext, because of licensing
11369 issues (we want to use the LGPL version).
11371 * README.win32: Mention the intl from glibc vs from gettext issue.
11373 1999-08-13 Tor Lillqvist <tml@iki.fi>
11375 * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
11376 in the key event handling: Now AltGr chars work again. Also,
11377 now Alt-digits are passed up as well as Control-digits.
11378 Pass keypad plus and minus as normal plus and minus.
11380 Wed Aug 11 13:38:26 BST 1999 Tony Gale <gale@gtk.org>
11382 * docs/gtkfaq.sgml: FAQ Update
11384 1999-07-25 Tor Lillqvist <tml@iki.fi>
11387 * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
11390 * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
11391 OK, but getting closer. Guard against bogus tilt data from Wacom
11392 ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
11393 enable easier building without Wintab.
11395 * gdk/win32/gdkinput.h
11396 * gdk/win32/gdkevents.c
11397 * gdk/win32/gdkwindow.c: Minor changes related related to above.
11399 * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
11400 code. As we have just one visual on Win32, no sense to have it in a
11401 table, and no need for the hash table.
11403 * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
11404 better on white background.
11406 1999-07-21 Tor Lillqvist <tml@iki.fi>
11408 * README.win32: Update gcc build instructions. Mention gettext is
11411 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
11412 supported cursor size with GetSystemMetrics.
11414 * gdk/win32/gdkfont.c
11415 * gtk/gtkfontsel.c: Guard against some font weight and charset
11416 symbols being undefined (in mingw32 headers).
11418 * gdk/win32/makefile.cygwin
11419 * gtk/makefile.cygwin
11420 * gtk/gtkthemes.c: No longer need to have differently named
11421 gcc-built DLLs when using gcc-2.95 and -fnative-struct.
11423 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
11425 * docs/gtkfaq.sgml: Long awaited FAQ update.
11427 1999-07-15 Tor Lillqvist <tml@iki.fi>
11429 * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
11430 it. Obscure bit manipulation needed.
11432 * gdk/win32/gdkevents.c: Logging.
11434 * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
11435 style (file name include compiler name) for theme engines.
11437 1999-07-13 Tor Lillqvist <tml@iki.fi>
11439 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
11441 * gdk/win32/gdkevents.c: Fix long-standing bug in key
11442 events. The key.string wasn't zero-terminated, still we strdup'ed
11443 it in gdk_event_copy(). Synthesize crossing events for button
11444 events before possible propagation.
11446 * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
11448 * gdk/win32/makefile.cygwin
11449 * gtk/makefile.cygwin: Use new DLL naming style for the
11452 * gdk/win32/makefile.msc
11453 * gtk/makefile.msc: Cosmetics mostly.
11455 * gtk/gtk.def: Add missing entry points.
11457 * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
11459 1999-07-09 Tor Lillqvist <tml@iki.fi>
11461 * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
11462 or height is zero. Don't print a warning if Pie or Arc fails, they
11463 always fail (?) for very narrow ellipses.
11465 * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
11466 the part or the destination window corresponding to source area
11467 outside of the source drawable's boundary.
11469 * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
11470 anything if less than two points.
11472 * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
11473 return NULL. Gtk cut-and-paste inside a single program works
11474 better this way. (It always gets the clipboard contents from
11475 Windows, not from its own copy, which is cleared anyway. I can't
11476 say I fully understand what happens... Emulating the X selection
11477 and property stuff is a bit of a mess.)
11479 * gdk/win32/gdkevents.c
11480 * gdk/win32/gdkproperty.c: A bit more verbose logging.
11482 * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
11483 that never got deleted). Revamp gdk_region_shrink.
11485 * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
11488 * gtk/gtk.def: Add some missing entry points.
11490 * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
11493 1999-07-04 Tor Lillqvist <tml@iki.fi>
11495 * gdk/win32/gdkevents.c (gdk_event_translate): Handle
11496 Control-digits specially.
11498 1999-07-03 Tor Lillqvist <tml@iki.fi>
11500 * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
11502 1999-06-28 Tor Lillqvist <tml@iki.fi>
11504 * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
11505 bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
11508 1999-06-01 Jose H Mercado <jmercado@mit.edu>
11510 * gtk+.spec.in: Corrected some typos in files section.
11512 1999-06-15 Tor Lillqvist <tml@iki.fi>
11514 * README.win32: Mention using GNU gettext.
11515 * config.h.win32: Enable NLS stuff.
11516 * gtk/makefile.msc: Use GNU gettext.
11517 * gdk/win32/gdkdnd.c: Minor header reorg.
11518 * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
11520 * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
11521 * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
11523 Wed Jun 2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
11529 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
11531 1999-05-30 Tor Lillqvist <tml@iki.fi>
11533 * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
11534 SafeAdjustWindowRectEx. Don't override all calls to
11535 AdjustWindowRectEx by it, but use it only in two places: When
11536 creating a new top-level window and when moving a top-level
11539 Use screen coordinate rectangle, not client rectangle, in
11540 gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
11541 when we try to place a window so that the decoration (mainly,
11542 title bar) isn't visible.
11544 These changes fix the bug that showed up for instance as the
11545 GIMP's saved top-level windows moving right and down (by an amount
11546 equal to the window decoration) for each session. This bug showed
11547 up also in testgtk's "Saved Position".
11549 gdk_window_resize also redone a bit.
11551 1999-05-25 Tor Lillqvist <tml@iki.fi>
11553 * gtk/testgtkrc: Add (commented out) Windows-style theme
11556 * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
11558 1999-05-18 Tor Lillqvist <tml@iki.fi>
11560 * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
11561 gdkx.h to a gdk subdirectory, so that applications can include
11562 these with <gdk/*.h> without trouble.
11564 * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
11565 (gdk_image_destroy): Plug resource leak, some GdkImages didn't
11566 have their bitmap destroyed.
11568 * gdk/win32/gdk.def: Add gdk_root_parent.
11570 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
11576 gtk/Makefile.am: changes to compile nicely (with xlib)
11579 Sat May 1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
11585 * ltmain.sh: upgrade to libtool 1.3
11587 Fri Apr 30 13:38:16 1999 Lars Hamann <lars@gtk.org>
11590 * gtk/gtkctree.c: merges from gtk-1-2
11592 1999-04-25 Tor Lillqvist <tml@iki.fi>
11594 Support added for building using a GNU toolchain on Win32,
11595 gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
11597 * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
11598 * config.h.win32: Changes for gcc.
11599 * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
11600 * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
11601 * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
11602 * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
11603 Protect shl stuff unavaiilable with mingw32 headers.
11604 * gdk/win32/gdkevents.c: Fix typo.
11605 * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
11606 * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
11607 * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
11608 * gdk/win32/gdkprivate.h: Make up for some stuff missing from
11609 the mingw32 headers.
11610 * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
11611 * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
11612 definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
11613 * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
11614 Test for NATIVE_WIN32, not _MSC_VER.
11615 * gtk/gtkmain.c: No use warning about developer version on Win32,
11616 there aren't any non-developer versions anyhow.
11617 * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
11618 * gtk/makefile.msc: Use pthread from another directory. Minor other
11621 Wed Apr 21 14:20:22 1999 George Lebl <jirka@5z.com>
11623 * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11624 default filter from the list
11626 Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
11628 * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
11629 when gtk_widget_grab_default() is called for a widget that
11630 is not within a GtkWindow.
11632 Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
11634 * docs/gtk_tut.sgml, examples/clist.c: use a
11635 scrolled window in the clist example. Minor
11638 Fri Apr 2 09:19:20 BST 1999 Tony Gale <gale@gtk.org>
11640 * docs/gtk_tut.sgml: Style check from David King
11641 <dking@youvegotmail.net>
11643 1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
11645 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
11646 compile with unknown value of GDK_WINDOWING
11648 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
11650 * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
11651 after the rule is fired.
11652 (install-exec-local): Install gdkconfig.h only if the contents are
11653 different from the currently installed gdkconfig.h.
11655 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
11657 * gdk/Makefile.am (configexecincludedir): Rename from
11658 configincludedir so that gdkconfig.h will be installed
11659 as part of `make install-exec'.
11661 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
11667 * ltmain.sh: upgrade to libtool 1.2f
11669 * autogen.sh: libtool is not required to autogen gtk+
11671 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
11674 1999-03-18 Tor Lillqvist <tml@iki.fi>
11676 * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
11677 declaring gdk variables exported/imported from the DLL. New image
11678 type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
11679 drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
11680 GDK_DRAG_PROTO_OLE2.
11682 * gdk/gdk.h: Merge in Win32 version: Two new functions,
11683 gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
11684 declared only for the Win32 version, but could be in the X11
11685 version as well. (Needed for a Xlib-less gdk_imlib.)
11686 gdk_color_hash should have only one parameter. Declare
11687 gdk_threads_mutex with GDKVAR.
11689 * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
11690 just one parameter.
11692 * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
11693 per pixel, not bits.
11695 * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
11696 Fetch bpp (which means bits-per-pixel here) from another place on
11697 Win32. Accept also depth==32 (which we might get on Win32) with
11700 * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
11701 gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
11702 gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
11703 Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
11704 in the backend-dependent directory, not in the common gdk
11707 * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
11710 Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
11712 * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
11713 want to use the Gtk+ devel version (which is true, and yes - even i am
11714 currently working with the 1.2.x branch). so everyone reading this, you
11715 probably want to issue
11716 cvs checkout -r glib-1-2 glib
11718 cvs checkout -r gtk-1-2 gtk+
11719 as your next two comands.
11721 Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
11723 * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
11724 gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
11726 * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
11727 file. strongly deprecated the GTK_HAVE_* macros, we provide
11728 GTK_CHECK_VERSION() for people that need to check for certain
11731 * gtk/gtkcompat.h: removed this from CVS.
11732 * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
11733 idea right from the start, it just didn't seem like that back then.
11735 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
11737 * merges from gtk-1-2:
11739 Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
11741 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
11742 item factory class has been created.
11743 (gtk_item_factory_parse_rc): likewise.
11746 keep proper references for old_active_menu_item.
11747 (gtk_menu_reparent): unset the usize of the new parent,
11748 so the menu can sanely be size requested and we don't get nasty screen
11749 artefacts upon next reparentation.
11750 (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
11751 enter notify. only synthesize enter notifies if the pointer really is
11752 inside the event window.
11753 (gtk_menu_popdown): use gtk_menu_shell_deselect().
11754 (gtk_menu_popup): move the background setting stuff into
11755 gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
11757 * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
11758 gtk_menu_shell_select_item() to select the new item.
11759 (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
11760 do the right thing for deselection as well.
11762 Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
11764 * gtk/gtkwidget.[hc]:
11765 (gtk_widget_accelerators_locked): return whether a widget's accelerators
11768 * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
11769 existing accelerators if the widget's accelerators are locked.
11771 Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
11773 * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
11775 * gtk/gtkmenu.c: truely forward key press and key release events to
11776 the menu widget from the toplevel or tearoff window. we can't simply
11777 connect to that, we need to stop further processing of the events as
11780 Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
11783 (gtk_menu_key_press): pass event->keyval, event->state to
11784 gtk_accelerator_valid, instead of event->keyval twice.
11785 refuse to install single letter accelerators for menus that use
11786 single letter shortcuts.
11788 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
11789 gtk_menu_ensure_uline_accel_group().
11791 * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
11792 which will always return an uline accel group, made
11793 gtk_menu_get_uline_accel_group() return NULL if the group isn't
11796 Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
11798 * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
11800 * gtk/gtkclist.c (gtk_clist_column_title_passive):
11801 Leave button sensitive, trap button_press, button_release,
11802 motion_notify, enter_notify and leave_notify events instead.
11803 (gtk_clist_column_title_active): disconnect event handler.
11804 (gtk_clist_drag_data_get): fixed memory leak. Reported by
11805 Guillaume Laurent <glaurent@worldnet.fr>
11807 Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
11809 * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
11810 width/height mixups.
11812 * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
11815 Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
11817 * gtk/testgtk.c (create_item_factory): unref the item factory after
11818 window's destruction.
11820 * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
11821 count on the menu shell around the menu item's activation, since the
11822 signal emission may cause menu shell destruction.
11824 * gtk/gtkitemfactory.c:
11825 the previous code leaked one accel group per menu. we use
11826 gtk_menu_get_uline_accel_group() now to fix that, and with that
11827 also create the underline accelerator group of the menus only if
11828 required (i.e. an underline accelerator has been specified).
11829 (gtk_item_factory_construct):
11830 (gtk_item_factory_create_item): removed code that would create an
11831 extra accel group for the menu (and leak references).
11832 (gtk_item_factory_create_item): adapted the underline accelerator
11833 installation code to properly feature gtk_menu_get_uline_accel_group().
11835 * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
11836 menu->accel_group, this may return NULL if the accelerator group
11837 hasn't been set yet.
11838 added gtk_menu_get_uline_accel_group() to retrive the underline
11839 accelerator group of the menu, this will be created on demand
11840 and proper care is taken about its reference count.
11842 * gtk/gtkitemfactory.h:
11843 * gtk/gtkitemfactory.c:
11844 dumped the approach of keeping a widgets by action list on the
11845 factory since the factory<->widget destroy negotiation didn't work
11846 and would be hard to get going at all. instead we keep a list of
11847 GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
11848 persistant throughout a program's life time).
11849 also, i removed the static const gchar *key_* variables, and made
11850 them inline strings (they weren't actually used anyways).
11851 (gtk_item_factory_add_item): update ifactory->items.
11852 (gtk_item_factory_destroy): destroy ifactory->items (and remove
11853 the item factory pointer from the remaining ifactory widgets).
11854 (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
11855 list to find the widget.
11856 (gtk_item_factory_get_item): new function that works around
11857 gtk_item_factory_get_widget() limitations, this function will only
11858 return menu items, even for <Branch> entries.
11860 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
11862 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11863 font hash table, if we have a GdkFontPrivate entry for this font
11864 already, simply increment its reference count, provided by Olaf Dietsche
11865 <olaf.dietsche+list.gtk@netcologne.de>.
11867 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
11868 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
11870 Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
11872 * gtk/gtkcontainer.c:
11873 (gtk_container_add_with_args):
11874 (gtk_container_addv):
11875 (gtk_container_add): before adding a child to a conatiner, make sure
11876 it is (default) constructed, this is neccessary because under certain
11877 circumstances the child will get relized and mapped immediatedly, in
11878 which case it has to be constructed already.
11880 Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
11882 * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
11883 values > 1 as TRUE also.
11885 1999-03-16 Tor Lillqvist <tml@iki.fi>
11887 * README.win32: New file.
11889 * configure.in: Check for lstat.
11891 * config.h.win32: Add non-definition of HAVE_LSTAT, just for
11894 * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
11896 * gtk/gtk.def: Removed CRs.
11898 * gtk/makefile.msc: Correct include path to Win32 GDK version (in
11901 * gdk/win32/makefile.msc: Correct upwards relative paths.
11903 Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
11905 * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
11906 gtk_drag_highlight_expose and gtk_drag_highlight_paint since
11907 it was connecting a void function to expose_event and the int
11908 returning function to the draw signal
11910 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
11913 Use correct path to libgmodule.la when ref'ing uninstalled copy
11914 of glib. (Already in stable branch, Bug #417)
11916 1999-03-15 Tor Lillqvist <tml@iki.fi>
11918 Win32 merge and general portability stuff:
11920 * acconfig.h,configure.in: Check for <sys/time.h>.
11922 * gdk/win32: New directory (actually, been there for a while).
11924 * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
11925 NATIVE_WIN32, and use these. Always case fold on Win32. No
11926 backslashed escapes on native Win32.
11928 * gtk/{gtk.def,makefile.msc}: New files.
11930 * gtk/Makefile.am: Add above new files.
11932 * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
11933 instead of <strings.h>.
11935 * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
11936 config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
11937 <unistd.h> appropriately.
11939 * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
11940 Use ABS() (from <glib.h>) instead of abs().
11942 * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
11943 of gtk (and thus glib) headers, so that WIN32 will be
11944 defined. With MS C, include <direct.h> for mkdir prototype.
11946 * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
11947 some casts, needed by MS C.
11949 * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
11952 * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
11953 <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
11954 G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
11956 * gtk/gtkmain.h: Mark variables for export/import on Win32.
11958 * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
11959 the event is not a hint, or its window is not the slider. Needed
11960 on Win32, at least.
11962 * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
11963 unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
11964 G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
11965 a subdirectory of the Windows directory as gtk system
11966 configuration directory.
11968 * gtk/gtkselection.c: No chunks on Win32.
11970 * gtk/gtksocket.c: Not implemented on Win32.
11972 * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
11974 * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
11976 * gtk/maketypes.awk: Declare variables with a macro that expands to
11977 necessary export/import magic in the case of Win32.
11979 * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
11981 1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
11983 * configure.in (gdk_wc): Move widechar tests from `glib' to here,
11984 since those were meant only for gdki18n.h.
11985 * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
11986 for widechar tests.
11987 * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
11989 1999-03-13 Tor Lillqvist <tml@iki.fi>
11991 * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
11992 gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
11994 * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
11995 installed) to CFLAGS.
11997 * gdk/Makefile.am: Add rules for gdkconfig.h.
11999 * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
12002 * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
12003 gdkx.h anyway when compiling for X11.
12004 (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
12005 general): Merge in Win32 version.
12007 * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
12008 version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
12009 expansion (if we don't have HAVE_PWD_H), allow for drive
12010 letters. UNC paths (\\server\share\...) are not handled yet. Also,
12011 included code from Craig Setera's port to Win32 (the one that uses
12012 X11, and the cygwin dll), even if it probably will be abandoned.
12014 * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
12015 the user entered one herself. This way one can complete *.h and
12016 don't get matches on any .help files, for instance.
12018 Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
12020 * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12021 font hash table, if we have a GdkFontPrivate entry for this font
12022 already, simply increment its reference count, provided by Olaf Dietsche
12023 <olaf.dietsche+list.gtk@netcologne.de>.
12025 * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12026 provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12028 1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
12030 * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
12031 the number of calls to gdk_draw_point() (and thus to X) by
12032 clipping the points by hand.
12034 * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
12035 the clip parameter.
12036 (gtk_handle_box_paint): Only paint the handle if the expose area
12039 Sun Mar 7 18:46:37 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
12041 * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
12043 Sun Mar 7 11:43:34 1999 ape@spacetec.no (Asbjorn Pettersen)
12045 * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
12046 Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
12048 Fri Mar 5 09:12:24 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen)
12050 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
12051 textmode (O_TEXT) for OS/2 version.
12053 Sun Feb 28 16:46:02 1999 Stefan Jeske <stefan@gtk.org>
12055 * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
12056 GtkSpinButton, "input" and "output", to make the output more flexible.
12057 The user has to provide a mapping between adjustment->value and the
12058 output string (and vice versa, if the spin button is editable).
12059 See testgtk for examples.
12061 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
12063 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
12066 * configure.in: set gtk+ version to 1.3.0.