]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
new directory to contain tests, gtk/test* should move here sometime (with
[~andy/gtk] / ChangeLog.pre-2-2
1 2000-12-20  Havoc Pennington  <hp@redhat.com>
2
3         * tests: new directory to contain tests, gtk/test* should move
4         here sometime (with appropriate on-cvs-server hackery)
5
6         * tests/testtreeview.c, tests/Makefile.am: a test
7         
8         * configure.in (AC_OUTPUT): add tests/Makefile
9
10         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
11         and "invisible_set" which were missing
12
13         * gtk/gtkrbtree.h: some cheesy indentation fix
14         
15 2000-12-20  Alexander Larsson  <alexl@redhat.com>
16
17         * gtk/gtkinvisible.c (gtk_invisible_realize):
18         Attach the style to the window so that the style it is not
19         leaked when unrealizing the window.
20
21 2000-12-18  Havoc Pennington  <hp@redhat.com>
22
23         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
24         begin/end user action where appropriate
25         (gtk_text_view_commit_handler): add begin/end user action
26
27         * gtk/gtktextbuffer.c: add begin/end user action signals, and
28         bracket interactive operations with begin/end user action pair.
29         
30         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
31         "interactive" arg from insert_text and delete_text signals.
32         Add begin_user_action, end_user_action signals
33         (gtk_text_buffer_begin_user_action): 
34         (gtk_text_buffer_end_user_action): New functions to delimit 
35         a user-visible action
36
37         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
38         signals.
39         
40 2000-12-18  Havoc Pennington  <hp@redhat.com>
41
42         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
43         was pretty non-working.
44
45         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
46         by passing the length to g_utf8_validate().
47
48 2000-12-16  Havoc Pennington  <hp@pobox.com>
49
50         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
51         Port to GObject, can go back in gdk-pixbuf after setting up 
52         a gdk-pixbuf-marshal.h header over there.
53
54         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
55         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
56         args
57         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
58         set
59         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
60         here, do it when we create the buttons later
61         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
62         (gtk_tree_view_map): paranoia checks that column->button is shown 
63         and unmapped
64         (gtk_tree_view_size_request): only request visible children.
65         Move header size calculation in here, for cleanliness, and 
66         to maintain invariants for child widgets if we eventually 
67         let users set different children inside the buttons
68         (gtk_tree_view_map_buttons): factor out code to map buttons,
69         since it was being called several times
70         (gtk_tree_view_size_allocate_buttons): move_resize the drag
71         windows instead of just moving them; their height may change 
72         if we allow random widgets in there, or the theme changes.
73         (gtk_tree_view_size_allocate): move button size allocation 
74         above emitting the scroll signals, to ensure a sane state when we
75         hit user code
76         (gtk_tree_view_button_release): remove queue_resize after
77         tree_view_set_size(), set_size() will handle any resize queuing
78         that's needed
79         (gtk_tree_view_focus_in): just queue a draw, don't fool with
80         draw_focus goo
81         (gtk_tree_view_focus): use gtk_get_current_event() and
82         gdk_event_get_state()
83         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
84         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
85         semicolon
86         (gtk_tree_view_create_button): show the button here
87         (gtk_tree_view_button_clicked): actually emit the clicked signal
88         on the column
89         (_gtk_tree_view_set_size): return right away if the size is
90         unchanged, as a cheesy optimization
91         (gtk_tree_view_setup_model): rename set_model_realized to 
92         setup_model to match the flag that indicates whether we've 
93         called it
94         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
95         exist, because set_scroll_adjustment does that and it shouldn't
96         matter what order you call these in
97         (gtk_tree_view_get_vadjustment): ditto
98         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
99         for paranoia
100         (gtk_tree_view_set_headers_visible): call
101         gtk_tree_view_map_buttons() instead of using cut-and-paste code
102         (gtk_tree_view_append_column): clarify whether the return value
103         is the count of columns before or after, and do the increment 
104         separately from the return statement so you can tell from the code.
105         (gtk_tree_view_remove_column): ditto
106         (gtk_tree_view_insert_column): ditto
107         (gtk_tree_view_get_column): remove g_return_if_fail for columns
108         outside the existing range, the docs say that outside-range
109         columns are allowed, so we handle them as documented. (Presumably
110         this allows a nice loop with column != NULL as test.)
111         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
112         mean (left/right/center etc.).
113         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
114         (gtk_tree_view_expand_row): add docs
115         (gtk_tree_view_collapse_row): add docs
116
117         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
118         function to emit the clicked signal on a column
119         
120         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
121         state of an event
122         (gdk_event_get_time): don't treat GDK_SCROLL 
123         as a button event, remove default case from switch so gcc 
124         will whine if we don't explicitly handle all event types
125
126         * gtk/gtktreeselection.h: added some FIXME 
127         
128         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
129         "columns" to "n_columns" and "column" to "columns" for clarity
130
131 2000-12-16  Havoc Pennington  <hp@pobox.com>
132         
133         * gtk/gtktextiter.c: General cleanup of the log attr iteration
134         stuff. This should make e.g. the delete key work again in the
135         text widget...
136         (gtk_text_iter_forward_cursor_positions): handle negative count
137         (gtk_text_iter_backward_cursor_positions): handle negative count
138         (gtk_text_iter_forward_word_ends): handle negative count
139         (gtk_text_iter_backward_word_starts): handle negative count
140
141         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
142         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
143         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
144         GObject. No doubt will cause breakage.
145
146         * demos/gtk-demo/textview.c: remove hacks around
147         non-GObject-ification of the text objects
148
149         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
150         the text tag
151         
152 2000-12-14  Havoc Pennington  <hp@pobox.com>
153
154         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
155         that we have Xrender
156
157 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
158
159         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
160         Add two virtualized functions gdk_drawable_get_clip_region - to
161         get the clip region when drawing.
162         
163         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
164         use invalidate_region.
165
166         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
167         region.
168
169         * acconfig.h configure.in: Check for Xft. For now, assume
170         that if Xft is found, Pango was compiled with Xft support
171         as well.
172
173         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
174         gdk_colormap_query_color().
175         
176         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
177         with Xft if appropriate.
178
179         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
180         a pangoxft context if we have XFT and the environment
181         variable GD_USE_XFT is set.
182         
183         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
184         and also possibly an XftDraw structure.
185
186         * gtk/gtkfontsel.c: Handle the case where the font from the
187         style doesn't match any of the fonts a bit better.
188         
189         * gtk/testgtk.c: Add tabs between directional segments for
190         hebrew/arabic test. (Not really necessary, just a little
191         prettier.)
192
193 2000-12-14  Havoc Pennington  <hp@redhat.com>
194
195         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
196         reading a file
197
198 2000-12-14  Havoc Pennington  <hp@redhat.com>
199
200         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
201         unused call to get_last_line()
202
203         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
204         here until boxed is working (and maybe after that - we should
205         really not gratuitously break old code)
206
207         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
208         specific types for font_desc and tabs args, move them to
209         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
210         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
211
212         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
213         use GTK_TYPE_POINTER for signal signatures as a hack-around
214
215         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
216         PangoTabArray
217
218         * gtk/gtktextlayout.c (line_display_iter_to_index): 
219         make static
220         (line_display_index_to_iter): make static
221
222         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
223         to marshal a string not a boxed
224
225         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
226
227         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
228         since the UTF-8 isn't validated yet
229
230         * gtk/gtktextsegment.c (char_segment_check_func): don't require
231         lines to end in '\n'
232         
233         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
234         forward_to_delimiters, and grapheme boundaries
235         (gtk_text_view_delete_from_cursor): properly handle non-newline
236         delimiters, and grapheme boundaries
237
238         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
239         to gtk_text_iter_forward_to_delimiters, and make it work properly
240         if empty lines end with a character other than '\n'
241
242         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
243         position
244
245 2000-12-15  Tor Lillqvist  <tml@iki.fi>
246
247         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
248
249         * gtk/gtk.def
250         * gdk/gdk.def: Update.
251
252         * gdk/win32/gdkmain-win32.c
253         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
254         gdkmain-win32.c here.
255
256         * gdk/win32/makefile.mingw.in (all): No need to make
257         gdk-win32res.o here, the makefile one step up will call us to make
258         it.
259
260         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
261         gdkkeys-win32.
262
263         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
264
265         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
266         call to g_source_add().
267
268         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
269         leak. Thanks to Andreas Kemnade.
270
271 2000-12-13  Havoc Pennington  <hp@pobox.com>
272
273         * gtk/gtktextbtree.h: Remove double _ in front of some functions
274
275         * gtk/gtktext*.[hc]: update accordingly
276         
277 2000-12-13  Havoc Pennington  <hp@pobox.com>
278
279         * gtk/gtktextbtree.h: Put _ in front of every function in this 
280         header file
281
282         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
283
284 2000-12-13  Alex Larsson  <alexl@redhat.com>
285
286         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
287         Add support for ps2 intellimouse.
288
289         * gdkkeyboard-fb.c:
290         Move shift-F1 repaint handling to xlate handler only.
291         
292         * docs/README.linux-fb:
293         Add imps2 to docs.
294         Document the new refresh keys.
295         
296 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
297
298         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
299
300         * gtk/gtkbox.c: change property types from (u)long to (u)int for
301         ::position and ::padding.
302
303         * gtk/gtkcontainer.c: make ::border_width an INT property.
304
305         * gtk/gtkpacker.c: make ::position an INT property.
306
307         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
308         guard against NULL h/v scrollbars, since this is used at construction
309         time.
310
311         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
312         internal gtk_clist_constructor().
313
314         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
315         gtk_ctree_constructor().
316
317         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
318         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
319
320         * docs/reference/Makefile.am: fun stuff, disabled docs generation
321         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
322
323         * gtk/gtkwidget.[hc]:
324         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
325         and gtk_widget_get().
326         (gtk_widget_new): use g_object_new_valist().
327         (gtk_widget_set): use g_object_set_valist().
328
329         * gtk/gtkobject.[hc]:
330         removed gtk_object_arg_get_info(), gtk_object_getv(),
331         gtk_object_query_args(), gtk_object_newv(),
332         gtk_object_class_add_signals(),
333         gtk_object_class_user_signal_new(),
334         gtk_object_class_user_signal_newv(),
335         gtk_object_arg_set(), gtk_object_arg_get(),
336         gtk_object_args_collect(),
337         gtk_object_default_construct(),
338         gtk_object_constructed(),
339         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
340         removed nsignals, signals and n_args members from GtkObjectClass.
341         (gtk_object_new): use g_object_new_valist().
342         (gtk_object_set): use g_object_set_valist().
343         (gtk_object_get): use g_object_get_valist().
344         
345         * gtk/gtkcompat.h: define gtk_object_default_construct().
346         
347         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
348         g_object_new().
349
350         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
351         fucntions, cleaned up method assignments (make sure your structures
352         are setup properly before calling out). removed all GTK_CONSTRUCTED
353         hacks ;)
354
355 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
356
357         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
358         off-by-one error in checks. (Dave Lambert)
359
360 2000-12-12  Alexander Larsson  <alexl@redhat.com>
361
362         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
363         Don't free gdk_fb_keyboard twice.
364
365 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
366
367         * gtk/testgtk.c:
368         (create_tooltips): 
369         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
370         use GObject swapped_signal:: properties instead.
371
372         * gtk/gtkcellrenderertoggle.c: 
373         * gtk/gtkcellrenderertextpixbuf.c: 
374         * gtk/gtkcellrenderertext.c: 
375         * gtk/gtkcellrendererpixbuf.c: 
376         * gtk/gtkcellrenderer.c:
377         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
378         missing warnings for invalid property ids, install properties
379         with g_object_class_install_property() now.
380         
381         * gtk/gtksignal.c:
382         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
383         
384 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
385         
386         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
387         to determine if a window is the focus widget within
388         its toplevel.
389
390         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
391         to be boolean.
392
393         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
394         of the case where the container CAN_FOCUS to here instead
395         of having it in each individual move-the-focus place.
396
397         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
398         focusing to be geometric in a much more obvious sense. Arrowing
399         around is still non-intuitive because it isn't perfect and
400         because entries, etc, grab the arrow keys, but it at least
401         usually will do what you expect now.
402         
403         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
404         file.
405
406         * gtk/gtknotebook.c: Change tabs to be a single item in
407         the focus chain. Make movement of focus on tabs with arrow
408         keys wrap around.
409         
410         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
411         CHECK_FIND_CHILD macro to give informative error messages
412         instead of silent returns.
413
414         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
415         flag since we handle GdkReturn on the tabs.
416
417         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
418         windows rather than sending expose events directly.
419
420         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
421         definition for GtkNotebookPage into .c file, since it is private.
422
423         * gtk/testgtk.c (create_notebook): Add option for 
424         testing borderless notebook.
425
426         * gtk/testgtk.c (page_switch): Removed egregious poking
427         around in GTK+ internals.
428
429         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
430
431         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
432         properly through gtk_clist_focus. Make the title headers a
433         single item in the tab-focus chain, and make left-right wrap
434         around.
435
436         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
437         focus method so that wrapping around works properly.
438
439         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
440         that is handled for the widget now. 
441
442 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
443
444         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
445         widgets as TOPLEVEL.
446
447         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
448         TOPLEVEL widgets are containers.
449
450         * gtk/gtkinvisible.h: Remove useless include.
451
452 2000-12-11  Havoc Pennington  <hp@redhat.com>
453
454         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
455         Handle chopping off \r\n and 0x2029 in addition to \n before
456         passing to PangoLayout
457
458         * gtk/gtkimcontextsimple.c
459         (gtk_im_context_simple_get_preedit_string): 
460         return an empty string if no match is pending
461
462         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
463         assertion that the returned preedit string was sane
464
465         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
466         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
467         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
468
469 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
470
471         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
472         Fix up finalizer to chain to its parent.
473
474 2000-12-11  Alexander Larsson  <alexl@redhat.com>
475
476         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
477         Clearified the difference between the keyboard types. Wrote a note
478         about the magic sysrq key to get out of raw mode.
479
480 2000-12-09  James Henstridge  <james@daa.com.au>
481
482         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
483         member to hold masks for detecting the start of a protocol packet.
484         (mouse_devs): add packet start masks for ps2 and ms device types.
485         Left the mask for fidmour blank, as I have no idea what it should
486         be.
487         (handle_mouse_io): skip bytes until we get to the start of a
488         packet.  My Logitech mouse seems to be passing an extra NULL pad
489         byte, and GPM does a similar thing here.
490         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
491         this is the ms mouse driver.
492         (gdk_fb_mouse_ms_packet): fix up button handling, which was
493         completely broken except for button1.  It was checking the wrong
494         bit in the packet for the status of the right mouse button, and
495         wrongly assuming right == button2 rather than 3.  I fixed that and
496         also added support for middle button (button2).
497
498 2000-12-08  Havoc Pennington  <hp@redhat.com>
499
500         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
501         that cause a segfault on text insertion
502
503         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
504         warning
505
506         * gtk/gtktextiter.c (test_log_attrs): use
507         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
508
509         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
510         Get log attrs for a line, using a cache stored on the buffer
511         
512         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
513         reported by Jeff Franks
514
515 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
516
517         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
518         /dev/ttyS0 -> /dev/mouse
519
520 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
521
522         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
523         Added dummy gdk_fontset_load.
524
525 2000-12-08  Alexander Larsson  <alexl@redhat.com>
526
527         * docs/README.linux-fb:
528         * docs/Makefile.am:
529         Initial GtkFB docs.
530         
531         * gdk/linux-fb/Makefile.am:
532         Define GDK_DATA_PREFIX.
533
534         * gdk/linux-fb/gdkmain-fb.c:
535         Fix typo.
536         Change default display to /dev/fb0.
537
538         * gdk/linux-fb/gdkpango-fb.c:
539         Add $(prefix)/share/fonts/ to font path.
540         
541 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
542
543         * gdk/linux-fb/gdkkeyboard-fb.c:
544         New file containing the abstracted keyboard driver. Most code
545         taken from gdkinput-ps2.c
546
547         * gdk/linux-fb/gdkinput-ps2.c:
548         Removed file.
549         
550         * gdk/linux-fb/Makefile.am:
551         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
552
553         * gdk/linux-fb/gdkcolor-fb.c:
554         display->fb was renamed to display->fb_fd.
555
556         * gdk/linux-fb/gdkcursor-fb.c:
557         gdk_mouse_get_info -> gdk_fb_mouse_get_info
558
559         * gdk/linux-fb/gdkinput.c:
560         Moved gdk_input_init here from gdkinput-ps2.c
561
562         * gdk/linux-fb/gdkmain-fb.c:
563         display->fb was renamed to display->fb_fd.
564         Now the tty and the console is opened here instead
565         of in the keyboard driver. Also check GDK_VT to see what
566         tty to open.
567         Move gdk_beep () here from gdkinput-ps2.c
568         gdk_mouse_get_info -> gdk_fb_mouse_get_info
569
570         * gdk/linux-fb/gdkmouse-fb.c:
571         Add header.
572         gdk_mouse_get_info -> gdk_fb_mouse_get_info
573         Return correct keyboard modifiers.
574         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
575
576         * gdk/linux-fb/gdkprivate-fb.h:
577         Add tty and vt info to display.
578         Add orignal modeinfo storage to display
579         Update global functions
580
581         * gdk/linux-fb/gdkwindow-fb.c:
582         Added gdk_fb_window_find_focus().
583         gdk_mouse_get_info -> gdk_fb_mouse_get_info
584
585 2000-12-07  Havoc Pennington  <hp@pobox.com>
586
587         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
588         function, noticed by Alex
589
590 2000-12-06  Elliot Lee  <sopwith@redhat.com>
591
592         * configure.in: Detect freetype properly
593
594         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
595         above.
596
597 2000-12-06  Alexander Larsson  <alexl@redhat.com>
598
599         * gdk/linux-fb/Makefile.am:
600         Add gdkmouse-fb.c
601         
602         * gdk/linux-fb/gdkmouse-fb.c:
603         New file. Abstracted the mouse drivers a bit.
604
605         * gdk/linux-fb/gdkcursor-fb.c:
606         The cursor hide/show functions was moved here from gdkinput-ps2.c.
607
608         * gdk/linux-fb/gdkinput-ps2.c:
609         Removed old mouse handling code. Moved cursor handling code
610         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
611         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
612         gdk_mouse_get_info.
613
614         * gdk/linux-fb/gdkmain-fb.c:
615         Pass NULL pointers for x,y in gdk_mouse_get_info call.
616
617         * gdk/linux-fb/gdkprivate-fb.h:
618         Removed public gdk_fb_find_common_ancestor, added and renamed
619         functions for the new mouse handling code.
620
621         * gdk/linux-fb/gdkwindow-fb.c:
622         Moved gdk_fb_window_send_crossing_events here. added global
623         variable gdk_fb_window_containing_pointer. made
624         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
625         renamed to gdk_mouse_get_info.
626
627 2000-12-06  Alexander Larsson  <alexl@redhat.com>
628
629         * gdk/linux-fb/gdkevents-fb.c:
630         Update to match latest gmain/gsource changes.
631
632         * gdk/linux-fb/gdkinput-ps2.c:
633         Bogus gdk_keymap_get_entries_for_keycode implementation so that
634         it links. Will be implemented later.
635
636 2000-12-03  Havoc Pennington  <hp@pobox.com>
637
638         * gdk/Makefile.am: add gdkkeys.[hc]
639
640         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
641         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
642
643         * acconfig.h, configure.in: add checks and command line options
644         for XKB
645
646         * gdk/x11/gdkkeys-x11.c: Implement the above functions
647         
648         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
649         and group in the key event
650
651         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
652         field with the low-level hardware key code, and a group
653         field with the keyboard group
654
655         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
656         and declare a couple globals used for keymap handling
657         
658         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
659         hold down Shift-Control and type a hex number to get a Unicode 
660         character corresponding to the hex number
661         (gtk_im_context_simple_get_preedit_string): Fix cursor position
662         (return bytes not chars)
663
664 2000-12-05  Elliot Lee  <sopwith@redhat.com>
665
666         * gdk/gdkcolor.h: Make GdkColor specify element sizes
667         to avoid waste on 64-bit platforms.
668
669 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
670
671         * INSTALL: Fix link to PNG home, remove reference
672         to fribidi.
673
674         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
675         
676         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
677         tested.)
678
679         * gtk/gtkcheckmenuitem.c: Permanently turn on
680         always_show_toggle.
681
682         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
683         be NULL. (Vladimir Klebanov, #26545)
684
685         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
686         some signed/unsigned comparison problems. (#6510,
687         David Kaelbling)
688
689         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
690         return type to boolean (Oskar Liljeblad, #18648)
691
692 2000-12-05  Alexander Larsson  <alexl@redhat.com>
693
694         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
695         Remove bogus colormap setting.
696
697 2000-12-05  Alexander Larsson  <alexl@redhat.com>
698
699         * gdk/linux-fb/gdkcolor-fb.c:
700         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
701
702         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
703         Must set colormap.
704         
705 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
706
707         * docs/tutorial/gtk-tut.sgml: DND updates
708
709 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
710
711         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
712         Remove old debug g_warning().
713         (gdk_fb_draw_drawable): The src argument can be either a wrapper
714         or an implementation, just pass the implementation to draw_drawable_2.
715         
716         * gdk/linux-fb/gdkprivate-fb.h:
717         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
718
719         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
720         clear and invalidate area when window is destroyed.
721         (send_map_events): Remove old commented out code.
722
723 2000-12-05  Alexander Larsson  <alexl@redhat.com>
724
725         * gdk/linux-fb/gdkpango-fb.c:
726         Use italic instead of oblique in font aliases.
727         
728         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
729         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
730         other unsupported functions.
731
732 2000-12-04  Havoc Pennington  <hp@redhat.com>
733
734         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
735
736         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
737
738         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
739
740         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
741         hack to avoid infinite loops (synthetic expose event) - 
742         Owen has more appropriate fixes in a branch he'll check in later.
743
744         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
745         separator, CR, and CRLF as line ends
746
747         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
748         into lines using pango_find_paragraph_boundary(); other bits of
749         the widget are still going to be broken if the boundary isn't '\n'
750         though
751
752 2000-12-04  Alexander Larsson  <alexl@redhat.com>
753
754         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
755         multiply.
756
757         * gdk/linux-fb/gdkpango-fb.c:
758         Copied some 26.6 scaling macros from pango to clean up the rounding.
759         (pango_fb_font_get_glyph_info): Correct sign on x value.
760
761         * gdk/linux-fb/gdkprivate-fb.h:
762         Removed unreferenced external functions.
763
764         * modules/linux-fb/Makefile.am: Use ` instead of '.
765
766         * modules/linux-fb/basic.c:
767         Remove dead code. In particular the dummy lang engine which broke all
768         pango layouts in GtkFB. Don't include tables-big.i anymore.
769
770         * modules/linux-fb/tables-big.i:
771         Upgrade to latest version from pango. Left for reference, basic_ranges
772         moved to basic.c.
773         
774 2000-12-04  Havoc Pennington  <hp@redhat.com>
775
776         Fix bugs Alex found:
777         
778         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
779         to "draw"
780
781         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
782
783         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
784
785         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
786         implementation in here, apparently the expose() implementation was
787         dead code.
788
789 2000-12-04  Alexander Larsson  <alexl@redhat.com>
790
791         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
792         Return positive descent.
793
794 2000-12-02  Havoc Pennington  <hp@pobox.com>
795
796         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
797         method and signal
798         
799         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
800         calls gdk_window_process_updates() to push the exposes through
801         (gtk_widget_class_init): No more draw signal, no
802         gtk_widget_real_draw()  
803         
804         * gtk/gtkbin.c (gtk_bin_draw): remove
805
806         * gtk/gtkbox.c (gtk_box_draw): remove
807
808         * gtk/gtkbutton.c (gtk_button_draw): remove
809
810         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
811
812         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
813
814         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
815
816         * gtk/gtkclist.c (gtk_clist_draw): remove
817
818         * gtk/gtkentry.c (gtk_entry_draw): remove
819
820         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
821
822         * gtk/gtkfixed.c (gtk_fixed_draw): remove
823
824         * gtk/gtkframe.c (gtk_frame_draw): remove
825
826         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
827
828         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
829
830         * gtk/gtklayout.c (gtk_layout_draw): remove
831
832         * gtk/gtklist.c (gtk_list_draw): remove
833
834         * gtk/gtklistitem.c (gtk_list_item_draw): remove
835
836         * gtk/gtkmenu.c (gtk_menu_draw): remove
837
838         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
839
840         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
841
842         * gtk/gtknotebook.c (gtk_notebook_draw): remove
843
844         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
845
846         * gtk/gtkpacker.c (gtk_packer_draw): remove
847
848         * gtk/gtkrange.c (gtk_range_draw): remove
849
850         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
851
852         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
853
854         * gtk/gtktable.c (gtk_table_draw): remove
855
856         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
857
858         * gtk/gtktext.c (gtk_text_draw): remove
859
860         * gtk/gtktextview.c (gtk_text_view_draw): remove
861
862         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
863
864         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
865
866         * gtk/gtktree.c (gtk_tree_draw): remove
867
868         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
869
870         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
871
872         * gtk/gtkviewport.c (gtk_viewport_draw): remove
873
874         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
875
876         * gtk/gtkvscale.c (gtk_vscale_draw): remove
877
878         * gtk/gtkwindow.c (gtk_window_draw): remove
879
880 2000-20-01  Anders Carlsson  <andersca@gnu.org>
881
882         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
883         a GtkToggleButton is both insensitive and active, it was being
884         drawn by the GtkButton draw handler which doesn't check the
885         state. Now it's calling gtk_toggle_button_paint instead.
886         
887 2000-12-01  Havoc Pennington  <hp@redhat.com>
888
889         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
890         dangling pointers to the appearance attributes from the 
891         line display
892
893         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
894         width/height to mean "full width/height of drawable"
895
896         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
897         click to select word/line
898         
899         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
900         when getting log attrs. Get a slice, so that pixmaps and stuff
901         are properly handled.
902
903         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
904         paste into the selection (replaces selection now, previously
905         crashed or added to selection). Reveals longstanding btree bug -
906         select multiple lines, middle-click on the selection, boom. This
907         isn't related to my changes though.
908
909         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
910         PangoLogAttrs changes
911         (gtk_entry_move_backward_word): ditto
912
913         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
914         functions return bool whether the iter moved onto a
915         dereferenceable position.
916  
917         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
918         functions for motion in terms of display lines.
919
920         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
921         get the buffer a mark is inside
922         
923 2000-12-01  Alexander Larsson  <alexl@redhat.com>
924
925         * gdk/linux-fb/Makefile.am:
926         * modules/linux-fb/Makefile.am:
927         Freetype 2 final uses freetype-config
928
929         * gdk/linux-fb/gdkpango-fb.c:
930         Upgrade to use Freetype 2 final.
931         More flexible support for font aliases, this also fixes a bug with
932         GtkFontSelector, as the aliases must be visible in the font/family list,
933         or GtkFontSelector reads uninitialized memory.
934
935 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
936
937         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
938         XGetIMValues to properly terminate variable argument list, and do
939         NULL return check for ic_values and xim_styles.
940
941         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
942         Restore preedit state after XmbResetIC().
943         
944         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
945         XvaCreateNestedList() should take XvaNestedList, but not
946         XvaNestedList*.
947
948         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
949         preedit_draw_callback, preedit_caret_callback): Match
950         "preedit-changed" signal name to "preedit_changed" to be
951         consistent to the spec.
952
953         * gtk/gtkimcontextsimple.c (check_table):
954         Match "preedit-changed" to "preedit_changed" to be consistent
955         to the spec.
956
957 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
958
959         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
960         gc->clip_region == NULL>
961
962 2000-11-30  Tor Lillqvist  <tml@iki.fi>
963
964         Changes by Hans Breuer:
965         
966         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
967         Dont't use negative width and height as max_hints. This fixes
968         Owen's recent testgtk changes for win32.
969
970         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
971         gdk_win32_hdc_release): These are exported and may be called with
972         other drawable types than our GdkDrawableImplWin32 (?).
973
974         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
975         so always #define USE_BACKING_STORE.
976
977         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
978         of printf for debugging output.
979
980         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
981         
982         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
983
984         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
985         declaration.
986
987         * gtk/gtktexttypes.h: Ditto.
988
989         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
990         (GDK_VoidSymbol) also if in case of arg check failure.
991
992         * gtk/gtkimcontextsimple.c
993         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
994         position to the pointer, but to the variable it points to.
995
996         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
997
998         * gtk/gtk.def: Updates.
999
1000 2000-11-29  Elliot Lee  <sopwith@redhat.com>
1001
1002         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
1003         GTK_TYPE_TREE_MODEL.
1004
1005 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1006
1007         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
1008         Set the size of the font from the description.
1009         (gdk_text_width): Gross hack that calculates the width
1010         of text by text_length * size/2. This is necessary because
1011         GtkLabel does some ugly gtk_string_width call to calculate
1012         an good size.
1013         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
1014
1015 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
1016
1017         * docs/tutorial/gtk-tut.sgml: DND updates
1018
1019 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1020
1021         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1022         If you pass width or height == 0 to gdk_window_clear_area they
1023         should be calculated from the window size.
1024
1025 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1026
1027         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
1028         a grab, but no grab-cursor, use the cursor from the grabbed
1029         window. (gdk_fb_window_send_crossing_events): Send normal
1030         enter/leave notifications if grab and owner_events == TRUE.
1031
1032 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1033
1034         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
1035         Do implicit button grabs, even if the window doesn't
1036         want the event.
1037         (gdk_fb_window_send_crossing_events): If there is a
1038         grab, only the grabbed window gets normal enter/leave
1039         notifications. On ungrab go from grabbed window to current.
1040         Don't send any notification to b when propagating from c -> b.
1041         If setting a grab on window, don't set prev_window.
1042         (handle_mouse_input): Send enter/leave events to the window the
1043         mouse is over, not the grabbed one.
1044         
1045 2000-11-28  Elliot Lee  <sopwith@redhat.com>
1046
1047         * gdk/gdkregion-generic.c: Zap warning.
1048         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
1049         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
1050
1051 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
1052
1053         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1054         The cursor should be hidden if it is part of either the
1055         source or destination region. Not only if it is in both.
1056         (gdk_window_set_transient_for): Silence warnings.
1057
1058 2000-11-28  Alexander Larsson  <alexl@redhat.com>
1059
1060         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
1061         The default mode in X is Pie Arcs, therefore that is
1062         what Gtk+ uses.
1063
1064 2000-11-28  Alexander Larsson  <alexl@redhat.com>
1065
1066         * gdk/linux-fb/gdkinput-ps2.c:
1067         Implement correct EnterNotify/LeaveNotify:
1068         (gdk_fb_window_send_crossing_events): New function that sends
1069         all GdkCrossingEvents from the last mouse-window to the specified
1070         destination.
1071         (gdk_fb_window_visibility_crossing): Removed function.
1072         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
1073         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
1074         instead of gdk_window_get_pointer() for better readability.
1075
1076         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
1077         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
1078
1079         * gdk/linux-fb/gdkprivate-fb.h:
1080         removed gdk_fb_window_visibility_crossing, added
1081         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
1082
1083         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
1084         New function that finds the least common ancestor of two windows.
1085         (gdk_window_show, gdk_window_hide):
1086         Use gdk_fb_window_send_crossing_events.
1087         (gdk_fb_window_move_resize): Send configure events to toplevel
1088         windows. Use gdk_fb_window_send_crossing_events.
1089
1090 2000-11-27  Havoc Pennington  <hp@redhat.com>
1091
1092         * gtk/gtkprivate.h (enum): Remove a trailing comma
1093
1094 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
1095
1096         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
1097         the "changed" callback of the adjustment.  We need to redraw the
1098         spin button's arrows when the adjustment's range changes.
1099         (adjustment_changed_cb): Draw the arrows.
1100         (gtk_spin_button_value_changed): Draw the arrows.
1101
1102 2000-11-23  Alexander Larsson  <alexl@redhat.com>
1103
1104         * gdk/linux-fb/gdkselection-fb.c:
1105         Initial selection implementation.
1106
1107         * gtk/gtkselection.c:
1108         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
1109         requestor in gtk_selection_request.
1110         
1111         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
1112         Added gdk_selection_property atom.
1113
1114         * gdk/linux-fb/gdkprivate-fb.h:
1115         Export _gdk_selection_window_destroyed.
1116         Removed mask_off_x/y from GdkCursorPrivateFB.
1117         Removed hbearing, added top, left to PangoFBGlyphInfo.
1118
1119         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
1120         Call _gdk_selection_window_destroyed
1121         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
1122         the root window has been created.
1123         (static_dx_hack, static_dy_hack, compare_draw_rects,
1124         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
1125         in region. They are already sorted. Instead just traverse them in
1126         reverse if draw_direction < 0.
1127         
1128         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
1129         Double-clicks must be sent after the normal button_press.
1130         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
1131         
1132         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
1133         Pass _gdk_fb_screen_gc instead of NULL.
1134
1135         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1136         Initialize gdk_selection_property.
1137         (gdk_event_make): Remove unused code.
1138
1139         * gdk/linux-fb/gdkcursor-fb.c:
1140         Make the pixmap for the cursor the same size as the mask. Also remove
1141         the mask_off_x/y fields in GdkCursorPrivateFB and combine
1142         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
1143         Now the whole cursor is visible.
1144
1145         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
1146         Fix bug where xdest+height instead of ydest+height was used
1147         to calculate if the source and dest overlapped. This fixes the
1148         redraw bug when the main window in testgtk was scrolled when
1149         partially covered by a tall window.
1150         Copy rectangles in region in order depending on draw_direction.
1151         Also moved the draw_direction flipping of start_y and end_y into
1152         the gc functions, as this might not be what all of them want.
1153         (gdk_fb_draw_lines): Support dashed lines.
1154         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
1155         so that the text is positioned correctly (was 1 pixel high).
1156
1157         gdk/linux-fb/gdkgc-fb.c:
1158         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
1159         all lines were drawn a pixel to short. Also checked the default of
1160         the rest of the values, and they're the same as X now.
1161
1162         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
1163         Clean up pixel positioning of the glyphs. Just use bgy->top and
1164         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
1165         to all divisions to get correct rounding behaviour.
1166
1167         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
1168         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
1169         Moved start_y/end_y flip into draw_drawable implementations.
1170         Flip also x rendering when draw_direction < 0.
1171         Remove unneccesary multiply with draw_direction.
1172
1173 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
1174
1175         * docs/tutorial/gtk-tut.sgml:
1176           - get rid of gtk_toggle_button_toggled FUD
1177           - start DND section - needs work - based on:
1178                 http://wolfpack.twu.net/docs/gtkdnd/
1179
1180 2000-11-22  Alexander Larsson  <alexl@redhat.com>
1181
1182         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
1183         Correct calculation of font metrics. Now GtkEntrys have sane
1184         size.
1185
1186 2000-11-22  Alexander Larsson  <alexl@redhat.com>
1187
1188         * gdk/gdktypes.h:
1189         Add new type GdkSpan
1190         
1191         * docs/reference/gdk/gdk-sections.txt,
1192         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
1193         gdk/gdkregion.h:
1194         Implement and document gdk_region_spans_intersect_foreach.
1195
1196         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
1197         Add new file gdkrender-fb.c which contains all core
1198         rendering code.
1199         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
1200         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
1201         (optimized rectangle fillers).
1202
1203         * gdk/linux-fb/gdkdrawable-fb2.c:
1204         Move all rendering code to gdkrender-fb.c.
1205         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
1206         Use the new span intersection functions in gdk_fb_fill_spans.
1207         gdk_fb_draw_rectangle() clips filled rectangles and calls
1208         gc->fill_rectangle with the result.
1209         gdk_fb_fill_spans() gets extra argument "sorted".
1210
1211         * gdk/linux-fb/gdkevents-fb.c:
1212         Remove unused includes and defines.
1213         New function gdk_fb_get_time() to get correct time for events.
1214
1215         * gdk/linux-fb/gdkinput-ps2.c:
1216         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
1217         Make sure to set the time of all events.
1218
1219         * gdk/linux-fb/gdkmain-fb.c:
1220         Use gdk_fb_get_time ().
1221
1222         * gdk/linux-fb/gdkprivate-fb.h:
1223         New virtual GC calls: fill_span & fill_rectangle.
1224         Export gdk_fb_get_time().
1225         gdk_fb_fill_spans() gets extra argument "sorted".
1226
1227         * gdk/linux-fb/mi*.c:
1228         Use GdkSpan instead of GdkRectangle.
1229         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
1230         from XFree 4 source)
1231         
1232 2000-11-22    <jrb@redhat.com>
1233
1234         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
1235         reversing the order in an if statement will do.  Doing so managed
1236         to make the treemodelsort half work.  Other half will follow after
1237         I get the insert function fully fixed.
1238
1239 2000-11-21  Elliot Lee  <sopwith@redhat.com>
1240         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
1241         more than 2 bits. Besides, I need to implement an evil hack. :)
1242
1243 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
1244
1245         * docs/tutorial/gtk-tut.sgml: minor corrections
1246
1247 2000-11-20  Jonathan Blandford <jrb@redhat.com>
1248         * gtk/gtktreemodelsort.h: Add convertion functions to let you
1249           convert to and from relative path's and iters.
1250
1251         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
1252           testing sorting functions a bit better.  Currently broken -- will
1253           fix in morning.
1254
1255 2000-11-20  Havoc Pennington  <hp@redhat.com>
1256
1257         * gtk/gtkwidget.c: Documented a bunch of functions in here
1258         (gtk_widget_realize): Warn if you try to realize
1259         a widget with no parent that isn't a toplevel
1260         (gtk_widget_intersect): return a gboolean
1261
1262 2000-11-20  Havoc Pennington  <hp@redhat.com>
1263
1264         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
1265         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
1266         scrolling to be implemented in GDK to finish. Also, right now
1267         we just size_allocate all children on every layout change,
1268         which is pretty lame. Test commented out of testtext.c, 
1269         until it works better.
1270
1271 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
1272
1273         * gdk/linux-fb/gdkdrawable-fb2.c:
1274         Removed unused arguments from gdk_fb_drawable_get_pixel().
1275
1276         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
1277         Renamed fidur specific mouse packet data in MouseDevice to
1278         generic. Used it in ps2 mouse handling code to avoid blocking
1279         reads.
1280
1281 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
1282
1283         * demos/gtk-demo/main.c: Changed to have the list become
1284         non-italic when the demo window is destroyed through an external
1285         event (like a close button).  Doing so found three bugs in the
1286         widget.
1287
1288         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
1289
1290         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
1291         we actually set the cell.
1292
1293         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
1294
1295         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
1296         free a leaked path.  Thanks memprof.
1297
1298 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
1299
1300         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
1301         off-by-one error when destroying allocated segments
1302         on failure. (Elliot)
1303
1304 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
1305
1306         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
1307         memleaks found by Evan Martin.
1308
1309 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
1310
1311         * Released 1.3.2
1312         
1313         * NEWS: Updates for 1.3.2
1314
1315 2000-11-17  Tor Lillqvist  <tml@iki.fi>
1316
1317         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
1318         but in general for window system specific events.
1319
1320         * gtk/gtk.def
1321         * gtk/makefile.mingw.in
1322         * gtk/makefile.msc.in: Update.
1323         
1324         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
1325
1326 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
1327
1328         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
1329         distribute gtk.immodules.
1330
1331         * gtk/Makefile.am (install-data-local): Don't install the
1332         gtk.immodules file created for the uninstalled modules;
1333         instead run gtk-query-immodules after install
1334
1335 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
1336
1337         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
1338         -rpath to the right install location.
1339
1340         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
1341         -export-dynamic.
1342
1343         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
1344         properly.
1345
1346 2000-11-15  Havoc Pennington  <hp@pobox.com>
1347
1348         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
1349         patch from Mikael Hermansson to temporarily stop blinking while
1350         the user is using the keyboard to type or navigate. 
1351
1352         Also, when blinking, stay on for longer than we stay off. Also,
1353         return from start_cursor_blink if !cursor_visible, to save
1354         checking that flag all over the place before we call
1355         start_cursor_blink.
1356
1357 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
1358
1359         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
1360         only contain a "fontset" line, which is now ignored.
1361
1362         * gtk/gtkentry.c (gtk_entry_button_release): Make 
1363         double-click-to-select-word work.
1364         
1365 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
1366
1367         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
1368         Don't move back one char when we are actually at the end of the 
1369         paragraph.
1370
1371 2000-11-15  Robert Brady  <robert@suse.co.uk>
1372
1373         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
1374         'o' < 'p'.
1375         
1376         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
1377         bind_textdomain_codeset.
1378
1379         (gtk_init_check): Make the warning about translating default:LTR
1380         sterner.
1381         
1382 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
1383
1384         * **/Makefile.am : remove unecessary rules for win32-specific
1385         config-substituted targets. If you want these rules, use
1386         --enable-maintainer-mode (called automatically by autogen.sh).
1387         Stops a lot of unneccessary make-time warnings.
1388
1389         * gtk/gtktext{layout,display}.c: Factor in total width as
1390         well as screen when figuring alignment for word-wrap as well as
1391         no wrap; this is necessary to handle lines that cannot be wrapped
1392         at all.
1393
1394 2000-11-15  Havoc Pennington  <hp@redhat.com>
1395
1396         * gtk/testtext.c: Implement essential color cycling feature
1397
1398 2000-11-15  Havoc Pennington  <hp@redhat.com>
1399
1400         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
1401         when we invalidate the main window.
1402
1403         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
1404         GtkTextView will now invalidate the side windows for us when text
1405         changes.
1406
1407 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
1408
1409         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
1410         unconditionally, since we may need to update the horizontal
1411         scrollbars even if the height didn't change.
1412
1413         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
1414         the extra attrs, since some of them affect size.
1415
1416         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
1417         x_offset correctly.
1418
1419 2000-11-15  Havoc Pennington  <hp@redhat.com>
1420
1421         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
1422         don't move the first line out into the margin, instead move the
1423         whole paragraph in order to make space for the first line within 
1424         the margin
1425
1426 2000-11-15  Havoc Pennington  <hp@redhat.com>
1427
1428         * gtk/gtktextview.c (changed_handler): offset redraw rect by
1429         xoffset in addition to yoffset, so horizontal scrolling doesn't
1430         break redraws
1431
1432 2000-11-15  Havoc Pennington  <hp@redhat.com>
1433
1434         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
1435         from the cursor
1436         (render_layout_line): fix reversed test that caused weird
1437         underlines to get drawn
1438
1439 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
1440
1441         * gdk/linux-fb/gdkprivate-fb.h:
1442         Fix debug macros.
1443         
1444 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
1445
1446         * gdk/linux-fb/gdkprivate-fb.h:
1447         Added virtual functions set_pixel, get_color,
1448         fill_span and draw_drawable to the GC.
1449         Added global _gdk_fb_screen_gc to use instead of
1450         NULL when drawing to the screen.
1451         Added _gdk_fb_gc_calc_state() prototype.
1452
1453         * gdk/linux-fb/gdkgc-fb.c:
1454         Call _gdk_fb_gc_calc_state() on any gc state change.
1455
1456         * gdk/linux-fb/gdkglobals-fb.c:
1457         Add _gdk_fb_screen_gc
1458                 
1459         * gdk/linux-fb/gdkdrawable-fb2.c:
1460         _gdk_fb_gc_calc_state() calculates best functions
1461         for the GC state and depth.
1462         Moved bpp specialized code to separate functions.
1463         Added optimized 24 bpp AA draw_drawable.
1464
1465         * gdk/linux-fb/gdkevents-fb.c:
1466         Silence gcc warning.
1467
1468         * gdk/linux-fb/gdkimage-fb.c:
1469         Use _gdk_fb_screen_gc
1470
1471         * gdk/linux-fb/gdkwindow-fb.c:
1472         Init and use _gdk_fb_screen_gc
1473
1474         * gdk/linux-fb/mitypes.h:
1475         Remove unused types.
1476
1477 2000-11-14  Havoc Pennington  <hp@pobox.com>
1478
1479         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
1480         to pixels
1481
1482 2000-11-14  Havoc Pennington  <hp@pobox.com>
1483
1484         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
1485
1486         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
1487         unknown char, no real reason we were using a variable. 
1488         Remove gtk_text_unknown_char variable. Fix all the text widget
1489         files accordingly.
1490
1491         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
1492         since the Unicode spec seems to prefer that character for our
1493         purposes.
1494
1495 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
1496
1497         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
1498         value of g_getenv() isn't freeable, so g_strdup it.
1499
1500         * modules/input/inuktitut.c: Inuktitut input method.
1501
1502         * modules/input/Makefile.am: Build this.
1503         
1504 2000-11-14  Elliot Lee  <sopwith@redhat.com>
1505
1506         * gtk/Makefile.am: Install gtk.immodules, needed for operation
1507         of gtk programs.
1508
1509 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
1510
1511         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
1512         reversed > that was causing Home to go to end of previous line.
1513
1514         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
1515         modified-keypresses (leave for bindings.)
1516
1517         * modules/input/Makefile.am: Remove useless -export-dynamic
1518         from module LDFLAGS.
1519
1520 2000-11-14  Havoc Pennington  <hp@redhat.com>
1521
1522         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
1523         higher.
1524
1525         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
1526         account. Also, render rise, underline, background, etc. for
1527         pixbufs as well as text. Also, draw underlines one pixel higher.
1528
1529         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
1530         PangoAttribute for the rise, so it gets drawn properly. Also,
1531         add the GtkTextAppearance attribute for pixbuf/widget segments
1532         as well; we should go ahead and have rise, underline, background,
1533         stipple work for those
1534
1535         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
1536         Pango
1537
1538 2000-11-15  Tor Lillqvist  <tml@iki.fi>
1539
1540         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
1541
1542         * gtk/gtk.def: Update.
1543
1544         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
1545         included.
1546         (gtk_rc_get_im_module_file): Use run-time installation directory
1547         on Win32.
1548
1549         * gdk/win32/rc/gdk.rc: Remove.
1550         * gdk/win32/rc/gdk.rc.in: New file.
1551         * gdk/win32/rc/Makefile.am: New file
1552         * gdk/win32/Makefile.am: Corresponding changes.
1553
1554         * gtk/gtk.rc: Remove.
1555         * gtk/gtk-win32.rc.in: New file.
1556         * gtk/Makefile.am: Corresponding changes.
1557
1558         * configure.in: Corresponding changes.
1559
1560         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
1561         has a built gtkcompat.h. Developers using CVS code on Win32 can
1562         hand-edit it from gtkcompat.h.in.
1563
1564         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
1565         gtkcompat.h from gtkcompat.h.win32.
1566
1567 2000-11-14  Havoc Pennington  <hp@redhat.com>
1568
1569         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
1570         to default to GDK_ACTION_MOVE if the drag is within a single
1571         widget. Defaults to GDK_ACTION_COPY between widgets.
1572
1573 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
1574
1575         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
1576
1577         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
1578
1579         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
1580         srcdir != builddir
1581
1582         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
1583
1584         * configure.in (GTK_VERSION): Up to 1.3.2
1585
1586         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
1587         gtkimcontextxim.h
1588
1589         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
1590         missing doc comment.
1591
1592 2000-11-14  Alexander Larsson  <alexl@redhat.com>
1593
1594         * modules/linux-fb/basic.c:
1595         Use the glib iconv wrappers.
1596
1597 2000-11-13  Havoc Pennington  <hp@pobox.com>
1598
1599         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
1600         still more bugs.
1601
1602         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
1603         scroll the GdkWindows before realization.
1604
1605 2000-11-13  Havoc Pennington  <hp@redhat.com>
1606
1607         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
1608         where GC didn't always get updated properly
1609
1610         * demos/gtk-demo/textview.c (create_tags): Use subattributes
1611         of fonts instead of setting the entire font
1612
1613         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
1614         setting entire font
1615
1616         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
1617
1618         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
1619         a bunch of individually-settable font attributes. You can still 
1620         use the "font" and "font_desc" args, they just set all the font
1621         attributes at once.
1622
1623 2000-11-13 Elliot Lee <sopwith@redhat.com>
1624
1625         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
1626
1627 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
1628
1629         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
1630         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
1631
1632         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
1633         work better.
1634
1635 2000-11-13  Havoc Pennington  <hp@redhat.com>
1636
1637         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
1638         the module file.
1639
1640         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
1641         dest->language
1642
1643         * gtk/testtext.c: Test pixels above/below/inside paragraphs
1644         settings
1645
1646         * gtk/gtktextview.c: Implement object args and setters/getters for
1647         all the aspects of the GtkTextAttributes that are not set from
1648         GtkWidget attributes. This is spacing, justification, margins,
1649         etc.
1650
1651         (gtk_text_view_set_arg)
1652         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
1653         args
1654         (gtk_text_view_class_init): Add args for justify, left_margin,
1655         right_margin, indent, and tabs
1656         
1657
1658         * gtk/gtktextlayout.c (set_para_values): fix to display indent
1659         attribute properly
1660
1661         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
1662         replace with indent attribute
1663
1664         * gtk/gtktextlayout.c (set_para_values): multiply indent by
1665         PANGO_SCALE
1666
1667         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
1668         rearranging code to do that
1669         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
1670         i.e. don't subtract the top_margin first, just to keep
1671         all margin-futzing in one place.
1672
1673         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
1674
1675         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
1676         special case of last line, Pango now handles this itself.
1677         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
1678         Y coordinate
1679         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
1680         (find_display_line_above): wasn't moving the byte index as it
1681         iterated over lines, so always returned byte 0. Also, port to use
1682         PangoLayoutIter.
1683         (find_display_line_below): same problem as
1684         find_display_line_above. Also, port to use PangoLayoutIter.
1685
1686 2000-11-13  Alexander Larsson  <alexl@redhat.com>
1687
1688         * gdk/linux-fb/*.[ch]:
1689         Massive reindent to gtk+ standard. My hands hurt.
1690
1691         * gdk/linux-fb/gdkcolor-fb.c:
1692         Move GdkColorPrivateFB from inherited to windowing_data
1693
1694         * gdk/linux-fb/gdkcursor-fb.c:
1695         _gdk_cursor_new_from_pixmap made static
1696
1697         * gdk/linux-fb/gdkdnd-fb.c:
1698         GdkDragContextPrivate moved to windowing_data
1699
1700         * gdk/linux-fb/gdkdrawable-fb2.c:
1701         Removed endian.h, use glib endianness macros instead
1702         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
1703         and GDK_DRAWABLE_IMPL_FBDATA
1704
1705         * gdk/linux-fb/gdkfont-fb.c:
1706         Add empty gdk_font_load(). Needed for linking of Gtk+.
1707
1708         * gdk/linux-fb/gdkimage-fb.c:
1709         Removed endian.h, use glib endianness macros instead
1710         Moved GdkImagePrivateFB to windowing_data
1711         gdk_image_new_bitmap didn't always allocate enough
1712         memory.
1713
1714         * gdk/linux-fb/gdkinput-ps2.c:
1715         Added semi-working support for MS serial mice.
1716
1717         * gdk/linux-fb/gdkprivate-fb.h:
1718         s/GdkWindowPrivate/GdkWindowObject/
1719         Removed GdkWindowPrivate typedef
1720         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
1721         Removed GDK_DRAWABLE_P
1722         Move GdkColorPrivateFB from inherited to windowing_data
1723         Moved GdkImagePrivateFB to windowing_data
1724
1725         * gdk/linux-fb/gdkvisual-fb.c:
1726         Removed some unused debug code.
1727
1728         * gdk/linux-fb/gdkwindow-fb.c:
1729         Use stock cursors instead of including X headers.
1730         s/GdkWindowPrivate/GdkWindowObject/
1731
1732         * gdk/linux-fb/mitypes.h:
1733         Removed unused types.
1734
1735         * modules/linux-fb/basic.c:
1736         Use the pango fribidi wrappers.
1737
1738 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1739
1740         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
1741         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
1742         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
1743         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
1744         GEqualFunc where applicable.
1745         
1746         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
1747         pango_font_description_equal as changed in pango.
1748         
1749         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
1750
1751         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
1752
1753         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
1754
1755         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
1756
1757         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
1758
1759         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
1760
1761         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
1762         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
1763
1764         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
1765         gtk_rc_styles_compare -> gtk_rc_styles_equal.
1766
1767 2000-11-12  Havoc Pennington  <hp@pobox.com>
1768
1769         * demos/gtk-demo/Makefile.am (democodedir): change demo install
1770         dir to datadir/gtk+-2.0/demo
1771
1772         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
1773         sorts of text widget and Pango font bugs. Urgh.
1774
1775         * demos/gtk-demo/Makefile.am (demos): Add textview.c
1776
1777         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
1778         tree that you should double click to see the demo. Fix 
1779         types of variables to reflect changed return values from 
1780         GtkTreeStore and GtkTreeViewColumn constructors.
1781
1782         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
1783         newly-created buffer to prepare for GObject semantics
1784
1785         * gtk/testtext.c: don't leak the buffer with GObject semantics
1786
1787         * gtk/testtextbuffer.c: ditto
1788         
1789 2000-11-12  Havoc Pennington  <hp@pobox.com>
1790
1791         Rename this testgtk to gtk-demo to avoid confusion, and 
1792         install it so people can use it as a supplement to 
1793         the documentation.
1794         
1795         * demos/gtk-demo: Moved from demos/testgtk
1796
1797         * demos/testgtk: Removed
1798
1799         * configure.in: make Makefile in gtk-demo
1800         
1801         * demos/gtk-demo/Makefile.am: Install sample source to 
1802         datadir/gtk-demo (maybe there's a better place?), and 
1803         rename the binary to gtk-demo
1804         
1805         * demos/gtk-demo/main.c (load_file): Load installed sample
1806         source if source isn't found in pwd.
1807
1808 2000-11-09  Havoc Pennington  <hp@pobox.com>
1809
1810         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
1811         argument to set the char displayed when visibility == FALSE
1812         (gtk_entry_create_layout): If !entry->visible, replace 
1813         all chars with the "invisible char"
1814
1815         * gtk/testgtk.c: Test the invisible_char deal
1816         
1817 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
1818
1819         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
1820         can't get a native font in the right encoding.
1821
1822 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
1823
1824         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
1825         respectively.
1826
1827 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
1828
1829         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
1830         Fix warning when moving between paragraphs.
1831
1832         * gtk/gtkentry.[ch]: Change move => move_cursor, 
1833         delete => delete_from_cursor, insert => insert_at_cursor
1834
1835 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
1836
1837         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
1838
1839         * modules/input/imthai-broken.c: A Thai input method for use if
1840         Thai keys are really generating Latin1 keysyms.
1841
1842         * modules/input/Makefile.am: Build these.
1843
1844 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
1845
1846         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
1847         g_filename_{to,from}_utf8 now takes an extra parameter.
1848
1849         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
1850         strftime into UTF-8.
1851
1852         (column_from_x, gtk_calendar_paint_day_names): Support RTL
1853         calendars.
1854
1855         (gtk_calendar_paint_day_names): Draw day names in the right 
1856         place.
1857         
1858 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
1859
1860         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
1861         problem with using result of g_get_charset() backwards -
1862         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
1863
1864         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
1865         negative min_width/height and max_width/height to
1866         mean "requisition"; this allows setting a window
1867         to be user-resizable in only one direction easily.
1868
1869         * gtk/testgtk.c (create_main_window): Remove hard-coded
1870         usize - set a default size in the vertical direction.
1871
1872 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
1873
1874         * gtk/gtkrange.c: Add some missing casts. Support 
1875         2 and 3 button clicks on the arrows to mean 
1876         "move by pages" and "jump to end". (Like gtkspinbutton)
1877
1878 2000-11-12 Hans Breuer <Hans@Breuer.Org>
1879
1880         * gdk/win32/makefile.msc : reflect build module changes
1881
1882         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
1883         from GdkPixmap*, cast implementation member instead.
1884
1885         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
1886         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
1887         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
1888         more Gdi functions return value checking. 
1889         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
1890         GdkImagePrivateWin32 *.
1891
1892         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
1893         menus useable again. Add #pragma message to keep reminded on this issue.
1894         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
1895         windows. This allows to enable backing store on Win32!
1896
1897         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
1898         in drawable is of impl type. Correct specific type checks appropriate.
1899  
1900         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
1901         GDK_WINDOW_DESTROYED before allocating new resources.
1902
1903         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
1904
1905         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
1906         (gdk_window_foreign_new) initialize parent handle.
1907         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
1908
1909         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
1910         Let the GDI invalidate the window on MoveWindow call to fix scrolling
1911         problems (e.g. main buttons in testgtk). 
1912
1913 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
1914
1915         * gtk/gtkentry.c (gtk_entry_key_press): Call 
1916         gtk_widget_activate for GDK_Return.
1917
1918         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
1919         of preedit cursor position.
1920
1921 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
1922
1923         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
1924         static.
1925
1926 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
1927
1928         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
1929         out support for multiple locales; that simple doesn't
1930         work reliably with current Xlib
1931
1932         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
1933         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
1934         Add support for positioning the cursor within the preedit string.
1935
1936 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
1937
1938         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
1939         at XIM input method module.
1940
1941         * gtk/gtktextview.c: Check for bindings after passing
1942         events to im context filter.
1943
1944 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
1945
1946         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
1947         empty attribute lists properly.
1948
1949 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
1950
1951         * gtk/queryimmodules.c (main): Return non-zero exit
1952         status if errors were encountered querying any
1953         modules.
1954
1955         * modules/input/Makefile.am (moduledir): remove
1956         leftover bin program target.
1957
1958         * docs/make-todo: Fix typo in error message.
1959
1960 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
1961
1962         * configure.in: Add modules/input/Makefile
1963
1964 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
1965
1966         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
1967         don't include gtkthemes.h.
1968
1969         * gtk/testgtk.c gtk/testtext.c: Set environment variables
1970         to point
1971
1972         * gtk/Makefile.am: Add new .c and .h files, build 
1973         gtk-query-immodules and use it to create a gtk.immodules
1974         file for use of test programs.
1975
1976         * gtk/gtkpreview.c: remove extra blank line.
1977
1978 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
1979
1980         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
1981         Add the ability to add extra tables beyond the default
1982         one, and also the ability to have compose sequences 
1983         that are prefixes of other compose sequences. 
1984
1985         * gtk/gtkimcontextsimple.c: Export a preedit string which
1986         consists of possible candidates for keystrokes that have
1987         been entered but not yet committed.
1988
1989         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
1990         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
1991
1992         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
1993         Add a function to add input-method switching menu items
1994         to a menu.
1995
1996         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
1997         when switching input methods.
1998
1999         * gtk/gtkimcontextsimple.[ch]: Change the format of
2000         the compose table to allow compose tables of different
2001         lengths / sequence.
2002
2003 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
2004
2005         * gtk/gtkimmodule.[ch]: Support routines for loading
2006         GtkIMContext implementations dynamically at runtime.
2007
2008         * modules/input/imcyrillic-translit.c: A sample input
2009         method (based on GtkIMContextSimple with an extra table),
2010         which demonstrates preedit strings and the module
2011         system for input modules
2012
2013         * gtk/queryimmodules.c: Program to query the available
2014         input modules and write the results into a file.
2015          
2016         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
2017         extra config options "im_module_file" (cache file for
2018         input method modules), and "im_module_path" - path
2019         to look for modules when generating cache file.
2020
2021         This doesn't scale.
2022
2023 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
2024
2025         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
2026         generic code from gtkthemes into a new abstraction
2027         GtkModule which has the logic for implementing
2028         a loadable module which implements a number of 
2029         GObject types.
2030
2031 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
2032
2033         * gtk/gtkeditable.[ch]: Convert GtkEditable from
2034         a class into an interface  
2035         
2036         * gtk/gtkoldeditable.[ch]: Move the old editable
2037         implementation into here, so legacy widgets can
2038         still rely on the implemenation. GtkOldEditable
2039         exports GtkEditable. Make selection handling
2040         code use new text conversion functions (and
2041         handle UTF-8 as a side-effect). Use GtkClipboard
2042         for CLIPBOARD.
2043
2044         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
2045         Adopt to match above changes.
2046
2047         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
2048         avoid GtkOldEditable implementation. Restructure
2049         to reduce number of places that modify state directly.
2050         Move to GtkBindingSet. Display the preedit string.
2051         Queue recomputation of PangoLayout and scroll position
2052         to improve effiency of doing complex changes naively.
2053         Add a menu with cut/copy/paste and input method selection.
2054
2055 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
2056
2057         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
2058         to set preedit string and attributes; display preedit string by
2059         inserting string and attributes at cursor when creating the
2060         GtkTextLineDisplay.
2061
2062         * gtk/gtktextlayout.c: Move all conversions between byte
2063         positions in PangoLayout and GtkTextIter into new functions
2064         line_display_iter_to_index/index_to_iter that properly
2065         handle the preedit string.
2066
2067         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
2068         it to return const char * (eventually will end up
2069         as GCONST char *, most likely.)
2070
2071         * gtk/gtktextview.[ch]: Handle the preedit string, call
2072         gtk_im_context_reset() as necessary, add a menu to switch
2073         input methods.
2074         
2075         * gtk/gtktextlayout.[ch]: Remove useless
2076         gtk_text_layout_get_log_attrs() function.
2077
2078 2000-11-11  Tor Lillqvist  <tml@iki.fi>
2079
2080         * gdk/gdk.def
2081         * gtk/gtk.def: Update.
2082
2083         * gdk/win32/*.c: Add last argument to g_type_register_static()
2084         calls.
2085
2086         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
2087
2088         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
2089         generated by older wheel mouse drivers. Get the correct y
2090         coordinate from WM_MOUSEWHEEL messages.
2091
2092         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
2093         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
2094         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
2095         Debugging functions.
2096
2097         * gdk/win32/gdkprivate-win32.h: Declare them.
2098
2099         * gdk/win32/gdkinput-win32.h: Add declaration for
2100         gdk_input_window_destroy().
2101
2102         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
2103
2104 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
2105
2106         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
2107         function to help handle keeping things in sync.
2108
2109 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
2110
2111         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
2112         BOXED marshallers.
2113
2114         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
2115         (gtk_list_store_class_init): use the new BOXED marshallers.
2116
2117         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
2118         new_with_values to new_with_types.
2119         (gtk_tree_store_get_column_type): add this.
2120         (gtk_tree_store_class_init): use the new BOXED marshallers.
2121
2122         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
2123         mirror some POINTER marshallers.
2124
2125 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
2126
2127         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
2128         allow more interesting iterators.  Also, made the lifecycle of
2129         iterators more explicit.
2130
2131         * gtk/gtktreemodelsort.[ch]: New model for sorting.
2132
2133         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
2134         types.
2135
2136 2000-11-09  Alexander Larsson  <alexl@redhat.com>
2137
2138         * demos/testgtk/menus.c:
2139         Changes to make the new testgtk compile after
2140         gtk_menu_append was removed.
2141
2142         * gdk/linux-fb/gdkdrawable-fb2.c
2143         (gdk_fb_get_depth, gdk_fb_get_visual,
2144         gdk_drawable_impl_fb_class_init): Implement
2145         these drawable functions. Now GtkImages work again.
2146
2147         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
2148
2149         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
2150         
2151         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
2152         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
2153         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
2154         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
2155
2156 2000-11-08  Havoc Pennington  <hp@pobox.com>
2157
2158         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
2159         visible_set args, don't know where these had gone, I thought they
2160         used to be there
2161
2162         * gtk/testtext.c: Add a menu item to apply invisibility tag;
2163         now we can test the feature and see that it's totally broken.
2164
2165 2000-11-08  Havoc Pennington  <hp@pobox.com>
2166
2167         Make DND copy pixbufs and tags when source and target share a 
2168         tag table.
2169         
2170         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
2171         in-process GTK_TEXT_BUFFER_CONTENTS target
2172         (gtk_text_view_drag_data_received): Paste from
2173         GTK_TEXT_BUFFER_CONTENTS if we receive it.
2174
2175 2000-11-08  Alexander Larsson  <alexl@redhat.com>
2176
2177         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
2178         API changes.
2179
2180         * gtk/gtkmenu.c: Add support for scrolling menus.
2181         Remove gtk_menu_append/prepend/insert, these have been moved to
2182         gtkcompat.h as #defines.
2183
2184         * gtk/gtkcompat.h.in:
2185         Add compatibility #defines for gtk_menu_append/prepend/insert
2186
2187         * gtk/gtkmenu.h: Add data needed for scrolling menus.
2188         GtkMenuPositionFunc gets an extra argument push_in.
2189         gtk_menu_append/prepend/insert removed.
2190         
2191         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
2192         positioning behaviour to fit to scrolling menus.
2193
2194         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
2195         into menuitem->submeny. That is wrong, and broke torn
2196         off submenus of torn off menus, since they were unrealized
2197         when the first menu was unrealized.
2198
2199         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
2200         gtk_menu_shell_select_item() since these need to be overridden in
2201         GtkMenu.
2202
2203         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
2204         positioning behaviour to fit to scrolling menus.
2205         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
2206         the current item so that it is prelighted when the menu pops up.
2207         This is a workaround to the fact that the menu doesn't get the
2208         initial enter event (due to grabs).
2209
2210         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
2211         s/gtk_menu_append/gtk_menu_shell_append/
2212
2213         * gtk/gtknotebook.c:
2214         s/gtk_menu_insert/gtk_menu_shell_insert/
2215
2216         * gtk/testgtk.c (create_menu, create_menus):
2217         Create the first menu with 50 items so that menu scrolling
2218         can be tested.
2219         
2220         
2221         Patch from Jonathan Blandford  <jrb@redhat.com>
2222
2223         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
2224         system to handle size requests.  First, we ask what the size of
2225         the toggle is.  Then, when allocating the size, we allocate the
2226         toggle_size first.  This way we can have multiple menu-item
2227         classes w/o needing a seperate class for each.
2228
2229         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
2230         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
2231
2232         * gtk/gtkcheckmenuitem.c
2233         (gtk_check_menu_item_toggle_size_request): New function to handle
2234         the toggle size-request.
2235
2236 2000-11-07  Havoc Pennington  <hp@redhat.com>
2237
2238         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
2239         Half-ass somewhat fix this function, so that scrolling to the
2240         insertion point works. Pango hacking is in the future to really
2241         fix it.
2242
2243         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
2244         length of data, no longer used.
2245
2246         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
2247         method contents in here, get rid of destroy method
2248         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
2249         that were backward. Remove debug spew.
2250         (cut_or_copy): Make the clipboard work with insert_range to
2251         preserve tags and pixbufs, not just the primary selection.
2252
2253 2000-11-07  Havoc Pennington  <hp@redhat.com>
2254
2255         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
2256         to gtk_text_mark_get_visible
2257
2258         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
2259         bug that was generating an invalid iterator
2260
2261         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
2262         ensure_char_offsets() in front of code placing the iter in an
2263         invalid state.
2264
2265         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
2266         make override_location arg const
2267         (paste): Replace the selection if we paste into the 
2268         current selection
2269
2270         * gtk/gtkselection.h: Remove "GtkSelectioData"
2271         (struct _GtkSelectionData): move the definition here.
2272
2273         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
2274         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
2275
2276         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
2277
2278         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
2279         (gtk_text_buffer_insert_range_interactive): implement
2280         (gtk_text_buffer_get_tags): Remove, replaced by
2281         gtk_text_iter_get_tags()
2282
2283         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
2284         limit parameter, to avoid infinite linear scan.
2285         (gtk_text_iter_backward_search): Add search limit
2286         (gtk_text_iter_forward_find_char): Add search limit
2287         (gtk_text_iter_backward_find_char): Add search limit
2288
2289 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
2290
2291         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
2292         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
2293         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
2294         gdk/linux-fb/gdkwindow-fb.c:
2295         use g_object_new() instead of g_type_create_instance() which
2296         is a private function for fundamental type implementations.
2297
2298         * gdk/linux-fb/gdkinput-ps2.c:
2299         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
2300         instead just store the current modifier state. Add a (somewhat broken)
2301         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
2302         Rename exported function gdk_input_ps2_get_mouseinfo to
2303         gdk_input_get_mouseinfo.
2304
2305         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
2306         gdk/linux-fb/gdkwindow-fb.c:
2307         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
2308         
2309
2310 2000-11-02  Havoc Pennington  <hp@redhat.com>
2311
2312         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
2313         use stock buttons. Should be 100% source compatible, appropriate
2314         filesel fields now point to dialog->vbox and dialog->action_area.
2315         On the bizarre side, dialog->action_area and filesel->action_area
2316         are not the same widget.
2317         (gtk_file_selection_init): Put some padding around the selection
2318         entry, so it isn't touching the GtkDialog separator.    
2319
2320         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
2321         use stock buttons, etc. Should also be source compatible.
2322         Set the dialog default title in _init not _new().
2323         
2324         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
2325         Use stock buttons; don't put a button box inside the existing
2326         dialog button box. Don't bother with push/pop colormap anymore.
2327
2328         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
2329         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
2330         for message dialog, and necessary for the font selection and color
2331         selection with help and apply buttons.
2332         
2333         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
2334         to the created button widget. Set GTK_CAN_DEFAULT on the button.
2335         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
2336         between buttons, put less padding around the action area.
2337         (gtk_dialog_run): Exit on unmap rather than on destroy. 
2338         This will also exit the loop if the widget is hidden.
2339         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
2340         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
2341         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
2342         special-case delete event.
2343
2344         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
2345         formatting
2346         
2347 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
2348
2349         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
2350         button to temporarily disable position recording in the
2351         "saved position" test.
2352
2353 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
2354
2355         * gtk/gtkthemes.c: added compat code that temporarily implements
2356         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
2357         going to be revamped by owen's upcoming GtkModule patches, but
2358         untill then people want gtk to build, right? ;)
2359
2360 2000-11-04  Havoc Pennington  <hp@pobox.com>
2361
2362         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
2363         list
2364
2365         * docs/Changes-2.0.txt: Add note about
2366         gtk_container_get_toplevels()
2367
2368         * gtk/gtktextview.h: formatting
2369         
2370         * gtk/gtktextview.c: don't start descriptions with "Returns",
2371         confuses gtk-doc
2372
2373 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
2374
2375         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
2376         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
2377
2378 2000-11-03  Havoc Pennington  <hp@redhat.com>
2379
2380         * gtk/gtktexttagtable.c: Docs
2381         (gtk_text_tag_table_size): return a signed int
2382
2383         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
2384         (gtk_text_tag_event): make the event_object a GObject
2385
2386         * gtk/gtktextview.c: Write API docs for all functions.
2387
2388         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
2389         for gtk_text_view_get_window_type() called on one of the private
2390         windows.
2391
2392         * gtk/gtktextview.c: Instead of accessing text_view->buffer
2393         directly, call get_buffer() which demand-creates a default
2394         buffer. So gtk_text_view_new() can be used to create a view with a
2395         default buffer in it, if you just want an empty text box users can
2396         put data in. Useful for GUI builders also.
2397
2398 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
2399
2400         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
2401         the charset encodign portion MUST be in lowercase.
2402         * gtk/gtkrc.az: added file for Azeri language
2403
2404 2000-11-03  Havoc Pennington  <hp@redhat.com>
2405
2406         Get widgets working on the btree/buffer side. Display of them 
2407         still doesn't work.
2408         
2409         * gtk/gtktextview.c: start implementing child widget stuff
2410
2411         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
2412
2413         * gtk/gtktextlayout.c: handle embedded widgets
2414
2415         * gtk/gtktextdisplay.c: handle embedded widgets
2416
2417         * gtk/gtktextchild.c: Implement all the child anchor goo
2418
2419         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
2420         function
2421
2422         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
2423         (insert_pixbuf_or_widget_segment): abstract out common portions of 
2424         creating a child anchor or a pixbuf segment.
2425         (gtk_text_btree_create_child_anchor): new function
2426         (gtk_text_btree_unregister_child_anchor): new function
2427
2428         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
2429         allocate_child signal on GtkTextLayout
2430
2431         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
2432         values
2433         (gtk_text_iter_get_child_anchor): new function
2434
2435         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
2436         default handler for the changed signal, which calls
2437         gtk_text_buffer_set_modified(), instead of just always emitting
2438         changed then calling set_modified() manually. I guess this is
2439         maybe more flexible. It seems logical.
2440
2441 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
2442
2443         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
2444         now.
2445
2446         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
2447
2448 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
2449
2450         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
2451         been marked static.
2452
2453 2000-11-02  Havoc Pennington  <hp@redhat.com>
2454
2455         * gtk/testgtk.c (create_labels): had a test backward
2456
2457         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
2458         fields, so the dest GC ends up with the correct clip origin, 
2459         etc. Fixes a bug where colored labels didn't redraw 
2460         properly.
2461
2462 2000-11-02  Alexander Larsson  <alexl@redhat.com>
2463
2464         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
2465         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
2466         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
2467         Add last argument to t_type_register_static call.
2468         
2469         * gdk/linux-fb/gdkdrawable-fb2.c:
2470         Add last argument to t_type_register_static call.
2471         export the get_image drawable virtual function.
2472
2473         * gdk/linux-fb/gdkimage-fb.c:
2474         Add last argument to t_type_register_static call.
2475         rename gtk_image_get to _gdk_fb_get_image and
2476         export it for use by gdkdrawable-fb2.
2477
2478         * gdk/linux-fb/gdkprivate-fb.h:
2479         export _gdk_fb_get_image.
2480
2481         * gdk/linux-fb/gdkselection-fb.c:
2482         Add new api call stubs.
2483
2484         * gtk/Makefile.am:
2485         Missing ( in linux-fb part.
2486
2487         * modules/linux-fb/Makefile.am:
2488         Must link with gdk_pixbuf or get unresolved symbol.
2489
2490 2000-11-01  Havoc Pennington  <hp@pobox.com>
2491
2492         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
2493         GTK_TYPE_TEXT_ITER and BOXED marshallers
2494
2495         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
2496
2497         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
2498         
2499         * gtk/gtk-boxed.defs: add GtkTextIter
2500
2501         * gtk/gtkmarshal.list: Add marshallers for text widget that 
2502         properly use OBJECT and BOXED
2503
2504 2000-11-01  Havoc Pennington  <hp@redhat.com>
2505
2506         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
2507
2508         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
2509         before returning it. 
2510         
2511 2000-11-01  Havoc Pennington  <hp@redhat.com>
2512
2513         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2514         Clip the rectangle to be rendered to the drawable, since
2515         get_from_drawable() requires a region within the drawable
2516
2517 2000-11-01  Havoc Pennington  <hp@redhat.com>
2518
2519         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
2520         from coordinates.
2521
2522 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
2523
2524         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
2525         it isn't NULL.
2526
2527 2000-11-01  Havoc Pennington  <hp@pobox.com>
2528
2529         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
2530         on a label
2531         (gtk_label_finalize): unref the attr list if any.
2532
2533         * gtk/testgtk.c (create_get_image): close test on second click
2534         (make_message_dialog): close dialog if it exists
2535
2536         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
2537
2538         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
2539         gdk-pixbuf
2540
2541         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
2542         from Pango markup format
2543         (gtk_label_set_markup_with_accel): ditto but with accelerator
2544         parsing
2545
2546         * gtk/gtkimage.c (gtk_image_expose): reformatting.
2547
2548         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
2549         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
2550         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
2551         call gdk_window_get_origin().
2552
2553         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2554         implement GDK_PIXBUF_ALPHA_FULL
2555         
2556 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
2557
2558         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
2559         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
2560         g_signal_handlers_disconnect_matched to block/unblock and disconnect
2561         multiple handlers respectively, instead of only treating the
2562         first handler found (bug reported by owen).
2563
2564 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
2565
2566         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
2567
2568         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
2569
2570         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
2571         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
2572         gtk/gtktreeviewcolumn.h: Fixed inline docs.
2573
2574         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
2575         widget.  Needs writing someday.
2576
2577         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
2578         the docs.
2579
2580 2000-10-30  Havoc Pennington  <hp@redhat.com>
2581
2582         * gtk/gtktextview.h, gtk/gtktextview.c:
2583         Rename delete_at_cursor delete_from_cursor, and 
2584         move to move_cursor.
2585
2586 2000-10-30  Havoc Pennington  <hp@redhat.com>
2587
2588         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
2589         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
2590         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
2591         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
2592         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
2593         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
2594         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
2595         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
2596         gtktexttypes.h, gtktextview.c, gtktextview.h:
2597
2598         Massive reindentation and reformatting. Arg alignment and comments
2599         still need fixing in various places.
2600
2601 2000-10-30  Havoc Pennington  <hp@redhat.com>
2602
2603         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
2604         to be named insert_at_cursor and delete_at_cursor so C++ can
2605         handle them.
2606
2607 2000-10-28  Tor Lillqvist  <tml@iki.fi>
2608
2609         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
2610         to get a double directory separator in case the home directory
2611         ends with one. This would cause trouble especially on Windows,
2612         where the path will be confused with the syntax for an an UNC
2613         (network share) path \\server\share\path.
2614         (gtk_rc_add_initial_default_files): Ditto.
2615
2616 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
2617
2618         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
2619
2620         * gtk/gtktextview.c: Use correct marshallers.
2621
2622 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
2623
2624         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
2625         use new iter stuff, and added all the appropriate signals et al.
2626
2627         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
2628         code is internal to gtk only.
2629
2630 2000-10-28  Tor Lillqvist  <tml@iki.fi>
2631
2632         * gtk/gtk.def
2633         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
2634         glib-genmarshal etc.
2635
2636 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
2637
2638         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
2639         parallel builds.
2640
2641 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
2642
2643         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
2644
2645 2000-10-27  Robert Brady  <robert@suse.co.uk>
2646
2647         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
2648         en_GB (British), ia (Interlingua).
2649
2650 2000-10-26  Havoc Pennington  <hp@redhat.com>
2651
2652         * gtk/gtktextiter.c (my_strrstr): fix constness warning
2653
2654         Fixed output of:
2655         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
2656         
2657         * gtk/gtktextsegment.c (char_segment_new): rename
2658         (_char_segment_new_from_two_strings): rename
2659         (_toggle_segment_new): rename
2660         
2661         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
2662         (make_clipboard_widget): make it static
2663         (text_get_func): static
2664         (text_clear_func): static
2665
2666         * gtk/gtkcolorsel.c (adjustment_changed): make this function
2667         static
2668         (hex_changed): make it static
2669         (hsv_changed): make it static
2670         (opacity_entry_changed): make it static
2671
2672         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
2673         (toggle_segment_check_func): rename with _gtk
2674
2675         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
2676         (_widget_segment_new): rename
2677         (_widget_segment_add): rename
2678         (_widget_segment_remove): rename
2679         (_widget_segment_ref): rename
2680         (_widget_segment_unref): rename
2681
2682         * gtk/gtktextmark.c (_mark_segment_new): Rename
2683         _gtk_mark_segment_new   
2684
2685 2000-10-26  Havoc Pennington  <hp@redhat.com>
2686
2687         * gtk/gtkmarshal.list: add new marshallers used by the text widget
2688         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2689         types
2690
2691         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
2692         marshaller types
2693
2694         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
2695         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
2696         license on these files.
2697
2698         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
2699         work.
2700
2701         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
2702         runtime random number different for each tree, instead of 
2703         a constant I made up.
2704
2705 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
2706
2707         * gtk/Makefile.am: buncha cleanups, kludged build sources
2708         dependencies with a Makefile: oldest-source-stamp dependancy
2709         for the moment. automake is really fighting us here, with
2710         intentionally not allowing user-defined rules or dependancies
2711         prior to it's -include $(DEP_FILES) statement. sucks rocks!
2712
2713         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
2714         to public headers. tehy have a comment stating that they are
2715         "semi-public" aren't included by gtk.h and if enums popup there,
2716         they can be /*< skip >*/-ed.
2717
2718         * gtk/gtktextlayout.h: 
2719         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
2720         added LGPL... <SIGH>
2721
2722 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
2723
2724         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
2725         GtkTreeIter.  Added iterators everywhere.
2726
2727         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
2728
2729         * gtk/gtktreeviewselection.c: Changed to use the iterators.
2730
2731         * gtk/gtktreestore.c: Changed to use the iterators.
2732
2733         * gtk/gtkliststore.c: Commented out the code.  Will convert to
2734         iterators tomorrow.
2735
2736         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
2737         iterators tomorrow.
2738
2739         * gtk/treestoretest.c: Changed to use iterators.
2740
2741         * demos/testgtk/main.c: Moved to use the new iterator system.
2742
2743 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
2744
2745         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
2746         localization misbehaviour.
2747
2748         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
2749         a useless type without copy/free.
2750
2751         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
2752         of GTK_TYPE_CTREE_NODE.
2753
2754 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
2755
2756         * gtk/gtksignal.c:
2757         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
2758         applicable.
2759
2760         * gtk/gtk-boxed.defs (GtkSelectionData): specify
2761         gtk_selection_data_copy and gtk_selection_data_free
2762         do GtkSelectionData work as params in signals.
2763
2764 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
2765
2766         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
2767         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
2768         couldn't they at least give it a non-standard name?
2769         
2770         * gtk/gtktextlayout.c: arg! yet another implementation of
2771         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
2772
2773         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
2774         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
2775         home. now i know this _is_ a conspiracy.
2776
2777         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
2778         ::state-changed.
2779
2780         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
2781         (gtk_accel_group_create_add): marshaller signature fixups.
2782
2783         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
2784         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
2785
2786         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
2787         anymore.
2788
2789 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
2790
2791         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
2792         due to the signal system changes, it wouldn't build currently. to
2793         be fixed soon.
2794
2795         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
2796
2797         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
2798         so it needs gtk_marshal_VOID__ENUM() instead of
2799         gtk_marshal_NONE__UINT().
2800
2801         * gdk/gdk*.c: adapted type registration functions.
2802
2803         * gtk/gtkbindings.c:
2804         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
2805         gone.
2806
2807         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
2808
2809         * gtk/gtkobject.c:
2810         (gtk_object_destroy):
2811         (gtk_object_shutdown): fixed recursion guards. basically we have to
2812         catch the case where any of GObject.shutdown() or gtk_object_destroy()
2813         is called during ::destroy, and avoid recursion there.
2814
2815         * gtk/gtktypeutils.c:
2816         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
2817         boxed_copy/boxed_free. this needs a more general solution based on a
2818         publically installed code-generator utility.
2819
2820         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
2821         glib's gobject has support for that now.
2822         define GtkSignalMarshaller in terms of GSignalCMarshaller.
2823
2824 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
2825
2826         * gtk/gtksignal.[hc]:
2827         * gtk/gtkmarshal.[hc]:
2828         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
2829         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
2830         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
2831         care of that.
2832
2833         * *.c: marshaller name fixups.
2834
2835         * gtk/gtkmarshal.list: added a comment briefing the format.
2836
2837 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
2838
2839         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
2840         compatibility macros here now. more specifically, most of
2841         the API is preserved (yes, _most_, nonwithstanding the
2842         following exceptions listed, the API is stil lHUGE ;)
2843         things that got removed completely:
2844         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
2845         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
2846         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
2847         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
2848         gtk_signal_remove_emission_hook().
2849         non-functional functions variants:
2850         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
2851         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
2852         not supported anymore.
2853         (gtk_signal_compat_matched): new internal function to aid
2854         implementation of the compatibility macros, it  provides
2855         functionality to block/unblock/disconnect handlers based
2856         on func/data.
2857
2858         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
2859
2860         * *.c: adaptions to new type registration API signatures.
2861
2862 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
2863
2864         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
2865
2866 2000-10-25  Robert Brady  <robert@suse.co.uk>
2867
2868         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
2869         gdk_property_delete): If window == NULL, assume the root window.
2870         (restoring the behaviour that was in 1.2).
2871         
2872         * gtk/testtext.c (save_buffer): Allow creation of new files when
2873         saving.
2874
2875         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
2876         calls to read().
2877
2878 2000-10-25  Tor Lillqvist  <tml@iki.fi>
2879
2880         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
2881
2882         * gdk/win32/gdkdrawable-win32.c
2883         * gdk/win32/gdkimage-win32.c
2884         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
2885         X11 backend.
2886
2887         * gdk/win32/gdkcc-win32.c
2888         * gdk/win32/gdkcolor-win32.c
2889         * gdk/win32/gdkfont-win32.c
2890         * gdk/win32/gdkinput-win32.c
2891         * gdk/win32/gdkmain-win32.c
2892         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
2893
2894 2000-10-24  Havoc Pennington  <hp@redhat.com>
2895
2896         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
2897         it a static function
2898
2899         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
2900         redraw text when a tag is applied to it.
2901
2902         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
2903         (gtk_text_tag_affects_nonsize_appearance): private functions to
2904         see if a tag requires various kinds of redraw/layout to be queued
2905         up.
2906
2907         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
2908
2909         * gtk/testtext.c (fill_example_buffer): Put the cursor 
2910         at the start of the buffer, so search works by default
2911
2912         * gtk/gtktextiter.c (lines_match): init match_start always
2913
2914         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
2915         function, get iter at a line + a byte index
2916
2917         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
2918         to set byte position within a line
2919         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
2920
2921 2000-10-23  Havoc Pennington  <hp@redhat.com>
2922
2923         * gtk/testtext.c: Re-enable the "find" dialog
2924
2925         * gtk/testgtk.c: Add test for gdk_drawable_get_image
2926         
2927         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
2928         the arguments to gdk_draw_drawable were in the wrong order
2929         (gdk_window_paint_init_bg): This function was ignoring the
2930         init_region, instead of clipping to it, so the entire backing
2931         pixmap was cleared on every begin_paint()
2932         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
2933         was in here again, the loop kept using the same GtkWindowPaint
2934         over and over.
2935         (gdk_window_begin_paint_region): Fix a bug where we had two
2936         x_offset instead of x_offset and y_offset
2937
2938         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
2939         before we get the image.
2940         (gdk_draw_drawable): get the composite before we draw the drawable.
2941         (gdk_drawable_real_get_composite_drawable): default
2942         get_composite_drawable implementation that returns the drawable 
2943         itself
2944
2945         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
2946         get_composite_drawable virtual function
2947
2948         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
2949         list-walking bug
2950
2951         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
2952         make this work if the source drawable is a GdkDrawableImplX11
2953         instead of a public drawable type. This is really broken; the
2954         problem is that GdkDrawable needs a virtual method get_xid(), but
2955         of course that doesn't work in practice. Enter RTTI.
2956
2957         Also, improve mismatched depth message.
2958
2959         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
2960         GdkPixmap
2961
2962         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
2963         install _gdk_x11_get_image as our implementation of get_image
2964         
2965         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
2966         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
2967
2968         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
2969         gdk_drawable_get_image
2970
2971         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
2972
2973         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
2974         get_image
2975
2976         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
2977         trailing semicolon after for loop
2978
2979 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
2980
2981         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
2982         where font_desc for widget's context lagged widget's font_desc by
2983         one step.
2984
2985 2000-10-22  Tor Lillqvist  <tml@iki.fi>
2986
2987         * gdk/win32/gdkgc-win32.c
2988         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
2989
2990         * gtk/makefile.mingw.in
2991         * gtk/gtk.def: Updates.
2992
2993         * gtk/testgtk.c: sleep() is called _sleep in MS's C
2994         library.
2995
2996         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
2997
2998         * gtk/makefile.msc: Remove
2999
3000         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
3001
3002         * gtk/Makefile.am: Add it.
3003
3004         * configure.in: Generate it.
3005
3006         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
3007         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
3008         something even if not implemented, to satisfy picky MSVC.
3009
3010         Patches by Hans Breuer:
3011         
3012         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
3013         SetBkMode() and SetTextAlign() before calling
3014         pango_win32_render().
3015
3016         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
3017         Set hcliprgn to NULL after destroying it.
3018         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
3019
3020         * gdk/win32/gdkgeometry-win32.c
3021         (_gdk_windowing_window_queue_antiexpose): More effective
3022         implementation.
3023
3024         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
3025         depth as default, not the visual's.
3026
3027         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
3028         against empty title.
3029
3030         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
3031         IMAGE_PRIVATE_DATA.
3032
3033         * gdk/win32/gdkimage-win32.c: Use it.
3034
3035 2000-10-22  Robert Brady  <robert@suse.co.uk>
3036
3037         * configure.in: Check for bind_textdomain_codeset
3038
3039         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
3040         present, make use of it.
3041
3042         Add a translatable string "default:LTR" which, if translated
3043         to "default:RTL", will cause the default direction to be
3044         Right-to-Left.
3045
3046         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
3047         direction if marked as flippable.
3048
3049         * gtk/gtkhscale.c: Mark widget as flippable.
3050         
3051 2000-10-04  Havoc Pennington  <hp@redhat.com>
3052
3053         * gtk/testgtk.c (create_buttons): create some stock buttons
3054         with the default accel group
3055         (create_image): test some new GtkImage features
3056         (make_message_dialog): test GtkMessageDialog
3057         (create_modal_window): fix someone's bizzarro indentation
3058
3059         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
3060         GTK_WIN_POS_CENTER_ON_PARENT. 
3061         Add "destroy with parent" setting, which means the window goes
3062         away with its transient parent.
3063         (gtk_window_get_default_accel_group): get the default accel group
3064         for the window.
3065         (gtk_window_set_destroy_with_parent): set/unset destroy with
3066         parent flag
3067         (gtk_window_read_rcfiles): invalidate icon set caches
3068         after reloading rcfiles 
3069
3070         * gtk/gtkenums.h (GtkWindowPosition): add
3071         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
3072         on its parent window when the dialog is mapped for the first time.
3073
3074         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
3075         a simple message dialog class
3076         
3077         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
3078         handler to emit response signal, and maybe later it would
3079         honor a hide_on_delete flag - though that isn't there yet.
3080         Set border width on the vbox to 2, so we get some padding.      
3081         Use a button box for the action area.
3082         (gtk_dialog_key_press): synthesize a delete event if Esc
3083         is pressed and the GtkWidget key press handler didn't 
3084         handle the escape key.
3085         (gtk_dialog_new_with_buttons): new function creates a dialog
3086         with some default buttons in it.
3087         (gtk_dialog_add_action_widget): add an activatable widget
3088         as a button in the dialog - you can also add a non-activatable
3089         widget by accessing the action area directly.
3090         (gtk_dialog_add_button): add a simple button - stock ID or 
3091         label - to the action area
3092         (gtk_dialog_response): emit response signal
3093         (gtk_dialog_run): block waiting for the dialog, return 
3094         the response. Override normal delete_event behavior, so that 
3095         delete_event does nothing inside gtk_dialog_run().
3096
3097         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
3098         emitted when an action widget is clicked or the dialog gets
3099         delete_event
3100
3101         * gtk/gtk.h: add gtkmessagedialog.h
3102
3103         * gtk/Makefile.am: add gtkmessagedialog.[hc]
3104
3105 2000-10-18  Havoc Pennington  <hp@redhat.com>
3106
3107         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
3108         where any number of empty lines would get skipped
3109
3110         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
3111         edge.
3112
3113         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
3114         warning about invalid iterators (explain more thoroughly)
3115         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
3116
3117         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
3118         big
3119
3120         * demos/*.c: Add error handling
3121
3122         * gtk/gtktextbuffer.c: don't modify const iterators
3123
3124         * gtk/gdk-pixbuf-loader.c: Add full error handling here
3125
3126         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
3127         on file load
3128
3129         * gtk/gtkiconfactory.c: Update to reflect addition of error
3130         handling to gdk-pixbuf loaders
3131
3132 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
3133
3134         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
3135         move to new modularized testgtk.
3136
3137 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
3138
3139         * gtk/gtktreeview.c: Draw the arrows correctly.
3140
3141         * gtk/gtktreemodel.c: Added user docs.
3142
3143         * gtk/gtk.h: remove gtktreedatalist.h.
3144
3145         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
3146         parent when generating my type.
3147
3148         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
3149         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
3150
3151 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
3152
3153         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
3154         GtkTreeModel from object to interface.
3155
3156 2000-10-16  Havoc Pennington  <hp@redhat.com>
3157
3158         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
3159         compilation
3160
3161 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
3162
3163         * gtk/gtktreeselection.c: Add API documentation to all public
3164         functions.
3165
3166         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
3167         functions.
3168
3169 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
3170
3171         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
3172         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
3173         docs to all public functions.
3174
3175         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
3176         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
3177         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
3178         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
3179         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
3180         issue.
3181
3182 2000-10-14  Robert Brady  <robert@suse.co.uk>
3183
3184         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
3185
3186 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
3187
3188         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
3189         values other then G_TYPE_STRING.
3190         * gtk/gtktreeselection.c: Minor commenting updates.
3191         * gtk/gtktreeview.c: Format updates.
3192
3193 2000-10-09  Tor Lillqvist  <tml@iki.fi>
3194
3195         * README.win32: Update.
3196
3197         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
3198         lines that had been deleted by mistake (?).
3199
3200         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
3201         also the case fg==white and bg==black (but still not randomly
3202         coloured cursors). Thanks to Wolfgang Sourdeau.
3203
3204         * gdk/win32/*.c: Silence gcc -Wall.
3205
3206         * gtk/gtk.def: Add missing entry points.
3207
3208         Fixes by Hans Breuer:
3209
3210         * gdk/makefile.msc
3211         * gdk/win32/makefile.msc: Update.
3212
3213         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
3214         some MSVC thing, presumably), cause breakpoint on failures. Add
3215         GDK_NOR case. Call g_log_set_always_fatal.
3216
3217         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
3218         should be pased by reference.
3219         
3220         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
3221         
3222         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
3223
3224         * gdk/win32/gdkevents-win32.c
3225         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
3226
3227         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
3228         implementation object.
3229
3230         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
3231         not just windows.
3232         
3233         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
3234         Use the wrapper object.
3235         
3236 2000-10-06  Havoc Pennington  <hp@redhat.com>
3237
3238         * Makefile.am (SRC_SUBDIRS): contrib subdir
3239
3240         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
3241         so it can be used in Xlib version
3242
3243         * demos/testpixbuf.c (update_timeout): error checking from 1.0
3244         tree
3245
3246         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
3247         change from 1.0 tree that returns first frame of animation
3248         if the loaded file is an animation.
3249
3250         * contrib: add new directory to hold stuff that comes with GTK+
3251         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
3252         
3253         * configure.in: add contrib/*
3254
3255 2000-10-05  Havoc Pennington  <hp@redhat.com>
3256
3257         * demos/testpixbuf-save.c: add pixbuf save test
3258
3259         * demos/Makefile.am: add testpixbuf-save.c
3260
3261 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
3262
3263         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
3264         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
3265         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
3266         * gtk/gtktreeselection.[ch]: Replaced
3267         "node_selected"/"node_unselected" signal with "selection_changed"
3268         signal.
3269
3270 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
3271
3272         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
3273         tree widget.
3274
3275 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
3276
3277         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
3278         drawing.
3279
3280 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
3281
3282         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
3283         Move list pointer forwards before removing item from
3284         list. (Crash reported by Salmaso Raffaele)
3285
3286         * gdk/gdkwindow.h: Remove spurious trailing ,
3287
3288         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
3289         dependencies on uninstalled libraries, sorry folks.
3290
3291 2000-10-04  Havoc Pennington  <hp@redhat.com>
3292
3293         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3294         gtk/gtkiconfactory.c: Fix copyrights    
3295
3296         * demos/testpixbuf.c: add inline pixbuf test
3297         
3298 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
3299
3300         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
3301         Add gdk_window_iconify.
3302
3303         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
3304         (gdk_window_set_geometry_hints): Add win_gravity
3305         to geometry structure.
3306
3307         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
3308         Implement _NET_WM_PING.
3309
3310         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
3311         Set _NET_WM_PID on the client leader.
3312
3313         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
3314         Handle UTF-8 better.
3315
3316         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
3317         UTF-8 better, set _NET_WM_NAME as well. Only set
3318         icon name if it hasn't previously been explicitely 
3319         set.
3320
3321 2000-10-03  Havoc Pennington  <hp@redhat.com>
3322
3323         * gtk/testtextbuffer.c: clean up trailing whitespace,
3324         add extensive tests for tag toggle iteration.
3325         
3326         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
3327         distance
3328
3329         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
3330         optimize case where the tag root is on level 1
3331         (gtk_text_line_previous_could_contain_tag): attempt to implement
3332         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
3333         functionality
3334
3335         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
3336         Implement this, though not very efficiently.
3337
3338         * gtk/gtktextiterprivate.h: reformat
3339
3340         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
3341         iterator
3342
3343         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
3344         this to properly revalidate the iterators.
3345
3346         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
3347         properly at the end of the line (and therefore on empty lines)
3348
3349         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
3350         maybe we should return a value...
3351
3352 2000-10-03  Tor Lillqvist  <tml@iki.fi>
3353
3354         * config.h.win32: Guard definition of alloca(). glib.h now handles
3355         that.
3356
3357         * gdk/gdk.def
3358         * gtk/gtk.def: Add new entry points.
3359
3360         Changes just to make GTK+ build without errors on Win32. No hope
3361         of it working in its current state, though...:
3362         
3363         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
3364         some functions from the X11 backend, just to make GTK+ build.
3365
3366         * gdk/makefile.mingw.in
3367         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
3368         number. Add new object files.
3369
3370         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
3371         GetMessageTime to get timestamp (where on X11 uses
3372         gdk_x11_get_server_time()).
3373
3374 2000-10-02  Havoc Pennington  <hp@pobox.com>
3375
3376         * gtk/gtktextview.c: text_window_* weren't static and should have
3377         been.
3378         Start work on child widgets; not yet complete, syncing to 
3379         office computer.
3380
3381         * gtk/gtktextchild.h: change this to contain a public interface,
3382         starting work on child interfaces.
3383         * gtk/gtktextchildprivate.h: move private interfaces here
3384
3385         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
3386
3387         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
3388         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
3389         gtk/gtktextmark.c: copyright notices
3390
3391         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
3392         internal functions      
3393
3394         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
3395         internal function
3396
3397         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3398         Reformatting    
3399
3400 2000-09-30  Havoc Pennington  <hp@pobox.com>
3401
3402         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
3403         NULL start/end pointers
3404
3405         * gtk/gtktextbuffer.c: Write some docs
3406         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
3407         NULL, so you can just check whether there's a selection.        
3408
3409         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
3410         cleanup_line or segments_changed ourselves, it gets done 
3411         in unlink_segment
3412
3413         * gtk/gtktextmark.h:
3414         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
3415         
3416         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
3417
3418         * gtk/gtktextmark.c: delete some more old Tk cruft
3419
3420         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
3421         mark before removing it, so we can emit MARK_DELETED with a valid
3422         pointer.
3423         (gtk_text_buffer_mark_set): hold ref across signal emission
3424
3425         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
3426         whining about attempts to delete special marks
3427
3428         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
3429         underscore, since it's internal.
3430
3431         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
3432         now implemented in terms of iterators in gtktextiter.h
3433
3434         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
3435         New function, destructively sets contents of buffer. Also 
3436         a convenient way to clear the buffer by setting text to ""
3437
3438         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
3439         multiline string literal
3440
3441         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
3442         text changes.
3443
3444         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
3445         is not dereferenceable
3446         (gtk_text_iter_forward_lines): fix return value
3447
3448 2000-09-29  Havoc Pennington  <hp@redhat.com>
3449
3450         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
3451
3452         * gtk/gtktextview.c: Implement drag thresholding; change functions 
3453         that set border window size to have nicer name
3454         (gtk_text_view_mark_set_handler):  Fix this to have the 
3455         right signature.
3456
3457         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
3458
3459         * gtk/testtext.c: Update with API changes, put line numbers on 
3460         both sides.
3461         
3462         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
3463         with this
3464
3465         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
3466         pixbuf; delete a big block of #if 0 Tk code
3467
3468         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
3469         insert_pixmap with insert_pixbuf
3470
3471 2000-09-29  Martin Baulig  <baulig@suse.de>
3472
3473         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
3474         confusion with the GdkPixbuf of the GNOME 1.x platform.
3475
3476 2000-09-29  Havoc Pennington  <hp@pobox.com>
3477
3478         * gtk/gtktextview.c: Implement the side windows.
3479
3480         * gtk/testtext.c: Implement simple line numbering in the 
3481         left side window; seems to make scrolling sloooow. Oops.
3482         Also, cursor blink is for some reason causing redraws
3483         of the line numbers. Should investigate...
3484
3485 2000-09-28  Havoc Pennington  <hp@redhat.com>
3486
3487         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
3488         scrolling child windows, and draw focus rectangle properly.
3489         
3490         (gtk_text_view_buffer_to_window_coords):
3491         Coordinate transformation to deal with all these freaking windows
3492         and offsets
3493         (gtk_text_view_window_to_buffer_coords): transform the other way
3494
3495         * gtk/testtext.c (create_buffer): Update to match Pango API change
3496
3497         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
3498         anonymous tags
3499         (foreach_unref): don't emit remove signal from finalize, just
3500         set tag's parent to NULL
3501
3502 2000-09-26  Havoc Pennington  <hp@redhat.com>
3503
3504         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
3505         Fix some warnings       
3506
3507 2000-09-26  Havoc Pennington  <hp@redhat.com>
3508
3509         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
3510         headers into the private header list
3511
3512         * Makefile.am (pkgconfig_DATA): install pkg-config files
3513
3514         * configure.in: add pkg-config files
3515
3516         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
3517
3518         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
3519         outstanding icon caches on theme change.
3520
3521         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
3522         important types:
3523
3524         (GtkIconSource): Specification for creating a pixbuf 
3525         appropriate for a direction/state/size triplet from 
3526         a source pixbuf or filename
3527
3528         (GtkIconSet): List of GtkIconSource objects that are used to
3529         create the "same" icon (e.g. an OK button icon), and cache for
3530         rendered icons
3531
3532         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
3533         up the icon set for a given stock ID.  GTK maintains a stack of
3534         GtkIconFactory to search, and applications or libraries can add
3535         additional icon factories on top of the stack
3536         
3537         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
3538         the set of GtkIconSource specified for a given stock ID into 
3539         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
3540         RcStyle, under the specified stock ID.
3541
3542         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
3543         render_icon used to derive a GdkPixbuf from a GtkIconSource.
3544         This allows people to theme how prelight, insensitive, etc. are
3545         done.
3546
3547         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
3548         icon factories for a style, and return the resulting 
3549         icon set if any.
3550
3551         (gtk_style_render_icon): Render an icon using the render_icon 
3552         method in the GtkStyleClass.
3553
3554         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
3555         Use the style for a given widget to look up a stock ID, get the
3556         icon set, and render an icon using the render_icon method 
3557         of the style
3558
3559         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
3560         (contains information about a stock item), the built-in stock item
3561         IDs, and functions to add/lookup stock items.
3562
3563         * gtk/stock-icons/*: Stock icons that come with GTK
3564
3565         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
3566         a button based on a GtkStockItem
3567         (gtk_button_new_accel): Takes a uline string and accel group, and
3568         installs the accelerator.
3569
3570         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
3571         image-display widget.
3572
3573 2000-09-25  Havoc Pennington  <hp@redhat.com>
3574
3575         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
3576
3577         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
3578         Fix a bug when removing node data, we didn't properly 
3579         re-splice the linked list after removing the data.
3580
3581         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
3582         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
3583
3584         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
3585
3586         * gtk/gtktextlayout.c (set_para_values): Set tab array 
3587         for the layout from the GtkTextTag.
3588
3589         * gtk/gtktexttypes.h: delete tab and search cruft, 
3590         remove g_convert() in favor of GLib version
3591
3592         * gtk/gtktexttypes.c: remove tab implementation from here,
3593         move to Pango
3594
3595         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
3596         tab stuff using new PangoTabArray from Pango
3597
3598         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
3599         unused border_width stuff
3600
3601 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
3602
3603         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
3604         glib) and now useless utf_to_latin1() latin1_to_utf()
3605
3606         * gtk/gtktextview.[ch]: Change ::move_insert and
3607         ::delete_text action signals to ::move and ::delete;
3608         create the signals with the right enumeration type,
3609         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
3610         C-v bindings, change Home, End to move to beginning/end
3611         of line, Add C-Home C-End to move to beginning/end
3612         of buffer. Change ::cut_text to ::cut_clipboard, etc;
3613         combine ::scroll_text into ::move; use new GtkSelectionData
3614         functions to simplify DND text handling.
3615         
3616         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
3617         deletion enumerations here, rename enumeration values to 
3618         be consistently plural.
3619
3620         * gtk/gtktextbuffer.c: Use new clipboard interfaces
3621         for cut/copy/paste and primary selection.
3622
3623         * gtk/gtktextbuffer.[ch]: Remove excess time and
3624         'interactive' arguments from cut/copy/paste;
3625         rename cut to cut_clipboard, etc; remove
3626         gtk_text_buffer_get_clipboard_contents().
3627
3628         * gtk/gtktextlayout.[ch]: Add 
3629         gtk_text_layout_move_iter_to_line_end() to move the iter to 
3630         line ends.
3631
3632         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
3633         Functions to set or get a UTF-8 string on the selection
3634         data.
3635
3636         * gtk/gtkclipboard.[ch]: New, simplified selection handling
3637         interfaces.
3638
3639         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
3640         created widgets - one of these is useless if we don't.
3641
3642         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
3643         a public function clear all targets registered for the
3644         widget.
3645
3646         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
3647         Never call gtk_widget_realize() - that was just asking
3648         for bizarre side-effects.
3649
3650         * gtk/gtkselection.c (gtk_selection_owner_set): Call
3651         gdk_selection_owner_set even if the widget is the
3652         same so that we reliably update the timestamp on
3653         the server.
3654
3655         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
3656         gdk_x11_get_server_time() function.
3657         
3658         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
3659         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
3660         Add some tricky filtering on serial numbers for
3661         selection clear events to fix up long-standard
3662         race condition FIXME's in gtkselection.c.
3663
3664         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
3665         routines to convert from utf8 to compound text or
3666         STRING and from a text property to UTF-8.
3667
3668         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
3669         a convenience function gdk_get_current_event_time().
3670
3671         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
3672         and free selection_data->data properly
3673
3674 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
3675
3676         * gtk/gtkthemes.c: Remove some unecessary includes.
3677
3678 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
3679
3680         * gtk/gtktextdisplay.c
3681         * gtk/gtktextlayout.c
3682         * gtk/gtktexttag.c
3683         * gtk/gtktexttag.h
3684         * gtk/testtext.c: Change the overstrike property to strikethrough,
3685         to closer match pango.
3686
3687 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
3688
3689         * gtk/gtktextview.c: Fix up visibility so that focus,
3690         cursor_visible and blink interact properly.  Reenable cursor blink
3691         which had been roughly disabled. Make blink and focus
3692         properly per-view.
3693
3694         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
3695         Add a flag for whether to display insertion cursor and
3696         a function to set the flag.
3697
3698         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
3699         get_line_y() to get_line_yrange(), to be a bit more generally
3700         useful.
3701
3702 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
3703
3704         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
3705           do stop_navigating_submenu, to clear last timeout properly.
3706           Also in gtk_menu_motion_notify move ignore_enter above
3707           the conditional to make it always happen as suggested by Owen
3708
3709 2000-09-07  Tor Lillqvist  <tml@iki.fi>
3710
3711         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
3712
3713         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
3714         w32api headers.
3715
3716         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
3717         declarations.
3718
3719         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
3720         (gdk_win32_get_colormap): A line had been deleted by mistake.
3721
3722         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
3723         (gdk_event_translate): Handle more virtual keycodes to be able to
3724         generate GDK events for Control-comma, Control-period, etc.
3725
3726         * gtk/gtk.def: Add some missing entry points.
3727
3728 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
3729
3730         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
3731         Doc comment fixing. (Mostly non-matching parameter names.)
3732
3733         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
3734         comments a little to avoid looking like a doc comment.
3735
3736         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
3737         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
3738         conversions be changed to GError?)
3739
3740         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
3741         Move private #defines into .c file.
3742
3743         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
3744         order of argument addition, remove duplicates.
3745
3746         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
3747         parent class is FrameClass, not BinClass.
3748
3749         * gtk/gtk.h: Add gtkinvisible, which was missing.
3750         (It's occasionalyl useful for client apps, if seldom.)
3751
3752         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
3753         #define.
3754
3755 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
3756
3757         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
3758         coordinates when creating window, instead of GDK-space
3759         coordinates. (Avoid BadValue on too large windows.)
3760
3761 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3762
3763         * configure.in (use_mmx_asm): Remove conftest* after use along the
3764         lines of AC_TRY_COMPILE.        
3765         
3766         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
3767         of g_dirname, which is deprecated.
3768         (gtk_rc_parse_any): Removed calls to
3769         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
3770
3771         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
3772         Removed calls to g_hash_table_{freeze,thaw}, as they are
3773         deprecated now.
3774
3775         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
3776         instead of g_basename.
3777         
3778 2000-09-04 Elliot Lee <sopwith@redhat.com>
3779         
3780         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
3781         ANSI warning.
3782
3783 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
3784
3785         * gtk/gtkwidget.h:  Add some documenting comments about 
3786           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
3787           just as owen said on irc.
3788
3789         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
3790           set HAS_DEFAULT.  Only set it if there isn't another window
3791           holding it (a focus window which RECEIVES_DEFAULT) and only unset
3792           it if the widget is not the focused window with RECEIVES_DEFAULT.
3793           This fixes weird double default bugs in dialogs which has things
3794           call gtk_window_set_default at times.
3795
3796 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
3797
3798         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
3799         Nils Barth and David Santiago to improve submenu
3800         navigation. The patch does this by creating a triangular
3801         region from the point where the pointer leaves the
3802         menu to the submenu.  While the pointer is in
3803         that region and a timeout has not expired, events 
3804         that would cause the active submenu to change are
3805         ignored.
3806
3807 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
3808
3809         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
3810         moving a toplevel window immediately after sizing it would
3811         result in it being sized back to the old size since 
3812         impl->width, impl->height aren't updated until we hear
3813         back from the server. There is still a (longstanding) bug
3814         here that gdk_window_get_size() will give the wrong size
3815         until we do hear back.
3816
3817 2000-08-31  Havoc Pennington  <hp@redhat.com>
3818
3819         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
3820         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
3821         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
3822         Rename GtkTextStyleValues to GtkTextAttributes
3823
3824 2000-08-31  Havoc Pennington  <hp@pobox.com>
3825
3826         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
3827         for rapid testing whether an iterator is the end iterator
3828         (gtk_text_btree_new): init end line cache
3829         (gtk_text_line_is_last): use fast cached line to 
3830         see if we're the last line.
3831         (get_last_line): use cached line here too, should 
3832         speed up some random unrelated code.
3833         
3834 2000-08-30  Havoc Pennington  <hp@pobox.com>
3835
3836         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
3837         signals.
3838
3839         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
3840         delete_text signals. This allows the signals to be used for
3841         implementing undo.
3842
3843         * gtk/gtktextbuffer.c: Change signal handler signatures; 
3844         provide "interactive" argument when emitting insert_text or
3845         delete_text signal.
3846         
3847 2000-08-30  Havoc Pennington  <hp@pobox.com>
3848
3849         * gtk/gtktextbuffer.c: Docs
3850
3851 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
3852
3853         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
3854         from switch statements, since Tor removed the enumeration
3855         value.
3856         
3857         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
3858         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
3859
3860 2000-08-29 Elliot Lee <sopwith@redhat.com>
3861         * */*.h: Use G_GNUC_CONST.
3862
3863 2000-08-27  Havoc Pennington  <hp@pobox.com>
3864
3865         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
3866         minor indentation fixes, inserted some FIXME about stuff I
3867         realized was broken while documenting it.
3868         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
3869         GTK convention  
3870
3871 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
3872
3873         * gtk/testgtk.c (create_styles): Fix double free of
3874         font desc.
3875
3876 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
3877
3878         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
3879         
3880         * gtk/testgtk.c (create_styles): Add a test for modifying
3881         the style through gtk_widget_modify_*.
3882
3883         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
3884         a function to get the current modifier style.
3885
3886         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
3887         of the passed in GtkRcStyle instead of ref'ing it.
3888
3889         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
3890
3891 2000-08-20  Tor Lillqvist  <tml@iki.fi>
3892
3893         * gdk/gdkimage.h
3894         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
3895         shared memory image+pixmap GdkImage type, or
3896         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
3897         I am dropping that.
3898
3899         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
3900         actually call gtk_init_abi_check(), passing also
3901         sizeof(GtkWindow). Ditto for gtk_init_check(). 
3902
3903         * gtk/gtk.def
3904         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
3905         New functions, used to check that the GTK+-using code has been
3906         compiled using the correct compiler and switches. In particular,
3907         with gcc one has to use the -fnative-struct switch as GTK+ is
3908         compiled with that.
3909
3910 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
3911
3912         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
3913         ->prev fields when merging lists. (Found simultaneously
3914         by Pawel Salek and Jakub Jelinek)
3915
3916 2000-08-12  Tor Lillqvist  <tml@iki.fi>
3917
3918         * gdk/gdk.def
3919         * gtk/gtk.def: Add missing entries.
3920
3921         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
3922         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
3923
3924         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
3925         function. Dummy implementation at this point.
3926
3927         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
3928         rules. Undefine GTK_COMPILATION when compiling the test programs.
3929         
3930         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
3931
3932 2000-08-11  Tor Lillqvist  <tml@iki.fi>
3933
3934         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
3935         to convert back and forth from UTF-8 and the "system" (or "current
3936         locale") charset when necessary. Indentation/spacing cleanup.
3937
3938 2000-08-10  Havoc Pennington  <hp@redhat.com>
3939
3940         * Makefile.am (snapshot): Change the format of the snapshot
3941         version to match glib
3942
3943         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
3944         from EXTRA_DIST since it doesn't seem to exist
3945
3946 2000-08-10  Tor Lillqvist  <tml@iki.fi>
3947
3948         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
3949         version of the directory name (not the UTF-8 one) when building
3950         the path name to stat().
3951
3952 2000-08-03  Elliot Lee  <sopwith@redhat.com>
3953
3954         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
3955         PANGO_ATTR_SHAPE set.
3956
3957 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
3958
3959         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
3960         Peter Osterlund to simplify the code while keeping the
3961         functionality the same.
3962
3963 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
3964
3965         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
3966         is_viewable() test further inside the function, since removing the 
3967         window from the redraw list without clearing ->update_area
3968         was also very broken.
3969
3970 2000-08-02  Tor Lillqvist  <tml@iki.fi>
3971
3972         * configure.in: Check for <unistd.h>.
3973
3974 2000-08-01  Martin Baulig  <baulig@suse.de>
3975
3976         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
3977         to display the message that this is a development version of GTK+.
3978
3979 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
3980
3981         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
3982         was depending on widget->allocation instead of the width of text_area,
3983         which was incorrect for subclasses like GtkSpinButton.
3984
3985         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
3986         with width == 1 tests that should be width == -1.
3987
3988 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
3989
3990         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
3991         (broken, Elliot, every single window blank on X) custom code with call
3992         to gdk_window_is_viewable() which a) prevents code duplicate and
3993         b) works. 
3994
3995 2000-07-31  Elliot Lee  <sopwith@redhat.com>
3996
3997         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
3998         to get the GDK_PARENT_ROOT() macro to work.
3999         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
4000         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
4001         of, windows that aren't shown.
4002         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
4003         pointer grab stuff.
4004
4005 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
4006
4007         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
4008           s/gtk_main_iteration/g_main_iteration/
4009
4010           Did this already in change:
4011                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
4012           don't know how it got reverted.
4013
4014 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
4015
4016         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
4017         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
4018
4019         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
4020         not gdk_pixbuf.
4021
4022 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
4023
4024         * configure.in,po/{sp,sr}.po: Added Serbian files
4025
4026 2000-07-30  Tor Lillqvist  <tml@iki.fi>
4027
4028         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
4029
4030         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
4031         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
4032         GIOChannel implementation.
4033
4034         * gdk/win32/gdkinput.c
4035         * gdk/win32/gdkpango-win32.c: Update license name here, too.
4036
4037         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
4038         definition to match prototype.
4039
4040         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
4041
4042 2000-07-27  Elliot Lee  <sopwith@redhat.com>
4043
4044         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
4045         function, to allow handling image formats that cannot be detected
4046         by looking at content alone.
4047
4048 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
4049
4050         * docs/tutorial/*.gif *.jpg *.eps
4051           Update these to the same look-n-feel.
4052           Why does including images in DocBook suck so badly?
4053
4054 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
4055
4056         * gtk/gtktable.c: applied patch from Phil Thompson
4057         <phil@river-bank.demon.co.uk> that enables space settings for
4058         the last row/columns as well.
4059
4060 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
4061
4062         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
4063         updates the license headers to the GNU Lesser General Public License,
4064         as well as updating the copyright year to 2000.
4065
4066 2000-07-26  Robert Brady  <rwb197@zepler.org>
4067
4068         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
4069           and po/Makefile, was installing and looking for them under gtk20
4070           and gtk2 respectively.
4071
4072 2000-07-25  Havoc Pennington  <hp@redhat.com>
4073
4074         * gtk/testtext.c: Comment out some stuff that depends on the rest
4075         of my patches.
4076
4077 2000-07-25  Havoc Pennington  <hp@redhat.com>
4078
4079         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
4080         buffer
4081
4082 2000-07-25  Havoc Pennington  <hp@redhat.com>
4083
4084         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
4085         widget changes.
4086
4087         * gtk/gtktextview.h: To be consistent with usage of "line"
4088         throughout the API to mean "newline-terminated thingy", change
4089         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
4090         to MOVEMENT_LINE.
4091
4092         (GtkTextView): Add flags for default editability, and whether to
4093         show the cursor. Add functions to get/set that. Add 
4094
4095         (gtk_text_view_get_iter_location): new function
4096
4097         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
4098         gtktextlayout.h
4099         (g_convert): Add g_convert temporarily, will go in glib in a bit
4100         
4101         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
4102         GtkTextTagTableForeach instead of brokenly using GHFunc.
4103         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
4104
4105         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
4106         moved to public header.
4107
4108         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
4109         "invisible", since "elide" was a bad name.
4110         (gtk_text_tag_get_priority): Added
4111
4112         (GtkTextStyleValues): put this in public header, along with
4113         functions to use it.
4114
4115         * gtk/gtktextmarkprivate.h: Include more headers, since we no
4116         longer include gtktextbtree.h.
4117
4118         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
4119         gtk_text_mark_deleted
4120
4121         * gtk/gtktextlayout.h: Don't include the "really private" headers,
4122         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
4123         to make this possible. Now we only need to install
4124         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
4125         (However the Makefile.am isn't changed yet because of the
4126         logistics of merging gtk-hp-patches piecemeal)
4127
4128         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
4129         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
4130         gtk_text_iter_get_line is now used in the public API for a
4131         different purpose.
4132
4133         * gtk/gtktextiter.h: Clean up function names to be more
4134         consistent. Always call char offset "offset" and byte index
4135         "index". A "line" is always a line number. 
4136
4137         (gtk_text_iter_is_last): new function, more efficient than 
4138         the existing way to check
4139         (gtk_text_iter_is_first): new function, also more efficient
4140
4141         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
4142
4143         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
4144         gtk_text_iter_forward_char, etc.
4145
4146         (gtk_text_iter_forward_to_tag_toggle): Renamed from
4147         forward_find_tag_toggle, since this isn't a linear search
4148
4149         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
4150
4151         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
4152         New functions, search for a buffer substring.
4153
4154         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
4155         interactive and default editable (since we need to store that info
4156         until we receive the selection data).
4157
4158         Remove all the _at_char and at_line etc. versions of functions;
4159         only have iterator versions.
4160
4161         Add _interactive() versions of functions, that consider the
4162         editability of text. (FIXME add interactive flag to the 
4163         insert/delete signals per Darin's suggestion)
4164
4165         (gtk_text_buffer_get_tag_table): new function, demand-creates the
4166         tag table if necessary
4167
4168         Remove declaration of gtk_text_buffer_get_iter_from_string
4169
4170         (_gtk_text_buffer_get_btree): private/internal function, added.
4171         
4172
4173         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
4174         (gtk_text_line_is_last): new function
4175
4176 2000-07-25  Havoc Pennington  <hp@redhat.com>
4177
4178         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
4179         using GtkProgressBar. See Changes-2.0.txt for details.
4180
4181         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
4182         "pulse_step" which are the equivalent of
4183         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
4184         Implement new API.
4185         
4186         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
4187         (use_text_format) to mark whether text set on the progress bar is
4188         a format string. Deprecate entire GtkProgress interface.
4189
4190         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
4191         (gtk_progress_build_string): make this a no-op if use_text_format
4192         is FALSE
4193
4194         * docs/Changes-2.0.txt: Describe progress bar changes.
4195
4196 2000-07-25  Tor Lillqvist  <tml@iki.fi>
4197
4198         * Makefile.am: Include the build directory.
4199
4200         * configure.in: Generate build/Makefile, build/win32/Makefile,
4201         gdk/, gdk/win32/, and gtk/makefile.mingw.
4202
4203         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
4204         Add GETTEXT_PACKAGE.
4205         
4206         * gdk/gdk.def
4207         * gtk/gtk.def: Updates.
4208
4209         * gdk/gdkfont.h
4210         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
4211         need them any longer.
4212
4213         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
4214
4215         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
4216         PANGOWIN32_LIBS and gdk_pixbuf.
4217
4218         * gdk/win32: Compiles, but no doubt doesn't work at all.
4219
4220         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
4221
4222         * gdk/win32/gdkinput.c: New file, temporarily.
4223         
4224         * gdk/win32/gdkinput-win32.h: New file
4225
4226         * gdk/win32/gdkinputprivate.h: Remove.
4227
4228         * gdk/win32/gdkpango-win32.c: New file.
4229
4230         * gtk/makefile.mingw.in: New file
4231
4232         * gtk/makefile.cygwin: Removed
4233         
4234         * gtk/Makefile.am: Update accordingly.
4235
4236         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
4237         made externally visible.
4238
4239         * gtk/gtkmain.c: Use it.
4240         
4241         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
4242         is enough.
4243
4244         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
4245
4246 2000-07-24 Elliot Lee <sopwith@redhat.com>
4247         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
4248         individual backends already.
4249         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
4250         again. Yes, there really is a good reason for this, if you are using the gdkregion
4251         internals, and if you're not, why do you care?
4252         * gdk/gdkwindow.c: Fix inverted condition
4253         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
4254         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
4255         * gtk/gtkrange.c: Redraw trough when moving.
4256         * gtk/gtktypeutils.c: Fix warning by adding const cast.
4257         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
4258
4259 2000-07-23  Tor Lillqvist  <tml@iki.fi>
4260
4261         * configure.in: Check for mkstemp and sigsetjmp. Output
4262         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
4263
4264         More work on GDK for Win32. Still in an intermediate state.
4265
4266         * gdk/makefile.cygwin
4267         * gdk/win32/makefile.cygwin: Removed.
4268         
4269         * gdk/makefile.mingw.in
4270         * gdk/win32/makefile.mingw.in: New files.
4271
4272         * gdk/Makefile.am
4273         * gdk/win32/Makefile.am: Generate and distribute them.
4274
4275         * gdk/win32/gdkwindow-win32.h
4276         * gdk/win32/gdkdrawable-win32.h
4277         * gdk/win32/gdkpixmap-win32.h: New files.
4278
4279         * gdk/win32/gdkcolor-win32.c
4280         * gdk/win32/gdkcursor-win32.c
4281         * gdk/win32/gdkdrawable-win32.c
4282         * gdk/win32/gdkgc-win32.c
4283         * gdk/win32/gdkimage-win32.c
4284         * gdk/win32/gdkprivate-win32.h
4285         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
4286         Rename fields and variables called xcursor, xid, etc (these names
4287         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
4288
4289 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
4290
4291         * gtk/gtkentry.[ch]: Fix some problems with vertical
4292         alignment.
4293
4294         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
4295         char/byte confusion.
4296
4297 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
4298
4299         * gtk/gtktextview.c (changed_handler): Fix bug where
4300         redraw wasn't being done properly when height of
4301         dirty region changed.
4302
4303         * demos/Makefile.am: Remove various references to
4304         -lgmodule
4305
4306 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
4307
4308         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
4309         PangoAttrShape to reserve space for pixmaps, add 
4310         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
4311         in the display functions.
4312         
4313         * gtk/testgtk.c (create_layout): Set some more exotic
4314         scrolled window options
4315
4316         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
4317         Add function to set the shadow type of a window, to allow
4318         putting a shadow around widgets such as GtkLayout or GnomeCanvas
4319         which don't draw their own frame.
4320
4321 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
4322
4323         * docs/tutorial/package-db-tutorial.sh: New file for
4324           packaging DocBook format tutorial
4325
4326 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
4327
4328         * docs/tutorial/gtk-tut.sgml: Minor updates
4329
4330         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
4331
4332 2000-07-19  Tor Lillqvist  <tml@iki.fi>
4333
4334         * gtk/gtksignal.c: Fix C++ comment.
4335
4336         * gtk/gtkimmulticontext.c
4337         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
4338         don't return value from void functions.
4339
4340         * gtk/gtk.def: Add gtk_rc_style_unref.
4341
4342 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4343
4344         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
4345         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
4346         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
4347         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
4348         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
4349         gtk/gtktypeutils.h: Include files outside of the extern "C"
4350         block. Makes some C++ compiler happy. Reported by Denis Vakatov
4351         <vakatov@peony.nlm.nih.gov>.
4352
4353 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
4354
4355         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
4356           Completes first pass. Hurrah!
4357
4358 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
4359
4360         * docs/tutorial/gtk-tut.sgml: More clean ups.
4361
4362 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
4363
4364         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
4365         paint the background of the text area which was accidentally
4366         removed at some point.
4367
4368         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
4369           
4370          - Move most of the functionality from the theme vtable
4371            into GtkRcStyleClass and GtkStyleClass. The moved
4372            vtable functions were changed a bit in the move to
4373            work better in their new home.
4374
4375          - Get rid of the engine and engine_data fields from
4376            GtkRcStyle and GtkStyle; instead the theme
4377            engine derives theme-specific subclasses of GtkRcStyle
4378            and GtkStyle
4379
4380          - Add extra dlsym() found entry point to themes,
4381            theme_create_rc_style().
4382
4383         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
4384         in gtk_style_real_copy.
4385
4386         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
4387         to register a type associated with an engine. (The engine
4388         won't be unloaded as there is an instance of the type.)
4389
4390
4391 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
4392
4393         * docs/tutorial/gtk-tut.sgml: Clean ups.
4394
4395 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
4396
4397         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
4398           of cleaning up to do.
4399
4400 2000-07-15  Tor Lillqvist  <tml@iki.fi>
4401
4402         * gdk/testgdk.c: New file, quick hack to test backends for
4403         pixel-by-pixel correctness of the most simple graphic operations.
4404
4405 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
4406
4407         * Really release 1.3.1
4408         
4409         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
4410         include structure.
4411
4412 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
4413
4414         * Released 1.3.1
4415
4416 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
4417
4418         * gtk/gtktextlayout.c: use FALSE for size_only most
4419         of the time when calling gtk_text_layout_get_line_display()
4420         to avoid causing double reshapes when a redraw follows
4421         immediately after.
4422
4423 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
4424
4425         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
4426         appropriate region and gdk_window_process_updates() so trough
4427         updating doesn't lag behind the window being scrolled.
4428
4429         * gdk/gdkgc.c: Make parent_class pointer static.
4430          
4431 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
4432
4433         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
4434         include <string.h>.
4435          
4436         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
4437         cut-and-paste error in computing memory offset for 4 channels.
4438
4439 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
4440
4441         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
4442         gtk_rc_append_default_pixmap_path(), since it wasn't
4443         adding an interesting path and we don't have a meaningful
4444         default for this value.
4445
4446 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
4447
4448         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
4449         gtk-config to gtk-config-2.0 move gtk_.m4 to
4450         gtk-2.0.m4
4451
4452         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
4453         gdk/Makefile.am demos/Makefile.am: Change 
4454         library names to libgtk-1.3.la, etc, so that we
4455         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
4456
4457         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
4458         gdk/Makefile.am gdk/x11/Makfile.am
4459         Move include files into /usr/include/gtk-2.0, 
4460         /usr/lib/gtk-2.0/include/
4461          
4462         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
4463         gtk/gtkintl.h: Change package for gettext from 
4464         gtk+ to gtk20. Put hack in autogen.sh to modify
4465         po/Makefile.in.in after gettextize to make this
4466         possible.
4467
4468         * gtk+.spec: Some updates, not tested.
4469
4470         * gdk-pixbuf/Makefile.am: Move loaders into
4471         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
4472
4473         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
4474         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
4475         to THEMENAME/gtk-2.0/. Move engine directory  to
4476         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
4477         
4478 2000-07-12  Tor Lillqvist  <tml@iki.fi>
4479
4480         Win32 changes, still doesn't build though.
4481
4482         * gdk/makefile.cygwin
4483         * gdk/win32/makefile.cygwin
4484         * gtk/makefile.cygwin: Updates.
4485
4486         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
4487         default values for fg and bg pixel as X11 does (0 and 1), not
4488         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
4489         Use 0 for pen width by default (treated as 1 anyway later, but for
4490         apps that might check the value in the GdkGC).
4491         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
4492         interface to gdk_gc_predraw and _postdraw.
4493
4494         * gdk/win32/gdkwin32.h
4495         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
4496
4497         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
4498         extraneous semicolon.
4499
4500         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
4501
4502         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
4503         not the Win32 bitspixel value.
4504
4505         * gdk/win32/gdkcc-win32.c:
4506         * gdk/win32/gdkcolor-win32.c 
4507         * gdk/win32/gdkprivate-win32.h
4508         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
4509         GDK object structure.
4510
4511 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
4512
4513         * docs/tutorial/gtk_tut_12.es.sgml (name): 
4514         * docs/tutorial/gtk_tut_it.sgml (name): 
4515         * docs/tutorial/gtk_tut_fr.sgml (name): 
4516         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
4517         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
4518
4519 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
4520
4521         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
4522           small changes.
4523
4524 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
4525
4526         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
4527         a bug here, never been here and never fixed anything ;(
4528         (don't segfault if tree->root_tree is NULL, which happens prior
4529         to widget realization, but puke instead).
4530
4531 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
4532
4533         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
4534         add the necessary tokens.
4535
4536         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
4537         (gtk_rc_style_to_style): copy thicknesses.
4538         (gtk_rc_init_style): apply thicknesses.
4539         (gtk_rc_parse_style): parse xthickness and ythickness.
4540
4541         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
4542
4543         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
4544         (gdk_window_new): 
4545         (_gdk_windowing_window_init): 
4546         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
4547         (gdk_pixmap_create_from_data): 
4548         (gdk_bitmap_create_from_data): 
4549         (gdk_pixmap_new): 
4550         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
4551         (gdk_image_new): 
4552         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
4553         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
4554         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
4555         (gdk_colormap_get_system): 
4556         (gdk_colormap_new): 
4557         * gdk/gdkwindow.c (gdk_window_init): 
4558         * gtk/gtkstyle.c (gtk_style_new):
4559         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
4560         * gdk/gdkpixmap.c (gdk_pixmap_init): 
4561         * gtk/gtkrc.c (gtk_rc_style_new):
4562         use g_object_new() instead of g_type_create_instance() which
4563         is a private function for fundamental type implementations.
4564
4565 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
4566
4567         * configure.in: Add check for db2html
4568
4569 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
4570
4571         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
4572         hack to set glib_debug_objects based on gtk_debug_flags.
4573
4574 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
4575
4576         * INSTALL.in: Update the Prerequisites section.
4577
4578         * Makefile.am demos/Makefile.am docs/Makefile.am
4579         docs/tutorial/Makefile.am gdk/x11/Makefile.am
4580         gdk/linux-fb/Makefile.am: Dist fixes
4581
4582 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
4583
4584         * NEWS: 10,000 foot view of 1.3.1 changes.
4585
4586 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
4587
4588         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
4589         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
4590         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
4591         gdk/x11/gdkmain-x11.c: 
4592
4593         Patch from George Lebl to add a GdkGrabStatus enumeration to use
4594         as a return value of gdk_*_grab(). Previously, we just
4595         returned the X11 values directly.
4596
4597 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
4598
4599         * gdk/x11/Makefile.am: Patch from George Lebl to 
4600         install all the headers in the right place.
4601
4602 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
4603
4604         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
4605           initial conversion to DocBook.
4606
4607 2000-07-04  Tor Lillqvist  <tml@iki.fi>
4608
4609         * README.win32: Improve a bit.
4610
4611         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
4612         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
4613         Alt+0nnn on the numpad (used to enter characters by numeric code
4614         from current DOS or ANSI codepage) working correctly, as in other
4615         Windows apps.
4616
4617         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
4618         same argument validity tests as in X11 version.
4619         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
4620
4621         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
4622         definitions in case missing from headers.
4623
4624         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
4625         destroy the window-specific cursor.
4626         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
4627         calling GetModuleHandle(NULL).
4628         (gdk_window_set_cursor): Reworked to always copy the passed cursor
4629         with CopyCursor before setting it as the window-specific
4630         cursor. It is OK for the caller to destroy the GdkCursor (and thus
4631         also its Windows cursor) after calling this function. Destroy any
4632         previous window-specific cursor.
4633
4634 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
4635
4636         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
4637         font charset is iso8859-1, not iso-8859-1.
4638
4639 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
4642         Use g_get_charset() instead of g_get_codeset().
4643
4644         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
4645         Comment out some strdup'ing functions to keep timj
4646         happy until we finish fighting this out.
4647
4648 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
4649
4650         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
4651         <= width or height.
4652
4653         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
4654         from 1.2 for parent/child states.
4655
4656         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
4657         of typos.
4658
4659         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
4660         event structures, replace with a generic axes field. Replace 
4661         deviceid/sourec with GdkDevice *device.
4662
4663         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
4664         to extract particular axis use value from event. (Also
4665         can be used for normal X/Y.)
4666
4667         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
4668         allow for arbitrary number of axes, namespace everything
4669         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
4670         everywhere.
4671
4672         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
4673         Get rid of the gdk_input_vtable setup if favor of simply
4674         defining the functions in gdkinput-none/gxi/xfree.c in
4675         a similar fashion to the way that the port structure is 
4676         done.
4677
4678         * gtk/gtkdnd.c: Fix fields of synthesized button press event
4679         for new event structures. 
4680
4681         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
4682         new device interfaces.
4683
4684 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
4685
4686         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
4687         set the initial text.
4688
4689         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
4690         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
4691         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
4692         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
4693
4694         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
4695         pango_layout_set_font_description to simplify.
4696
4697 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
4698
4699         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
4700         pango_layout_set_font_description to simplify.
4701
4702 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
4703
4704         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
4705         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
4706         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
4707
4708         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
4709         PANGO_PIXELS() macro.
4710
4711 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
4712
4713         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
4714         that returns a PangoContext owned by the widget and updated to
4715         match future changes in the widget. Also, make 
4716         gtk_widget_create_pango_layout() use this context. If we ever
4717         add a ::changed signal to PangoContext, this will make things
4718         much more convenient. 
4719
4720         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
4721         in the appropriate places instead of destroying the layouts and
4722         creating new ones.
4723
4724         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
4725         in a few strategic places.
4726
4727 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
4728
4729         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
4730         gtk_widget_size_request() on reparented child, if one. Otherwise,
4731         queue_resize() on the child never results in it getting size-requested
4732         at all.
4733
4734         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
4735         in option menus, so that (with luck) people won't copy it into
4736         their apps in the future.
4737
4738         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
4739         to gtk_option_menu_calc_size. This isn't perfect, but should fix
4740         a lot of problems with changing the size of the menu's menu
4741         items after adding it to the option menu.
4742
4743         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
4744
4745         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
4746         the text direction for a widget changes.
4747
4748         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
4749         ::direction_changed to get rid of various hacks.
4750
4751 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
4752
4753         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
4754         name.
4755
4756 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
4757
4758         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
4759         flag to the structure. Do not call XFreePixmap on pixmaps created
4760         by gdk_pixmap_foreign_new().
4761
4762 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
4763
4764         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
4765         value using GdkRGB functionality given GdkColormap and GdkColor.
4766         (name not final, waiting for inspiration.)
4767         
4768         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
4769         set the foreground/background of a GC using the GC's colormap
4770         and GdkRGB. (name not final, waiting for inspiration.)
4771
4772         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
4773         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
4774
4775         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
4776         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
4777         purely a function of the corresponding colormap. Make
4778         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
4779
4780         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
4781         gdk_pixbuf_*create_from_xpm_* in terms of
4782         gdk_pixbuf_new_from_xpm_data(), move into platform independent
4783         code.
4784
4785         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
4786         advantage of the new draw_rgb_32_image_dithalign.
4787
4788         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
4789
4790         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
4791         on each created GC.
4792
4793         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
4794
4795         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
4796         which we initialize from the drawable when the GC is created,
4797         if the drawable has a colormap.
4798
4799         * gdk/x11/gdkgc-x11.c: include string.h for memset.
4800
4801         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
4802
4803         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
4804
4805 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
4806
4807         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
4808         actually returning expose events, make sure to set
4809         the count field properly.
4810
4811         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
4812         accidentally reintroced bug which always cleared
4813         the graphics_exposures value. 
4814
4815 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
4816
4817         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
4818
4819 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
4820
4821         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
4822
4823 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
4824
4825         * docs/faq/gtk-faq.sgml: Start of Section 6.
4826
4827 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
4828
4829         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
4830         
4831         (Fixes problem with drawing childless frames. Pointed out
4832         by and a first patch from Anders)
4833         
4834         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
4835         compute a child_allocation, even if we don't have a child.
4836
4837         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
4838         Always chain to the parent's impl, even if we don't have a child.
4839
4840 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
4841
4842         * gdk/gdkrgb.c: If possible, create only a single shm segment and
4843         use multiple parts of it instead of creating a bunch of separate
4844         segments, since the maximum number of segments per system is not
4845         large. (This might be worth backporting to GTK+-1.2.x if we make a
4846         new release )
4847
4848         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
4849         structure in preparation for per-colormap GdkRGB.
4850
4851         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
4852         to False when we get EINVAL from shmget so that the caller of
4853         gdk_image_new can retry with a smaller segment size.
4854
4855 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
4856
4857         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
4858
4859 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
4860
4861         * configure.in: make the current version number 1.3.1 (binary age 0,
4862         interface age 0).
4863         
4864         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
4865         gtkcompat.h is all we want.
4866
4867         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
4868         GLib primitive types. fixed g_type_register_fundamental() argument
4869         ordering.
4870
4871         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
4872         compiles.
4873
4874         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
4875         object code cleanup, comment trigraph fixes, etc...
4876
4877 2000-06-23  Havoc Pennington  <hp@redhat.com>
4878
4879         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
4880         instead of making up a bogus name for first_para_mark
4881
4882         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
4883         0 as a context ID
4884
4885 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
4886
4887         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
4888
4889 2000-06-21  Havoc Pennington  <hp@pobox.com>
4890
4891         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
4892         we didn't check window->bg_pixmap != GDK_NO_BG.
4893
4894         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
4895         gdk-pixbuf
4896
4897 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
4898
4899         * docs/faq/gtk-faq.sgm: Move file to here.
4900           TODO: Update Makfile.am 
4901
4902 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
4903
4904         * docs/gtk-faq.sgm: Add Section 2
4905
4906 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
4907
4908         * docs/gtk-faq.sgm: New file. Start of DocBook
4909           version of the FAQ.
4910
4911 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
4912
4913         * configure.in (GDK_PIXBUF_MAJOR): Define version
4914         numbers for GDK_PIXBUF_*, as they get substituted
4915         into a header file. Need to consider versioning
4916         for gdk-pixbuf more carefully later.
4917
4918 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
4919
4920         Work with srcdir != builddir.   
4921         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
4922         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
4923         * demos/testpixbuf.c: Likewise.
4924         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
4925         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
4926         <gdk/x11/gdkx.h>.
4927         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
4928         "gdk-pixbuf.h".
4929         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
4930
4931 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
4932
4933         * TODO.xml: Change 1.4 version numbers to 2.0.
4934
4935 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
4936
4937         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
4938         fixups to GTK+ standard.
4939
4940 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
4941
4942         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
4943         gdk-pixbuf.
4944
4945         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
4946         fixups for GObject.
4947
4948         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
4949         gdk-pixbuf with GDK dependencies moved into GDK.
4950         
4951         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
4952         move gdk-pixbuf-loader here until GObject has signals.
4953
4954         * demos/: New directory of demos. Move demos from
4955         gdk-pixbuf here.
4956
4957         * demos/pixbuf-init.c: Small bit of code to check for
4958         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
4959         set GDK_PIXBUF_MODULEDIR appropriately.
4960
4961         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
4962         define which no longer makes sense.
4963
4964 2000-06-21  Havoc Pennington  <hp@redhat.com>
4965
4966         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
4967         gtk_get_default_language
4968
4969         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
4970         new function to get the default language
4971
4972         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
4973         s/gtk_text_view_style_values/gtk_text_style_values/
4974
4975         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
4976         Add a "language" field to tags.
4977
4978         (gtk_text_tag_set_arg): Fix bug in setting
4979         "bg_full_height_set" tag.
4980
4981 2000-06-21  Havoc Pennington  <hp@redhat.com>
4982
4983         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
4984         in the interfaces
4985
4986         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
4987         stuff instead when possible.
4988
4989         * gtk/gtktexttypes.h: Delete some unused constants
4990
4991         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
4992         testtextbuffer.c: use glib instead of custom unicode routines
4993
4994 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
4995
4996         * docs/es/: Removed mistakenly added generated sgml
4997
4998         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
4999         Remove outdated info files.
5000
5001         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
5002         Moved tutorial files into subdir
5003
5004         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
5005         subdir.
5006
5007         * docs/man/gtk_button.pod: Remove. (contents will be
5008         integrated into gtk-reference button page.)
5009
5010         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
5011         docs/faq/Makefile.am: Adjust for new organization
5012
5013 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
5014
5015         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
5016         not $(MKINSTALLDIRS)
5017
5018 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
5019
5020         * gtk/testgtk.c (create_text): Finish the job Elliot started
5021         of removing font setting test for text widget. (Since text widget
5022         and GdkFont are not deprecated, and cause portability problems.)
5023
5024 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
5025
5026         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
5027         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
5028         Remove use of libunicode in favor of new GLib functions.
5029
5030         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
5031         nano-x, framebuffer. The X11 include is just a hack until we get
5032         the necessary functions in gdkcolor.h, so there is no reason to
5033         add other includes of platforms.
5034
5035         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
5036         window bigger than the screen change.
5037
5038         * gtk/testgtk.c: Revert some random changes from Elliot
5039         that had no particular point and were causing testgtkrc
5040         not to function correctly.
5041         
5042         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
5043         because GdkSegment and GdkRegionBox have the same fields,
5044         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
5045         results in clearer code.
5046
5047         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
5048         gdk_input_translate_coordinates): Fix missed GdkObjectification
5049
5050 2000-06-18  Elliot Lee  <sopwith@redhat.com>
5051
5052         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
5053         * gtk/gtk{plug,socket}.h: Missed commits from previous.
5054
5055 2000-06-20  Havoc Pennington  <hp@redhat.com>
5056
5057         * modules/linux-fb/Makefile.am: Make this compile
5058         without framebuffer enabled
5059
5060         * gdk/linux-fb/Makefile.am: Add conditional to not build
5061         framebuffer unless specified in configure
5062
5063         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
5064         the size of the target instead of source if -1 was passed for
5065         width/height
5066
5067         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
5068         width/height confusion.
5069
5070 2000-06-19  Havoc Pennington  <hp@redhat.com>
5071
5072         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
5073         GDK_DRAWABLE_XID. In the future, we probably want to make it
5074         faster with G_DISABLE_CHECKS turned on.
5075
5076 2000-06-14  Havoc Pennington  <hp@redhat.com>
5077
5078         * gdk/Makefile.am: add gdkpixmap.c
5079
5080         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
5081         s/gdk_image_init/_gdk_windowing_image_init
5082
5083         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
5084         ref/unref
5085
5086         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
5087
5088         * gdk/gdkcompat.h: remove GdkWindowType compat, since
5089         GdkWindowType is now non-deprecated; 
5090         change gdk_window_get_type() compat to be
5091         gdk_window_get_window_type().
5092
5093         * gdk/gdkdnd.h: make GdkDragContext a GObject.
5094
5095         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
5096         virtual GObject. Make all functions call into the vtable.
5097         Move gdk_image_put() guts in here. Remove GdkDrawableType
5098         and gdk_drawable_get_type(), these are now GdkWindow-specific.
5099         draw_image, get_depth, get_size, set_colormap, get_colormap,
5100         get_visual added to the vtable.
5101         
5102         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
5103         GObject. Virtualize everything. 
5104         (gdk_gc_new_with_values): remove check for destroyed window,
5105         because now GdkWindow::create_gc will check this.
5106         (gdk_gc_set_values): New function to set GC values, this 
5107         was already implemented but wasn't in the header
5108
5109         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
5110
5111         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
5112         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
5113         remove _gdk_window_class; add _gdk_window_impl_get_type() and
5114         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
5115         _gdk_windowing_window_init, rename gdk_image_init to
5116         _gdk_windowing_image_init.
5117         
5118         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
5119         (gdk_draw_layout): Remove check for destroyed window, 
5120         because all the drawable methods already check it.
5121         
5122         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
5123         Add gdkpixmap.c which contains implementation of GdkDrawable
5124         virtual table (by chaining to a platform-specific implementation
5125         object).
5126         
5127         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
5128         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
5129         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
5130         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
5131         GdkColormapPrivate. 
5132
5133         * gdk/gdktypes.h: #include <glib-object.h>
5134
5135         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
5136         Move most functionality to platform-specific implementation
5137         object. GdkWindow itself now handles the backing store, then
5138         chains to the platform-specific implementation.
5139         (gdk_window_get_window_type): return GdkWindowType of the window.
5140         (gdk_window_peek_children): New routine, returns the children of 
5141         a GdkWindow
5142         (gdk_window_get_children): Was in X11-specific code and did 
5143         XQueryTree. Changed to simply return a copy of window->children; 
5144         so it can go in cross-platform code.
5145         
5146         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
5147
5148         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
5149         GdkColormap; just changed to use the new private data instead
5150         of casting to GdkColormapPrivate.
5151
5152         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
5153         gdk_cursor_new().
5154
5155         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
5156         (private data member in the GObject). 
5157         (xdnd_manager_source_filter): Function had broken 
5158         error handling, fix it (use gdk_error_trap_push).
5159
5160         * gdk/x11/gdkdrawable-x11.c: This file now implements
5161         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
5162         base class is purely for the convenience of the X port,
5163         and not part of the interface to cross-platform GDK.
5164
5165         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
5166         
5167         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
5168         specific to X, and returned by the create_gc virtual method
5169         of GdkDrawableImplX11. 
5170         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
5171         rather than gchar, this was also changed in the GdkGC vtable.
5172         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
5173         mask is 0, return immediately, instead of checking every flag.
5174         This is faster, and keeps us from segfaulting if values is NULL
5175         and the mask contains some nonzero flags.
5176
5177         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
5178         GdkWindow.
5179
5180         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
5181         GdkWindowPrivate is gone.
5182
5183         * gdk/x11/gdkim-x11.c: rename things that got renamed.
5184
5185         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
5186         remove the image_put stuff that got transferred to GdkDrawable.
5187         
5188         * gdk/x11/gdkinput.c: renamings
5189
5190         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
5191
5192         * gdk/x11/gdkpixmap-x11.c: GObject conversion
5193
5194         * gdk/x11/gdkprivate-x11.h: indentation fixes
5195
5196         * gdk/x11/gdkproperty-x11.c: renamings
5197
5198         * gdk/x11/gdkselection-x11.c: renamings
5199
5200         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
5201         implements the platform-specific "impl" object.
5202         Moved gdk_window_get_children to gdk/gdkwindow.c
5203
5204         * gdk/x11/gdkx.h: Remove all the private structs and private datas
5205         that no longer exist. Add declaration of GdkGCX11 object here.
5206         Fix all the macros to still work. 
5207
5208         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
5209         GdkDragContext from the boxed types since they are now GObjects.
5210
5211         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
5212         moved xthickness/ythickness into the instance. GtkStyleClass
5213         functions are now in the standard vtable for GtkStyle, so you have
5214         to create a GObject subclass to write a theme engine.
5215         (gtk_style_copy): fixed a leaked PangoFontDescription
5216         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
5217         can be the standard GObject function.
5218         
5219         * Throughout GTK:
5220         s/style->klass->[xy]thickness/style->[xy]thickness
5221         s/pango_layout_unref/g_object_unref/
5222
5223         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
5224         
5225         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
5226         accessing GDK internals.
5227
5228         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
5229         accessing GDK internals.
5230
5231 2000-06-18  Elliot Lee  <sopwith@redhat.com>
5232
5233         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
5234
5235         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
5236         problem by calculating event position relative to the trough
5237         rather than the slider.
5238         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
5239
5240         * gdk/gdkgc.h: Add GDK_NOR.
5241
5242         * configure.in, Makefile.am: Add modules top level dir
5243         * configure.in: Only use pangox library if building x11 target.
5244         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
5245
5246 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
5247
5248         * gtk/gtkcolorsel.c: Change private class member to be named
5249         private_data throughout the file.
5250
5251         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
5252         private_data to avoid clashing with keyword.
5253
5254 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
5255
5256         * gdk/gdkdnd.h: Add comment to remove warning.
5257
5258 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
5259
5260         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
5261         Byelorussian language; changed the Makefile and file names 
5262         to reflect that.
5263
5264 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
5265
5266         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
5267         rather than gdk_window_hide; this makes things work
5268         correctly if the window is programmatically hidden while
5269         iconified.
5270
5271 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
5272
5273         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
5274         cut and paste typo where wrong pixmap was being
5275         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
5276
5277 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
5278
5279         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
5280         Add helper function to compute format / bytes 
5281         relationship. Use in a couple places to fix up
5282         errors which assume 8 * format.
5283
5284         * gtk/gtkselection.c (gtk_selection_request): Use 32
5285         rather than 8 * sizeof (GdkAtom), to work correctly
5286         on Alpha.
5287
5288 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
5289
5290         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
5291         libgtk.la
5292         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
5293         versions
5294
5295         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
5296         checking macros return NULL since the function has a return value.
5297
5298 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
5299
5300         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
5301         GTK+ from building at all.
5302
5303         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
5304
5305 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
5306
5307         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
5308         gtk/Makefile.am: make it possible to configure gtk for different
5309         targets on the same platform. The library name is now 
5310         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
5311         flag. Only the x11 target compiles right now.
5312         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
5313         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
5314         * gdk/nanox/gdk*generic*: delete generic region code.
5315         * gdk/linux-fb/gdk*generic*: delete generic region code.
5316         * README.nanox: update information.
5317         
5318 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
5319
5320         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
5321         prepend not append. (Pointed out by Brett Hall.)
5322
5323 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
5324
5325         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
5326
5327 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
5328
5329         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
5330         need this later, and this makes sure that the atexit for
5331         glib gets called after that for GDK, so atexits are
5332         properly ordered for object leak checking.
5333
5334         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
5335
5336         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
5337         pango_x_shutdown_display()
5338
5339         * gtk/simple.c (main): Close window on destroy.
5340
5341 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
5342
5343         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
5344         to treat initial creation different from setting with 
5345         regards to the graphics-exposures parameter, so add a parameter
5346         indicating whether this is initial or not.
5347
5348 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
5349
5350         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
5351         to sort of work by adding an extra return_exposes arg
5352         to gdk_event_translate() - it might be better to simply
5353         deprecate the function altogether and force people to rewrite
5354         without it. gdk_window_scroll() handles most of it, and where
5355         gdk_window_scroll() doesn't work, simply redrawing more does.
5356
5357         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
5358         assertion.
5359
5360         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
5361
5362         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
5363         bunch of pretty much useless /* Print debugging info */ comments 
5364         which had drifted away from the code they were commenting.
5365
5366 2000-06-02  Havoc Pennington  <hp@pobox.com>
5367
5368         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
5369         is in working order.
5370         
5371         * gtk/testtext.c: Change to reflect anonymous mark API
5372
5373         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
5374
5375         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
5376         field, which was unused.
5377
5378         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
5379         saves some typing.
5380
5381         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
5382
5383         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
5384         flag on the insertion point and selection bound
5385
5386         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
5387         make mark-manipulation functions take a GtkTextMark* instead of a
5388         mark name.
5389         
5390         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
5391         GtkTextMarkBody; will be used to detect attempts to delete
5392         the permanent marks (insert and selection bound)
5393
5394         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
5395
5396 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
5397
5398         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
5399         flag to on.
5400
5401         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
5402         Honor DOUBLE_BUFFRED_FLAG
5403
5404         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
5405         function to set the DOUBLE_BUFFERED flag.
5406
5407         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
5408         or not exposes done on the widget should be double-buffered.
5409
5410         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
5411         to be what would be expected. (Fixes problem with a
5412         g_return_if_fail() validating a TextDirection enumeration)
5413
5414 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
5415
5416         * gtk/gtkwidget.c: Remove all references to 
5417         offscreen flag which was no longer used.
5418
5419         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
5420
5421         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
5422         for non-null label_widget->parent.
5423
5424         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
5425         which no longer was used.
5426
5427         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
5428
5429         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
5430         for null arguments.
5431
5432         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
5433         check for destroyed windows.
5434
5435 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
5436
5437         * gtk/gtkimmulticontext.c: Add a finalize method and unref
5438         the slave context there.
5439
5440         * gtk/gtkinvisible.[ch]: Make reference counting behavior
5441         identical to GtkWindow.
5442
5443 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
5444
5445         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
5446         pangox to here, so we can write them independent of rendering
5447         system, using GDK primitives.
5448
5449         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
5450         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
5451         since we have a rendering-system independent implementation in
5452         terms of draw_glyphs().
5453         
5454         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
5455         function to render a single line.
5456
5457         * gdk/x11/gdkpango.c: Move the guts of this file mostly
5458         into ../gdkpango.c, which simplifies things, since we
5459         don't have to deal with raw X gc's.
5460
5461 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
5462
5463         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
5464         get the logical attributes for a given GtkTextLine.
5465
5466 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
5467
5468         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
5469         g_locale_get_codeset() to g_get_codeset() change.
5470
5471 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
5472
5473         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
5474         descriptions.
5475
5476         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
5477         the entry.
5478
5479         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
5480         redoing (vastly simplifying) for Pango. Still needs quite
5481         a bit of work. (Size selection is currently poor. List of 
5482         predefined sizes is not a good idea, since all of these
5483         sizes won't necessarily be distinct.)
5484
5485 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
5486
5487         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
5488         CODESET results for LANG=C.
5489
5490 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
5491
5492         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
5493         which takes a stringized pango font description;
5494         ignore the older 'font' and 'fontset' declarations.
5495
5496         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
5497         field with a GdkFont derived via gdk_font_from_description(),
5498         for compatibility. (Should we just remove it entirely?
5499         Probably too much compatibility breakage, but people
5500         should be migrating to the new Pango stuff as quickly
5501         as possible.)
5502
5503 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
5504
5505         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
5506
5507 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
5508
5509         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
5510         redoing; there are some bugs in size allocation right
5511         now, the semi-existant distinction between header / day
5512         fonts was removed, but, with Pango, could actually
5513         be made functional in a nice way.
5514         
5515         * gtk/testcalender: Move calender from examples into this
5516         directory as a test program. (We really need to restrcture
5517         testgtk into a whole directory full of tests for every
5518         widget or functionality group, separated into multiple .c
5519         files.)
5520
5521 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
5522
5523         * gtk/testgtk.c (file_exists): Fix stupid typo that
5524         was keeping RC file from being loaded.
5525
5526         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
5527         RC file font code.
5528
5529 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
5530
5531         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
5532         Add function to load a GdkFont from a PangoFontDescription.
5533
5534 2000-05-29  Tor Lillqvist  <tml@iki.fi>
5535
5536         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
5537         variable should be of type GdkEventPrivate.
5538
5539 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
5540
5541         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
5542         to have any widget for the label, use a GtkLabel widget
5543         to display the text. (Based partially on a patch from
5544         Anders Carlson.)
5545
5546         (Quite a bit of code reorganization - strip 90% of the
5547         guts out of gtkaspectframe and add a single virtual
5548         func to GtkFrameClass - compute_child_allocation.)
5549
5550 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
5551
5552         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
5553         (Removed clist->row_center_offset field because caching
5554         it wasn't saving time or code, added private function
5555         _gtk_clist_create_cell_layout()).
5556
5557 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
5558
5559         * gtk/gtkaccellabel.c: Pangoized.
5560
5561         * gtk/[hv]ruler.c: Pangoized
5562
5563 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
5564
5565         * gtk/gtkfilesel.c (gtk_file_selection_init):
5566         Use gtk_clist_set_column_auto_resize() to remove need
5567         need for manual column width computations.
5568
5569 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
5570
5571         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
5572         ensuring Pango correctness, and considerably simplifying the
5573         code.
5574         
5575         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
5576
5577         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
5578         getting of numbers of lines.
5579
5580         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
5581         to the actual requested width of the lable, not to the wrap
5582         width we set.
5583
5584         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
5585
5586         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
5587           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
5588
5589         * gtk/gtktextview.c: Fix structure inheritance.
5590
5591         * gtk/gtkprogressbar.c: Pangoize.
5592
5593 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
5594
5595         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
5596         in a function.
5597
5598         * gtk/gtktextlayout.c (find_display_line_above): Fixed
5599         bug with computing line tops.
5600
5601         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
5602
5603 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
5604
5605         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
5606         and y_offset coordinates to do what we need now. (The offset between
5607         buffer and layout coordinates has been reintroduced, but is a 
5608         bit different than before.)
5609
5610         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
5611         handle the adjustments ourselves, and scroll as necessary using
5612         the new gdk_window_scroll().
5613         
5614         The advantage of this is that when we are incrementally revalidating,
5615         we are essentially rearranging things around the visible portion
5616         of the screen. With the old setup, the visible portion of the
5617         screen was moved around in the layout, so scrolling and redrawing
5618         to track that caused jumping of the display. Since we now
5619         control the scrolling ourselves, we can suppress this and
5620         only redraw when things actually change.
5621
5622 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
5623
5624         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
5625         the region not just redisplay it after-all, since we store the
5626         cursors in the LineDisplay. (Ugly interactions here between
5627         GtkLayout and GtkTextBTree here.)
5628         
5629         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
5630
5631 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
5632
5633         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
5634         Added function to scroll contents of a window while keeping the
5635         window constant. Works by XCopyArea or guffaw-scrolling depending
5636         on the details of how the window is set up. (guffaw-scrolling
5637         still needs to be filled in.)
5638
5639 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
5640
5641         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
5642         move the debugging that was tied to a global variable
5643         to that.
5644
5645         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
5646
5647         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
5648         validated flag, in line data instead of setting height/width to
5649         -1. This allows us to perform operations with partially invalid
5650         buffer (using the old size for invalid lines) and thus to do
5651         incremental vaidation. Keep height/width aggregates up to date
5652         when deleting text and rebalancing the tree.
5653
5654         * gtk/gtktextbtree.[ch]: Add functions validate a line
5655         (gtk_text_btree_validate_line), and to validate up
5656         to a number of pixels (gtk_text_btree_validate).
5657
5658         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
5659         that indicates that something is changed and a revalidation
5660         pass is needed. Change ::need_repaint to ::changed, and
5661         make it take old and new yranges instead of a rectangle.
5662
5663         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
5664         the line_data_destroy() function from 
5665         gtk_text_btree_add_view() to a virtual function in 
5666         GtkTextLayout
5667
5668         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
5669         since we are handling partial repaints in a different fashion
5670         now.
5671
5672         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
5673         of the selection instead of queueing a repaint on the
5674         entire widget.
5675
5676         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
5677         get_selection_bounds() down to btree, make the function
5678         in buffer a wrapper around the btree function.
5679
5680         * gtk/gtktextlayout.[ch]: Add functions to check if the
5681         layout is valid and to recompute either a range of pixels
5682         aroudn a line or a certain total number of pixels.
5683
5684         * gtk/gtktextlayout.[ch]: Cache a single line display;
5685         now that we only redraw the needed portions, the hit rate
5686         for this cache is quite high.
5687         
5688         * gtk/gtktextview.[ch]: Keep track of the first paragraph
5689         on the screen so that when re-laying-out the buffer, we can
5690         keep the same place. This requires connecting to ::value_changed
5691         on the adjustments
5692
5693         * gtk/gtktextview.[ch]: Add idle functions to revalidate
5694         the buffer after we receive an ::invalidated signal.
5695         
5696 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
5697
5698         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
5699         to max of allocation and layout size, not just to the
5700         layout size.
5701
5702         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
5703         Invalidate window so it gets redrawn properly.
5704
5705         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
5706         to mean the entire window.
5707
5708         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
5709         into public header.
5710
5711 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5712
5713         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
5714         to get the name of a mark.
5715
5716         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
5717         to find the paragraph from a y position.
5718
5719 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
5720
5721         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
5722         nodes have width/height >= 0, not > 0.
5723
5724 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
5725
5726         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
5727         Add a size_only flag, so when we only need the size, we don't create
5728         useless appearance attributes.
5729
5730         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
5731         duplicate setting of font description.
5732
5733         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
5734
5735 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
5736
5737         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
5738         EXTRA_DIST. It does not work well when the file that
5739         everything depends on is not in the tarball.
5740
5741 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
5742
5743         * gtk/testgtk.c: Some hacks and fixes so that it basically
5744         works when not sitting in the GTK+ build tree.
5745
5746 2000-05-03  Havoc Pennington  <hp@redhat.com>
5747
5748         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5749         Properly determine the ordering of the tag root and the current
5750         line within the tree. Previous algorithm only worked if the tag
5751         root's immediate parent was the common root of both the current
5752         line and the tag root.
5753
5754 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
5755
5756         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
5757         alignment.
5758
5759         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
5760         the widget text directional dynamically.
5761
5762         * gtk/gtktextview.[ch]: Added functions to get and set default
5763         wrap mode.
5764
5765 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
5766
5767         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
5768         in cursor location computation.
5769
5770 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
5771
5772         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
5773         vadjusment values properly when layout gets smaller.
5774
5775         * gtk/gtktextview.c (need_repaint_handler): Areas being
5776         passed in are far completely inaccurate, and sometimes
5777         too small, so, for now, just queue a redraw on the
5778         whole visible region.
5779
5780 2000-04-25  Havoc Pennington  <hp@redhat.com>
5781
5782         * gtk/gtktextbtree.c (summary_destroy): new function to 
5783         destroy tag summary nodes
5784         (gtk_text_line_next_could_contain_tag): this function was 
5785         totally broken if the line passed in wasn't below the tag
5786         root. Fix it.
5787         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
5788         "wildcard" case, we have to do a linear scan. Blah.
5789         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
5790         we have to do the linear scan
5791         (tag_removed_cb): When a tag is removed from the tag table, 
5792         remove the GtkTextTagInfo node from the btree.
5793         (gtk_text_btree_spew): Implement the spew function, for 
5794         our debugging pleasure.
5795
5796 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
5797
5798         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
5799         a problem with referring to the wrong buffer.
5800
5801         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
5802
5803         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
5804         font description to gtk_style_new() - otherwise things
5805         don't work without a .gtkrc file.
5806
5807         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
5808         tags table if we create it ourself, too.
5809
5810         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
5811         it was conflicting with XKB modifiers.
5812
5813         * gtk/gtktextview.[ch]: Add simple support for 
5814         GtkIMContext.
5815
5816 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
5817
5818         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
5819         with deletion from last commit.
5820
5821 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
5822
5823         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
5824         in the context from the current locale.
5825         
5826         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
5827         context, not hardcoded value.
5828
5829         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
5830         not logical.
5831
5832 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
5833
5834         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
5835         attributes - that doesn't handle partial-glyph selection
5836         properly. Instead use new pango_layout_line_get_x_ranges()
5837         functionality to draw the selection.
5838
5839         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
5840         now properly handles out-of-range coordinates.
5841
5842         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
5843
5844         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
5845         public.
5846
5847         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
5848         for paragraphs opposite to the base direction of the widget.
5849
5850         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
5851
5852         * gtk/gtktextlayout.c: Don't split segments on marks, since that
5853         causes Arabic words to reshape as you cursor through.
5854
5855         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
5856         cursor position when moving vertically with the arrow keys and
5857         scrolling with page-up/page-down. (Arrow keys save only the X,
5858         scrolling saves both X and Y.)
5859
5860         This means you can line-up / line-down or page-up / page-down
5861         without losing your place, and also that moving vertically
5862         with the cursor keys keeps the same X position, not the same
5863         character count:
5864
5865         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
5866         arrow keys move by display lines, not paragraphs.
5867
5868 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
5869
5870         * gtk/gtklayout.c: Make sure that the bin window is at least
5871         as big as the allocation. (Should we also make sure that the
5872         bin window is big enough to completely cover widget->window?)
5873
5874         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
5875         function to get the onscreen rectangle.
5876
5877         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
5878         for offsets in window coordinates.
5879
5880 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
5881
5882         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
5883         confusion.
5884
5885         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
5886         from the widget direction.
5887
5888         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
5889         Add a "direction" attribute.
5890
5891         * gtk/gtktextview.c: global s/tkxt/text_view/.
5892
5893         * gtk/testtext.c: Added long block of text in Arabic, to test out
5894         the direction attributes. (Some problems with the shaping system
5895         for arabic become obvious - like the fact the cursor splits words
5896         into unjoined pieces.)
5897
5898 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
5899
5900         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
5901
5902         * gtk/gtktextlayout.c: Fix up alignment.
5903
5904         * gtk/testtext.c: Add some tests for centering, wrapping.
5905
5906 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
5907
5908         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
5909         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
5910         If we wrote GTK+-specific layout-render function this could just replace
5911         the draw_layout() operation in the vtable.
5912
5913         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
5914         pango_layout_get_cursor_pos() and use that function.
5915
5916         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
5917         is a non-static symbol.
5918
5919         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
5920         with gtk_text_btree_find_line_by_y()
5921
5922         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
5923         renderer that handles GtkTextAppearance attributes.
5924
5925         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
5926
5927           - Move the values in the style that don't affect geometry into a
5928             GtkTextAppearance structure.
5929           - Change underline to take a PangoUnderline and "font" a string
5930             representation of a font description
5931           - Add a "font_desc" attribute which takes a FontDescription structure.
5932
5933         * gtk/gtktextlayout.[ch]:
5934
5935           - Get rid of the display-line list per each line. Instead, we
5936             generate, on demand, a GtkTextLineDisplay structure which]
5937             contains a PangoLayout * and other necesary information
5938             (offsets, cursor locations) for displaying a paragraph.
5939           - Get rid of the code to wrap lines, create display chunks,
5940             etc. Instead, we just go through a paragraph and convert
5941             it into the necessary inputs to a PangoLayout.
5942           - Implement a new attribute type, GtkTextAttrAppearance. This
5943             holds a GtkTextAppearance, and is used to pass colors, 
5944             stipple, etc, through from the layout to the display without
5945             having to use lots and lots of individual attributes.
5946           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
5947             in terms of PangoLayout functions.
5948         
5949         * gtk/gtktextview.c: 
5950          
5951           - Handle passing the necessary PangoContext to the layout
5952           - Some fixups in painting to deal with the automatic backing store
5953             and offsetting of GTK+-1.4
5954           - Add a style_set handler so that the default style reacts
5955             properly to theme changes.
5956         
5957         * gtk/gtktext?*.[ch]: Random code-style fixes.
5958
5959         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
5960
5961 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
5962
5963         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
5964         in original form preparatory to Pango-ization and gdkimcontext-ization.
5965
5966 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
5967
5968         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
5969         so that we can derive from gtkimcontext in language bindings properly.
5970
5971 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
5972
5973         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
5974         Add a compose table including (almost) all the compose combinations
5975         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
5976         data in the XIM implementation.
5977
5978         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
5979         Moved functions to convert keyvalues from and to unicode here from
5980         the win32 port and made them public.
5981
5982 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
5983
5984         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
5985
5986 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
5987
5988         * gtk/gtkimcontext.[ch]: Base class for new input context system
5989
5990         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
5991         the real input context implementation to be loaded from modules
5992         and switched on the fly.
5993
5994         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
5995         context that just does direct keysymbol => unicode translation.
5996
5997         * gtk/gtkentry.[ch]: Start switching editing over to using
5998         GtkInputContext. (No handling of preedit yet.)
5999
6000 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
6001
6002         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
6003         many substitutions. (klass should not be subsituted.)
6004
6005 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
6006
6007         * configure.in: Add checks for Pango
6008
6009         * configure.in docs/Makefile.am: Add test for sgml2html
6010         and allow 'make dist' without building html, but print out
6011         warnings in that case. (For making snapshots)
6012
6013         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
6014         Add Pango libraries and C flags
6015
6016         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
6017         Add function (gdk_draw_layout) to draw a pango layout.
6018
6019         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
6020         for getting Pango contexts for GDK.
6021
6022         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
6023
6024         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
6025         editing.
6026
6027         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
6028         keysym => unicode translations. More languages can be added
6029         here, but real input-method support is needed.
6030
6031         * docs/Changes-1.4.txt: Added note about entry behavior.
6032         
6033         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
6034         to set the reading direction for a widget and the global direction.
6035         Add test which allows toggling the global direction. Two private
6036         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
6037
6038         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
6039           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
6040
6041         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
6042
6043         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
6044         underlining now handled by Pango.
6045
6046         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
6047         to RCStyle and Style. (Having both this and the old font name and GdkFont 
6048         is temporary.)
6049
6050         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
6051         convenience functions for creating contexts and layouts for widgets.
6052
6053         * gtk/testgtk.c: Enhance label tests with multilingual labels.
6054
6055 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
6056
6057         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
6058         titles to be active, even if they aren't visible.
6059         (gtk_clist_column_titles_passive):  Ditto.
6060
6061 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
6062
6063         * gtkmenu.c:
6064         * gtkmenu.h:
6065         * gtktypeutils.h: Spelling/grammar fixes in comments.
6066
6067 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
6068
6069         * gdk/nanox/*.h: add missing header files.
6070
6071 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
6072
6073         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
6074         send_event to TRUE.
6075         (gtk_drawing_area_size): queue a resize.
6076
6077 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
6078
6079         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
6080         the handlers, also invalidate them. bug nailed down by Karl Nelson
6081         <kenelson@ece.ucdavis.edu>.
6082
6083 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
6084
6085         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
6086         "(nil)" foundries, patch from Grigorios Magklis.
6087
6088         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
6089         on non-available fonts, based on a patch by Grigorios Magklis
6090         <maglis@cs.rochester.edu>.
6091
6092 2000-05-18  Elliot Lee  <sopwith@redhat.com>
6093
6094         * gdk/x11/gdkregion-generic.c: If a region does not have any
6095         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
6096         instead of GDK_OVERLAP_RECTANGLE_IN.
6097
6098 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
6099
6100         * gtk/gtklayout.c (gtk_layout_map): Remove references to
6101         OFFSCREEN, as it is no longer necessary.
6102
6103 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
6104
6105         * gtk/gtkcolorsel.c: Patch from David Santiago
6106         <mrcooger@cyberverse.com> to change things so that the 
6107         indicator of the active palette entry is done independently,
6108         not via the focus, since it should always be visible.
6109
6110 2000-05-17  Tor Lillqvist  <tml@iki.fi>
6111
6112         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
6113         refcount leaks as in the X11 backend.
6114
6115         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
6116         cosmetics.
6117
6118         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
6119         backend. Add _gdk_windowing_window_destroy().
6120
6121         * gtk/gtkcolorsel.c: Include correct backend-specific header.
6122         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
6123         either, but these probably do exist on nanox?)
6124         
6125         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
6126         which isn't necessarily defined by <math.h>.
6127
6128         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
6129         ancestry past GtkObject.
6130
6131         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
6132         from DLL on Win32.
6133
6134         * gtk/gtk.def: Update corresponding to recent changes.
6135
6136         * gtk/makefile.{cygwin,msc}: Updates.
6137
6138 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
6139
6140         * docs/Changes-1.4.txt: A bit of editing.
6141
6142         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
6143         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
6144         to clear the update area for the window, and clear it
6145         when hiding a window.
6146
6147         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
6148         if window destroyed.
6149
6150         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
6151
6152         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
6153         gdk_window_destroy() to the generic code, since there was a lot of 
6154         window-system-independent logic it in. Add a function:
6155         
6156          _gdk_window_destroy() 
6157
6158         to the internal API to destroy a window without unreferencing it.
6159         Add a function:
6160
6161          _gdk_windowing_window_destroy()
6162
6163         That does the windowing-system-dependent part of destroying 
6164         the window.
6165
6166 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
6167
6168         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
6169
6170 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
6171
6172         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
6173         Make gtk_widget_shape_combine_mask() keep a reference count on
6174         the pixmap since it keeps it around.
6175
6176 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
6177
6178         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
6179         leak.
6180
6181         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
6182         leak with event filters.
6183
6184 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
6185
6186         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
6187         signal handlers with the right data arguments. (Fixes
6188         some warnings when a widget was repeatedly set as a drag
6189         destination.)
6190
6191         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
6192         window so we can avoid avoid setting the DND properties on the
6193         toplevel window repeatedly.
6194
6195 2000-05-13  Tor Lillqvist  <tml@iki.fi>
6196
6197         * gdk/win32/gdkwin32.h: Define more message types missing from
6198         mingw headers.
6199
6200         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
6201         call gdk_window_destroy_notify(). It was never called. This
6202         probably meant that the GdkWindow was never freed. Thanks Owen for
6203         noticing (!).
6204
6205         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
6206         window as destroyed before calling DestroyWindow(). DestroyWindow()
6207         causes a call to the window procedure (gdk_WindowProc), which
6208         calls gdk_event_translate(), which calls
6209         gdk_window_destroy_notify(), which gets confused unless the window
6210         is set as destroyed.
6211
6212         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
6213         this function to indicate it's win32 only. Put inside #ifdef
6214         G_ENABLE_DEBUG.
6215
6216         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
6217         debugging function. (gdk_event_translate:) Add a default branch
6218         that uses the above function to print debug messages with all
6219         Windows messages symbolically.
6220
6221         * gdk/win32/gdkprivate-win32.h: Declare it, and
6222         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
6223
6224 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
6225
6226         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
6227         public header file.
6228
6229 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
6230
6231         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
6232
6233         * gtk/gtktext.c: made the adjustments no-construct args, simply
6234         provide default adjustments.
6235         (gtk_text_destroy): release adjustments.
6236
6237         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
6238         adjustment argument non-construct.
6239
6240         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
6241         instead of in finalize.
6242         (gtk_progress_get_text_from_value): 
6243         (gtk_progress_get_current_text): 
6244         (gtk_progress_set_value): 
6245         (gtk_progress_get_percentage_from_value): 
6246         (gtk_progress_get_current_percentage): 
6247         (gtk_progress_set_percentage): 
6248         (gtk_progress_configure): ensure an adjustment is present.
6249
6250 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
6251
6252         * gtk/gtkcolorsel.[hc]:
6253         * gtk/gtkcolorseldialog.[hc]:
6254         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
6255         their parent implementation, use bit fields for boolean values, don't
6256         create unused widgets, usage of glib types, braces go on their own
6257         lines, function argument alignment, #include directives etc. etc. etc..
6258
6259         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
6260
6261 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
6262
6263         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
6264
6265         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
6266         of NULL.
6267
6268         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
6269         to freed data.
6270         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
6271
6272         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
6273         to NULL when the toplevel is getting destroyed.
6274         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
6275         (gtk_menu_destroy): 
6276         (gtk_menu_init): store the information of whether we have to
6277         readd the initial child ref_count during destruction in a new
6278         GtkMenu field needs_destruction_ref_count.
6279
6280         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
6281         here, those reading: learn from my mistake! ;)
6282         in order for set_?adjustment to support a default adjustemnt if
6283         invoked with an adjustment pointer of NULL, the code read (pseudo):
6284         if (v->adjustment) unref (v->adjustment);
6285         if (!adjustment) adjustment = adjustment_new ();
6286         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
6287         now imagine the first unref to actually free the old adjustment and
6288         adjustment_new() creating a new adjustment from the very same memory
6289         portion. here, the latter comparision will unintendedly fail, and
6290         all hell breaks loose.
6291         (gtk_viewport_set_hadjustment):
6292         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
6293         after unreferencing it.
6294
6295         * gtk/gtkcontainer.[hc]: removed toplevel registration
6296         functions: gtk_container_register_toplevel(),
6297         gtk_container_unregister_toplevel() and
6298         gtk_container_get_toplevels() which had wrong semantics
6299         anyways: it didn't reference and copy the list.
6300
6301         * gtk/gtkwindow.c: we take over the container toplevel registration
6302         bussiness now. windows are registered across multiple destructions,
6303         untill they are finalized. the initial implicit reference count
6304         users are holding on windows is removed with the first destruction
6305         though.
6306         (gtk_window_init): ref & sink and set has_user_ref_count, got
6307         rid of gtk_container_register_toplevel() call. add window to
6308         toplevel_list.
6309         (gtk_window_destroy): unref the window if has_user_ref_count
6310         is still set, got rid of call to
6311         gtk_container_unregister_toplevel().
6312         (gtk_window_finalize): remove window from toplevel list.
6313         (gtk_window_list_toplevels): new function to return a newly
6314         created list with referenced toplevels.
6315         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
6316
6317         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
6318         adjustment a non-construct arg.
6319         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
6320         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
6321         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
6322
6323         * gtk/gtkrange.c: added some realized checks.
6324         (gtk_range_destroy): get rid of the h/v adjustments in the
6325         destroy handler instead of finalize. remove timer.
6326         (gtk_range_get_adjustment): demand create adjustment.
6327
6328         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
6329         we simply create them on demand now and get rid of them in
6330         the destroy handler.
6331         (gtk_viewport_destroy): get rid of the h/v adjustments in the
6332         destroy handler instead of finalize.
6333         (gtk_viewport_get_hadjustment): 
6334         (gtk_viewport_get_vadjustment): 
6335         (gtk_viewport_size_allocate): demand create h/v adjustment
6336         if required.
6337
6338         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
6339         gtk_widget_real_destroy () functionality.
6340         (gtk_widget_real_destroy): reinitialize with a new style, instead
6341         of setting widget->style to NULL.
6342
6343 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
6344
6345         * gtk/gtkcalendar.c:
6346         * gtk/gtkbutton.c: ported _get_type() implementation over to
6347         GType, either to preserve memchunks allocation facilities,
6348         or because Gtk+ 1.0 GtkTypeInfo was still being used.
6349
6350         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
6351         over. prepare for ::destroy to be emitted multiple times.
6352         removed reference tracer magic. chain into GObjectClass.shutdown()
6353         to emit ::destroy signal.
6354
6355         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
6356         fundamental.
6357
6358         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
6359         cludge.
6360
6361         * gtk/gtksocket.c:
6362         * gtk/gtkplug.c:
6363         * gtk/gtklayout.c:
6364         * gtk/gtklabel.c:
6365         * gtk/gtkargcollector.c:
6366         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
6367         not being a fundamental anymore, and to work with the new
6368         type system (nuked fundamental type varargs clutter).
6369
6370         * gtk/*.c: install finalize handlers in the GObjectClass
6371         part of the class structure.
6372         changed direct GTK_OBJECT()->klass accesses to
6373         GTK_*_GET_CLASS().
6374         changed direct object_class->type accesses to GTK_CLASS_TYPE().
6375
6376         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
6377         GType. made most of the GTK_*() type macros and Gtk* typedefs
6378         simple wrappers around macros and types provided by GType.
6379         most notably, a significant portion of the old API vanished:
6380         GTK_TYPE_MAKE(),
6381         GTK_TYPE_SEQNO(),
6382         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
6383         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
6384         GTK_TYPE_ARGS,
6385         GTK_TYPE_CALLBACK,
6386         GTK_TYPE_C_CALLBACK,
6387         GTK_TYPE_FOREIGN,
6388         GtkTypeQuery,
6389         gtk_type_query(),
6390         gtk_type_set_varargs_type(),
6391         gtk_type_get_varargs_type(),
6392         gtk_type_check_object_cast(),
6393         gtk_type_check_class_cast(),
6394         gtk_type_describe_tree(),
6395         gtk_type_describe_heritage(),
6396         gtk_type_free(),
6397         gtk_type_children_types(),
6398         gtk_type_set_chunk_alloc(),
6399         gtk_type_register_enum(),
6400         gtk_type_register_flags(),
6401         gtk_type_parent_class().
6402         replacements, where available are described in ../docs/Changes-1.4.txt.
6403         implemented compatibility functions for the remaining API.
6404
6405         * configure.in: depend on glib 1.3.1, use gobject module.
6406
6407 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
6408
6409         * TODO.xml: Various updates to current status.
6410
6411 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
6412
6413         * gtk.m4: Print out version when test succeeds.
6414
6415 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
6416
6417         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
6418         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
6419         
6420         (Original triangle color selector from Simon Budig
6421         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
6422         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
6423         Santiago <mrcooger@cyberverse.com>)
6424
6425         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
6426         out into a separate widget.
6427
6428         * gtk/testgtk.c: Add some checkbuttons for toggling palette
6429         and opacity controls.
6430
6431 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
6432
6433         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
6434         snuck in prematurely.
6435
6436 2000-05-07  Tor Lillqvist  <tml@iki.fi>
6437
6438         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
6439         had deleted a ! operator by mistake, which caused
6440         GDK_SELECTION_CLEAR events never to be generated, which caused
6441         only the first copy to the clipboard from an gtkeditable to
6442         actually cause a copy to the Windows clipboard.
6443
6444 2000-05-06  Tor Lillqvist  <tml@iki.fi>
6445
6446         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
6447         compilation, too. Current mingw gcc distributions include the
6448         necessary headers. Also the necessary IIDs are now in mingw
6449         headers/libraries, and own definitions unnecessary.
6450
6451         More hacking on OLE2 DND, still doesn't work though, and thus
6452         ifdeffed out.
6453
6454         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
6455         here, too.
6456
6457 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
6458
6459         * gdk/nanox/*: nano-X port work in progress.
6460         * gdk/simple.c: simple test for Gdk.
6461         * README.nanox: notes about the port: read this first!
6462         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
6463         with nano-X.
6464
6465 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
6466
6467         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
6468         gdk_window_clear() into common code, implement in terms of
6469         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
6470         not redirected to the backing rectangle.
6471
6472 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
6473
6474         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
6475         EXTRA_DIST. It does not work well when the file that
6476         everything depends on is not in the tarball.
6477
6478 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
6479
6480         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
6481         with recursion where process_updates() is called from
6482         an expose handler. (GtkTextView is highly broken in
6483         doing this, but it should work, so it is a nice test
6484         case.)
6485
6486 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6487
6488         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
6489         handle the case where updates are queued during processing of
6490         updates.
6491
6492 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
6493
6494         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
6495         window is on gdk_display - use that instead of segfaulting.
6496
6497 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
6498
6499         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
6500         broken and require an empty arg, give it to them.
6501
6502 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
6503
6504         * gtk/gtklabel.h: indentation fixes.
6505
6506 2000-05-02  Tor Lillqvist  <tml@iki.fi>
6507
6508         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
6509         draw too narrow or too low arcs, they seem to fail, at least with
6510         some display drivers.
6511
6512         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
6513
6514         Large changes to the Win32 backend, partially made necessary by
6515         the changes to the backend-independent internal
6516         structures. Attempts to implement similar backing store stuff as
6517         on X11. The current (CVS) version of the Win32 backend is *not* as
6518         stable as it was before the no-flicker branch was merged. A
6519         zipfile with that version is available from
6520         http://www.gimp.org/win32/. That should be use by "production"
6521         code until this CVS version is usable. (But note, the Win32
6522         backend has never been claimed to be "production quality".)
6523
6524         * README.win32: Add the above comment about versions.
6525
6526         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
6527
6528         * gdk/gdk.def: Update.
6529
6530         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
6531         presumably be replaced by some more better mechanism as 1.4 gets
6532         closer to release shape.
6533
6534         * gdk/makefile.{cygwin,msc}: Update.
6535
6536         * gdk/win32/*.c: Correct inclusions of the backend-specific and
6537         internal headers. Change code according to changes in these. Use
6538         gdk_drawable_*, not gdk_window_* where necessary.
6539
6540         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
6541         our old DND.
6542
6543         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
6544         to interpret single characters as UTF-8. Thanks to Hans Breuer.
6545         Use correct function name in warning messages.
6546
6547         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
6548         GSourceFuncs gdk_event_prepare and gdk_event_check.
6549         (gdk_event_get_graphics_expose): Do implement, use
6550         PeekMessage. Thanks to Hans Breuer.
6551         (event_mask_string): Debugging function to print an GdkEventMask.
6552         (gdk_pointer_grab): Use it.
6553
6554         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
6555         (old) book I used claimed was Hangul actually is CJK Unified
6556         Ideographs Extension A. Also, Hangul Syllables were missing.
6557         Improve logging.
6558
6559         * gdk/win32/gdkgc-win32.c: Largish changes.
6560
6561         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
6562         g_win32_getlocale() from GLib, and not setlocale() to get current
6563         locale name.
6564
6565         * gdk/win32/gdkprivate-win32.h
6566         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
6567         gdkwin32.h, similarily as in the X11 backend.
6568
6569         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
6570         assignment was used instead of equals in if test. Thanks to Hans
6571         Breuer.
6572
6573         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
6574         the X11 version.
6575
6576         * gdk/win32/makefile.{cygwin,msc}
6577         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
6578         path to the Win32 headers that works also with the mingw compiler.
6579
6580         * gtk/gtkstyle.c: Include <string.h>.
6581
6582 2000-04-26  Havoc Pennington  <hp@redhat.com>
6583
6584         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
6585         replacing the broken gtk_label_get ()
6586
6587 2000-04-15  Havoc Pennington  <hp@pobox.com>
6588
6589         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
6590         this keeps scanner scripts from getting confused.
6591
6592         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
6593         data, rather than void
6594
6595 2000-04-15  Tor Lillqvist  <tml@iki.fi>
6596
6597         * gtk/gtkclist.c (gtk_clist_motion)
6598         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
6599         with is_hint FALSE, get x and y from the event. They used to be
6600         used uninitialised. The Win32 backend never sends motion events
6601         marked as hints. This for instance fixes the annoying file and
6602         font selector behaviour in the Win32 version.
6603
6604 2000-04-14  Tor Lillqvist  <tml@iki.fi>
6605
6606         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
6607         gtk_private_n_signals variables, they are used by some software,
6608         sigh.
6609
6610         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
6611         installation directory from the Registry, where the installer
6612         should have put it.
6613
6614 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
6615
6616         * gdk/x11/Makefile.am: Fix problem with installation directory for
6617         gdkx.h
6618
6619         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
6620         <mrcooger@cyberverse.com> so that when selecting menus with the
6621         mouse, the first item will not be selected, but when selecting
6622         with an accelerator, or navigating left-right on a menubar with
6623         the menus popped up, the first item will be selected.
6624
6625 2000-04-05  Dan Damian  <dand@dnttm.ro>
6626
6627         * configure.in: Added "ro" to ALL_LINGUAS.
6628
6629 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
6630
6631         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
6632         indentation.
6633
6634         * Makefile.am (EXTRA_DIST): Fix typo.
6635
6636         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
6637         to catch gdkconfig.h
6638
6639         * gtk/gtkitemfactory.c: Added FIXME.
6640
6641 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
6642
6643         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
6644         s/return_if_fail/return_val_if_fail/g and add a return value.
6645
6646 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
6647
6648         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
6649         merge slipup.
6650
6651         * gdk/gdkinput.h: Fix missing line from merge.
6652
6653 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
6654
6655         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
6656         instead of gdkprivate.h.
6657
6658 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
6659
6660         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
6661         parent class to correctly be GtkDialogClass.
6662
6663 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
6664
6665         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
6666         toplevel windows and their immediate children by their parents,
6667         since the size of toplevel windows is out of our immediate
6668         control and we don't get any real benefit from trying to track
6669         this size for clipping.
6670
6671         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
6672         for input_only windows.
6673
6674         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
6675         to fix some hacks and make sure that we don't try to set the
6676         background of input only windows.
6677
6678 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
6679
6680         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
6681         the _really_ internal stuff, and leave gdkprivate.h for the fake private
6682         stuff that we've traditionally exposed.
6683
6684         * gdk/**.c: Use gdkinternals.h where appropriate.
6685
6686         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
6687         not include gdkprivate-x11.h, move all stuff of conceivable public
6688         interest into gdkx.h; keep all really private stuff in
6689         uninstalled header gdkprivate-x11.h.
6690
6691         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
6692         image->image_put on windows through a new function _gdk_window_draw_image()
6693         to allow us to do backing store for images. (Sort of ugly)
6694
6695         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
6696         contexts locally so that we can offset them properly when drawing 
6697         onto backing pixmaps.
6698
6699         * gdk/gdkinput.h: Reindented
6700
6701         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
6702         pixmap or color for the window, so we can properly initialize
6703         our double-buffer pixmaps, and also so that we temporarily set
6704         a background of None while scrolling.
6705
6706         * gdk/gdkregion.h: Revise region boolean operators to have an
6707         interface that is actually convenient - switch from creating new
6708         regions on every op, to "methods" that modify existing regions
6709         (A = A OP B). 3 argument forms which allow dest == src, would also
6710         be possible, but the current interfaces seem to map nicely
6711         onto what needs to be done. (There is quite a lot of region
6712         code in GDK now.)
6713
6714         * gdk/gdkregion.h: Add constructor from rectangle and a copy
6715         operator.
6716
6717         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
6718         gdkpoly-generic.h: Copy region code from Xlib, switch it over
6719         to 32 bit coordinates, modify it to be mostly GTK+ style
6720         and to have interfaces that match gdkregion.h.
6721
6722         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
6723         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
6724         create a backing pixmap and redirect all drawing to
6725         that backing pixmap until a matching gdk_window_end_paint().
6726
6727         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
6728         Create a special drawable class for GtkWindow's that 
6729         redirects the drawing to the backing pixmap as necessary
6730         and then calls the real operations in _gdk_windowing_window_class.
6731
6732         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
6733         Store invalid region for each window. Generate expose events for invalid
6734         region in an idle. This replaces both the expose compression
6735         and the redrawing queuing in GTK+. It is both more efficient and
6736         simpler than either one individually and far more so then the
6737         combination.
6738
6739         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
6740         Emulate 32 bit coordinates for windows with 16 bit coordinates
6741         by offsetting drawing, guffaw scrolling techniques and
6742         mapping/unmapping child windows as necessary.
6743
6744         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
6745         where, when invalid regions are processed, the region is stored,
6746         and if expose events come in that are detectably duplicate
6747         the processed exposes (by comparison of event serial numbers),
6748         the stored region is subtracted out of those exposes.
6749
6750         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
6751         regions newly exposed when scrolling or resizing windows.
6752         This, combined with forcing processesing of queued invalidated
6753         regions, gives nice flicker-free scrolling.
6754
6755         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
6756         invalidated regions after every scroll.
6757
6758         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
6759         emulation in GDK. Its, for all practical purposes just a
6760         GtkViewport/GtkFixed hybrid now.
6761
6762         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
6763         (16-bit) structures as necessary instead of just casting.
6764
6765         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
6766         in terms of the structures from gdkregion-generic.c, using appropriate
6767         offsets from GDK to X11 coordinates. Cache clip mask and
6768         origin and ts origin locally and only flush to the server
6769         when drawing, to avoid constantly setting and resetting these
6770         values when offsetting GC's for scrolling and backing pixmaps.
6771
6772         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
6773
6774         * gtk/gtkcontainer.c: Call process_all_updates at end
6775         of resizing to reduce flicker. (Avoids having redraw
6776         lag arbitrarily behind resize under some circumstances)
6777
6778         * gtk/gtkentry.c: Remove old backing store code, and simply take
6779         advantage of the new backing store capabilities of GDK.
6780
6781         * gtk/gtkmain.c: Simple implementation of widget backing
6782         store - simply push a paint while handling each expose.
6783         (Should really be configurable widget for widget.)
6784         
6785         * gtk/gtkwidget.c: Remove all the old complicated redraw
6786         code, and simply invalidate the GDK windows from
6787         gdk_window_queue_clear(), etc. (Sigh, so much carefully
6788         debugged complexity ... gone to the winds.)
6789
6790         Remove all the code for suppressing expose events while
6791         resizes are pending; this isn't needed since the invalid
6792         areas won't be processed until after the resizes are
6793         processed, since they are in a lower priority idle.
6794
6795 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
6796
6797         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
6798         and height of dest rectangle for non-intersecting rectangles.
6799
6800 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
6801
6802         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
6803         for GdkRectangle.
6804
6805 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
6806
6807         * gdk/gdk{events,image,private,types,window}.h
6808          gdk/x11/gdkinputprivate.h: Change all coordinates
6809          from int16 to int. Also, Change width and height from
6810          unsigned to signed to avoid all the stupid C 
6811          signedness bugs.
6812
6813 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
6814
6815         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
6816         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
6817         Add some more detailed checking.
6818
6819         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
6820         New function to retrieve the depth of a drawable.
6821
6822         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
6823         field, reorder fields to save memory. 
6824
6825 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
6826
6827         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
6828         of the background image instead of scaling the background down to
6829         a line.
6830
6831         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
6832         which temporarily set slider to wrong size.
6833
6834         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
6835         queue_clear().
6836
6837 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
6838
6839 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
6840
6841         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
6842
6843 2000-03-17  Tor Lillqvist  <tml@iki.fi>
6844
6845         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
6846         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
6847
6848         * gdk/win32/gdkfont-win32.c
6849         * gdk/win32/gdkproperty-win32.c
6850         * gdk/win32/gdkselection-win32.c
6851         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
6852         now declared such.
6853
6854 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
6855
6856         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
6857
6858 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
6859
6860         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
6861         is called without trapping X errors.
6862
6863 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
6864
6865         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
6866         way into the fontset lists.
6867
6868 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
6869
6870         * gtk/gtkthemes.h: add extern "C" scope.
6871
6872 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
6873
6874         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
6875         to make appends to the list constant. (gtk-guy-990901-0.patch)
6876
6877 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
6878
6879         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
6880         for the typename hash table.
6881
6882 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
6883
6884         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
6885         to make sure we never divide by zero. 
6886         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
6887
6888 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
6889
6890         * gtk/gtkfontsel.c: Apply patch from
6891         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
6892         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
6893
6894         Also, some cleanups in atom handling.
6895
6896 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
6897
6898         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
6899         not GtkWidget.
6900
6901 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
6902
6903         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
6904         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
6905         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
6906         more guint wrap-around bugs before going to bed.
6907
6908 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
6909
6910         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
6911         guint wrap arounds in allocation.width.
6912
6913         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
6914         process untill we fit the allocation given.
6915
6916 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
6917
6918         * gtk/gtkwidget.c:
6919         (gtk_widget_unrealize): guard widget access with ref/unref
6920         around signal emission.
6921         (gtk_widget_hide): same here, but also check its destroyed
6922         state before queueing a resize.
6923
6924 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
6925
6926         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
6927         of gtk_default_insensitive_bg as insensitive base color.
6928
6929         * gtk/gtktext.c (gtk_text_style_set): set the background color according
6930         to the widget's state.
6931         (gtk_text_realize): same here.
6932         (gtk_text_state_changed): same here.
6933         (draw_bg_rect): compare background color against base[] from
6934         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
6935
6936 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
6937
6938         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
6939         grabs are active, unless a delete event is send to the toplevel
6940         of the currently grab holding widget.
6941
6942 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
6943
6944         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
6945         debugging g_print's.
6946
6947 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
6948
6949         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
6950         ever make the scrolled-window requisition ever depend on the 
6951         visibility state of the scrollbars for the AUTOMATIC policy. 
6952         This breaks the GTK+ requisition model, and causes loops.
6953
6954 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
6955
6956         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
6957         the default font to avoid problems with XFree86-4.0 where the
6958         default charset is iso10646-1, not iso8859-1.
6959
6960 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
6961
6962         * acinclude.m4
6963         * config.guess
6964         * config.sub
6965         * ltconfig
6966         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
6967
6968         * gtk/Makefile.am: minor cosmetic consistency tweak
6969
6970 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
6971
6972         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
6973         the activate_time to 0, so that we handle a quick
6974         press/release press/release properly and don't suppress
6975         the second release. (Red Hat bug #7545)
6976
6977 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
6978
6979         * gtk/gtkctree.c (row_delete):
6980         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
6981         bugs with destruction notifier, *always* update internal
6982         structures *before* calling user code.
6983
6984 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
6985
6986         A few more fixes for bug #5487, #2051, #2677.
6987         * gtk/gtkclist.c : 
6988         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
6989         not GDK_BUTTON_PRESS.
6990         (resync_selection): resync only if selection_mode is
6991         GTK_SELECTION_EXTENDED
6992         * gtk/gtkctree.c (resync_selection): same here
6993
6994 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
6995
6996         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
6997         gdk_drag_get_selection() and gtk_menu_detach().
6998
6999         [ From Jeroen Ruigrok/Asmodai ]
7000
7001 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
7002
7003         * gtk/gtknotebook.c (gtk_notebook_size_request): 
7004         page->tab_label can be NULL.
7005
7006 2000-01-25  Havoc Pennington  <hp@pobox.com>
7007         
7008         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
7009         arg is boolean
7010
7011         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
7012
7013         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
7014
7015         * gdk/gdkproperty.c (gdk_property_get): return boolean
7016
7017         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
7018
7019         * gdk/gdkim.c (gdk_im_ready): return boolean
7020
7021         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
7022
7023         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
7024         glib clash, should fix glib)
7025
7026         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
7027         (gdk_get_show_events): return gboolean, and canonicalize 
7028         to TRUE/FALSE
7029
7030         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
7031         colormap is private
7032         (gdk_colors_alloc): gboolean whether to be contiguous
7033         (gdk_color_equal): return gboolean since we are a predicate
7034         and not a qsort() (this looks semi-wrong due to glib breakage,
7035         IMO glib should be fixed)
7036         
7037         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
7038         (gdk_get_use_xshm): return gboolean
7039         (gdk_pointer_is_grabbed): return gboolean
7040
7041         * gdk/gdk.h: Change prototypes to match all the above changes,
7042         and re-run egtk-format-protos as required.
7043
7044 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
7045
7046         * gtk/gtkctree.c (resync_selection): 
7047         * gtk/gtkclist.c (resync_selection):
7048
7049         Return immediately if clist->drag_pos < 0. This is a workaround
7050         for the corrupt state that the clist gets into when a
7051         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
7052
7053         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
7054         
7055         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
7056         variable from recent commit.
7057
7058 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
7059
7060         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
7061
7062 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
7063
7064         * gtk/Makefile.am: prefix all autogenerated source that get build in
7065         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
7066         in builddir. since we subsequently cd into srcdir for autogeneration,
7067         the paths have to be stripped from the target file names, thusly we
7068         use $(@F) as target names now.
7069         put a comment about configure.in's --disable-rebuilds option,
7070         which can be used for non-writable source directories, for development
7071         setups though, srcdir has to be *writable*.
7072
7073 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
7074
7075         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
7076           Finish the job of allowing event to be NULL.
7077           (Fixes bug #4283, reported by Chris Blizzard)
7078
7079         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
7080           things so that the cursor appears on screen, properly
7081           take into account INNER_BORDER.
7082           (Fixes bug #4754, reported by Antonio Campos)
7083
7084 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
7085
7086         * gtk/gtknotebook.c (gtk_notebook_map): Don't
7087           show the tab_label unless it itself is visible.
7088
7089           gtk/gtknotebook.c (gtk_notebook_size_request):
7090           Do a better job of making sure that the visibility
7091           of the tab label corresponds to whether it should
7092           be mapped or not.
7093
7094 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
7095
7096         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
7097           Use the requisition, not the allocation, since the
7098           allocation has not necessarily been computed yet.
7099           (Pointed out by Eugene Osintsev)
7100
7101 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
7102
7103         * gtk/gtkstyle.c (gtk_style_new): Dont' set
7104           style/base[GTK_STATE_INSENSITIVE] both to
7105           gtk_default_insensitive_bg!
7106           (Bug #2187, reported by Jonathan Blandford)
7107
7108         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
7109           Add Alt_L, Alt_R to list of invalid accelerators.
7110           (Bug #3736, reported by Vlad Harchev)
7111
7112 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
7113
7114         * gtk/gtkfilesel.c (open_ref_dir): Fix several
7115         bugs which occured after an attempt to open 
7116         invalid home directory left cmpl_state->reference_dir == NULL.
7117
7118          - completion on files in home directory didn't work
7119          - completion on an empty string caused  segfault
7120
7121          (Bug #3678, reported by Steve Ratcliffe)
7122
7123         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
7124         cut and paste error that was causing scales to
7125         be incorrectly positioned.
7126         (Bug #2956,
7127          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
7128
7129 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
7130
7131         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
7132         when checking for dcgettext, if we've found we needed
7133         it for dgettext.
7134 +
7135 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
7136
7137         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
7138         queue_clear on NO_WINDOW widgets during a reparent,
7139         since at that point the window and widget heirarchies
7140         are out of sync. This stops crashing in some cases
7141         (the scrolled window reparent test, for instance), and
7142         _probably_ won't cause drawing errors.
7143
7144         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
7145         test do what it was supposed to do and be robust against
7146         window closings, etc. (Bug #2443)
7147
7148 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
7149
7150         * gtk/gtkentry.c: Fix return values on mouse events.
7151         (Bug #2686, Sky <seb_sky@yahoo.com>)
7152
7153         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
7154         (pointed out by George Lebl)
7155
7156         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
7157         (From Ettore Perazzoli  <ettore@helixcode.com>)
7158  
7159 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
7160
7161         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
7162         clicks between rows or outside calender area correctly.
7163         (Patch from Damon Chaplin)
7164
7165         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
7166         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
7167           Call destroy function when overwriting existing data. 
7168           (Pointed out by Damon Chaplin)
7169
7170 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
7171
7172         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
7173           which was causing problems on various systems with Xmu.
7174           This hasn't been needed for a very long time.
7175           (Fixes #1185 3167)
7176
7177 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
7178
7179         * gdk/gdki18n.h: Include <ctype.h> when defining
7180           gdk_isw* in terms of is* as a fallback.
7181           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
7182
7183 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
7184
7185         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
7186           realize the widget when it is size allocated!
7187           (old, old bug)
7188
7189         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
7190           Removed unused call to gdk_window_get_size() that
7191           showed up when the above was fixed.
7192
7193 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
7194
7195         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
7196           fix up widget->window when the widget is a
7197           NO_WINDOW container widget.
7198
7199 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
7200
7201         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
7202           to account for the fact that feof() does _not_ 
7203           return TRUE on errors, and thus avoid infinite loops
7204           when trying to use gdk_pixmap_create_from_xpm()
7205           on unreadable values.
7206
7207 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
7208
7209         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
7210
7211 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
7212
7213         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
7214           gdk_gc_set_dashes to take gint8 instead of gchar to
7215           make it clearer that it is _not_ a NULL terminated string.
7216
7217         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
7218           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
7219           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
7220           arguments.
7221
7222 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
7223
7224         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
7225         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
7226         background size relative to our allocation, guard against small
7227         allocations, we may have not yet been size allocated.
7228
7229 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
7230
7231         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
7232         not just version == 3. We implement all 3 + most of 4 - 
7233         (we don't support matching text/plain;charset=iso-8859-1
7234         to a dest that expects text/plain). We'll still advertise
7235         3 to be safe, but any client implementing version >= 3
7236         must interoperate with 3.
7237         
7238 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7239
7240         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
7241         background and gc members, add a warning in gtk_tooltips_set_color()
7242         indicating that this function is deprecated.
7243
7244 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
7245
7246         * docs/gtkfaq.sgml: FAQ Update:
7247           - Minor cleanups (Emmanuel, me)
7248           - New questions:
7249                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
7250                 How can I retrieve the text from a GtkMenuItem? (timj)
7251                 How do I validate/limit/filter the input to a GtkEntry? (me)
7252                 Memory does not seem to be released when I free the list
7253                         nodes I've allocated (timj)
7254
7255 2000-03-07  Tor Lillqvist  <tml@iki.fi>
7256
7257         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
7258         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
7259         for which it is no use to call GetLastError onWin9x.
7260         (gdk_other_api_failed) New function, for general error
7261         reporting without calling GetLastError.
7262         (gdk_win32_api_failed) OTOH, this function always calls
7263         GetLastError. (gdk_win32_last_error_string) Remove this function,
7264         GLib has the equivalent now.
7265
7266         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
7267         call them with function name, file name and line number in the
7268         arguments.
7269
7270         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
7271         functions.
7272         
7273         * gtk/gtk.def: Add some missing entry points.
7274
7275         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
7276         gtk_paned_set_gutter_size, which don't exist any longer, as void.
7277         
7278         Fixes by Hans Breuer:
7279
7280         * gdk/makefile.msc: Update for debugging.
7281
7282         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
7283         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
7284         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
7285         in the dash_list.
7286
7287         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
7288         the x11 backend.
7289
7290         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
7291
7292         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
7293
7294 2000-03-04  Tor Lillqvist  <tml@iki.fi>
7295
7296         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
7297         just pixel value of background colour.
7298
7299         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
7300         containing code snippet previously duplicated in a couple of
7301         places.
7302         
7303         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
7304         gdk_colormap_color.
7305
7306         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
7307         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
7308         events for autorepeated Shift, Control and Alt keys. Use
7309         gdk_colormap_color.
7310
7311         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
7312         pointer is inside the window the cursor of which we are setting,
7313         call SetCursor immediately.
7314
7315         * gdk/win32/makefile.cygwin
7316         * gtk/makefile.cygwin: If we don't have the build number stamp
7317         file, use zero.
7318
7319         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
7320         gtk_paned_set_gutter_size as empty.
7321
7322         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
7323         
7324 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
7325
7326         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
7327           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
7328           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
7329           docs/gtk_tut.sgml docs/gtk.texi TODO:
7330
7331           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
7332
7333 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
7334
7335         * gtk/gtkcalendar.c: Implement num_marked_dates,
7336           and don't emit mutiple day_selected signals on
7337           month_prev.
7338
7339 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
7340
7341         * docs/make-todo (lineno): let title and logo be configurable so
7342         that GNOME can use this script too.
7343
7344         * TODO.xml: added logourl and a title
7345
7346 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
7347
7348         * TODO.xml: Added some UI items, and an explanatory
7349         comment at the top of the file.
7350
7351 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
7352
7353         * TODO.xml: some updates, added abunch of new entries.
7354         a note for those fiddeling with this file, when done
7355         with it, invoke:
7356         $ ./docs/make-todo TODO.xml >/dev/null
7357         and correct output errors before comitting changes.
7358
7359 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
7360
7361         * TODO.xml: Added XML-structured TODO file.
7362         * docs/make-todo: python script to turn TODO.xml into
7363           pretty XML output. 
7364
7365 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
7366
7367         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
7368         the function to let it draw the seven dots, instead of the old,
7369         much maligned, method.
7370         (draw_dot): New function to draw a dot.
7371
7372         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
7373         to draw the handle inside the border width as opposed to outside.
7374         Use paint function instead of gdk_draw_point.
7375
7376         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
7377         to draw the handle inside the border width as opposed to outside.
7378         Use paint function instead of gdk_draw_point.
7379
7380         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
7381         Change indenting to be more GTK like.
7382
7383 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
7384
7385         * docs/gtk_tut.sgml: New section on GtkCalendar
7386         * examples/calendar: Update example code
7387
7388 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
7389
7390         * docs/gtkfaq.sgml: FAQ Update
7391
7392 2000-02-19  Anders Carlsson  <andersca@gnu.org>
7393
7394         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
7395         to prevent the scroll event to be propagated upwards.
7396
7397 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
7398
7399         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
7400         OwnerGrabButtonMask from button entries for
7401         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
7402
7403         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
7404         to the event mask (which will result in button/press release
7405         being added to the event mask on Unix) so scrolling works
7406         for layouts in scroll windows.
7407
7408         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
7409
7410         Patch from Anders Carlsson  <andersca@gnu.org> to add
7411         a scroll event.
7412
7413         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
7414         scrolling to the "Test Scrolling" part of testgtk.
7415  
7416         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
7417  
7418         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
7419         it against GDK_SCROLL.
7420  
7421         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
7422         way of mouse wheel scrolling.
7423  
7424         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
7425  
7426         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
7427  
7428         * gtk/gtkmain.c: Removed previous mouse wheel hack.
7429  
7430         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
7431         gdk_event_mask_table.
7432  
7433         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
7434         GdkEventScroll handler.
7435  
7436         * gdk/gdkevents.h: Added GdkEventScroll structure.
7437  
7438 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
7439
7440         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
7441         and Anders Carlsson to change the Paned widgets so that they
7442         can be dragged from anywhere along the length. Also change
7443         the way that this is drawn to make this apparent.
7444
7445         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
7446         from George Lebl to check that option_menu->menu is present
7447         before getting history.
7448
7449 2000-02-14  Tor Lillqvist  <tml@iki.fi>
7450
7451         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
7452         before the assertion for non-NULL segment list.
7453
7454         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
7455         Seems that pattern brushes *must* be 8x8 pixels! At least on my
7456         machine, but it might be display driver dependent. Sigh, so make
7457         sure the stipple is that size. Does Windows suck or what?
7458
7459         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
7460         places.
7461
7462 2000-02-13  Havoc Pennington  <hp@pobox.com>
7463
7464         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
7465         refcount to 1
7466         (gdk_cursor_new): init refcount to 1
7467
7468         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
7469
7470 2000-02-13  Tor Lillqvist  <tml@iki.fi>
7471
7472         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
7473         so that we don't have to do unnecessary settings to the HDC.
7474
7475         * gdk/win32/gdkdrawable-win32.c
7476         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
7477         gdk_gc_predraw.
7478
7479         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
7480         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
7481         GDI paths, call WidenPath to get the outline of the stroken path,
7482         and then fill the outline (with the brush that was built from the
7483         stipple).
7484
7485         * gdk/win32/gdkgc-win32.c: Factor out common code from
7486         _gdk_win32_gc_new and gdk_win32_gc_set_values into
7487         gdk_win32_gc_values_to_win32values. Use correct colour for
7488         SetBkColor() (Until now the code actually used a random colour in
7489         the call to SetBkColor()... but that didn't show up as not many
7490         GDI APIs use the background colour. Pattern (opaque stippled)
7491         brushes do.)
7492
7493         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
7494         gdk_win32_api_failed): New functions for error logging.
7495
7496         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
7497         WIN32_API_FAILED to call them, passing function or file name and
7498         line number.
7499
7500         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
7501
7502         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
7503         GdkColor for foreground and background in GdkGCWin32Data.
7504
7505         * gdk/makefile.cygwin: Link in the resource object separately.
7506
7507         * gdk/win32/rc/gdk.rc
7508         * gtk/gtk.rc (New file)
7509         * gdk/win32/makefile.cygwin
7510         * gtk/makefile.cygwin: Update build number in DLLs automatically,
7511         as in GLib.
7512
7513 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
7514
7515         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
7516         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
7517         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
7518         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
7519         parameters given and cursor->ref_count. coding style fixups.
7520
7521         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
7522         not GtkWidget.
7523         
7524         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
7525         fix up widget macros and add _GET_CLASS() variant.
7526         
7527         * gtk/*.c: some GtkType fixups.
7528
7529 2000-02-09  Tor Lillqvist  <tml@iki.fi>
7530
7531         * gdk/win32/gdkproperty-win32.c
7532         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
7533         were reversed.
7534
7535 2000-02-04  Tor Lillqvist  <tml@iki.fi>
7536
7537         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
7538         g_filename_to_utf8 to convert the font names Windows gives us from
7539         whatever is the default codepage to UTF-8.
7540         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
7541         in the other direction.
7542
7543         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
7544         error in debugging output.
7545
7546 2000-02-02  Tor Lillqvist  <tml@iki.fi>
7547
7548         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
7549         and height parameters to gdk_window_clear_area(). Not minus one.
7550
7551 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
7552
7553         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
7554         checks if the widget passed to gtk_drag_get_data() was not the
7555         dest widget.
7556
7557 2000-02-01  Tor Lillqvist  <tml@iki.fi>
7558
7559         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
7560         g_filename_from_utf8 functions (which were added a moment ago to
7561         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
7562         size buffers.
7563
7564         gtk_file_selection_get_filename returns the filename in the C
7565         runtime encoding. It calls g_filename_from_utf8, but copies the
7566         returned string to a static buffer, which is returned. I think
7567         this is better than returning the result from g_filename_from_utf8
7568         directly, which would mean all apps that use it would have to free
7569         the return value. Or should this function care about this issue at
7570         all? Maybe a new function with clearly defined semantics.
7571
7572         * gtk/gtkfilesel.h: Add comment about
7573         gtk_file_selection_get_filename returning the filename in the C
7574         runtime's encoding.
7575
7576         * README.win32
7577         * gdk/gdk.def
7578         * gdk/makefile.{cygwin,msc}
7579         * gtk/gtk.def: Updates.
7580
7581         * gdk/gdkcursor-win32.c: Initialise refcount.
7582
7583 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
7584
7585         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
7586
7587 2000-01-30  Havoc Pennington  <hp@pobox.com>
7588
7589         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
7590         destroy
7591
7592         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
7593
7594         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
7595         implemented in platform-specific code
7596
7597         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
7598
7599         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
7600         underscore in front
7601
7602         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
7603         put an underscore in front
7604
7605         * gdk/gdkcursor.c: new file, implements
7606         gdk_cursor_ref/gdk_cursor_unref
7607
7608         * gdk/gdkcursor.h: Refcount GdkCursor
7609
7610         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
7611
7612 2000-01-29  Tor Lillqvist  <tml@iki.fi>
7613
7614         * gdk/gdkwindow.h
7615         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
7616
7617 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
7618
7619         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
7620         structures to properly inherit from GtkWidget not GtkBin.
7621
7622 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
7623
7624         * gtk+.spec.in: Added lib/gtk+/include/* to %files
7625         (bug #5178 - Peter Wainright)
7626         
7627         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
7628         so that it will be installed.
7629         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
7630
7631 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
7632
7633         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
7634         for the GtkStyleClass vtable const.
7635
7636         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
7637         take a const string argument like GtkTranslateFunc. This will
7638         require changes in use code.
7639
7640 2000-01-19  Tor Lillqvist  <tml@iki.fi>
7641
7642         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
7643         semantics (to mimic the X11 backend, which just calls XClearArea)
7644         is to check for zero width (and height), and in that case use the
7645         window's width minus x (height minus y). This fixes for instance
7646         some redraw problems with gtkclist, which were easily noticeable
7647         in the gtk file selection widget.
7648
7649         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
7650         windows.
7651
7652 2000-01-13  Tor Lillqvist  <tml@iki.fi>
7653
7654         * configure.in
7655         * gdk/Makefile.am
7656         * gdk/x11/Makefile.am
7657         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
7658         (bug #5177).
7659         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
7660         out later.
7661
7662 2000-01-09  Tor Lillqvist  <tml@iki.fi>
7663
7664         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
7665         WM_MOVE for iconified or invisible windows. This fixes various
7666         problems when minimising windows. Thanks to Bernd Herd.
7667
7668 2000-01-05  Tor Lillqvist  <tml@iki.fi>
7669
7670         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
7671         backend's draw_lines method, not draw_points.
7672
7673 2000-01-02  Tor Lillqvist  <tml@iki.fi>
7674
7675         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
7676         before Owen's reorganisation: Don't have queued_events and
7677         queued_tail statics in this file, but use gdk_queued_events and
7678         gdk_queued_tail. This makes exposure event compression work again.
7679
7680         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
7681         seem to be needed?
7682
7683 1999-12-30  Tor Lillqvist  <tml@iki.fi>
7684
7685         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
7686         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
7687         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
7688         doesn't do anything.
7689
7690         * gdk/gdk.def: Add gdk_xid_table_insert.
7691
7692         * gdk/win32/gdkprivate-win32.h
7693         * gdk/win32/gdkevents-win32.c
7694         * gdk/win32/gdkinput-win32.c
7695         
7696         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
7697         extension_events field in the GdkWindowWin32Data struct. Use only
7698         the extension_events field in GdkWindowPrivate. Previously one was
7699         set, and the other one tested, which broke tablet
7700         functionality. Thanks to Keishi Suenaga for pointing this out.
7701
7702 1999-12-18  Tor Lillqvist  <tml@iki.fi>
7703
7704         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
7705         When handling a single character (text length == 1), don't handle
7706         it as if it was UTF-8.
7707
7708 1999-12-11  Tor Lillqvist  <tml@iki.fi>
7709
7710         * Makefile.am: Distribute README.win32.
7711         
7712         * gdk/Makefile.am
7713         * gdk/win32/Makefile.am: Distribute Win32 files.
7714
7715         * gdk/makefile.msc: New file.
7716
7717         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
7718         after label).
7719
7720         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
7721         gdk_error_code as GDKVAR, as they are referred outside GDK.
7722
7723         * gdk/win32/makefile.msc: Update.
7724
7725         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
7726         tweaks. Check only if at least one of those Unicode subrange bits
7727         we care for is set. If no code page bits are set, guess (wildly)
7728         based on the charset.
7729
7730         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
7731
7732         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
7733         non-NULL.
7734
7735         * gtk/gtkdnd.c
7736         * gtk/gtklayout.c
7737         * gtk/gtkplug.c
7738         * gtk/gtkselection.c
7739         * gtk/gtksocket.c
7740         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
7741         appropriate. There must be a cleaner way to handle this?
7742
7743         * gtk/gtkrc.c: Must include windows.h on Win32.
7744
7745         * gtk/testgtk.c: No need to include gdkx.h.
7746
7747         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
7748
7749 1999-12-07  Tor Lillqvist  <tml@iki.fi>
7750
7751         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
7752         the rbearing is set to the same as the width, but this should be
7753         fixed.
7754
7755 1999-12-06  Tor Lillqvist  <tml@iki.fi>
7756
7757         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
7758         function. If Windows doesn't tell us what Unicode subranges a font
7759         covers, guesstimate based on the codepages it covers. This will
7760         hopefully help those Windows versions or fonts that don't give us
7761         any useful Unicode subrange information with GetTextCharsetInfo.
7762         Call this function in gdk_font_load_internal.
7763
7764         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
7765         minor changes.
7766
7767 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
7768
7769         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
7770         New function, long needed.
7771
7772 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
7773
7774         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
7775         only_if_exists argument of gdk_atom_intern to
7776         bool.
7777
7778 1999-11-25  Tor Lillqvist  <tml@iki.fi>
7779
7780         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
7781         Fix two copy&paste errors.
7782
7783         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
7784         win32 has changed.
7785
7786         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
7787         GdkWin32SingleFont struct.
7788
7789         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
7790         subranges of loaded fonts. Clear font signature first, in case
7791         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
7792         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
7793
7794         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
7795         Unoffset clip region.
7796
7797 1999-11-23  Tor Lillqvist  <tml@iki.fi>
7798
7799         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
7800         event->any.window before calling filter functions.
7801
7802 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
7803
7804         * gtk/gtkgamma.h: Adapt cast macros to standard.
7805
7806 [ Merges from 1.2 ]
7807
7808 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
7809
7810         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
7811         If translation does not include a '/', use entire
7812         translation instead of crashing.
7813
7814 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
7815
7816         * docs/gtk_tut.sgml:
7817         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
7818
7819 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
7820
7821         * gtk/gtkselection.c (gtk_target_list_remove): Use
7822         g_list_remove_link, not g_list_remove.
7823
7824         [ From Geert Bevin <gbevin@thunderstorms.org> ]
7825         
7826 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
7827
7828         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
7829         statement upon unselection (how the heck did that slip in?).
7830
7831 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
7832
7833         * gtk/gtktext.c (gtk_text_freeze): 
7834         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
7835         in frozen state (and aparently crashes). patch provided by Anders
7836         Melchiorsen <and@kampsax.dtu.dk>.
7837
7838 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
7839
7840         * fix insensitive default/focus widget activation,
7841         reported by Matt Goodall <mgg@isotek.co.uk>.
7842
7843         * gtk/gtkwindow.c (gtk_window_key_press_event): 
7844         (gtk_window_activate_default):
7845         (gtk_window_activate_focus):
7846         return handled=FALSE for actiavtion of insensitive default
7847         widgets. return handled=TRUE for activation of insensitive
7848         focus widgets. don't activate in either case.
7849
7850 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
7851
7852         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
7853         and $glib_cflags to match library order and in the
7854         theory that an old version of GLib is more likely to
7855         be in the include directory for X then vice-versa.
7856         (Bug #2776)
7857
7858 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
7859
7860         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
7861         to determine the locale for fontsets, not LC_MESSAGES;
7862         the user may want English messages with a handling
7863         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
7864         will still be broken) (Bug #2891)
7865
7866 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
7867
7868         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
7869
7870 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
7871
7872         * gtk/gtkrc.ko: Changed the Korean default fontset.
7873
7874 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
7875
7876         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
7877         where when scrolling to the left or top double exposes
7878         were done, causing major slowdowns.
7879
7880 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
7881
7882         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
7883         names to lowercase and alphanumeric, before looking
7884         them up.
7885
7886         * gtk/Makefile.am: Install codeset variant gtkrc files
7887         with normalized names.
7888
7889 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
7890
7891         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
7892         popup menus when the menu is already visible, but its parent
7893         is still hidden, (happens after tornoff window got hidden).
7894
7895 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
7896
7897         * gtk/Makefile.am (install-data-local): Fix
7898         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
7899         deleted, causing error messages on install.
7900
7901 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
7902
7903         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
7904         the handle as well, since we now sometimes ignore
7905         exposes on the handle while resizing.
7906
7907 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
7908
7909         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
7910         extra g_free introduced in one of the last one or two 
7911         commits.
7912
7913 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
7914
7915         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
7916         consistent, put each style that a gtkrc.* file creates
7917         in a unique namespace, remove old files before installing.
7918
7919 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
7920
7921         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
7922         gtk_rc_init is called multiple times. (Yes, people who
7923         do that have bugs in their code.)
7924
7925 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
7926
7927         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
7928         Remove it since it's generated by the Makefile anyway
7929
7930 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
7931
7932         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
7933         device->info.axes for core pointer.
7934
7935 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
7936
7937         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
7938         idle_id, to deal with obsolete, broken C libraries.
7939
7940 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
7941
7942         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
7943         allocation->x/y twice!
7944
7945         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
7946         consistent with gtk_vscale_pos_trough().
7947
7948 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
7949
7950         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
7951         be queueing a resize on a toplevel container between
7952         the time we show it and when we map it. So, we need
7953         to test GTK_WIDGET_VISIBLE() for toplevels, and only
7954         use GTK_WIDGET_DRAWABLE() for child windows.
7955
7956 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
7957
7958         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
7959         (fixes bug #2144)
7960
7961 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
7962
7963         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
7964         container DRAWABLE (instead of VISIBLE), so we don't queue
7965         resizes on non-toplevel containers.
7966
7967 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
7968
7969         * gtk/gtkselection.[ch]: Make the data argument
7970         const guchar *.
7971
7972 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
7973
7974         * gtk/gtkwindow.c: Try to behave sensibly if 
7975         the focus widget is the window itself. (Should
7976         we allow this at all?)
7977
7978 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
7979
7980         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
7981         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
7982         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
7983         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
7984         in prototypes and implementations consistent (Tomas Ogren).
7985
7986         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
7987         before the widget is unparented (reported by damon).
7988
7989         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
7990         since we provide unsigned data anyways.
7991
7992 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
7993
7994         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
7995         the call to gtk_tooltips_layout_text() until later.
7996
7997         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
7998         Call gtk_widget_ensure_style() before using the style.
7999
8000 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
8001
8002         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
8003         for old widgets that don't propagate draws to all
8004         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
8005
8006 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
8007
8008         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
8009         for a redraw but just the widget that requested the resize.
8010
8011 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
8012
8013         * gtk/gtkcontainer.c: added new widget level method
8014         gtk_container_set_reallocate_redraws() and a GtkContainer flag
8015         reallocate_redraws : 1 to reflect the setting, exported this through
8016         the argument system as a boolean ::reallocate_redraws.
8017
8018         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
8019         on the widget because the allocation changes, do so as well for
8020         widget->parent if the parent has reallocate_redraws set to TRUE.
8021         with that containers requesting reallocation redraws get automatically
8022         redrawn if their children changed allocation (this unfortunately
8023         affects also other children that didn't change allocation, but we
8024         cannot work around that before 1.3).
8025
8026 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
8027
8028         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
8029         _and_ height are >0 (not _or_).
8030
8031         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
8032         instead of gtk_container_queue_resize(), which is a core gtk internal
8033         function (must have been on crack when i queued that).
8034
8035         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
8036         we can check more reliably if we want to discard expose events.
8037         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
8038         flag.
8039         
8040         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
8041         we simply trust these events. for deciding whether to discard exposes,
8042         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
8043         
8044 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
8045
8046         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
8047         queues of areas that are completely off screen.
8048
8049         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
8050         logic for handleboxes.
8051
8052         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
8053         check on width/height.
8054
8055 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
8056
8057         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
8058         we are fine with using $@ the way we do (if we actually encounter
8059         brokeness with $@ in VPATH builds because of additional path prefixes,
8060         we need to use $(@F) actually).
8061
8062 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
8063
8064         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
8065         short lived bugs, that would allow language bindings to do surgeries
8066         to our guts.
8067
8068 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
8069
8070         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
8071         where comparison was being done against an uninitialized
8072         value causing intermittant results depending on
8073         compiler flags. Also make it clearer that we aren't
8074         ever initializing the child as 0x0 (though this will
8075         be caught in gtk_widget_size_allocate())
8076
8077 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
8078
8079         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
8080         gtk_window_unset_transient_for() call after we do checks
8081         involving the old transient parent.
8082         [ From Lance Capser <lmc@cyberhighway.net> ]
8083
8084 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
8085
8086         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
8087         an empty file.
8088
8089 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
8090
8091         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
8092         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
8093
8094 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
8095
8096         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
8097         `$@' is valid only in the build dir, not after we've done 
8098         `cd $srcdir'.  Also use `test -f' instead of less portable
8099         `test -e'.
8100
8101 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
8102
8103         * gtk/gtktext.c (correct_cache_insert): Rewrite
8104          for simplicity, and hopefully correctness.
8105          (Fixes bug #1322, which was a segfault when
8106           on some insertions with the properties around
8107           the insertion set up just wrong.)
8108
8109         * gtk/gtktext.c (gtk_text_adjustment): When we receive
8110          a "changed" signal, clamp the new value to the adjustment
8111          bounds to avoid segfaulting if someone tries to change
8112          the adjustment to a bogus value. (Bug #1795)
8113
8114 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
8115
8116         * gtk/gtkmain.c: Ignore unexpected destroy notifies
8117         for children, for toplevel windows handle them
8118         like delete_event.
8119
8120         * gtk/gtkplug.c: Add an unrealize handler so that
8121         we unref plug->socket_window when we are done
8122         with it.
8123
8124 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
8125
8126         * gtk/gtktext.c (clear_area): Fix stupid signedness
8127          problem that was causing background to sometimes
8128          be misaligned.
8129
8130 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
8131
8132         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
8133         
8134         * gtk/gtkmenu.c (gtk_menu_position): Make
8135          sure we never position menus with negative x, y,
8136          since gtk_widget_set_uposition() can't handle that.
8137
8138         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
8139          Modify the positioning code a bit so that we always
8140          put the top-left corner onscreen. (This is for
8141          UI reasons, gtk_menu_position() now takes care of
8142          gtk_widet_set_uposition() brokeness.)
8143
8144 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
8145
8146         * gtk/Makefile.am: fixed up things for -jx, x > 1.
8147
8148 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
8149
8150         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
8151           RC style that is passed in. The lack of the ref
8152           before was a bug. If people worked around this
8153           bug, this will introduce a slight memory leak
8154           in their code. The code should typically look like:
8155
8156             rc_style = gtk_rc_style_new ();
8157             [...]
8158             gtk_widget_modify_style (widget, rc_style);
8159             gtk_rc_style_unref (rc_style);
8160
8161         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
8162           the style if it was already set.
8163
8164         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
8165           style if it was set before.
8166
8167 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
8168
8169         * gtk/testgtk.c (main): Add a check to see if we
8170           are being run from the correct directory and
8171           to quit nicely if we are not.
8172
8173         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
8174           static.
8175
8176 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
8177
8178         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
8179
8180         * gtk/gtkwindow.c:
8181         queue resizes unconditionally (gtk_widget_queue_resize will figure
8182         what to do if the window is not realized).
8183         (gtk_window_move_resize): only recenter the window
8184         for GTK_WIN_POS_CENTER_ALWAYS.
8185         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
8186         the same way as GTK_WIN_POS_CENTER.
8187
8188 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
8189
8190         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
8191         with (!(info->last_flags & GDK_HINT_POS)) instead of
8192         (!info->last_flags & GDK_HINT_POS).
8193
8194         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
8195         new_height unconditionally, because we use these values even if
8196         !default_size_changed && !hints_changed.
8197         comented the (default_size_changed || hints_changed) case with
8198         respect to resize rejects from the window manager.
8199
8200         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
8201         in the zvt condition hack, since this includes the window hints, set
8202         the hints after the handling_resize case.
8203
8204         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
8205         window is initially shown with to the geometry.
8206
8207 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
8208
8209         * gtk/gtkwindow.c (gtk_window_move_resize):
8210         s/size_changed/default_size_changed/g so i know what's
8211         really going on (frying brain on smaller flame now).
8212
8213 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
8214
8215         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
8216         we have size_changed upon handling_resize. this is a gross
8217         workaround for the broken zvt widget and should be removed in
8218         1.3 again (search for FIXME).
8219         Owen provided an accurate comment for this:
8220
8221         /* We could be here for two reasons
8222          *  1) We coincidentally got a resize while handling
8223          *     another resize.
8224          *  2) Our computation of size_changed was completely
8225          *     screwed up, probably because one of our children
8226          *     is broken. It's probably a zvt widget.
8227          *
8228          * For 1), we could just go ahead and ask for the
8229          * new size right now, but doing that for 2)
8230          * might well be fighting the user (and can even
8231          * trigger a loop). Since we really don't want to
8232          * do that, we requeue a resize in hopes that
8233          * by the time it gets handled, the child has seen
8234          * the light and is willing to go along with the
8235          * new size. (this happens for the zvt widget, since
8236          * the size_allocate() above will have stored the
8237          * requisition corresponding to the new size in the
8238          * zvt widget)
8239          *
8240          * This doesn't buy us anything for 1), but it shouldn't
8241          * hurt us too badly, since it is what would have
8242          * happened if we had gotten the configure event before
8243          * the new size had been set.
8244          */
8245
8246 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
8247
8248         * gtk/gtkrc.c: deal properly with the fact that RC
8249           style lists may include rc styles more than once.
8250
8251         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
8252           unused static function.
8253
8254         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
8255           stack of directories of RC files currently being
8256           parsed and implicitely add them to pixmap path.
8257           
8258           This fixes a bug where the directory would get
8259           appended then overwritten by pixmap_path declarations.
8260
8261           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
8262
8263         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
8264           theme's exit function. (Patch from Peter Wainwright,
8265           bug #1454)
8266
8267         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
8268           Add a destroy() handler to take care of removing
8269           group for menu item. (Fixes bug #1197)
8270
8271         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
8272           in warning message.
8273
8274 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
8275
8276         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
8277         roundtrip to figure window's width and height, since we know that
8278         anyways from widget->allocation.
8279
8280 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
8281
8282         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
8283           the hints after we request the new size.
8284
8285 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
8286
8287         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
8288           GTK_WIDGET_REALIZED() assertion - we can compute the
8289           hints before we are realized.
8290
8291         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
8292           hint changing so that we have a value of hints_changed
8293           when we decide whether to constrain the window size.
8294
8295         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
8296
8297         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
8298         change back to G_MAXINT.
8299
8300 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
8301
8302         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
8303         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
8304         contain uncluttered values.
8305         (gtk_window_compute_hints): simply assert that window is realized
8306         and that geometry_info is valid, since we rely on this anyways.
8307         (gtk_window_constrain_size): major cleanups to the code.
8308         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
8309         for the base size, instead of the minimums. use 32767 as max width
8310         and height (like in gtkwindow.c) instead of G_MAXINT.
8311
8312 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
8313
8314         * cleaned up the GtkContainer.need_resize flag handling mess, we
8315         only need to force resize requests when we were prematurely
8316         realized, or our widget tree was modified when we were temporarily
8317         hidden. handling these cases directly upon showing the window (i.e.
8318         while the GdkWindow is still unmapped) avoids the need to wait for
8319         a configure event response and therefore makes the GUI more snappier
8320         and avoids blank windows during the roundtrip.
8321
8322         * gtk/gtkwidget.c:
8323         (gtk_widget_hide): 
8324         (gtk_widget_show): don't queue resizes on toplevels, they know how
8325         to deal with matters.
8326
8327         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
8328         flag directly for not visible resize containers and spare us unecessary
8329         signal emissions.
8330
8331         * gtk/gtkwindow.c:
8332         (gtk_window_realize): if we need to enforce premature size allocation,
8333         queue a container resize so we are correctly resized later on.
8334         (gtk_window_init):
8335         (gtk_window_size_request):
8336         don't freak around with the ->need_resize flag,
8337         gtk_container_queue_resize() will care about that.
8338         (gtk_window_show):
8339         handle initial resizing issues here, we can handle matters better in
8340         this place, especially since we know that our GdkWindow is still
8341         unmapped.
8342         (gtk_window_move_resize):
8343         don't care about ->need_resize at all.
8344         handle size changes properly that occoured while we waited for a
8345         configure event.
8346
8347 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
8348
8349         * gtk/gtkwidget.c (gtk_widget_set_uposition):
8350         * gtk/gtkwindow.[hc] (gtk_window_reposition):
8351         Move the hint setting code from gtk_widget_set_uposition
8352         to here; set the hints so that we respect any previously
8353         set geometry hints.
8354
8355         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
8356         change the window hints here or move the window here,
8357         let that happen in gtk_window_move_resize().
8358
8359 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
8360
8361         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
8362         to already queued resizes (and therefore redraws) on a widget, check
8363         its anchestry as well.
8364
8365         * gtk/gtkcontainer.c:
8366         (gtk_container_queue_resize): clear resize widgets for resize
8367         containers before aborting prematurely. this is especially important
8368         for toplevels which may need imemdiate processing or their resize
8369         handler to be queued.
8370         (gtk_container_dequeue_resize_handler): added new internal function for
8371         gtkwindow.c.
8372
8373         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
8374         configure event, take possible changes in window position into account
8375         as well.
8376         if we request a new window size, queue up a resize handler that will
8377         last until the configure event response arrives.
8378         combined the ->need_resize case (initial show) with the general size
8379         (hints) changed case and added even more comments.
8380         if !auto_shrink, only revert to the old allocation if the new size
8381         is smaller than the current allocation.
8382
8383 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
8384
8385         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
8386                            gtk_window_set_geometry_hints
8387                            gtk_window_set_default_size):
8388         When hints are set, queue a resize so that the hints will
8389         be eventually reset on the toplevel.
8390
8391         * gtk/gtkwindow.c (gtk_window_show): Use
8392         gtk_window_compute_default_size(). Clear the need_resize flag
8393         on the initail map so that we don't unnecessarily trigger the
8394         resize code.
8395
8396         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
8397         into separate functions. Compare the hints we are setting
8398         with what we set last time so that we can accurately
8399         tell when we need to reset the hints.
8400
8401         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
8402         function to figure out the size from requisition
8403         and default_size.
8404
8405         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
8406         from fvwm to constrain a size to the geometry hints.
8407
8408         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
8409         to compare two sets of geometry hints.
8410
8411         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
8412         from gtk_window_set_hints(), just compute the hints,
8413         don't set them.
8414
8415         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
8416         code from gtk_window_move_resize() to separate function,
8417         rationalize a bit.
8418
8419 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
8420
8421         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
8422         structure into a new private structure.
8423
8424         * gtkrc.c: Split GtkRcStyle into public/private.
8425         In the private part, add a list of pointers to the
8426         RcStyle lists this RcStyle participates in.
8427
8428         * gtkrc.c: When a RcStyle is free, remove all
8429         lists referencing it from the 
8430         realized_style_ht hash, and free those lists.
8431         
8432         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
8433         gtk_rc_init(), since that adds the default styles
8434         to the list of parsed RC files again.
8435
8436         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
8437         
8438 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
8439
8440         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
8441         checks that ensure that a widget's allocation is at least 1 in width
8442         and height. (GNOME note: this doesn't affect old panel code anymore,
8443         because GtkSocket will request width and height of at least 1 since
8444         Fri Jul 23).
8445
8446         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
8447         allocated yet (happens if the user realizes the window prematurely),
8448         size request and allocate it.
8449         (gtk_window_size_allocate): guard against guint underflows.
8450
8451 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
8452
8453         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
8454         in gtk_built_sources, so gtk.defs gets built prior to all other
8455         sources.
8456
8457 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
8458
8459         * gtk/Makefile.am:
8460         invoke indent on gtkmarshal.*. 
8461         rewrote source generation rules, use COPYING as oldest source tag for
8462         a piggyback rule to generate all sources from (don't touch it ;).
8463         major cleanups, strip spaces on build rules for GNU Make.
8464
8465         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
8466         source and target files from commandline arguments. don't invoke indent.
8467
8468 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
8469
8470         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
8471         notebook after switch to avoid drawing problems.
8472         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
8473         
8474         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
8475         show them instead. 
8476         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
8477
8478 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
8479
8480         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
8481         notebook after switch to avoid drawing problems.
8482         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
8483         
8484         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
8485         show them instead. 
8486         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
8487
8488 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
8489
8490         * gtk/gtkwindow.c:
8491         we use window->need_resize from configure_event now, to indicate that
8492         the gtkwindow should keep its allocation (e.g. because the user resized
8493         the window through window manager handles). resize_count is now reliably
8494         used to figure whether we got the allocation we requested from the
8495         window manager.
8496         configure events get queued as resizes now, the real stuff (size
8497         computation and allocation) now only goes on in gtk_window_move_resize().
8498         GtkWindow's requisition now contains its *real* requisition (like all
8499         other widgets), *not* taking usize into account.
8500         geometry_info->last_{width|height} is now updated from set_hints() only
8501         so it always contains the last hints we set for the window manager.
8502         made some event handlers return TRUE instead of FALSE.
8503         the overall code should be much more straight forward now, and the
8504         significant code portions are accompanied by comments now.
8505         (gtk_window_set_hints):
8506         removed requisition argument and made it
8507         fetch the requisition through gtk_widget_get_child_requisition.
8508         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
8509         does that now.
8510         (gtk_window_show):
8511         ensure that the widget is realized before calling 
8512         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
8513         ensure that we got properly size requested and allocated before
8514         realization.
8515         (gtk_window_configure_event):
8516         ignore plain window moves, or reallocate the widget tree through the
8517         resize queue otherwise.
8518         (gtk_window_move_resize):
8519         mostly rewrote this function to figure window manager hints more
8520         reliably, coalesce window moves and resizes to reduce configure events
8521         and do actuall size allocations.
8522
8523 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
8524
8525         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
8526         that have a resize pending, because a redraw is already queued for them.
8527
8528         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
8529         hack to clear resize_widgets.
8530
8531         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
8532         for resize containers prior to size allocation. (this is also a bit
8533         ugly, but avoids side effects for stopped emissions and is thus more
8534         reliable).
8535         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
8536
8537         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
8538         function from gtk_tooltips_expose, as we connect to ::expose_event
8539         *and* ::draw now.
8540
8541 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
8542
8543         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
8544         checks.
8545         (gtk_target_list_unref): Likewise.
8546
8547         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
8548
8549 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
8550
8551         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
8552         guard against division by zero. (Fixes bug #1339)
8553
8554 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
8555
8556         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
8557         Prevent the trivial leak of information of allowing
8558         word motion when the entry is not visible.
8559
8560 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
8561
8562         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
8563         modality to error dialog as well as confirmation dialogs.
8564         (Bug #1803, reported by Rosanna Wing Sze Yuen)
8565
8566 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
8567
8568         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
8569         tree->view_lines.
8570         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
8571
8572         * gtk/Makefile.am (install-data-local): Solaris apparently
8573         has various troubles with ln -f; use rm first instead.
8574         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
8575
8576 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
8577
8578         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
8579         use `cp' followed by `rm' (the `rm' was already there).
8580
8581 July 30, 1999 Elliot Lee <sopwith@redhat.com>
8582         
8583         * configure.in: Fix autoconf warnings about cross compilation by
8584         trying to provide sane defaults for AC_TRY_RUN.
8585         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
8586         put them into $(srcdir) when generated. Also add a dependency of
8587         gtksignal.h on gtkmarshal.h for -j builds. 
8588         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
8589
8590 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
8591
8592         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
8593         GDK_THREADS_{LEAVE,ENTER} pair.
8594         (From Paul Fisher <pnfisher@redhat.com>)
8595
8596 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
8597
8598         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
8599         width and height are always >0 (owen).
8600
8601 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
8602
8603         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
8604         change that assured that a widget's allocated with and height are
8605         always >1, since this breaks *buggy* panel code. unfortunately this
8606         back-breaks the gimp's color selector.
8607
8608         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
8609         allocation is always >0 in width and height, before sending the
8610         configure event; this is a *gross* hack to get the gimp back to work.
8611         
8612         * marked both cases with TODO-1.3
8613
8614 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
8615
8616         * gtk/gtktext.c: Don't display wrap indicators when
8617         text is not editable and word wrap is on.
8618
8619 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
8620
8621         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
8622         option menus here as they are not derived from menu shell, assure that
8623         the option menu has a menu we can add items to.
8624
8625 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
8626
8627         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
8628         width/height to (gint) before calculations and check against < 0 to
8629         avoid guint wraparounds.
8630
8631 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
8632
8633         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
8634         width and height is never zero. sanity check both dimensions against
8635         32767 and issue a warning if the allocation is greater than that.
8636
8637 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
8638
8639         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
8640         to g_main_pending() as well.
8641
8642 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
8643
8644         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
8645         call to g_main_iteration() - since that will regrab
8646         GTK+ lock to process events.
8647
8648 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
8649
8650         * gtk/gtkwindow.c
8651         - Regularize with the rest of GTK+ by making widget->requisition
8652           not reflect the set_usize()
8653         - Always recompute geometry hints, then check if they
8654           changed before sending them to the X server. The
8655           previous checks for changes would fail in a number
8656           of circumstances. 
8657
8658 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
8659
8660         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
8661
8662 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
8663
8664         * gtk/gtkdnd.c:
8665         - Code cleanups
8666         - Instantaneously update on modifier key presses
8667         - Allow cancellation of the drag with Escape.
8668
8669 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
8670
8671         * gtk/testgtk.c (create_handle_box): Set the policy
8672         to auto_shrink - otherwise the appearance is rather
8673         strange when flipping between horizontal and vertical.
8674
8675 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
8676
8677         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
8678         (gtk_window_set_default_size): don't change a value if it's < 0.
8679         queue a resize.
8680
8681 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
8682
8683         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
8684
8685 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
8686
8687         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
8688         add an extra "/" when concating "/" + filename.
8689         (From Matt Grossman <mattg@oz.net>)
8690
8691 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
8692
8693         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
8694         for fg_gc if we set it for drawing pixmap.
8695
8696 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
8697
8698         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
8699         
8700         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
8701         already set, call old engine's destroy function and
8702         unref the old engine.
8703
8704 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
8705
8706         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
8707
8708 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
8709
8710         * gtk/gtkaccelgroup.h: mark certain functions as internal.
8711
8712 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
8713
8714         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
8715         expand behaviour changed.
8716
8717         * gtk/gtklabel.c (gtk_label_set_pattern):
8718         (gtk_label_set_justify):
8719         (gtk_label_set_line_wrap):
8720         don't bother invoking queue_clear, the reallocation does
8721         that for us, always free_words so the upcoming resize will
8722         relayout the label's contents.
8723
8724 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
8725
8726         * applied argument implementation patches from Elena Devdariani
8727         <elena@cogent.ca>.
8728
8729         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
8730         ::space_style, ::relief
8731         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
8732         * gtk/gtkpreview.c: ::expand
8733         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
8734         * gtk/gtknotebook.c: ::homogeneous
8735         * gtk/gtklabel.c: ::wrap
8736         * gtk/gtklist.c: ::selection_mode
8737         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
8738         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
8739         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
8740         * gtk/gtkclist.c: ::sort_type
8741         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
8742         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
8743
8744 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
8745
8746         * gtk/gtkstyle.c: Removed ill-thought-out part of last
8747         comment.
8748
8749 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
8750
8751         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
8752         counting right when we have to attach a new style
8753         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
8754
8755         * gtk/gtkstyle.c: Documented the refcounting
8756         peculularities of gtk_style_attach.
8757
8758 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
8759
8760         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
8761         window types.
8762
8763         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
8764         of GTK_TOPLEVEL for creating the window.
8765
8766 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
8767
8768         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
8769         the last argument (reported by Per Winkvist).
8770         
8771 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
8772
8773         Fixes for invisible XOR lines (Frank Loemker
8774         <floemker@TechFak.Uni-Bielefeld.DE>)
8775         
8776         * gtk/gtkclist.c (gtk_clist_realize): Always use
8777         a non-zero pixel for GDK_XOR.
8778
8779         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
8780         Use GDK_INVERT instead of GDK_XOR.
8781
8782 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
8783
8784         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
8785         signals if h/voffsets differ from adjustment values.
8786         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
8787
8788 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
8789
8790         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
8791         ::selection-done emissions up to the topmost menu shell.
8792
8793 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
8794
8795         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
8796         the user data on the window before destroying it.
8797
8798         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
8799         unrealize handler to take care of destroying 
8800         notebook->panel properly. 
8801         (Bug #1198 - Morten Welinder <terra@diku.dk>)
8802
8803         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
8804         of g_new and g_realloc to stop memory leak. (Actually,
8805         we could just use g_realloc(), but I'm not 100% sure
8806         that is portable).
8807         (Bug #1196 - Morten Welinder <terra@diku.dk>)
8808
8809 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
8810
8811         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
8812
8813         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
8814         for fontsets.
8815
8816         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
8817         with bin/button confusion.
8818
8819 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
8820
8821         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
8822         and show how preselection of radio items is done.
8823
8824 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
8825
8826         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
8827         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
8828         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
8829         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
8830         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
8831         * gtk/gtktable.c (gtk_table_attach): 
8832         * gtk/gtklist.c (gtk_list_insert_items): 
8833         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
8834         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
8835         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
8836         * gtk/gtkbin.c (gtk_bin_add): 
8837         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
8838         * gtk/gtkfixed.c (gtk_fixed_put): 
8839         * gtk/gtklayout.c (gtk_layout_put):
8840         general fixups to container_add logic. always realize child if
8841         child->parent is realized, only map the child and queue a resize
8842         if child and child->parent are both visible.
8843
8844 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
8845
8846         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
8847         instead of gtk_container_foreach to walk and unrealize children, so
8848         composite children get also unrealized.
8849         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
8850         (gtk_widget_map): assert that the widget is visible (basic constrain).
8851         (gtk_widget_real_map): assert that the widget is realized (basic
8852         constrain).
8853
8854 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
8855
8856         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
8857
8858 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
8859
8860         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
8861         file for iso-8859-2 locales.
8862
8863         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
8864
8865 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
8866
8867         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
8868          (Pointed out by andy@rz.uni-karlsruhe.de and others).
8869          Remove some suspicious and useless lines. 
8870
8871 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
8872
8873         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
8874         width,height = 0, 0 to mean - here to edge of window,
8875         instead of -1, -1, since the former is all we support.
8876
8877 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
8878
8879         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
8880         when removing from quit_functions list.
8881
8882 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
8883
8884         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
8885
8886 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
8887
8888         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
8889          When redrawing characters on non-visible entry, use appropriate
8890          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
8891
8892 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
8893
8894         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
8895         from drag coordinates.
8896         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
8897         use drag_dest_cell.
8898
8899         * gtk/gtktree (drag_dest_cell)
8900         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
8901         (Bug #1129)
8902
8903 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
8904
8905         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
8906         translate_* fields.
8907         (gtk_item_factory_finalize): invoke translate_notify independant from
8908         translate_data.
8909         (gtk_item_factory_set_translate_func): likewise.
8910         (gtk_item_factory_destroy): only remove ifactory pointer from those
8911         widgets that belong to us (stupid me).
8912
8913 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
8914
8915         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
8916         rc_style list when lookup succeeeds.
8917
8918 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
8919
8920         * gtk/gtkctree.c (resync_selection): 
8921         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
8922         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
8923         bug.
8924
8925 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
8926
8927         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
8928         Add some missing GDK_THREADS_ENTER()/LEAVE around
8929         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
8930
8931 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
8932
8933         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
8934         rather than emit_by_name.
8935
8936         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
8937         on the widget across multiple signal emissions.
8938         (gtk_editable_delete_text): same here.
8939         (gtk_editable_class_init): set widget_class->activate_signal after
8940         editable_signals[ACTIVATE] has been created.
8941
8942 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
8943
8944         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
8945         position here prematurely -- we might not have the
8946         right ->min_position and ->max_position yet.
8947
8948 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
8949
8950         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
8951         Add error traps so if the other end of the connection
8952         dies, we survive.
8953
8954         * gtk/gtkselection.c (gtk_selection_notify): Clean
8955         up properly when selection property retrieval fails.
8956         
8957         * gtk/gtkselection.c (gtk_selection_request): Correctly
8958         reject SelectionRequest notifies where the handler
8959         returns no data.
8960
8961 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
8962
8963         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
8964         when we've previously highlighted.
8965
8966         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
8967         emit two "drag_leave" signals for Motif drops.
8968
8969         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
8970         back the correct status messages when dropping from
8971         Motif onto a proxy window that is rejecting the
8972         drop.
8973
8974 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
8975
8976         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
8977         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
8978         to compare two argument values. added gtk_arg_to_valueloc() to set a
8979         variable from an arg through its location (pointer).
8980
8981         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
8982         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
8983         as gfloat*, uchars are collected as guchar*, ints are collected as
8984         gint*, etc...
8985
8986 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
8987
8988         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
8989         Include <string.h> instead of <strings.h>.
8990
8991         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
8992         (actually, a lot more duplicate includes occur if
8993          you trace through the sequence of #include's)
8994         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
8995         
8996 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
8997
8998         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
8999         gtk-a-higuti-990322-[0-3]
9000
9001         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
9002         that was causing -DX_LOCALE not to work.
9003
9004         * gtk/gtkrc.c (gtk_rc_init):
9005         X_LOCALE will never have LC_MESSAGES defined
9006
9007 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
9008
9009         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
9010         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
9011
9012         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
9013         left/right as well (gtk-michael-980726-0.patch.gz).
9014
9015         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
9016         for pointer values, use gchar instead of char. fixed uline allocation
9017         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
9018         chunks instead of G_ALLOC_ONLY.
9019         (gtk_label_size_request): always alter requisition as passed and leave
9020         widget->requisition alone.
9021         (gtk_label_set_text): allow NULL strings.
9022         (gtk_label_new): likewise.
9023
9024 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
9025
9026         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
9027
9028 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
9029
9030         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
9031         *and* mapped (i.e. drawable).
9032         (gtk_bin_expose): only send exposes to drawable children.
9033
9034         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
9035         (gtk_box_expose): only send exposes to drawable children.
9036
9037         * gtk/gtkhscale.c (gtk_hscale_draw): 
9038         * gtk/gtkvscale.c (gtk_vscale_draw):
9039         hm, this is an ugly one. we first compute the size of our trough area
9040         here (window relative) and then check intersection with the draw_area
9041         which is parent relative because we're a NO_WINDOW widget, so we need
9042         to offset the trough area by allocation.x and allocation.y before the
9043         check. (this must not be done for the background area though, since
9044         that's already computed parent relative).
9045
9046 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
9047
9048         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
9049         unrealize title buttons.
9050
9051 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
9052
9053         * gtk/gtkclist.c (gtk_clist_column_title_passive)
9054         (gtk_clist_column_title_active): 
9055         only connect/disconnect to GtkWidgetClass::event to block mouse events.
9056
9057         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
9058         zero initialize event, removed superfluous gdk_window_get_pointer call
9059
9060         * gtk/gtklist.c (gtk_list_vertical_timeout)
9061         (gtk_list_horizontal_timeout): removed superfluous
9062         gdk_window_get_pointer call
9063
9064 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
9065
9066         * plugging problems reported by "Bruce Mitchener, Jr."
9067         <bruce@puremagic.com> due to a purify session.
9068
9069         * gtk/gtkstyle.c:
9070         (gtk_style_ref): 
9071         (gtk_style_unref): assert ref_count to be > 0.
9072
9073         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
9074         the requisition.
9075         (gtk_clist_set_shift): likewise.
9076
9077         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
9078         adjustments.
9079
9080         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
9081         event before sending it and set send_event to TRUE (which needs to
9082         be done for *all* synthesized events).
9083         (gtk_list_vertical_timeout): likewise.
9084
9085         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
9086         leaks.
9087
9088         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
9089         to TRUE when synthesizing events.
9090
9091 [ *** end of merges from 1.2 *** ]      
9092         
9093 1999-11-21  Tor Lillqvist  <tml@iki.fi>
9094
9095         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
9096         (or copied from gdkconfig.h.win32 on Win32, sigh).
9097
9098         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
9099
9100         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
9101
9102         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
9103
9104         * gdk/gdkconfig.h.win32: New file.
9105
9106         * gdk/win32/makefile.cygwin: Build just a static archive here.
9107
9108         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
9109         for the DLL from the static archive built above.
9110
9111         * gdk/gdk.def: Moved here from the win32 subdirectory.
9112
9113         * gdk/win32/*: Adapt for the changed private struct organisation.
9114
9115         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
9116
9117 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
9118
9119         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
9120         for wheel mice (buttons 4 and 5).
9121
9122 1999-11-18  Tor Lillqvist  <tml@iki.fi>
9123
9124         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
9125         drawables use just the pixel field in the foreground and
9126         background GdkColor of the GdkGC.
9127
9128         gdk_gc_set_{fore,back}ground() are called in the GIMP with
9129         GdkColors containing uninitialized (red,green,blue) fields, and
9130         just the pixel field filled in, and furthermore in the
9131         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
9132         It thus turns out that we really don't need to have the full
9133         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
9134         it later to have just the pixel values.
9135
9136 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9137
9138         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
9139
9140 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
9141
9142         * docs/gtkfaq.sgml: threads example from Erik Mouw.
9143         New question on GtkLabel background colors.
9144
9145         * docs/gtk_tut.sgml:
9146           - Correct the example code callback
9147             function definitions.
9148           - Update the gtkdial example code, from Frans van Schaik.
9149           - Update setselection.c to current API.
9150
9151         * examples/Makefile examples/*/*.c: Update to code
9152         listed in tutorial.
9153
9154 1999-11-10  Tor Lillqvist  <tml@iki.fi>
9155
9156         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
9157         subrange table (from the "Developing International Software for
9158         WIndows 95 and Windows NT" book) was missing the Hangul syllable
9159         block... Get the loaded font's charset correctly.
9160
9161         (Note that this, and the other *-win32.c files, still really are
9162         the old ones, the win32 subdirectory is not ready for compilation
9163         yet after the reorg.)
9164
9165 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
9166
9167         * gtk/gtkclist.c: Fix off-by-one bug in parameter
9168         check.
9169
9170 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
9171
9172         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
9173         on results of XQueryDeviceState().
9174
9175 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
9176
9177         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
9178         we need to accesss only ->children. We need an accessor
9179         for the children.
9180
9181         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
9182         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
9183         to get rid of gdkx.h include.
9184         
9185         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
9186         and random references to 'None'.
9187
9188         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
9189         Get rid of unused #include <gdk/gdkx.h>
9190
9191         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
9192         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
9193         gdkconfig.h.
9194
9195 1999-11-08  Tor Lillqvist  <tml@iki.fi>
9196
9197         * gdk/win32/gdkdraw.c
9198         * gdk/win32/gdkfont.c
9199         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
9200         following yesterday's changes. (Unrelated to Owen's reorg.)
9201
9202 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
9203
9204         * gdk/x11/gdkinput-gxi.c: Add missing include,
9205           fix GdkWindowPrivate => GdkDrawablePrivate.
9206
9207         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
9208
9209         * gdk/x11/Makefile.am (xinput_sources): Add missing
9210         backslash to fix building with --with-xinput=none
9211
9212 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
9213
9214         Move all X specific code into the x11/ directory.
9215         Aside from shuffling things around, did the following:
9216
9217        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
9218          gdk_arg_context_* - a simple argument parsing system
9219          in the style of popt.
9220
9221        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
9222          gdk/x11/gdkprivate-x11.h:
9223          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
9224          add ->klass and ->klass_data fields. The klass_data
9225          field points to an auxilliary structure that is
9226          windowing system dependent.
9227
9228        * gdk/gdkfont.c: Make most of the measurement functions
9229          simply wrappers around gdk_text_extents().
9230
9231        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
9232          _gdk_font_strlen() function that hides the weird
9233          behavior in gtk+-1.[02] where a string is interpreted
9234          differently for 8-bit and 16-bit fonts.
9235
9236        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
9237          to store common code for synthesizing double/triple
9238          press events.
9239         
9240        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
9241          Make all the function that modify an existing GC
9242          simply wrappers around gdk_gc_set_values().
9243          
9244        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
9245          for throwing out later.
9246
9247        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
9248          GdkImagePrivate and GdkColormapPrivate to have a
9249          windowing system dependent part (GdkFontPrivateX etc.)
9250          that "derives" from the system-independent part.
9251
9252        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
9253          Got rid of the included-source-files for XInput in
9254          favor of automake conditionals. (Which didn't exist
9255          when XInput support was originally added.)
9256
9257        * gdk/gdkrgb.c: Remove the visual id from the debugging
9258          statements since that is X11 specific; print out
9259          type/depth info instead.
9260          
9261
9262 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
9263
9264         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
9265         loading duplicates of hashed fonts.
9266
9267         * gdk/gdk.c (gdk_keysym_convert_case): rename
9268         gdk_XConvertCase to gdk_keysym_convert_case, allow
9269         results to be NULL in the GTK+ style.
9270
9271         * gdk/gdkcompat.h: Started compatibility header
9272         for renames.
9273
9274 1999-11-07  Tor Lillqvist  <tml@iki.fi>
9275
9276         * gdk/win32/gdkprivate.h: New font private structures, related to
9277         fontsets.
9278
9279         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
9280         gdk_font_list_free(). On X11, will just be wrappers to
9281         XListFonts() and XFreeFontNames(). On Win32, the code previously
9282         in gtkfontsel.c is now here.
9283
9284         New function gdk_font_xlfd_create(). On X11 will get the FONT
9285         property of the font (for GDK_FONT_FONTs), or call
9286         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
9287         builds a XLFD style name from the font information in the LOGFONT
9288         struct(s).
9289
9290         New function gdk_font_xlfd_free(), which correspondingly frees the
9291         string returned by gdk_font_xlfd_create().
9292
9293         Implement fontsets on Win32. Add a function that iterates over a
9294         wide char string and calls a callback function for each substring
9295         of wide chars from the same Unicode subrange (and thus probably
9296         available in the same real font).
9297
9298         Improve the XLFD emulation a bit.
9299
9300         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
9301
9302         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
9303         Beta3, WM_IME_CHAR messages don't seem to contain the composed
9304         multi-byte char as with the Active IMM on Win9x. Oh well, handle
9305         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
9306         ImmGetCompositionStringW() to get the composed Unicode chars.
9307
9308         * gdk/win32/gdkgc.c
9309         * gdk/win32/gdkdraw.c: Changes needed because of the font private
9310         struct changes.
9311
9312         * gdk/win32/gdk.def: Add the new functions.
9313
9314 1999-11-04  Tor Lillqvist  <tml@iki.fi>
9315
9316         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
9317         get the Platform SDK to get <dimm.h>.
9318
9319         * gdk/win32/gdkevents.c: More event handling fixes and
9320         simplification. Never generate motion events with is_hint true. We
9321         used to do that on bogus grounds earlier. Windows sends
9322         WM_MOUSEMOVE messages on button events even if the mouse hasn't
9323         moved, ignore these.
9324
9325         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
9326
9327         * gdk/win32/gdkglobals.c
9328         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
9329         the TrackMouseEvent function, and use it.
9330
9331         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
9332         char before calling WideCharToMultiByte in order to get a string
9333         for the window title.
9334
9335         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
9336
9337         * gdk/win32/gdk.def: Remove obsolete functions.
9338
9339         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
9340         /nodefaultlib and /defaultlib switches.
9341
9342         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
9343
9344 1999-10-31  Tor Lillqvist  <tml@iki.fi>
9345
9346         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
9347         EuroSign).
9348
9349         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
9350         same type as GdkWChar, especially on Win32.
9351
9352         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
9353
9354         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
9355         before passing to Windows GDI for drawing etc. Convert to the
9356         system default codepage before passing to Windows as window
9357         titles.
9358
9359         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
9360         support changing input locale on the fly.
9361
9362         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
9363         on-the-fly changes. Convert incoming characters from the current
9364         codepage to Unicode (and then to a UTF-8 multi-byte string) based
9365         on the current input language. Use keysym<->Unicode mapping tables
9366         and functions borrowed from xterm sources.
9367
9368         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
9369         editions of Win9x, use the ActiveX-based Active IMM (Input Method
9370         Manager) if available. IMEs and the Active IMM are available under
9371         the disguise of Chinese, Korean and Japanese support for IE and
9372         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
9373         support is present in all editions (as long as you install it).
9374
9375         Call DispatchMessage from gdk_events_queue() (and thus
9376         gdk_WindowProc()), instead of duplicating the code in
9377         gdk_WindowProc().
9378
9379         Reworked the grab handling and propagation code, factored out
9380         duplicated code snippets into separate functions. Other cleanups,
9381         too.
9382
9383         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
9384         the <dimm.h> header describing the Active IMM.
9385
9386         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
9387         just do the same as for "single" fonts.
9388
9389         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
9390         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
9391         the new keysyms from gdkkeysyms.h.
9392
9393         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
9394         fontset, so that gtkentry uses wide characters.
9395
9396         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
9397         GTk+'s system directory "gtk+", not "gtk".
9398
9399 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
9400
9401         * docs/gtkfaq.sgml: FAQ update
9402
9403 1999-10-21  Tor Lillqvist  <tml@iki.fi>
9404
9405         * gdk/win32/gdkprivate.h: Add more font private data.
9406
9407         * gdk/win32/gdkfont.c
9408         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
9409         fonts and strings. Now works much better. You still have to
9410         have a correct font selected, though. No fontset emulation yet.
9411
9412 1999-10-19  Tor Lillqvist  <tml@iki.fi>
9413
9414         * gtk/maketypes.awk: Use G_OS_WIN32.
9415
9416         * gtk/gtk.def: Add some missing entry points. Also some non-public
9417         ones, but PyGTK porter claims to need them.
9418
9419         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
9420         built-in type generation.
9421
9422 1999-10-14  Tor Lillqvist  <tml@iki.fi>
9423
9424         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
9425         GDK_FONT_FONT fonts (which is all we have for now, we don't
9426         emulate fontsets). The X11 version uses plain XDrawString in that
9427         case, too. The string passed to gdk_draw_text_wc seems to be in
9428         fact (at least, when used by gtkentry and gtktext) either in a
9429         single-byte charset, or a DBCS. Not Unicode.
9430
9431         This fixes the problem in gtkfontsel, where even if you had
9432         selected a font with a non-Latin1 charset (windows-greek, for
9433         instance), the preview still used Latin-1 glyphs.
9434
9435         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
9436         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
9437         (gdk_font_load): Recognize the demibold etc weights, even if we
9438         don't have the corresponding constants in the headers.
9439         (gdk_font_hash_insert): Use same hash mechanism as in the X11
9440         version. Should save font resources a bit, when we don't have
9441         multiple HFONTs for the same font.
9442
9443         * gdk/win32/gdkprivate.h: Add the names field as in the X11
9444         version.
9445
9446 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
9447
9448         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
9449         X values
9450
9451 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
9452
9453         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
9454         layout support (as mentioned on
9455         http://www.jcinteractive.com/gnome-ui/software/widgets/)
9456
9457 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
9458
9459         * gtk/fnmatch.c
9460         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
9461
9462 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
9463
9464         * configure.in (ALL_LINGUAS): Added Galician (gl)
9465
9466 1999-10-05  Tor Lillqvist  <tml@iki.fi>
9467
9468         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
9469
9470         * gdk/win32/gdkcompat.c: New file, actually provide an
9471         implementation for the deprecated functions. (Just temporarily.)
9472
9473         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
9474
9475         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
9476
9477         * gdk/win32/gdk.def gtk/gtk.def: Updates.
9478
9479 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
9480
9481         * configure.in: Added "uk" to ALL_LINGUAS.
9482         
9483 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
9484
9485         * configure.in: correct checking for BeOS check
9486
9487         * gdk/gdktypes.h
9488         * gtk/fnmatch.c
9489         * gtk/gtkfilesel.c
9490         * gtk/gtkitemfactory.c
9491         * gtk/gtkmain.[ch]
9492         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
9493
9494 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
9495
9496         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
9497         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
9498         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
9499         by Bulgarian). 
9500
9501 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
9502
9503         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
9504         Fix a reference to window_private->destroyed.   
9505
9506         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
9507         (ugly) setting of an internal GdkWindow member to use
9508         a _slightly_ cleaner macro.
9509
9510         * gdk/gdkprivate.h: Split GdkWindowPrivate into
9511         GdkDrawablePrivate and GdkWindowPrivate.
9512         Add extra macros for accessing GDK_DRAWABLE_ components.
9513
9514         * *.[ch]: Massive adjustments for the above, use the
9515         new macros in a lot of places.
9516
9517 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
9518
9519         * gdk/gdktypes.h: Make GdkDrawable the base type,
9520         not GdkWindow.
9521
9522 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
9523
9524         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
9525
9526 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
9527
9528         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
9529
9530 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
9531
9532         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
9533         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
9534
9535         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
9536
9537         * docs/gtk-config.1: Now autogenerated.
9538         * docs/Changes-1.4.txt: started
9539         
9540 1999-10-03  Tor Lillqvist  <tml@iki.fi>
9541
9542         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
9543         to #ifdef also here.
9544
9545         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
9546         Owen did to the X11 backend.
9547
9548         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
9549         ScrollWindowEx when blitting inside a window, it can't be correct
9550         in the general case.
9551
9552         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
9553         WM_GETMINMAXINFO is easier.
9554
9555         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
9556         depth equal to the bitspixel value, not the visual's depth.
9557
9558         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
9559         to 24 even if the bitspixel value is 32.
9560
9561         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
9562         need to check for depth==32 when bpp==32, depth will always be 24.
9563
9564 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
9565
9566         * docs/Changes-1.4.txt: Started
9567         
9568         * gtk/Makefile.am (gdk_headers): Include all the new headers.
9569
9570         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
9571         
9572         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
9573         into C file.
9574         
9575         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
9576         header to gdkinputprivate.h.
9577
9578         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
9579         unused since before 1.2.
9580
9581 1999-09-30  Tor Lillqvist  <tml@iki.fi>
9582
9583         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
9584         expand possible hex escapes in the font family (put there by
9585         logfont_to_xlfd if the font name isn't a legal XLFD font family,
9586         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
9587         On Win32, add hex escapes here, too.
9588
9589 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
9590
9591         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
9592         to #ifdef GDK_WINDOWING_X11.
9593
9594 [ Merges from gtk-1-2 ]
9595
9596 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
9597
9598         * configure.in: fixed "GNU Make" check to pass with new make version
9599         3.77.95.
9600
9601 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
9602
9603         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
9604         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
9605         AM_PATH_GTK() macros don't get confused by the -pre1.
9606
9607 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
9608
9609         * configure.in (REBUILD): Change check for perl5
9610           to check explicitely for v >= 5.002. (5.001
9611           does not work with our scripts.)
9612
9613 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
9614
9615         * configure.in: evaluate $PERL for the perl version check. added
9616         --disable-rebuilds to give the user an option to completely disable
9617         any source autogeneration rules.
9618
9619 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
9620
9621         * configure.in: evaluate $ac_make when checking for GNU Make.
9622
9623 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
9624
9625         * docs/Makefile.am: added generation.txt.
9626
9627         * Makefile.am: require automake 1.4, build README from README.in and
9628         INSTALL from INSTALL.in in dist-hook.
9629         
9630         * README.in:
9631         * INSTALL.in: new files to autogenerate README and INSTALL from.
9632
9633         * configure.in: figure whether we have GNU Make
9634
9635         * docs/generation.txt: minor additions/corrections.
9636
9637 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
9638
9639         * docs/gtkfaq.sgml: FAQ Update
9640
9641 July 30, 1999 Elliot Lee <sopwith@redhat.com>
9642         
9643         * configure.in: Fix autoconf warnings about cross compilation by
9644         trying to provide sane defaults for AC_TRY_RUN.
9645
9646 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
9647
9648         * ltconfig
9649         * ltmain.sh: upgrade to libtool 1.3.3
9650
9651 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
9652
9653         * INSTALL: Indicate that the --with-glib= configure
9654         time flag is unsupported.
9655
9656 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
9657
9658         * docs/generation.txt: Added a file that gives
9659         documenation about the autogeneration process for
9660         various autogenerated files.
9661         
9662 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
9663
9664         * configure.in (LIBS): Look for libgmodule in the
9665         right location.
9666
9667 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
9668
9669         * docs/gtk_tut.sgml: Removed references to
9670         code examples in my directory on gtk.org as
9671         they should all be in the tutorial now.
9672
9673         * docs/gtk_tut.sgml: Added sources for dial-test
9674         and scribble-xinput programs that were previously
9675         missing.
9676
9677 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
9678
9679         * TODO: Added entry about menu keyboard navigation, removed
9680         some finished items.
9681
9682 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
9683
9684         * acinclude.m4: Standardize on func_dgettext
9685         not func_gettext, so that the checks for dgettext
9686         actually are paid attention to.
9687
9688 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
9689
9690         * configure.in (LIBS): Add $INTLLIBS into $LIBS
9691         directly, rather than repeating the checks for
9692         gettext.
9693
9694         * INSTALL: Added information about gettext and
9695         NLS support.
9696
9697         * acinclude.m4 (LIBM): Check for dgettext, not
9698         just gettext. This should hopefully fix things wrt
9699         systems with old versions of GNU gettext installed.
9700
9701 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
9702
9703         * configure.in (LIBS): Look for libgmodule in the
9704         right location.
9705
9706 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
9707
9708         * autogen.sh: add --enable-maintainer-mode
9709
9710         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
9711
9712 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
9713
9714         * docs/gtk-config.1.in:
9715           docs/Makefile.am:
9716           configure.in: gtk-config is now generated.
9717
9718         * docs/gtk-config.1: Removed, now generated.
9719
9720 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
9721
9722         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
9723         handle CreateNotify itself, still put out a debuging message for
9724         --gdk-debug=events. made the ReparentNotify debugging message more
9725         verbose.
9726         wrap xcoords translation for ConfigureEvents into an error trap,
9727         a destroy event may already be pending, and in that case, the
9728         actuall coordinate values are not at all critical.
9729
9730 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
9731
9732         * gdk/gdkcc.c: Stop leaking the color_hash all over
9733         the place. Simplify and improve the logic.
9734
9735 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
9736
9737         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
9738         for prototypes and function implementations consistent (reported
9739         by Tomas Ogren).
9740
9741 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
9742
9743         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
9744         send_event set in debugging output.
9745         (gdk_compress_exposures): default initialize the event so we don't
9746         operate on bogus values (namely send_event).
9747
9748 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
9749
9750         * gdk/gdkwindow.c: When we receive an unexpected
9751         destroy notify on one of our windows, don't just
9752         warn about it, also mark our windows as destroyed.
9753
9754 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
9755
9756         * gdk/gdkfont.c (gdk_font_hash_insert): Add
9757           name => font and name => fontset hashes. The 
9758           name => fontset hash is a _big_ win since we
9759           weren't previously caching fontsets at all and loading
9760           fontsets is expensive. The name => font hash
9761           is less of a win, but it does save us from doing
9762           repeated XQueryFont calls on the same font.
9763
9764         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
9765           list so we can remove font/fontset from hash.
9766
9767 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
9768
9769         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
9770           and slightly confusing test. [ XInternAtom (,,TRUE)
9771           will never return None ].
9772
9773 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
9774
9775         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
9776           gdk/gdkwindow.c (gdk_window_set_hints):
9777
9778         Don't omit setting the properties if flags == 0 -
9779         there may be an existing set of properties there
9780         already. (Very old bug. Would it be better to
9781         delete the property instead?)
9782
9783         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
9784           spelling error in comment.
9785
9786 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
9787
9788         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
9789           to avoid stomping over gdk_error_warnings.
9790
9791         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
9792           as (bits_per_pixel + 7) / 8. This gives the same
9793           result as before for multiples of 8, but actually
9794           a "reasonable" value for 1bit or 4bit displays.
9795
9796 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
9797
9798         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
9799         GNU Make.
9800
9801 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
9802
9803         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
9804         discarding configure events.
9805
9806 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
9807
9808         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
9809         refcount is greater than zero.
9810
9811         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
9812
9813         * gdk/gdkfont.c (gdk_font_unref): Likewise.
9814
9815         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
9816
9817         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
9818
9819 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
9820
9821         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
9822         that format 32 => sizeof(item) == 4. It really is
9823         sizeof(long).
9824
9825 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
9826
9827         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
9828         core dump at all on X IO errors, only core dump
9829         if --enable-debug for X errors.
9830
9831 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
9832
9833         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
9834         unknown window:" message. disabled ConfigureNotify discarding code,
9835         because it led to events being processed out of order.
9836
9837 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
9838
9839         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
9840
9841         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
9842         we export this function, supress error warnings and don't reset the
9843         error code in the first half of this function.
9844
9845         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
9846         code (instead of just -1) so gdk_error_trap_pop() reveals something
9847         actually informative about the error that happened.
9848
9849         * gdk/*.c:
9850         don't rely on gdk_error_code being -1 if an error occoured, but just
9851         gdk_error_code != 0.
9852
9853 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
9854
9855         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
9856         pointer *before* invoking the filter function, so we at least don't
9857         crash if a filter is removed that is currently executed. window filters
9858         *really* need to be made truely reentrant at some point.
9859
9860 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
9861
9862         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
9863         PropertyNotify debug messages.
9864
9865 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
9866         
9867         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
9868         
9869         * gdk/gdkim.c: Fix cut-and-paste errors for 
9870         x/y and PreeditAttributes/StatusAttributes.
9871
9872 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
9873
9874         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
9875         G_MAXINT to 2^16 to alleviate overflow problems in
9876         various window managers.
9877
9878 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
9879
9880         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
9881         for fontsets.
9882
9883 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
9884
9885         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
9886         Initialize size_hints.x and size_hints.y because kwm
9887         brokenly pays attention to them.
9888         (Bug #1181 -  Lars Heete <hel@admin.de>)
9889
9890 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
9891
9892         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
9893         return value of gdk_list_visuals(). 
9894         (Bug #1193 - Morten Welinder <terra@diku.dk>)
9895
9896 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
9897
9898         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
9899         XSetIMValues to (void *) when comparing to NULL, to workaround
9900         the problem of some compilers barfing since older X headers don't
9901         have the prototype for it.
9902
9903 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
9904
9905         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
9906         for pseudocolor where colormap->colors was double
9907         allocated.
9908
9909         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
9910         color value in the hash table with the pixel filled
9911         in so when we do later hash table lookups, the color
9912         value is correct.
9913         
9914 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
9915
9916         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
9917         making the call
9918
9919 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
9920
9921         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
9922         pointed out by Morten Welinder <terra@diku.dk>.
9923
9924 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
9925
9926         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
9927           default filter from the list
9928
9929 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
9930
9931         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
9932           default filter from the list
9933
9934 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
9935
9936         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
9937
9938         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
9939         g_strdup_printf instead of calcing the length separately
9940
9941 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
9942
9943         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
9944         that we don't do in many other places. (Fixing duplicate 
9945         #include of config.h)
9946
9947         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
9948         Otherwise, #ifndef XINPUT_NONE check in the latter
9949         doesn't work. (Bug #546)
9950
9951 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
9952
9953         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
9954         "None" case insensitive.
9955
9956 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
9957
9958         * gdk/gdkselection.c: 
9959         Add error traps so if the other end of the connection
9960         dies, we survive.
9961
9962 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
9963
9964         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
9965         dest_xid field into two fields - one for the window
9966         to send in messages, one to indicate the last looked
9967         up window for caching purposes. This is needed, so
9968         that Leave messages get the correct window.
9969
9970 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
9971
9972         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
9973         Fix warning created by people mucking around
9974         with the gsource API.
9975
9976         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
9977         Change mapping between GIOCondition and GdkInputCondition
9978         to match the way the Linux kernel does it. This should
9979         fix problems where closed pipes were no longer signalling
9980         GDK_INPUT_READ on systems with a native poll().
9981
9982 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
9983
9984         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
9985         explicitly for the string "None" - it is in the XPM
9986         spec and some servers treat unknown colors in odd ways
9987         (like asking the user!)
9988
9989 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
9990
9991         * gdk/gdkevents.c: made "->" into a "." of previous change so
9992         it compiles
9993
9994 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
9995
9996         * gdk/gdkevents.c (gdk_compress_exposures): Set the
9997         window field of the event structure before calling
9998         user filters.
9999
10000 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
10001
10002         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
10003         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
10004
10005 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
10006
10007         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
10008         intermediate text property - prevents major memory
10009         leak when gdk_use_mb.
10010         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
10011
10012 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
10013
10014         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
10015         gtk-a-higuti-990322-[0-3]
10016
10017         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
10018         sizeof(wchar_t) != sizeof (GdkWChar)
10019
10020         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
10021         that was causing -DX_LOCALE not to work.
10022
10023         * gtk/gtkrc.c (gtk_rc_init):
10024         X_LOCALE will never have LC_MESSAGES defined
10025
10026         * gdk/gdk.c (gdk_init_check):
10027         Remove --xim-preedit and --xim-status from argv properly.
10028
10029         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
10030         that the client window is present on the X server
10031         before we pass it to the input method.
10032
10033 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
10034
10035         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
10036         if --display is specified on the command line, than
10037         the drag window will not be created on that display.
10038         
10039 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
10040
10041         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
10042         lookups with only_if_exists == TRUE were inserting
10043         bogus values into the atom cache.
10044
10045 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
10046
10047         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
10048         then reset it to NULL.
10049
10050         * gdk/gdkcolor.c:
10051         (gdk_colors_free): 
10052         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
10053         key for g_hash_table_remove() in both functions, this prevents us
10054         from accessing possibly uninitialized portions of a GdkColor structure
10055         where we are only interested in its pixel value.
10056
10057 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
10058
10059         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
10060         font hash table, if we have a GdkFontPrivate entry for this font
10061         already, simply increment its reference count, provided by Olaf Dietsche
10062         <olaf.dietsche+list.gtk@netcologne.de>.
10063
10064 1999-09-21  Tor Lillqvist  <tml@iki.fi>
10065
10066         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
10067         just to be sure.
10068
10069         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
10070         unused variables, leftovers from the X11 version.
10071
10072         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
10073
10074         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
10075         downcase fields on X11.
10076
10077 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
10078         
10079         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
10080         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
10081
10082 1999-09-17  Tor Lillqvist  <tml@iki.fi>
10083
10084         * gdk/win32/gdk.def: Add gdk_threads_mutex.
10085
10086         * gtk/makefile.msc: Correct path to libintl.
10087
10088         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
10089         use of gint vs. int, and gint vs. gboolean in headers and
10090         definitions. Use GtkType for the *_get_type functions. Note that
10091         these changes preserve binary compatibility.
10092
10093         * gdk/gdk.c
10094         * gdk/win32/gdk.c
10095         * gdk/gdk.h: Fix inconsistencies: gint vs int.
10096
10097         * gtk/gtkmain.c
10098         * gtk/gtkclist.c
10099         * gtk/gtkmenufactory.c
10100         * gtk/gtknotebook.c
10101         * gtk/gtkwidget.c: Fix inconsistencies, also gint
10102         vs. gboolean.
10103
10104         * gtk/gtkcolorsel.[ch]
10105         * gtk/gtkcombo.[ch]
10106         * gtk/gtkdrawingarea.[ch]
10107         * gtk/gtkgamma.[ch]
10108         * gtk/gtkhandlebox.[ch]
10109         * gtk/gtkhpaned.[ch]
10110         * gtk/gtkhruler.[ch]
10111         * gtk/gtkplug.[ch]
10112         * gtk/gtkpreview.[ch]
10113         * gtk/gtkruler.[ch]
10114         * gtk/gtksocket.[ch]
10115         * gtk/gtkstatusbar.[ch]
10116         * gtk/gtktoolbar.[ch]
10117         * gtk/gtkvbbox.[ch]
10118         * gtk/gtkvpaned.[ch]
10119         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
10120         functions.
10121
10122         * gtk/gtkgamma.h: Fix bug, missing () in call of
10123         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
10124
10125 1999-09-14  Tor Lillqvist  <tml@iki.fi>
10126
10127         * gdk/gdkcolor.c (gdk_colormap_new)
10128         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
10129         colormap->colors was allocated twice.
10130
10131         * gdk/win32/gdk.c: Remove some unused stuff.
10132
10133         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
10134         colormap.
10135
10136         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
10137         * gtk/gtklabel.h (gtk_label_get_type)
10138         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
10139         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
10140         in a couple of places, not guint.
10141
10142 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
10143
10144         * configure.in,po/et.po: added Estonian language file
10145
10146 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
10147
10148         * configure.in,po/da.po: added Danish file
10149
10150 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
10151
10152         * docs/gtkfaq.sgml: Minor FAQ Update
10153
10154 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
10155
10156         * docs/gtkfaq.sgml: FAQ update
10157
10158 1999-08-27  Tor Lillqvist  <tml@iki.fi>
10159
10160         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
10161         way to get window contents continually refreshed while resizing. I
10162         didn't like the effects myself, so it's not on by default.
10163
10164         * gdk/win32/gdkprivate.h: New flag variable
10165         gdk_event_func_from_window_proc, FALSE by default.
10166
10167         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
10168         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
10169         are passed --gdk-event-func-from-window-proc.
10170
10171         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
10172         and we have am event_func, call it instead of enqueing the event.
10173
10174 1999-08-23  Tor Lillqvist  <tml@iki.fi>
10175
10176         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
10177         Kelley: Set expose_count in GdkEventExposes correctly.
10178
10179         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
10180         MULTIPLE_WINDOW_CLASSES).
10181
10182         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
10183         for bug in NT, apparently NT *does* draw the end pixel, too, in
10184         LineTo with a one-pixel pen, so we don't have to do it ourselves.
10185
10186 1999-08-21  Tor Lillqvist  <tml@iki.fi>
10187
10188         Improvements by Hans Breuer: 
10189
10190         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
10191
10192         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
10193         CS_?REDRAW flags as they cause lots of (late) redraws when "show
10194         window contents while dragging" is turned on. Allocate at least
10195         one unique class for every GdkWindowType. If support for single
10196         window-specific icons is ever needed (eg. Dialog specific), every
10197         such window should get its own class.
10198
10199 1999-08-19  Tor Lillqvist  <tml@iki.fi>
10200
10201         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
10202         error that caused crashes.
10203
10204 1999-08-17  Tor Lillqvist  <tml@iki.fi>
10205
10206         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
10207         window, use ScrollWindowEx, and call UpdateWindow. This prevents
10208         bugs when for instance part of the window was outside the
10209         display. Thanks to Philippe Colantoni for finding and fixing this.
10210
10211 1999-08-16  Tor Lillqvist  <tml@iki.fi>
10212
10213         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
10214         endpoint calculations which were totally wrong. (A little RTFMing
10215         helps a lot ;-)
10216
10217         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
10218         from a separate directory, not from gettext, because of licensing
10219         issues (we want to use the LGPL version).
10220
10221         * README.win32: Mention the intl from glibc vs from gettext issue.
10222
10223 1999-08-13  Tor Lillqvist  <tml@iki.fi>
10224
10225         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
10226         in the key event handling: Now AltGr chars work again. Also,
10227         now Alt-digits are passed up as well as Control-digits.
10228         Pass keypad plus and minus as normal plus and minus.
10229
10230 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
10231
10232         * docs/gtkfaq.sgml: FAQ Update
10233
10234 1999-07-25  Tor Lillqvist  <tml@iki.fi>
10235
10236         * README.win32
10237         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
10238         the Wintab SDK.
10239
10240         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
10241         OK, but getting closer. Guard against bogus tilt data from Wacom
10242         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
10243         enable easier building without Wintab.
10244
10245         * gdk/win32/gdkinput.h
10246         * gdk/win32/gdkevents.c 
10247         * gdk/win32/gdkwindow.c: Minor changes related related to above.
10248         
10249         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
10250         code. As we have just one visual on Win32, no sense to have it in a
10251         table, and no need for the hash table.
10252
10253         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
10254         better on white background.
10255
10256 1999-07-21  Tor Lillqvist  <tml@iki.fi>
10257
10258         * README.win32: Update gcc build instructions. Mention gettext is
10259         GPL.
10260
10261         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
10262         supported cursor size with GetSystemMetrics.
10263
10264         * gdk/win32/gdkfont.c
10265         * gtk/gtkfontsel.c: Guard against some font weight and charset
10266         symbols being undefined (in mingw32 headers).
10267
10268         * gdk/win32/makefile.cygwin
10269         * gtk/makefile.cygwin
10270         * gtk/gtkthemes.c: No longer need to have differently named
10271         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
10272
10273 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
10274
10275         * docs/gtkfaq.sgml: Long awaited FAQ update.
10276
10277 1999-07-15  Tor Lillqvist  <tml@iki.fi>
10278
10279         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
10280         it. Obscure bit manipulation needed.
10281
10282         * gdk/win32/gdkevents.c: Logging.
10283         
10284         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
10285         style (file name include compiler name) for theme engines.
10286
10287 1999-07-13  Tor Lillqvist  <tml@iki.fi>
10288
10289         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
10290
10291         * gdk/win32/gdkevents.c: Fix long-standing bug in key
10292         events. The key.string wasn't zero-terminated, still we strdup'ed
10293         it in gdk_event_copy(). Synthesize crossing events for button
10294         events before possible propagation.
10295
10296         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
10297
10298         * gdk/win32/makefile.cygwin
10299         * gtk/makefile.cygwin: Use new DLL naming style for the
10300         GCC-compiled ones.
10301
10302         * gdk/win32/makefile.msc
10303         * gtk/makefile.msc: Cosmetics mostly.
10304
10305         * gtk/gtk.def: Add missing entry points.
10306
10307         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
10308
10309 1999-07-09  Tor Lillqvist  <tml@iki.fi>
10310
10311         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
10312         or height is zero. Don't print a warning if Pie or Arc fails, they
10313         always fail (?) for very narrow ellipses.
10314
10315         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
10316         the part or the destination window corresponding to source area
10317         outside of the source drawable's boundary.
10318
10319         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
10320         anything if less than two points.
10321
10322         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
10323         return NULL. Gtk cut-and-paste inside a single program works
10324         better this way. (It always gets the clipboard contents from
10325         Windows, not from its own copy, which is cleared anyway. I can't
10326         say I fully understand what happens... Emulating the X selection
10327         and property stuff is a bit of a mess.)
10328
10329         * gdk/win32/gdkevents.c
10330         * gdk/win32/gdkproperty.c: A bit more verbose logging.
10331
10332         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
10333         that never got deleted). Revamp gdk_region_shrink.
10334
10335         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
10336         after use.
10337
10338         * gtk/gtk.def: Add some missing entry points.
10339
10340         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
10341         component.
10342
10343 1999-07-04  Tor Lillqvist  <tml@iki.fi>
10344
10345         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
10346         Control-digits specially.
10347
10348 1999-07-03  Tor Lillqvist  <tml@iki.fi>
10349
10350         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
10351
10352 1999-06-28  Tor Lillqvist  <tml@iki.fi>
10353
10354         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
10355         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
10356         finding this.)
10357
10358 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
10359
10360         * gtk+.spec.in: Corrected some typos in files section.
10361         
10362 1999-06-15  Tor Lillqvist  <tml@iki.fi>
10363
10364         * README.win32: Mention using GNU gettext.
10365         * config.h.win32: Enable NLS stuff.
10366         * gtk/makefile.msc: Use GNU gettext.
10367         * gdk/win32/gdkdnd.c: Minor header reorg.
10368         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
10369         cosmetics.
10370         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
10371         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
10372
10373 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
10374
10375         * acinclude.m4
10376         * config.guess
10377         * config.status
10378         * ltconfig
10379         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
10380
10381 1999-05-30  Tor Lillqvist  <tml@iki.fi>
10382
10383         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
10384         SafeAdjustWindowRectEx. Don't override all calls to
10385         AdjustWindowRectEx by it, but use it only in two places: When
10386         creating a new top-level window and when moving a top-level
10387         window.
10388
10389         Use screen coordinate rectangle, not client rectangle, in
10390         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
10391         when we try to place a window so that the decoration (mainly,
10392         title bar) isn't visible.
10393
10394         These changes fix the bug that showed up for instance as the
10395         GIMP's saved top-level windows moving right and down (by an amount
10396         equal to the window decoration) for each session. This bug showed
10397         up also in testgtk's "Saved Position".
10398
10399         gdk_window_resize also redone a bit.
10400
10401 1999-05-25  Tor Lillqvist  <tml@iki.fi>
10402
10403         * gtk/testgtkrc: Add (commented out) Windows-style theme
10404         include line.
10405
10406         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
10407
10408 1999-05-18  Tor Lillqvist  <tml@iki.fi>
10409
10410         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
10411         gdkx.h to a gdk subdirectory, so that applications can include
10412         these with <gdk/*.h> without trouble.
10413
10414         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
10415         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
10416         have their bitmap destroyed.
10417
10418         * gdk/win32/gdk.def: Add gdk_root_parent.
10419
10420 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
10421
10422         * configure.in
10423           gtk-config.in
10424           ltconfig
10425           ltmain.sh     
10426           gtk/Makefile.am: changes to compile nicely (with xlib) 
10427           on BeOS
10428
10429 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
10430
10431         * acinclude.m4
10432         * config.guess
10433         * config.sub
10434         * ltconfig
10435         * ltmain.sh: upgrade to libtool 1.3
10436
10437 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
10438
10439         * gtk/gtkclist.c:
10440         * gtk/gtkctree.c: merges from gtk-1-2
10441
10442 1999-04-25  Tor Lillqvist  <tml@iki.fi>
10443
10444         Support added for building using a GNU toolchain on Win32,
10445         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
10446
10447         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
10448         * config.h.win32: Changes for gcc.
10449         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
10450         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
10451         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
10452         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
10453         Protect shl stuff unavaiilable with mingw32 headers.
10454         * gdk/win32/gdkevents.c: Fix typo.
10455         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
10456         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
10457         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
10458         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
10459         the mingw32 headers.
10460         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
10461         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
10462         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
10463         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
10464         Test for NATIVE_WIN32, not _MSC_VER.
10465         * gtk/gtkmain.c: No use warning about developer version on Win32,
10466         there aren't any non-developer versions anyhow.
10467         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
10468         * gtk/makefile.msc: Use pthread from another directory. Minor other
10469         changes. 
10470
10471 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
10472
10473         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
10474           default filter from the list
10475
10476 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
10477
10478         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
10479          when gtk_widget_grab_default() is called for a widget that
10480          is not within a GtkWindow.
10481
10482 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
10483
10484         * docs/gtk_tut.sgml, examples/clist.c: use a
10485           scrolled window in the clist example. Minor
10486           tutorial fixes.
10487
10488 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
10489
10490         * docs/gtk_tut.sgml: Style check from David King
10491           <dking@youvegotmail.net>
10492
10493 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
10494
10495         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
10496         compile with unknown value of GDK_WINDOWING
10497
10498 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
10499
10500         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
10501         after the rule is fired.
10502         (install-exec-local): Install gdkconfig.h only if the contents are
10503         different from the currently installed gdkconfig.h.
10504
10505 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
10506
10507         * gdk/Makefile.am (configexecincludedir): Rename from 
10508         configincludedir so that gdkconfig.h will be installed 
10509         as part of `make install-exec'. 
10510
10511 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
10512
10513         * acinclude.m4
10514         * config.guess
10515         * config.sub
10516         * ltconfig
10517         * ltmain.sh: upgrade to libtool 1.2f
10518
10519         * autogen.sh: libtool is not required to autogen gtk+
10520
10521         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
10522         needed)
10523
10524 1999-03-18  Tor Lillqvist  <tml@iki.fi>
10525
10526         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
10527         declaring gdk variables exported/imported from the DLL. New image
10528         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
10529         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
10530         GDK_DRAG_PROTO_OLE2.
10531
10532         * gdk/gdk.h: Merge in Win32 version: Two new functions,
10533         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
10534         declared only for the Win32 version, but could be in the X11
10535         version as well. (Needed for a Xlib-less gdk_imlib.)
10536         gdk_color_hash should have only one parameter. Declare
10537         gdk_threads_mutex with GDKVAR.
10538         
10539         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
10540         just one parameter.
10541
10542         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
10543         per pixel, not bits.
10544
10545         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
10546         Fetch bpp (which means bits-per-pixel here) from another place on
10547         Win32. Accept also depth==32 (which we might get on Win32) with
10548         bpp==32.
10549
10550         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
10551         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
10552         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
10553         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
10554         in the backend-dependent directory, not in the common gdk
10555         directory.
10556
10557         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
10558         headers.
10559
10560 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
10561
10562         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
10563         want to use the Gtk+ devel version (which is true, and yes - even i am
10564         currently working with the 1.2.x branch). so everyone reading this, you
10565         probably want to issue
10566         cvs checkout -r glib-1-2 glib
10567         and
10568         cvs checkout -r gtk-1-2 gtk+
10569         as your next two comands.
10570
10571 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
10572
10573         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
10574         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
10575
10576         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
10577         file. strongly deprecated the GTK_HAVE_* macros, we provide
10578         GTK_CHECK_VERSION() for people that need to check for certain
10579         Gtk+ versions.
10580
10581         * gtk/gtkcompat.h: removed this from CVS.
10582         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
10583         idea right from the start, it just didn't seem like that back then.
10584
10585 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
10586
10587         * merges from gtk-1-2:
10588
10589 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
10590
10591         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
10592         item factory class has been created.
10593         (gtk_item_factory_parse_rc): likewise.
10594
10595         * gtk/gtkmenu.c:
10596         keep proper references for old_active_menu_item.
10597         (gtk_menu_reparent): unset the usize of the new parent,
10598         so the menu can sanely be size requested and we don't get nasty screen
10599         artefacts upon next reparentation.
10600         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
10601         enter notify. only synthesize enter notifies if the pointer really is
10602         inside the event window.
10603         (gtk_menu_popdown): use gtk_menu_shell_deselect().
10604         (gtk_menu_popup): move the background setting stuff into
10605         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
10606
10607         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
10608         gtk_menu_shell_select_item() to select the new item.
10609         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
10610         do the right thing for deselection as well.
10611
10612 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
10613
10614         * gtk/gtkwidget.[hc]:
10615         (gtk_widget_accelerators_locked): return whether a widget's accelerators
10616         are locked.
10617
10618         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
10619         existing accelerators if the widget's accelerators are locked.
10620
10621 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
10622
10623         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
10624
10625         * gtk/gtkmenu.c: truely forward key press and key release events to
10626         the menu widget from the toplevel or tearoff window. we can't simply
10627         connect to that, we need to stop further processing of the events as
10628         well.
10629
10630 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
10631
10632         * gtk/gtkmenu.c:
10633         (gtk_menu_key_press): pass event->keyval, event->state to
10634         gtk_accelerator_valid, instead of event->keyval twice.
10635         refuse to install single letter accelerators for menus that use
10636         single letter shortcuts.
10637
10638         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
10639         gtk_menu_ensure_uline_accel_group().
10640
10641         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
10642         which will always return an uline accel group, made
10643         gtk_menu_get_uline_accel_group() return NULL if the group isn't
10644         yet created.
10645
10646 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
10647
10648         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
10649
10650         * gtk/gtkclist.c (gtk_clist_column_title_passive):
10651         Leave button sensitive, trap  button_press, button_release,
10652         motion_notify, enter_notify and leave_notify events instead.
10653         (gtk_clist_column_title_active): disconnect event handler.
10654         (gtk_clist_drag_data_get): fixed memory leak. Reported by
10655         Guillaume Laurent <glaurent@worldnet.fr>
10656
10657 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
10658
10659         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
10660         width/height mixups.
10661
10662         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
10663         if needed.
10664
10665 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
10666
10667         * gtk/testgtk.c (create_item_factory): unref the item factory after
10668         window's destruction.
10669
10670         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
10671         count on the menu shell around the menu item's activation, since the
10672         signal emission may cause menu shell destruction.
10673
10674         * gtk/gtkitemfactory.c:
10675         the previous code leaked one accel group per menu. we use
10676         gtk_menu_get_uline_accel_group() now to fix that, and with that
10677         also create the underline accelerator group of the menus only if
10678         required (i.e. an underline accelerator has been specified).
10679         (gtk_item_factory_construct):
10680         (gtk_item_factory_create_item): removed code that would create an
10681         extra accel group for the menu (and leak references).
10682         (gtk_item_factory_create_item): adapted the underline accelerator
10683         installation code to properly feature gtk_menu_get_uline_accel_group().
10684
10685         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
10686         menu->accel_group, this may return NULL if the accelerator group
10687         hasn't been set yet.
10688         added gtk_menu_get_uline_accel_group() to retrive the underline
10689         accelerator group of the menu, this will be created on demand
10690         and proper care is taken about its reference count.
10691
10692         * gtk/gtkitemfactory.h:
10693         * gtk/gtkitemfactory.c:
10694         dumped the approach of keeping a widgets by action list on the
10695         factory since the factory<->widget destroy negotiation didn't work
10696         and would be hard to get going at all. instead we keep a list of
10697         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
10698         persistant throughout a program's life time).
10699         also, i removed the static const gchar *key_* variables, and made
10700         them inline strings (they weren't actually used anyways).
10701         (gtk_item_factory_add_item): update ifactory->items.
10702         (gtk_item_factory_destroy): destroy ifactory->items (and remove
10703         the item factory pointer from the remaining ifactory widgets).
10704         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
10705         list to find the widget.
10706         (gtk_item_factory_get_item): new function that works around
10707         gtk_item_factory_get_widget() limitations, this function will only
10708         return menu items, even for <Branch> entries.
10709
10710 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
10711
10712         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
10713         font hash table, if we have a GdkFontPrivate entry for this font
10714         already, simply increment its reference count, provided by Olaf Dietsche
10715         <olaf.dietsche+list.gtk@netcologne.de>.
10716
10717         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
10718         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
10719
10720 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
10721
10722         * gtk/gtkcontainer.c:
10723         (gtk_container_add_with_args):
10724         (gtk_container_addv):
10725         (gtk_container_add): before adding a child to a conatiner, make sure
10726         it is (default) constructed, this is neccessary because under certain
10727         circumstances the child will get relized and mapped immediatedly, in
10728         which case it has to be constructed already.
10729
10730 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
10731
10732         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
10733         values > 1 as TRUE also.
10734
10735 1999-03-16  Tor Lillqvist  <tml@iki.fi>
10736
10737         * README.win32: New file.
10738                 
10739         * configure.in: Check for lstat.
10740
10741         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
10742         completeness.
10743
10744         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
10745
10746         * gtk/gtk.def: Removed CRs.
10747
10748         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
10749         ..\gdk\win32).
10750
10751         * gdk/win32/makefile.msc: Correct upwards relative paths.
10752         
10753 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
10754
10755         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
10756           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
10757           it was connecting a void function to expose_event and the int
10758           returning function to the draw signal
10759
10760 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
10761
10762         * configure.in:
10763         Use correct path to libgmodule.la when ref'ing uninstalled copy
10764         of glib.  (Already in stable branch, Bug #417)
10765
10766 1999-03-15  Tor Lillqvist  <tml@iki.fi>
10767
10768         Win32 merge and general portability stuff:
10769                 
10770         * acconfig.h,configure.in: Check for <sys/time.h>.
10771
10772         * gdk/win32: New directory (actually, been there for a while).
10773         
10774         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
10775         NATIVE_WIN32, and use these. Always case fold on Win32. No
10776         backslashed escapes on native Win32.
10777
10778         * gtk/{gtk.def,makefile.msc}: New files.
10779
10780         * gtk/Makefile.am: Add above new files.
10781         
10782         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
10783         instead of <strings.h>.
10784
10785         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
10786         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
10787         <unistd.h> appropriately.
10788
10789         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
10790         Use ABS() (from <glib.h>) instead of abs().
10791         
10792         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
10793         of gtk (and thus glib) headers, so that WIN32 will be
10794         defined. With MS C, include <direct.h> for mkdir prototype.
10795
10796         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
10797         some casts, needed by MS C.
10798
10799         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
10800         implemented).
10801
10802         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
10803         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
10804         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
10805
10806         * gtk/gtkmain.h: Mark variables for export/import on Win32.
10807                 
10808         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
10809         the event is not a hint, or its window is not the slider. Needed
10810         on Win32, at least.
10811
10812         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
10813         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
10814         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
10815         a subdirectory of the Windows directory as gtk system
10816         configuration directory.
10817
10818         * gtk/gtkselection.c: No chunks on Win32.
10819
10820         * gtk/gtksocket.c: Not implemented on Win32.
10821
10822         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
10823
10824         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
10825
10826         * gtk/maketypes.awk: Declare variables with a macro that expands to
10827         necessary export/import magic in the case of Win32.
10828                 
10829         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
10830
10831 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
10832
10833         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
10834         since those were meant only for gdki18n.h.  
10835         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
10836         for widechar tests.
10837         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
10838
10839 1999-03-13  Tor Lillqvist  <tml@iki.fi>
10840
10841         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
10842         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
10843
10844         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
10845         installed) to CFLAGS.
10846
10847         * gdk/Makefile.am: Add rules for gdkconfig.h.
10848
10849         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
10850         APIs.
10851
10852         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
10853         gdkx.h anyway when compiling for X11.
10854         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
10855         general): Merge in Win32 version.
10856         
10857         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
10858         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
10859         expansion (if we don't have HAVE_PWD_H), allow for drive
10860         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
10861         included code from Craig Setera's port to Win32 (the one that uses
10862         X11, and the cygwin dll), even if it probably will be abandoned.
10863
10864         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
10865         the user entered one herself.  This way one can complete *.h and
10866         don't get matches on any .help files, for instance.
10867         
10868 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
10869
10870         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
10871         font hash table, if we have a GdkFontPrivate entry for this font
10872         already, simply increment its reference count, provided by Olaf Dietsche
10873         <olaf.dietsche+list.gtk@netcologne.de>.
10874
10875         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
10876         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
10877
10878 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
10879
10880         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
10881         the number of calls to gdk_draw_point() (and thus to X) by
10882         clipping the points by hand.
10883
10884         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
10885         the clip parameter.
10886         (gtk_handle_box_paint): Only paint the handle if the expose area
10887         intersects it.
10888
10889 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
10890
10891         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
10892
10893 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
10894
10895         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
10896         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
10897
10898 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
10899
10900         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
10901          textmode (O_TEXT) for OS/2 version.
10902
10903 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
10904
10905         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
10906         GtkSpinButton, "input" and "output", to make the output more flexible.
10907         The user has to provide a mapping between adjustment->value and the
10908         output string (and vice versa, if the spin button is editable). 
10909         See testgtk for examples.
10910
10911 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
10912
10913         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
10914         new one.
10915         
10916         * configure.in: set gtk+ version to 1.3.0.