1 Tue Sep 30 21:08:43 2003 Kristian Rietveld <kris@gtk.org>
3 * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
5 * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
8 2003-09-30 Murray Cumming <murrayc@usa.net>
10 * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
11 instead of a GdkWindow*, because that what it is given. The
12 documentation was already correct. This should cause no API/ABI
13 breakage with C compilers.
14 * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c,
15 gtkcellrenderertogger.c: Updated the declarations of the render vfunc
16 implementation accordingly.
18 2003-09-30 Matthias Clasen <maclas@gmx.de>
20 * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
21 "direction-changed" and "keys-changed" signals.
23 * gdk/gdkscreen.c (gdk_screen_class_init): Document the
24 "size-changed" signal.
26 * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init):
27 Document the "display-opened" signal.
29 * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
30 (gdk_display_class_init): Document the "closed" signal.
32 Sat Sep 27 16:02:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
34 * gtk/gtktextview.[ch]: rename property tab_moves_focus to
35 accepts_tab. (#122709 again).
37 2003-09-27 Matthias Clasen <maclas@gmx.de>
39 * gtk/gtkwindow.c (gtk_window_new):
40 * gtk/gtkitemfactory.c (gtk_item_factory_new): Document
41 the fact that the newly created object does not come with
42 a floating reference. (#103068, patch by Frederic Lespez)
44 * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor
45 of GtkUIManager. Just leave GtkTranslateFunc undeprecated,
46 since GtkActionGroup uses it.
48 * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
49 this test uses the soon-to-be-deprecated GtkItemFactory.
51 * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
54 * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c
55 using GtkUIManager instead of GtkItemFactory.
57 * tests/testmerge.c: Demonstrate the use of the
60 * gtk/gtkaction.c (connect_proxy): Add connect-proxy and
61 disconnect-proxy signals to do small customizations
62 like displaying tooltips in the statusbar without
63 custom actions. (#122894, Philip Langdale)
65 * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
67 Fri Sep 26 23:49:44 2003 Kristian Rietveld <kris@gtk.org>
69 Landing the new ComboBox. Note that only gtkcombobox.h and
70 gtkcomboboxentry.h are public.
72 * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
73 gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
75 * gtk/Makefile.am, gtk/gtk.h: adding the new files.
77 * tests/testcombo.c: and a new test.
79 * tests/Makefile.am: adding the new test.
81 2003-09-25 Tor Lillqvist <tml@iki.fi>
83 * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
85 2003-09-21 Tor Lillqvist <tml@iki.fi>
87 * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
88 function. Code split out from gdk_event_translate(). Needed
89 because gdk_event_get_graphics_expose() couldn't do anything
90 sensible otherwise. (Not that I think graphics exposes work anyway
91 in gdk/win32, but at least now the code could work.)
93 (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
94 gdk_event_translate(), which couldn't have worked as it doesn't
95 take any pre-allocated GdkEvent parameter any longer.
97 (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
98 GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
100 2003-09-24 Matthias Clasen <maclas@gmx.de>
102 * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
105 * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
107 * gtk/gtkuimanager.c (update_node): Don't complain about missing
108 actions on popups. Re-set "tooltip" property on toolitems after
109 adding them to parent to trigger proxy update.
111 2003-09-22 Matthias Clasen <maclas@gmx.de>
113 * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
114 group member to test the fix for #122904.
116 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
117 Add the action to the group before activating it, otherwise we
118 may end up with multiple active group members. (#122904, Marco
121 2003-09-21 Matthias Clasen <maclas@gmx.de>
123 Changes to make cross-process merging feasible:
125 * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
126 merged UI definition. Remove the "changed" signal, since its role
127 is now filled by "notify::ui". Instead add a "actions-changed" signal
128 which gets emitted when the set of actions changes.
130 * gtk/gtktoggleactionprivate.h:
131 * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
132 Add a "draw_as_radio" property to toggle actions so that they can be
133 used as proxies for radio actions much like the "draw_as_radio"
134 property on check menu items enables them to operate as proxies for
137 Prevent the "show_all" trap for action-based menus (see
138 http://mail.gnome.org/archives/gtk-devel-list/2003-September/
141 * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
142 calls from static functions.
144 * gtk/gtkuimanager.c (update_node):
145 * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
146 widgets whose visibility is externally controlled.
148 * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
149 "no_show_all" property with setter and getter. When TRUE, it keeps
150 gtk_widget_{hide,show}_all() from modifying the visibility of the
151 widget and its children.
153 Sun Sep 21 23:13:37 2003 Soeren Sandmann <sandmann@daimi.au.dk>
155 * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
157 2003-09-20 Tor Lillqvist <tml@iki.fi>
159 * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
160 including editor backup files. List files we want explicitly.
162 * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
163 calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
164 LC_ALL, LC_CTYPE and LANG environment variables, than calls
167 (gtk_get_default_language): Code snippet moved to above function,
170 * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
171 * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
172 _gtk_get_lc_ctype() instead of setlocale().
174 Fri Sep 19 18:15:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
176 * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
179 Fri Sep 19 13:24:54 2003 Soeren Sandmann <sandmann@daimi.au.dk>
181 * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
182 documentation. (#117306, Steve Chaplin)
184 2003-09-19 Tor Lillqvist <tml@iki.fi>
186 * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
187 present on the US-International keyboard. For clarity, order
188 keysyms in case statement according to numeric value.
190 (gdk_keymap_translate_keyboard_state): Handle Caps Lock
191 correctly. (#120176, Ken Rastatter and Owen Taylor)
193 2003-09-18 Matthias Clasen <maclas@gmx.de>
195 * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
196 unref a closure, not g_object_unref(). (#122637, Marco Pesenti Gritti)
198 Install accelerators on actions, not on proxies, support
199 accelerator-only actions:
201 * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
202 and its lock status either via _gtk_widget_get_accel_path() or by
203 looking at the accel_path stored in the menu item itself and determining
204 its lock status by peeking into the contained accel label. This was
205 already (accidentally) committed a week ago.
207 * gtk/gtkaction.h (gtk_action_set_accel_group):
208 (gtk_action_[dis]connect_accelerator): New functions.
210 * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
211 accel_closure and accel_count. We must have a reference to the
212 accel_group, since we need it in connect_proxy. The count is necessary
213 to ensure that the accelerator isn't removed before the last proxy
214 requesting it has been unmerged.
215 (connect_proxy): Connect the accelerator to the
216 action now, only set the accel_path on the menuitem.
217 (remove_proxy): Disconnect the accelerator from the action, not from
219 (gtk_action_set_accel_group): Set the accel group.
220 (gtk_action_[dis]connect_accelerator): Count the number of times
221 this functions have been called and install/remove the accelerator if
222 the count leaves/reaches zero.
224 * gtk/gtkuimanager.h (GtkUIManagerItemType): Add
225 GTK_UI_MANAGER_ACCELERATOR.
227 * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
228 (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
229 <accelerator> elements.
230 (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
231 type is GTK_UI_MANAGER_ACCELERATOR.
232 (update_node): Set the accel group on actions before creating their
233 proxies. Don't set the accel group on created menus. For
234 NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
235 (print_node): Also emit <accelerator> elements.
237 * tests/testmerge.c (dump_accels): Add a "Dump Accels" button.
239 * gtk/gtkuimanager.c (update_node): Robustness improvements.
241 2003-09-17 Matthias Clasen <maclas@gmx.de>
243 * gtk/gtkuimanager.c (text_handler): Report unexpected character
244 data as error from the GMarkup parser, otherwise things like
245 gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error)
248 Wed Sep 17 02:38:53 2003 Soeren Sandmann <sandmann@daimi.au.dk>
250 * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
251 committed redraw_on_allocate change.
253 Tue Sep 16 10:42:00 2003 Eric Warmenhoven <eric@warmenhoven.org>
255 * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
256 stubs to fix compilation
258 * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
259 when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
261 * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
262 variable. Patch from Marc Welz (#121347).
264 2003-09-16 Matthias Clasen <maclas@gmx.de>
266 * gtk/gtkaction.h: Apply egtk-format-protos.
268 2003-09-15 Matthias Clasen <maclas@gmx.de>
270 * gtk/gtkuimanager.c: Doc tweaks.
272 Smart separators; see
273 http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
275 * gtk/gtkuimanager.c (update_smart_separators): New function which
276 implements "smart" separators by iterating once over the entries of a
277 menu, hiding and showing separators as necessary.
278 (update_node): Mark separators used as fences of placeholders as
279 hidden. Explicitly added separators are marked as smart. Call
280 update_smart_separators after updating a menu or toolbar node.
281 Connect update_smart_separators to "notify::visible" signal on menu
284 * tests/merge-[12].ui: Test smart separators.
286 Changes to allow setting action state before connecting signal; see
287 the thread starting at
288 http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
290 * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
291 (gtk_action_group_add_radio_actions_full): Add value parameter to allow
292 setting the currently selected group member before connecting signals.
293 (GtkToggleActionEntry): Separate struct for constructing toggle actions,
294 including a boolean to initialize the action state before connecting
296 (gtk_action_group_add_toggle_actions):
297 (gtk_action_group_add_toggle_actions_full): New functions to construct
298 toggle actions from an array of GtkToggleActionEntries.
300 * demos/gtk-demo/appwindow.c:
301 * tests/testactions.c:
302 * tests/testmerge.c: Adjust to new action group API.
304 Sun Sep 14 16:59:52 2003 Soeren Sandmann <sandmann@daimi.au.dk>
306 * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow
307 "gtk-toolbar-arrow" so themes can special-case it.
309 Sun Sep 14 16:07:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
311 * gtk/Makefile.am (gtk_c_sources): sort the list of files.
313 Sun Sep 14 15:49:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
315 * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
316 PangoFontMetrics. Patch from Steve Chaplin (#122257).
318 2003-09-14 Tor Lillqvist <tml@iki.fi>
320 * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
321 special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
322 the usefulness of which was already in doubt. Removing it fixes
323 bugs #118575 and #121851.
325 Fri Sep 12 16:32:53 2003 Jonathan Blandford <jrb@redhat.com>
329 * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
330 pressed button (used to determine if we want to initiate a drag later
331 on) if the current grab widget is either NULL or tree_view (Reported
332 by Jeroen Zwartepoorte).
334 2003-09-12 Matthias Clasen <maclas@gmx.de>
336 * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text)
337 (gdk_draw_text_wc): Add deprecation notes. (#121955, Martin Pool)
339 2003-09-11 Matthias Clasen <maclas@gmx.de>
341 * gdk/gdkpango.c: Doc tweaks.
343 * tests/testgtk.c: Add table menu tests.
345 * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the
346 GtkMenuPrivate struct itself. Pointed out by valgrind.
348 * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up
351 Wed Sep 10 22:25:04 2003 Kristian Rietveld <kris@gtk.org>
353 The table menu patch! Turns GtkMenu into a table, so you can attach
354 menu items in numerous new ways! Be creative!
356 Contains some bug fixes and RTL adaptions from Matthias Clasen.
358 * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
359 GtkMenuPrivate, introduce AttachInfo, add child properties enum,
360 (gtk_menu_free_private), (gtk_menu_get_private): we have to free
361 the heights array in the private struct,
362 (gtk_menu_class_init): reorder code a bit, install child properties,
363 (get_attach_info), (get_child_attach): new utility functions,
364 (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
365 child properties, for the attach info,
366 (gtk_menu_remove): remove AttachInfo from menu item,
367 (gtk_menu_real_insert): implemented algorithm to automagically place
368 inserted menu items at the correct place in the table,
369 (gtk_menu_size_request), (gtk_menu_size_allocate),
370 (compute_child_offset): reworked/rewritten to support table menus,
371 (gtk_menu_attach): new function,
372 (find_child_containing), (gtk_menu_move_current): new functions to
373 get table menu keynav right.
375 * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
377 2003-09-10 Matthias Clasen <maclas@gmx.de>
379 * gtk/gtksocket.c (gtk_socket_filter_func): Only remove
380 PropertyNotify events from the stream if they have been handled,
381 in order to enable extending the plug<->socket communication via
384 Wed Sep 10 01:06:44 2003 Kristian Rietveld <kris@gtk.org>
386 Big TreeView DnD fixage, makes drops on empty models work, makes
387 TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
388 Related bugs #95362 and #113314. I don't want to touch this code
391 * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
393 * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
394 for selection_data->length.
396 * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
397 (set_dest_row), (get_dest_row): we don't store just the row ref
398 anymore, but a struct with the row ref and additional info,
399 (set_destination_row): handle drops on empty space and some
401 (get_logical_dest_row): also return path_down_mode/drop_append_mode
402 flags, handle dropping childs on their new parents, rewrite
403 drop append handling into something saner,
404 (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
406 (gtk_tree_view_drag_drop): updates for updated backend,
407 (gtk_tree_view_drag_data_received): updates for updated backend,
408 path down mode (treestore DnD) handling,
409 (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
410 when we are trying to drop a row on an empty model,
411 (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
413 * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
414 (gtk_list_store_row_drop_possible): style and drop-append fixes.
416 * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
418 2003-09-08 Alexander Larsson <alexl@redhat.com>
420 * gtk/gtkeventbox.[hc]:
421 Implement gtk_event_box_get/set_input_only()
424 Tests for the new input only event boxes
426 Mon Sep 8 21:44:20 2003 Kristian Rietveld <kris@gtk.org>
428 Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
430 * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
431 the call to gtk_tree_model_filter_add_root,
432 (gtk_tree_model_filter_row_changed): bail out if c_path is not above
433 the virtual root, allow building levels on the second try to convert
434 the child path to a filter path,
435 (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
436 root when calling gtk_tree_model_filter_elt_get_path.
438 2003-09-07 Matthias Clasen <maclas@gmx.de>
440 * gtk/gtkuimanager.c (update_node): Fix a C99ism. (#121640,
443 Fixes for accelerator handling during (un)merging:
445 * gtk/gtkuimanager.c (update_node): Move setting info-action
446 after the switch, since the old action is needed in some cases.
447 In cases of proxy type mismatch, disconnect the old proxy from
450 * gtk/gtkaction.c (remove_proxy): Renamed from
451 gtk_action_remove_proxy(). Move unsetting of the accelerator
452 here from disconnect_proxy() in order to catch all cases of
454 (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
455 to fail if proxy isn't a proxy of action.
457 2003-09-07 Pablo Saratxaga <pablo@mandrakesoft.com>
459 * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
462 2003-09-07 Matthias Clasen <maclas@gmx.de>
464 * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
467 2003-09-06 Matthias Clasen <maclas@gmx.de>
469 * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from
470 prev_action, not from action. (Fix by David Hampton)
472 Fri Sep 5 14:15:10 2003 Owen Taylor <otaylor@redhat.com>
474 * Back out locale-dependent interpretation of
475 KP_Decimal, the official XFree86 interpretation
476 is that KP_Decimal => . KP_Separator => ,
477 always, independent of locale.
478 (#105161, Frederic Crozat,
479 http://bugs.xfree86.org/show_bug.cgi?id=534)
481 2003-09-04 Matthias Clasen <maclas@gmx.de>
483 * tests/testmerge.c: Test buttons and toggle buttons as proxies.
485 * gtk/gtktoggleaction.c (connect_proxy):
486 (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note
487 that a "draw_as_radio" property is needed for check buttons similar to
488 check menu items, in order to fully support button proxies for radio actions.
490 * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
492 * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui().
494 * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
495 'type' argument of gtk_ui_manager_add_ui().
497 * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
498 to make this function as powerful as the XML methods of adding UI. (#120647)
500 Thu Sep 4 19:11:23 2003 Kristian Rietveld <kris@gtk.org>
504 * docs/RELEASE-HOWTO: updates.
506 2003-09-04 Matthias Clasen <maclas@gmx.de>
508 * tests/merge-2.ui: Use "position" instead of "pos".
510 * gtk/gtkuimanager.c (start_element_handler): No need
511 to be terse: Change the name of the "pos" attribute
514 2003-09-04 Matthias Clasen <maclas@gmx.de>
516 * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and
517 GtkUIManagerNode to shorten the names and to make the
518 GTK_UI_MANAGER_<TYPE> names available for a public enum.
520 * gtk/gtkactiongroup.c:
521 * gtk/gtkuimanager.c: Various doc tweaks.
523 * gtk/gtkuimanager.c (start_element_handler):
524 (end_element_handler): Improve error reporting.
526 Wed Sep 3 23:18:17 2003 Kristian Rietveld <kris@gtk.org>
530 * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
531 use end_position - page_size instead of G_MAXINT, since
532 gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
533 reported by Havoc Pennington).
535 Wed Sep 3 21:58:03 2003 Kristian Rietveld <kris@gtk.org>
539 * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
540 unref it. (Fixes memleak, patch from Kjartan Maraas).
542 Wed Sep 3 21:38:26 2003 Kristian Rietveld <kris@gtk.org>
544 * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
545 gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
546 gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
547 gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
548 gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
549 gtk/gtktypeutils.h: big patch from Kjartan Maraas
550 to fix numerous typos.
552 Wed Sep 3 17:38:01 BST 2003 Tony Gale <gale@gtk.org>
554 * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
556 2003-09-02 Tor Lillqvist <tml@iki.fi>
558 * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
559 CloseHandle() on the HMODULE returned from GetModuleHandle().
560 Didn't cause any harm, but didn't do anything useful either. When
561 running a GTK+ program under MS's debugger, the CloseHandle() call
562 would cause a "first-chance exception" in ntdll.dll to show up.
563 (The exception is caught appropriately if you let it proceed, but
564 it confuses the person using the debugger). Thanks to Bruce
565 Hochstetler for noticing.
567 Tue Sep 2 21:01:19 2003 Kristian Rietveld <kris@gtk.org>
571 * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
572 to only select when button 1 is pressed introduced in the fix of
575 2003-09-02 Matthias Clasen <maclas@gmx.de>
577 * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
579 * gtk/gtkuimanager.c: Shorten the names of some static
582 Support adding and removing merge nodes dynamically (#120647,
585 * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed
586 gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id
588 (gtk_ui_manager_add_ui): New function to add UI elements
589 without juggling XML fragments, currently restricted to menuitems,
590 toolitems and separators. Actions still come from registered
593 Mon Sep 1 19:39:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
595 * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
596 background pixmap was being offset twice, once by the ts_origin in
597 gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
599 2003-09-01 Matthias Clasen <maclas@gmx.de>
601 * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
602 this public again, since it's occasionally useful. (#121128,
603 Marco Pesenti Gritti)
605 * gtk/gtkaction.c: Add an "is_important" property and propagate
606 it to toolitem proxies. (#121058, Marco Pesenti Gritti)
608 Mon Sep 1 00:32:30 2003 Soeren Sandmann <sandmann@daimi.au.dk>
610 * tests/testtoolbar.c (main): connect to "delete_event" so the
611 application will actually quit when you close the window
613 2003-09-01 Matthias Clasen <maclas@gmx.de>
615 * gtk/gtkuimanager.c (gtk_ui_manager_get_widget)
616 (gtk_ui_manager_get_action): g_return_if_fail() if
618 (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
619 (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125,
620 Marco Pesenti Gritti)
622 2003-08-31 Matthias Clasen <maclas@gmx.de>
624 * gtk/gtktoolitem.c: Fix some typos in docs.
626 * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
627 replaces gtk_ui_manager_activate(). (#120658)
629 * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
630 gtk_ui_manager_activate().
633 * gtk/gtkactiongroup.c: Some doc tweaks.
635 * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
636 wasn't emitted anyway. Some doc tweaks.
638 2003-08-30 Matthias Clasen <maclas@gmx.de>
640 * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
641 rather than to "remove" on handlebox.
643 * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
644 activate an action found by following a path. (#120658)
646 * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
648 * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
650 * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with
651 setter and getter. If it is set, add tearoff menu items to regular
652 menus, but not to popups. Add a signal "changed", which gets emitted
653 when the merged ui has changed. (#120649, #120656)
655 * tests/testmerge.c: Add button to test the generation of tearoff
658 2003-08-29 Matthias Clasen <maclas@gmx.de>
660 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
661 Actually group the actions together rather than putting each in its
664 * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on
665 proxy menu items for radio actions.
667 * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
669 Fri Aug 29 21:40:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
671 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
672 Fix use of uninitialized variable.
675 (_gtk_text_util_append_special_char_menuitems): add const cast to
678 2003-08-29 Matthias Clasen <maclas@gmx.de>
680 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install
681 "draw_as_radio" as a separate property, not as an alias of
683 (gtk_check_menu_item_get_property):
684 (gtk_check_menu_item_set_property): Also support "draw_as_radio".
686 Fri Aug 29 20:32:07 2003 Soeren Sandmann <sandmann@daimi.au.dk>
688 * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
689 are narrower than 13 time the estimated character width of the
690 font. (#107781, David Bordoley)
692 * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
693 here if the GtkToggleButton is active. This may be the case if it
696 * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
697 vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
700 * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
701 property. (#111207, David Bordoley).
703 * gtk/gtktoggletoolbutton.c
704 (gtk_toggle_tool_button_create_menu_proxy): use new
705 "draw_as_radio" property on the menu item when the item is a radio
708 * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
709 to only pay attention to the "use_underline" property when the
710 button label comes from the "label" property.
712 2003-08-29 Laurent Dhima <laurenti@alblinux.net>
714 * configure.in: Added "sq" to ALL_LINGUAS.
716 2003-08-28 Matthias Clasen <maclas@gmx.de>
718 * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
721 * gtk/gtkuimanager.c: Change the XML format:
722 <Root> element is replaced by <ui>,
723 <menu> element is replaced by <menubar>,
724 <submenu> element is replaced by <menu>,
725 <dockitem> element is replaced by <toolbar>,
726 <popups> element is gone,
727 verb attribute is replaced by action,
728 name defaults to action or the element name.
730 * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by
731 GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified
732 by removing the user_data, entry_type and extra_data fields,
733 GtkRadioActionEntry is further simplified by removing the callback.
734 The user_data can now be specified as an argument to
735 gtk_action_group_add_actions(). There is a new method
736 gtk_action_group_add_radio_actions(), which is similar to
737 gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
738 and a callback parameter in addition to the user_data. The callback
739 is connected to the ::changed signal of the first group member.
740 There are _full() variants taking a GDestroyNotify of
741 gtk_action_group_add_[radio_]actions().
743 * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted
744 on every member of the radio group when the active member is changed.
745 Add an integer property "value", and a getter for the value of "value"
746 on the currently active group member.
748 * tests/testactions.c:
750 * tests/merge-[123].ui:
751 * demos/gtk-demo/appwindow.c: Adjust to these changes.
753 * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
755 2003-08-27 Anders Carlsson <andersca@gnome.org>
757 * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
758 text view, so the tool bar won't have focus.
760 Tue Aug 26 09:57:38 2003 Owen Taylor <otaylor@redhat.com>
762 * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
763 declaration not at start of block. (#120371, Damien Carbery)
765 2003-08-26 Matthias Clasen <maclas@gmx.de>
767 * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize
768 for length, not gsize.
770 * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to
771 <ui> and make it optional in strings. Rename verb to action, <dockitem>
772 to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
774 * demos/gtk-demo/appwindow.c:
775 * tests/testactions.c:
779 * tests/merge-3.ui: Adjust to the new XML format.
781 Mon Aug 25 19:55:55 2003 Owen Taylor <otaylor@redhat.com>
783 * gtk/gtktextview.c (gtk_text_view_update_layout_width):
784 Since we add one to the layout's reported width to
785 account for the cursor, we need to subtract one when
786 setting the wrap width for the layout. (Fixes infinite
787 loop (#120325, Frederic Crozat)
789 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
790 Be a bit more careful about rounding when converting
791 wrapped width from Pango units to pixels.
793 2003-08-26 Matthias Clasen <maclas@gmx.de>
795 Rename GtkMenuMerge to GtkUIManager.
797 * gtk/gtkuimanager.[hc]: New files.
798 * gtk/gtkmenumerge.[hc]: Removed.
803 * tests/testactions.c:
804 * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by
807 * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating:
808 add comments to entries array, remove newlines from ui definition. Don't
809 use the ::add_widget signal.
811 Mon Aug 25 17:28:04 2003 Owen Taylor <otaylor@redhat.com>
813 * gtk/gtknotebook.c (gtk_notebook_forall): Don't
814 include page->menu_label - causes various problems,
817 Mon Aug 25 23:21:43 2003 Kristian Rietveld <kris@gtk.org>
821 Fixes #115871, reported by Michael Natterer.
823 * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
824 added ctrl_pressed and shift_pressed bitfields,
825 (_gtk_tree_selection_internal_select_node): replace GdkModifierType
826 arg with GtkTreeSelectMode.
828 * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
829 (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
830 (_gtk_tree_selection_internal_select_node): all updated for
831 GdkModifierType -> GtkTreeSelectMode move.
833 * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
834 and shift_pressed around selection handling block,
835 (gtk_tree_view_real_select_cursor_row),
836 (gtk_tree_view_real_toggle_cursor_row),
837 (gtk_tree_view_real_selection_cursor_parent),
838 (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
839 instead of checking the event state. And also updates for the
840 GdkModifierType -> GtkTreeSelectMode move.
842 Wed Aug 20 21:26:49 2003 Owen Taylor <otaylor@redhat.com>
844 * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
845 to the parent when there was no focus widget before
846 and no focus widget after - that is, when there are
847 no focusable widgets. (#108678, help tracking it
848 down from Padraig O'Briain, Federico Mena Quintero, )
850 * gtk/gtkxembed.[ch]: Move various shared utilities
851 for the XEMBED protocol eused by GtkPlug and GtkSocket
854 * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
855 a flag bit that is sent with focus mesages to indicate
856 that the focus has wrapped around on the toplevel;
857 use this bit to catch infinite loops when there is no
858 focusable widget at ll in the entire toplevel.
860 * tests/testsocket.c (child_read_watch): Remove an
863 * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h:
864 Up XEMBED protocol version to 1, add logic for
865 sending the right version in XEMBED_EMBEDDED_NOTIFY.
867 * gtk/gtksocket.c (gtk_socket_add_window): Send
868 the embedder window in the XEMBED_EMBEDDED_NOTIFY
869 as the spec requires.
871 Mon Aug 25 16:15:41 2003 Owen Taylor <otaylor@redhat.com>
873 * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and
874 NumLock handling for non-XKB. Add a special case
875 hack for NumLock on Sun servers. (Patch from
876 Robert Basch, #115819)
878 2003-08-25 Matthias Clasen <maclas@gmx.de>
880 * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten
883 * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
884 gtk_action_group_set_translation_domain): Hooks for translation of
885 label and tooltip in GtkActionGroupEntries. (#120620)
887 2003-08-25 Matthias Clasen <maclas@gmx.de>
889 * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
890 values properly. Sorry about the resize grip trouble, Owen. (#120621)
892 * gtk/gtkactiongroup.c:
893 * demos/gtk-demo/appwindow.c:
895 * tests/testactions.c: Use new GtkActionGroupEntryType enum.
897 Sun Aug 24 17:14:44 2003 Owen Taylor <otaylor@redhat.com>
899 * gtk/gtk.h: Remove reference to gtkresizegrip.h.
901 Sun Aug 24 17:03:44 2003 Owen Taylor <otaylor@redhat.com>
903 * gtk/Makefile.am: Fix accidental commit of references
904 to gtkresizegrip.[ch]
906 Sun Aug 24 17:00:03 2003 Owen Taylor <otaylor@redhat.com>
908 * gtk/gtkrc.c: Fix some missing initializations of
911 2003-08-24 Matthias Clasen <maclas@gmx.de>
913 * gtk/gtkaction.[ch]:
914 * gtk/gtktoggleaction.[ch]:
915 * gtk/gtktoggleactionprivate.h:
916 * gtk/gtkradioaction.[ch]:
917 * gtk/gtkactiongroup.[ch]:
918 * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
919 toolbars, using the EggMenu code by James Henstridge.
921 * gtk/gtk.h: Include new headers.
922 * gtk/Makefile.am: Add new files.
924 * tests/testactions.c: Test for actions.
925 * tests/testmerge.c: Test for menu merging.
926 * tests/merge-[123].ui: Test data for testmerge.
927 * tests/Makefile.am: Add testactions and testmerge.
929 * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the
932 Sat Aug 23 21:40:18 2003 Owen Taylor <otaylor@redhat.com>
934 * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix
935 problem where rc_file->directory wasn't always getting
936 set. (#120549, Luis Villa)
938 2003-08-22 Christian Rose <menthos@menthos.com>
940 * configure.in: Added "ne" to ALL_LINGUAS.
942 Thu Aug 21 16:00:36 2003 Owen Taylor <otaylor@redhat.com>
944 * gtk/gtkrc.c: Keep a list of current GtkRcFiles
945 being parsed, not just the directories for those
946 files. Use that to catch recursion. (Part of
949 Thu Aug 21 21:27:45 2003 Kristian Rietveld <kris@gtk.org>
953 Fix option menu scrolling (#119821, Owen Taylor).
955 * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
956 by #80484 and the CLAMP,
957 (get_menu_height): new function,
958 (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
959 new_offset to handle page up/down right.
961 Thu Aug 21 15:17:42 2003 Owen Taylor <otaylor@redhat.com>
963 * gdk/x11/gdkkeys-x11.c: Change the interpretation
964 of consumed_modifiers so that it contains:
965 - Modifiers combinations actually found in
967 - Single modifier modifier combinations.
968 But not multi-modifier combinations that aren't
969 in event->state. Document. (#100439)
971 Thu Aug 21 20:53:46 2003 Kristian Rietveld <kris@gtk.org>
973 Slightly modified patch from Yann Rouillard to improve selection
974 behavior with the mouse. Fixes #120187.
976 * gtk/gtktreeview.c (gtk_tree_view_button_press): only
977 select/deselect items on the first button press of button 1,
978 expand checks for row_activated to include triple clicks.
980 Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
984 * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
985 approximate digit widths up, to avoid truncation, convert to
986 pango pixels when we have the full string width instead of converting
987 the approx digit width to pango pixels, take inner border and
988 interior focus into account correctly. (Fixes #116368, patch from
991 2003-08-20 Noah Levitt <nlevitt@columbia.edu>
993 * gtk/queryimmodules.c: Don't look at the same directory twice (in
994 simple cases). (#120342)
996 Wed Aug 20 22:04:47 2003 Soeren Sandmann <sandmann@daimi.au.dk>
998 * gdk/gdkwindow.c: Make the layers in the paint stack have their
999 own pixmap instead of sharing one. (#118317)
1001 * tests/testgtk.c (create_get_image): Fixes to make the window fit
1002 on an 800x600 screen
1004 Wed Aug 20 22:03:25 2003 Kristian Rietveld <kris@gtk.org>
1008 * gtk/gtkspinbutton.c (start_spinning): change the type of step
1009 to gdouble, since it gets it's data from a gdouble (Fixes #113547).
1011 Mon Aug 18 17:19:12 2003 Owen Taylor <otaylor@redhat.com>
1013 * modules/input/gtkimcontextxim.[ch]: Substantially
1014 rework the handling of status windows:
1016 - Store the current StatusWindow in the
1017 GtkIMContextXIM structure and vice-versa, so we
1018 don't have to hunt the window hierarchy on
1020 - Use the Gtkidget hierarchy instead of/or as well
1021 as the GdkWindow hierarchy when finding the toplevel;
1022 this helps for things like GtkHandlebox
1023 - Watch GtkWidget::hierarchy_changed to catch
1024 changes in the toplevel without changes in the
1025 GdkWindow (reparenting)
1026 - Never create the GtkWindow for the status window
1027 unless we have text to display.
1028 - Various cleanups, add lots of comments.
1030 (#115077, much help from Takuro Ashie and Hidetoshi
1031 Tajima in tracking this down and figuring out a fix.)
1033 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in):
1035 * modules/input/gtkimcontextxim.c: Track the current
1036 screen for each toplevel so that we show the status
1037 window on the right screen. (#116340, James Su)
1039 * modules/input/gtkimcontextxim.c: If create a new IC
1040 when we currently have the focus, call XSetICFocus()
1043 * modules/input/gtkimcontextxim.c (get_im): Fix bug
1044 with multiple open screens.
1046 Tue Aug 19 14:37:46 2003 Owen Taylor <otaylor@redhat.com>
1048 * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext):
1049 Replace client_window field with 'priv' pointer,
1050 retaining binary compatibility.
1052 * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
1053 save use_preedit/cursor_location/focus status and set
1054 up the new slave appropriately. (#118651, Botond Botyanszki)
1056 Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
1058 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
1059 Don't use impl->position_info.clip_rect for toplevels.
1060 (#107068, reported by Thomas Mirlacher)
1062 Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
1064 * gdk/x11/gdkdrawable-x11.c (convert_to_format):
1065 Add a fallback for unaligned source data for
1066 FORMAT_ARGB_MASK. (#117217)
1068 Mon Aug 18 10:51:57 2003 Owen Taylor <otaylor@redhat.com>
1070 * configure.in: Rework handling of REBUILD_PNGS,
1071 so that we also don't try to REBUILD_PNGS when
1072 cross-compiling and there is no gdk-pixbuf-csource.
1073 But give an error if gtk/stock-icons/gtkstockpixbufs.h
1074 is not in the source tree. (Note that REBUILDS_PNG
1075 was set backwards before, which is why you always
1076 had to manually recreate gtkstockpixbufs.h!)
1078 Mon Aug 18 10:19:55 2003 Owen Taylor <otaylor@redhat.com>
1080 * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
1081 path to libgtk.la. (#120080, Benedikt Spranger)
1083 Sat Aug 16 10:34:49 2003 Owen Taylor <otaylor@redhat.com>
1085 * modules/input/imcedilla.c: Make the list of default
1086 languages more comprehensive. (Suggestion of
1087 Fco. Javier F. Serrador)
1089 Sat Aug 9 12:47:11 2003 Owen Taylor <otaylor@redhat.com>
1091 * gdk/gdk.c (gdk_arg_context_parse): Fix broken
1092 parentheses when skipping args.
1094 Sat Aug 16 16:22:23 2003 Kristian Rietveld <kris@gtk.org>
1096 Fix major bug in row ref handling, so the new combo box
1097 will actually work right (:. Bug #107748. Patch written
1098 with help from Tim Janik.
1100 The basic idea is to update the row refs in a closure,
1101 before the actual signal is emitted (rather than having
1102 the model connect signal handlers).
1104 * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
1105 g_signal_new calls for row_inserted, row_deleted and
1106 rows_reordered to use the new marshallers,
1107 (row_inserted_marshall), (row_deleted_marshall),
1108 (rows_reordered_marshall): the new marshallers,
1109 (gtk_tree_row_ref_inserted_callback): renamed to
1110 gtk_tree_row_ref_inserted since it isn't a callback
1111 anymore and gets called by the marshaller now,
1112 (gtk_tree_row_ref_deleted_callback): likewise,
1113 (gtk_tree_row_ref_reordered_callback): likewise,
1114 (connect_ref_callbacks), (disconnect_ref_callbacks):
1116 (gtk_tree_row_reference_new_proxy),
1117 (gtk_tree_row_reference_free),
1118 (gtk_tree_row_reference_inserted),
1119 (gtk_tree_row_reference_deleted),
1120 (gtk_tree_row_reference_reordered): updated.
1122 Fri Aug 15 16:54:39 2003 Owen Taylor <otaylor@redhat.com>
1124 Improve Cedilla handling - based on a patch from Gustavo
1127 * modules/input/imcedilla.c po/POTFILES.in: Input method that
1128 produces C_WITH_CEDILLA rather than C_WITH_ACUTE for
1129 dead_acute+c combinations. Make this the default for
1132 * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
1133 Use LC_CTYPE instead of LC_MESSAGES to pick the default
1136 Fri Aug 15 17:00:19 2003 Owen Taylor <otaylor@redhat.com>
1138 * gtk/gtkimcontextsimple.c: Fix missing compose sequence
1139 for Multi_key+c+apostrophe.
1141 Fri Aug 15 21:57:34 2003 Kristian Rietveld <kris@gtk.org>
1145 * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
1146 on vertical scrolling. (#108035, reported by Tim Janik).
1148 Fri Aug 15 20:06:42 2003 Kristian Rietveld <kris@gtk.org>
1152 * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
1153 (gtk_tree_model_sort_level_find_insert),
1154 (gtk_tree_model_sort_insert_value): fix off-by-one error.
1155 (#109292 continued, patch from Yann Rouillard).
1157 Fri Aug 15 19:43:14 2003 Kristian Rietveld <kris@gtk.org>
1159 (Note: This is not exactly the same as the patch which went in
1162 * gtk/gtktreeview.c (gtk_tree_view_class_init),
1163 (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
1164 Also support the up, down, left, right, home, end, page up and
1165 page down keys on the numpad. (#119419, reported by Alex Larsson).
1167 Fri Aug 15 12:34:04 2003 Owen Taylor <otaylor@redhat.com>
1169 Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
1171 * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
1172 we link libgtk against X explicitely, since we
1173 make GTK+ calls for plug/socket.
1175 * gtk/queryimmodules.c: Use USE_LA_MODULES and
1176 G_MODULE_SUFFIX here.
1178 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
1179 XShmPutImage with #ifdef USE_SHM.
1181 Thu Aug 14 18:25:39 2003 Owen Taylor <otaylor@redhat.com>
1183 * gtk/gtkfilesel.c (gtk_file_selection_populate):
1184 Don't reposition the cursor when we aren't trying
1185 to complete. (Fixes problems with selection on
1186 startup, #108433, reported by Mark Finlay.)
1188 * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
1189 code that tried to position the cursor after the common
1190 prefix when there was one, it wasn't working, and
1191 would be hard to fix. Just always put the cursor
1192 at the end when completing.
1194 Thu Aug 14 17:58:23 2003 Owen Taylor <otaylor@redhat.com>
1196 * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
1197 the current directory fails because of encoding
1198 conversion problems, walk up textually to parent
1199 directories until we can convert. (#113627)
1201 Wed Aug 13 17:01:49 2003 Owen Taylor <otaylor@redhat.com>
1203 * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
1204 Remove usage of menu_shell->ignore leave which was
1205 to deal with stray events we no longer get because
1206 we do grabbing differently. Comment it as unused in
1207 the header. (#115837, Keith Bissett)
1209 Wed Aug 13 16:32:43 2003 Owen Taylor <otaylor@redhat.com>
1211 * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request):
1212 Fix some places that weren't properly Xinerama-ified.
1214 * gtk/gtkmenu.c: Fix problem with windows that scroll
1215 at the top of the screen.
1217 Wed Aug 13 11:34:53 2003 Owen Taylor <otaylor@redhat.com>
1219 * gtk/gtkcombo.c (gtk_combo_init): connect_after() to
1220 key-press-event on the entry, so input methods get access to
1221 key presses before GtkCombo customization.
1222 (#115451, Botond Botyanszki)
1224 2003-08-13 Anders Carlsson <andersca@gnome.org>
1226 * tests/testtoolbar.c: (set_important_func), (important_toggled),
1227 (create_items_list):
1228 Add an important column.
1230 Tue Aug 12 15:00:15 2003 Owen Taylor <otaylor@redhat.com>
1232 * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
1233 against reentrancy from ::focus-out handlers.
1234 (#118129, Felipe Heidrich)
1236 Tue Aug 12 14:27:42 2003 Owen Taylor <otaylor@redhat.com>
1238 * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
1239 GDK_LOCK_MASK before calling
1240 gdk_keymap_translate_keyboard_state so bindings
1241 and accelerators are independent of the Caps-lock
1242 key. (#115384, reported by Toni Willberg)
1244 Mon Aug 11 12:07:14 2003 Owen Taylor <otaylor@redhat.com>
1246 * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
1247 break statements (#119494, Soeren Sandmann)
1249 Mon Aug 11 11:10:07 2003 Owen Taylor <otaylor@redhat.com>
1251 * gtk/gtkwidget.h: Mark parent public as well; it's
1252 extensively accessed in existing code, so there is
1253 no advantage in making people use get_parent().
1254 (Tweak to #119463 fix)
1256 2003-08-11 Matthias Clasen <maclas@gmx.de>
1258 Add support for EWMH "Above" and "Below" window states. (105100,
1261 * tests/testgtk.c: Add "Above" and "Below" to the the "Window
1264 * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
1265 gtk_window_set_keep_below.
1267 * gtk/gtk.def: Add gtk_window_set_keep_above and
1268 gtk_window_set_keep_below.
1270 * gtk/gtkwindow.c (gtk_window_set_keep_below):
1271 (gtk_window_set_keep_above): New functions, call the corresponding
1274 * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
1275 function, sets _NET_WM_STATE_BELOW.
1276 (gdk_window_set_keep_above): New function, sets
1277 _NET_WM_STATE_ABOVE.
1279 * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
1280 gdk_window_set_keep_below.
1282 * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
1283 GDK_WINDOW_STATE_BELOW.
1285 * gdk/gdk.def: Add gdk_window_set_keep_above and
1286 gdk_window_set_keep_below.
1288 * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
1289 JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
1290 xmlcatalog in PATH. (#119115)
1292 2003-08-10 Matthias Clasen <maclas@gmx.de>
1294 * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
1297 2003-08-09 Noah Levitt <nlevitt@columbia.edu>
1300 * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
1301 docs on GdkFilterFunc and GdkFilterReturn.
1303 2003-08-09 Matthias Clasen <maclas@gmx.de>
1305 * gtk/gtkcalendar.c: Add and hook in gtk_calendar_scroll,
1306 to let the mouse wheels select the month. Scrolling down
1307 moves forward in time. (#53134, Abigail Brady)
1309 * gtk/gtkcalendar.c: Complete the RTL flipping support for
1310 GtkCalendar, make it possible to flip the headings using the
1311 "magic translated string" technique. Translators, note the
1312 comment in gtk_calendar_init() explaining this. (#102416)
1314 * gtk/gtkcalendar.c: Get the information about the first day of
1315 the week from the locale using another instance of the "magic
1316 translated string" technique. Ignore the display option
1317 GTK_CALENDAR_WEEK_START_MONDAY with a warning. (#87977)
1319 * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
1320 date is dragged as text, formatted via strftime %x. Text drops are
1321 accepted if g_date_set_parse() can make sense of the text. A
1322 dedicated data format for date DND has not been introduced yet,
1323 since there didn't seem to be sufficient consensus on such a
1324 format on xdg-list. (#117297)
1326 2003-08-08 Matthias Clasen <maclas@gmx.de>
1328 * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
1329 Fix a segfault. (#115284, Jan Kratochvil)
1331 2003-08-08 Tor Lillqvist <tml@iki.fi>
1333 * gdk/win32/gdkevents-win32.c (print_event): Print also the root
1334 coordinates for events that have such. Print coordinates for enter
1337 (gdk_event_translate): Don't use event uninitialixed in the
1338 return_exposes branch of the WM_PAINT handler.
1340 * gdk/win32/gdkwindow-win32.c (gdk_window_new,
1341 _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer):
1342 Must offset top-level window coordinates here, too.
1344 2003-08-08 Matthias Clasen <maclas@gmx.de>
1346 * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
1347 when maximized or fullscreen.
1349 2003-08-07 Tor Lillqvist <tml@iki.fi>
1351 * gdk/win32/gdkinput-win32.h
1352 * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
1353 _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
1356 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
1357 accordingly, in fact an uninitialised variable was dereferenced.
1360 [Win32] Add support for multiple monitors.
1362 * gdk/win32/gdkprivate-win32.h
1363 * gdk/win32/gdkglobals-win32.c: New global variables for
1364 multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
1365 _gdk_offset_x and _gdk_offset_y.
1367 * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
1368 functions, enumeration functions passed to EnumDisplayMonitors().
1370 (gdk_display_open): If the EnumDisplayMonitors() and
1371 GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
1372 if to find out monitor info.
1374 Calculate the offset between Win32 coordinates (relative to the
1375 primary monitor's origin (and thus negative on monitors to the
1376 left of or above it), and GDK's (visible coordinates should be
1379 * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
1380 gdk_screen_get_monitor_geometry): Use information collected above.
1382 (gdk_window_move, gdk_window_move_resize_window_get_geometry):
1383 Subtract _gdk_offset_{x,y} from GDK root window coordinates.
1385 (gdk_window_get_geometry, gdk_window_get_origin,
1386 gdk_window_get_frame_extents): For top-level windows, add
1387 _gdk_offset_{x,y} to GDK root window coordinates
1389 Still need to handle multiple monitors in
1390 gdk_window_fullscreen(). Probably should make the window
1391 fullscreen on the monitor where the cursor is?
1393 * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
1394 root window coordinates in GdkEvents.
1397 [Win32] Fix geometry hint handling. Add support for resize
1398 increment and base size, and aspect ratio geometry hints. The
1399 "gridded geometry" test in testgtk now works beautifully.
1401 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1402 Turns out this function shouldn't actually ever modify the
1403 window's size, just store the hints. (Old code kept for a while
1406 (gdk_window_set_hints): Remove presumably broken code that handles
1407 the position hints, this function is obsolete anyway.
1409 * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
1410 variables, not used.
1412 (adjust_drag): New function, used to implement resize increment
1415 (gdk_event_translate): Handle WM_SIZING, implement resize
1416 increment and base size, and aspect ratio geometry hints here. The
1417 WM_GETMINMAXINFO handler takes care of the minimum and maximum
1418 size hints as before. Fix the WM_GETMINMAXINFO handler to take
1419 into account window decorations. No need to modify the
1420 ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
1421 the defaults are fine.
1423 * gdk/win32/gdkprivate-win32.h
1424 * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
1425 _gdk_win32_get_adjusted_client_rect): New helper functions.
1427 2003-08-07 Matthias Clasen <maclas@gmx.de>
1429 * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
1430 toplevel->have_* flags before iterating over the _NET_WM_STATE
1433 Thu Aug 7 16:49:29 2003 Owen Taylor <otaylor@redhat.com>
1435 * gtk/gtkwidget.c (gtk_widget_set_style_internal):
1436 Fix a bug where on theme change, resize/redraw wasn't
1437 properly getting queued on toplevel windows. (#116346,
1440 * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
1441 Fix bug where wrong coordinates were used for toplevel
1444 Thu Aug 7 16:40:21 2003 Owen Taylor <otaylor@redhat.com>
1446 * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
1447 page_num variable (Archit Baweja)
1449 2003-08-07 Matthias Clasen <maclas@gmx.de>
1451 * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
1452 cope with C libraries with crippled locale support. (#115293)
1454 2003-08-07 Hans Breuer <hans@breuer.org>
1456 * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
1457 (only if the new window not known to Gdk) to get proper
1458 leave notification, and get rid of the wrong placed
1459 tooltips, bug #102283
1461 (gdk_event_translate) : small code reordering to not get
1462 GDK_MOTION_NOTIFY for still mouse and get back tooltips on
1465 2003-08-07 Tor Lillqvist <tml@iki.fi>
1468 * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
1469 missing function, trivially implement.
1471 2003-08-07 Matthias Clasen <maclas@gmx.de>
1473 * gtk/gtkctree.c (draw_row): Don't cut descenders when
1474 rendering. (#118646, Charles Kerr)
1476 2003-08-06 Hans Breuer <hans@breuer.org>
1478 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
1479 initialize bits to 0 (probably default on NT)
1481 * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1482 now it works as intended ;-)
1484 2003-08-04 Hans Breuer <hans@breuer.org>
1486 * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
1487 set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
1489 * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
1490 (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
1492 * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1493 against all expectations it is basically ony a call with WM_SETICON
1494 needed (the visual effect is there, though colors or mask are
1495 still somewhat wrong).
1496 * gdk/win32/gdkwindow-win32.h : place to store the HICON
1498 * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
1499 pixel drawing as it was fixed at 1999-08-23
1501 gtk/gtk.def : updated
1503 Tue Aug 5 10:07:08 2003 Owen Taylor <otaylor@redhat.com>
1505 * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property):
1506 Add a missing break. (#119156, Callum McKenzie)
1508 Tue Aug 5 00:24:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1510 * gtk/gtkmenu.c (gtk_menu_position): New positioning
1513 Fri Aug 1 15:26:46 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1515 * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
1518 * gtk/gtkradiotoolbutton.c
1519 (gtk_radio_tool_button_new_from_widget): Don't take a stock id
1521 * gtk/gtkradiotoolbutton.c
1522 (gtk_radio_tool_button_new_with_stock_from_widget): make this
1523 function take a stock_id.
1525 * gtk/toolbar: documentation
1527 Mon Aug 4 14:53:46 2003 Owen Taylor <otaylor@redhat.com>
1529 * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init):
1530 Fix problem where use_xshm was getting set wrong if
1531 MIT_SHM wasn't found. (George Lebel)
1533 2003-08-04 Tor Lillqvist <tml@iki.fi
1535 * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
1536 actually use the passed-in filter list. The function also needs a
1537 GdkWindow parameter, as filter functions expect
1538 GdkEvent::any.window to be valid. (#119034, Hans Breuer)
1540 2003-08-03 Matthias Clasen <maclas@gmx.de>
1542 * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors):
1543 (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
1544 the term "virtual screen". (#119030, Tor Lillquist)
1546 2003-08-02 Matthias Clasen <maclas@gmx.de>
1548 * tests/testtext.c (test_init):
1549 * tests/testgtk.c (test_init):
1550 * tests/testdnd.c (test_init):
1551 * demos/pixbuf-init.c (pixbuf_init):
1552 * demos/gtk-demo/main.c (main): Use g_setenv().
1554 * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
1557 Sat Aug 2 12:53:16 2003 Owen Taylor <otaylor@redhat.com>
1559 * configure.in: Requires glib-2.3.0, pango-1.2.0.
1561 * configure.in: Require Xft version 2,
1562 remove code for handling older versions of pango and Xft.
1563 Many miscellaneous improvements to X checks
1565 * acinclude.m4: Add GTK_ADD_LIB() macro for adding
1566 a library to a variable, avoiding dups.
1568 * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
1571 * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
1574 2003-08-02 Matthias Clasen <maclas@gmx.de>
1576 * gtk/gtkcolorsel.c (color_sample_drop_handle)
1577 (palette_drop_handle):
1578 * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received): Accept
1579 drops with the wrong format, since the KDE color chooser incorrectly
1580 drops application/x-color with format 8. (#118810)
1582 * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle):
1583 * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):
1584 Accept drops with the wrong format, since the KDE color chooser
1585 incorrectly drops application/x-color with format 8. (#118810)
1587 2003-08-02 Tor Lillqvist <tml@iki.fi>
1589 Fix gdk/win32 window geometry handling again. The window position
1590 in a GDK_CONFIGURE event should be that of the client area, not of
1591 the window decorations. (I was confused by the term "window
1592 border" in X11. It does *not* mean the window manager
1593 decorations. There are no X11-style window borders in Win32.)
1594 Also, this time do take the geometry hints into account
1595 appropriately when moving windows. Now testgtk's gravity test's
1596 move buttons work OK. There are stil problems with taking gravity
1597 into account when showing a hidden window.
1599 * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
1600 instead of separate fields.
1602 * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
1603 adjust for decorations.
1605 * gdk/win32/gdkwindow-win32.c (get_outer_rect,
1606 adjust_for_gravity_hints): New functions.
1607 (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
1608 above functions, take geometry hints into account.
1609 (gdk_window_set_geometry_hints): Size hints specicy client area,
1610 not including decorations.
1612 Fri Aug 1 17:10:22 2003 Owen Taylor <otaylor@redhat.com>
1614 * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
1615 return an absolute path (#115590), fix a problem where
1616 you could crash the file selector with a looong name
1617 by returning a newly allocated buffer.
1619 Fri Aug 1 16:44:51 2003 Owen Taylor <otaylor@redhat.com>
1621 * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
1622 bug in rarely or never hit code path (#118071,
1625 Fri Aug 1 16:30:13 2003 Owen Taylor <otaylor@redhat.com>
1627 * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render):
1628 If the check for missing depths, try actually creating pixmaps
1629 of the depths to deal with Xinerama not reporting
1630 all the depths it should. (#115822)
1632 Fri Aug 1 15:33:59 2003 Owen Taylor <otaylor@redhat.com>
1634 * gtk/gtksocket.c: Patch from Denis Mikhalkin to
1635 forward KeyRelease events as well as KeyPress events.
1638 Fri Aug 1 15:06:25 2003 Owen Taylor <otaylor@redhat.com>
1640 * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
1641 if argc is 0 as well, instead of leaving it unset.
1642 (#116023, Michael Meeks)
1644 Thu Jul 31 23:09:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1646 * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
1647 default to TRUE; ignore the property when api_mode != NEW_API
1649 2003-07-31 Matthias Clasen <maclas@gmx.de>
1651 * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
1652 to icon, to pacify gtk-doc.
1654 * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion
1657 Thu Jul 31 15:33:33 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1659 * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
1661 Thu Jul 31 15:29:28 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1663 * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
1664 overflow_item field.
1666 Wed Jul 30 21:11:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1668 * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
1669 an internal function
1671 * gtk/gtktoolitem.h: remove unused declaration of
1672 _gtk_tool_item_get_drag_window().
1674 Wed Jul 30 17:03:58 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1676 * gtk/gtktoolbutton.[ch]:
1677 (gtk_tool_button_new): swap icon_widget and label arguments to
1678 match BonoboUIToolbarButton.
1680 * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
1682 2003-07-30 Matthias Clasen <maclas@gmx.de>
1684 * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
1687 2003-07-29 Tor Lillqvist <tml@iki.fi>
1689 Fix for #108007, #112402, #117042: There was confusion in
1690 gdk/win32 at various places whether a window position refers to
1691 the decoration position or the client area position. Also whether
1692 window size includes decorations or not.
1694 The correct interpretation apparently is that in GDK (like in
1695 X11), a top-level window position means the decoration's position,
1696 but size means the window's inner size (client area size). In the
1697 Win32 API, the window size usually includes the decorations,
1700 * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
1701 #ifdef G_ENABLE_DEBUG.
1702 (handle_configure_event): New function, generates GDK_CONFIGURE
1703 events from WM_SIZE and WM_MOVE messages. Even if no event is
1704 generated because of the event mask, still set the private
1705 position and size fields. Calculate position and size correctly.
1706 (gdk_event_translate): Call handle_configure_event().
1708 * gdk/win32/gdkgeometry-win32.c: Cosmetics.
1710 * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
1711 macros. Cosmetic debugging output changes.
1712 (SafeAdjustWindowRectEx): Remove. If an application wants to
1713 locate a window outside of the screen, it's not GDK's business to
1714 prevent it. And anyway, with multiple monitors, negative
1715 coordinates are perfectly normal.
1716 (gdk_window_new): Adjust the window size for decorations after
1717 _gdk_window_init_position() has done its job. (But the big window
1718 code currently is presumably broken on Win32 anyway.)
1719 (gdk_window_move): The position passed in is supposed to be that
1720 of the window border, so don't need to adjust for decorations.
1721 (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
1723 Tue Jul 29 13:55:44 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1725 * gtk/gtktoolbar.c (gtk_toolbar_set_style,
1726 gtk_toolbar_prepend_element, gtk_toolbar_append_element,
1727 gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
1728 gtk_toolbar_append_space, gtk_toolbar_insert_item,
1729 gtk_toolbar_prepend_item, gtk_toolbar_append_item,
1730 gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
1731 gtk_toolbar_new, gtk_toolbar_prepend_item):
1733 Move documentation inline from template files.
1735 * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
1736 gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
1737 gtk_toolbar_append_widget, gtk_toolbar_remove_space,
1738 gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
1739 gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
1740 gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
1741 gtk_toolbar_get_style, gtk_toolbar_get_orientation)
1743 Copy documentation from stable that was added after the EggToolbar
1746 * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
1748 Mon Jul 28 18:21:34 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1750 * gtk+/docs/: Commit autogenerated changes, so patches will make
1753 2003-07-27 Tor Lillqvist <tml@iki.fi>
1755 * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
1756 the keyboard state returned by GetKeyboardState() doesn't
1757 distinguish between the left and right Control and Alt keys. Thus
1758 we cannot detect AltGr (which is supposed to be left Control +
1759 right Alt) the same way as on NT-based systems, but have to accept
1760 either Control + either Alt as AltGr.
1762 2003-07-27 Matthias Clasen <maclas@gmx.de>
1764 * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1765 Fix function name in warning message. (#118156, Tim-Philipp
1768 * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
1769 is-expander and is-expanded are boolean properties, not ints.
1770 (#118359, Josh Parsons)
1772 Sat Jul 26 15:21:27 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1774 * gtk/gtkimagemenuitem.c
1775 (gtk_image_menu_item_toggle_size_request): don't request
1776 toggle_space when the image width is 0.
1778 2003-07-25 Tor Lillqvist <tml@iki.fi>
1780 * gdk/win32/gdkprivate-win32.h
1781 * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
1782 and _gdk_keyboard_has_altgr.
1784 * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
1785 ones detailled here.
1787 Code that has been ifdeffed out for a long time removed. Remove
1788 some really old doc comments that were left behind for some public
1789 functions, the official ones are in the X11 backend anyway. Change
1790 GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
1791 multi-line boolean expressions to have the operators at ends of
1794 As mouse capture with SetCapture() indeed seems to work OK, no
1795 need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
1797 Ifdef out the gdk-ping-msg stuff. I don't remember why it was
1798 needed at some time, and things seem to work fine now without
1801 Ifdef out the search for some Latin locale keyboard layout being
1802 loaded. Not used currently, but might be needed after all, if we
1803 decide that we want to be able to generate ASCII control character
1804 events with a non-Latin keyboard.
1806 (assign_object): New helper function, handles the g_object_ref()
1807 and unref() calls when assigning GObject pointers.
1809 (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
1810 enter event when the pointer has moved to an ancestor window. Was
1811 left out by mistake.
1813 (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
1815 (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
1816 functionality, using ClipCursor().
1818 (find_window_for_mouse_event): Splice part of code into new
1819 function find_real_window_for_grabbed_mouse_event().
1821 (fixup_event, append_event, apply_filters): New functions, code
1822 refactored out from elsewhere.
1824 (synthesize_enter_or_leave_event, synthesize_leave_event,
1825 synthesize_enter_event,
1826 synthesize_leave_events,synthesize_enter_events): Also take a
1827 GdkCrossingMode parameter, in preparation to generating
1828 GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
1830 (fixup_event, append_event, fill_key_event_string): New functions,
1833 (vk_from_char, build_keypress_event, build_keyrelease_event):
1834 Removed as part of dropping WM_CHAR handling.
1836 (build_key_event_state,gdk_event_translate): Call
1837 GetKeyboardState(), once, for each keyboard message, instead of
1838 several calls to GetKeyState() here and there.
1840 (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
1841 at it, do some major refactoring, and some fixes for potential
1842 problems noticed while going through the code.
1844 Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
1845 WM_KEYUP. Don't need the state variables related to whether to
1846 wait for WM_CHAR or not, and whether the current key is
1847 AltGr. Remove lots of complexity. Thus don't need the
1848 use_ime_composition flag.
1850 Not handling WM_CHAR means dead key handling will have to be taken
1851 care of by GTK, but that seems to work fine, so no worry.
1853 Another side-effect is that Alt+keypad digits don't work any
1854 longer, but it's better to learn to use GTK's ISO14755 support is
1857 Be more careful in checking whether AltGr is involved. Only
1858 attempt to handle it if the keyboard actually has it. And
1859 explicitly check for *left* Control plus *right* Alt being
1860 pressed. Still, allow (left) Alt and/or (right) Control with AltGr
1863 Handle keys using similar code as in the X11 backend. As we have
1864 built a keymap in gdkkeys-win32.c anyway, use it by calling
1865 gdk_keymap_translate_keyboard_state() to look up the keysym from
1866 the virtual key code and keyboard state. Build the key event
1867 string in exactly the same way as the X11 backend.
1869 If an IME is being used, don't generate GDK events for keys
1870 between receiving WM_IME_STARTCOMPOSITION and
1871 WM_IME_ENDCOMPOSITION, as those keys are for the IME.
1873 For WM_IME_COMPOSITION, handle all the Unicode chars returned from
1874 the IME, not just the first one.
1876 gdk_event_translate() is still quite complex, could split the
1877 message handler cases out into separate functions.
1879 On mouse events, when the mouse is grabbed, use
1880 find_real_window_for_grabbed_mouse_event() in order to be able to
1881 generate correct crossing events.
1883 No longer take a pre-allocated GdkEvent as parameter. Instead,
1884 allocate events as needed and append them to the queue. (This is
1885 different from how gdk_event_translate() in the X11 backend
1886 works.) This change made the code much clearer, especially in the
1887 cases where we have to generate several GDK events for one Windows
1888 message. Return FALSE if DefWindowProc() should be called, TRUE
1889 if not. If DefWindowProc() should not be called, also return the
1890 value to be returned from the window procedure.
1892 (Previously, the interaction with gdk_event_translate()'s caller
1893 was much more complex, when we had to indicate whether the
1894 already-queued event should be left in the queue or removed, and
1895 in addition also had to indicate whether to call DefWindowProc()
1896 or not, and what value to return from the window procedure if
1899 Don't use a separate "private" variable required to be pointing to
1900 the GdkWindowObject of the "window" variable at all times. Just
1901 use casts, even if looks a bit uglier.
1903 Notice destroyed windows as early as possible, and break out of
1904 the messsage switch.
1906 Use _gdk_pointer_root as current_window when the pointer is
1907 outside GDK's top-level windows.
1909 On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
1910 appropriate, based on ImmIsIME().
1912 (gdk_event_translate, gdk_event_send_client_message_for_display,
1913 gdk_screen_broadcast_client_message): Implement client messages.
1914 Use a registered Windows message to pass GDK client messages. Note
1915 that the amount of user data is restricted to four bytes, as it is
1916 carried in the LPARAM. (The WPARAM is used for the message type
1919 (real_window_procedure): Adapt for new gdk_event_translate()
1922 * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
1923 _gdk_input_locale_is_ime initially.
1925 * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
1926 of g_colormap_ref()/unref().
1928 (gdk_window_new): Made code a bit more like the X11 one, pretend
1929 to handle screens (although we just have one for now).
1931 * gdk/x11/gdkevents-x11.c
1932 (gdk_event_send_client_message_for_display,
1933 gdk_screen_broadcast_client_message): Document the user data
1934 limitation on Win32.
1936 * gdk/win32/gdkevents-win32.c (print_event): More complete enter
1937 and leave notify detail output.
1939 * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
1940 visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
1941 for those, so that the GtkIMContextCimple compose tables will
1942 work. Deduce if the keyboard layout has the AltGr key, and set the
1943 above flag accordingly.
1945 2003-07-26 Matthias Clasen <maclas@gmx.de>
1947 * gtk/gtkwidget.c: Document DND signals.
1949 2003-07-24 Matthias Clasen <maclas@gmx.de>
1951 * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
1952 insensitive when editing isn't possible. (#118150)
1954 2003-07-23 Matthias Clasen <maclas@gmx.de>
1956 * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue
1957 spinbutton wrap. (#118097, John Darrington)
1959 * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps.
1961 2003-07-20 Hans Breuer <hans@breuer.org>
1963 * makefile.msc : new file to build it all
1964 * Makefile.am : ... added to EXTRA_DIST
1966 * gdk/makefile.msc gtk/stock-icons/makefile.msc
1967 gtk/makefile.msc.in tests/makefile.msc : updated
1969 * gdk/gdk.def gtk/gtk.def : export a bunch of new
1972 * gtk/gtkbbox.c : use g_return_val_if_fail() if
1973 there is a value to return
1975 * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
1978 * gtk/gtkicontheme.c : ported to use GTimeVal instead of
1979 struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
1981 * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
1983 * gtk/gtkimmulticontext.c : use gtkprivate.h
1985 * gtk/stock-icons/stock_color_picker_25.png
1986 gtk/stock-icons/stock_jump_to_rtl_16.png
1987 gtk/stock-icons/stock_jump_to_rtl_24.png
1988 gtk/stock-icons/stock_redo_rtl_16.png
1989 gtk/stock-icons/stock_redo_rtl_24.png
1990 gtk/stock-icons/stock_undelete_rtl_16.png
1991 gtk/stock-icons/stock_undelete_rtl_24.png
1992 gtk/stock-icons/stock_undo_rtl_16.png :
1993 gtk/stock-icons/stock_undo_rtl_24.png :
1996 Sat Jul 19 22:39:24 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1998 * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
1999 leftover request of {xy}thickness
2001 Sat Jul 19 16:26:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2003 * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
2004 attempt to add a NULL icon to the box.
2006 Sat Jul 19 12:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2008 * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
2011 2003-07-19 Matthias Clasen <maclas@gmx.de>
2013 * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id.
2014 * gtk/gtkiconfactory.c (get_default_icons): Add
2015 stock_dialog_authentication_48. (#65765)
2016 * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
2017 * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
2020 * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
2023 Sat Jul 19 00:18:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2025 * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
2028 * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
2029 (gtk_widget_real_focus_{in|out}_event): queue shallow draws
2030 instead of full draws.
2032 2003-07-18 Matthias Clasen <maclas@gmx.de>
2034 * gtk/gtkwindow.c: Add properties decorated and gravity. (#80234)
2036 * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
2037 signal, move_viewport.
2038 (gtk_text_view_move_viewport): New function which implements the
2039 move_viewport functionality.
2040 (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
2041 the viewport. (#78669)
2043 * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
2044 move_viewport argument.
2046 * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
2050 * gtk/gtkwindow.c (gtk_window_set_default_icon): New method. (#95816)
2052 * gtk/gtkmessagedialog.h:
2053 * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
2054 (#65501, Sebastian Rittau)
2056 Fri Jul 18 20:06:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2058 * gtk/gtktextview.c (changed_handler): use
2059 gtk_widget_queue_resize_noredraw().
2061 2003-07-16 Jody Goldberg <jody@gnome.org>
2063 * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
2065 Fri Jul 18 19:55:50 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2067 * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
2070 Fri Jul 18 18:43:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2072 By popular request give toolbuttons a border.
2075 (gtk_tool_item_size_allocate):
2076 (gtk_tool_item_size_request): don't request and allocate a border
2079 * gtk/gtktoolbutton.c
2080 (gtk_tool_button_size_allocate):
2081 (gtk_tool_button_size_request): remove these functions
2084 (gtk_toolbar_size_request):
2085 (gtk_toolbar_size_allocate): request and allocate a border if we
2088 Thu Jul 17 19:24:51 2003 Kristian Rietveld <kris@gtk.org>
2092 Fixes issues pointed out by Morten Welinder in #115140.
2094 * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
2095 (do_validate_rows): update validated_area with a logic OR instead
2097 (validate_rows_handler): make the if statement match the one in
2098 validate_rows(), so we don't leak the timeout.
2100 Thu Jul 17 19:12:02 2003 Kristian Rietveld <kris@gtk.org>
2104 * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
2105 should only grab focus back if the "cell_editable" widget still
2106 has focus. (Fixes #110104, testcase provided by Marco Pesenti
2109 Thu Jul 17 19:06:34 2003 Kristian Rietveld <kris@gtk.org>
2113 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2114 Don't set attr.event_mask twice, those things were meant to be
2115 ORred. (#115139, pointed out by Morten Welinder).
2117 Thu Jul 17 16:11:21 2003 Kristian Rietveld <kris@gtk.org>
2121 * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
2122 if needed. (Fixes #115869, reported by Michael Natterer).
2124 2003-07-15 Matthias Clasen <maclas@gmx.de>
2126 * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2127 Fight against gtk-doc stupidity.
2129 2003-07-13 Matthias Clasen <maclas@gmx.de>
2131 * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to
2132 targets, to pacify gtk-doc.
2134 Sun Jul 13 15:57:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2136 * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
2137 label_text, label_widget and icon_widget. (#117312,
2140 Sun Jul 13 01:37:51 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2142 * gtk/gtkmenu.c (gtk_menu_class_init): new properties
2143 "horizontal-offset" and "vertical-offset" that determines the
2144 position of the menu when it is a submenu.
2146 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
2147 submenus according to new vertical- and horizontal-offset
2150 Sat Jul 12 16:16:04 2003 Kristian Rietveld <kris@gtk.org>
2154 * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
2155 case drags to "0", scroll to the top after dropping. (Fixes #94968,
2156 reported by Alp Toker).
2158 Sat Jul 12 16:08:32 2003 Kristian Rietveld <kris@gtk.org>
2162 * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
2163 code (#115784, Owen Taylor).
2165 Sat Jul 12 16:01:03 2003 Kristian Rietveld <kris@gtk.org>
2169 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
2170 free the old text and extra_attrs *after* we parsed the new
2171 markup string. (Fixes #114485, reported by Owen Taylor).
2173 Sat Jul 12 15:51:33 2003 Kristian Rietveld <kris@gtk.org>
2177 Fixes #113904, testcase provided by Rene Seindal.
2179 * gtk/gtktreeview.c (gtk_tree_view_button_press): set
2180 pressed_button to -1 when a row has been activated,
2181 (gtk_tree_view_motion_bin_window): only start a drag if there's
2182 a button being pressed.
2184 Sat Jul 12 15:51:18 2003 Kristian Rietveld <kris@gtk.org>
2188 * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
2189 gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
2190 to avoid a roundtrip (#110272, Owen Taylor).
2192 Sat Jul 12 15:28:26 2003 Kristian Rietveld <kris@gtk.org>
2196 This patch really really fixes scrolling. Related bugs: #81627,
2197 testcase provided by Timo Sirainen, #111500, testcase provided by
2198 manu, #113241, reported by Pedro Gimeno/Michael Natterer.
2200 * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
2201 which is equal to the lower border of the window means scrolling
2202 to an invisible row, always update the dy when scrolling to an
2203 invisible row, corrected area_above/below calculations for
2204 invisible rows, when walking the tree correct the size
2205 subtracted for invalidated rows, fix wrong logic in comment.
2207 2003-07-11 Matthias Clasen <maclas@gmx.de>
2209 * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
2210 mime_types. (#117219, Steve Chaplin)
2212 Tue Jul 8 20:11:04 2003 Owen Taylor <otaylor@redhat.com>
2214 * gdk/x11/gdkevents-x11.c (get_real_window)
2215 gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
2216 gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
2217 gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
2218 Don't assume that all events start with XEventAny - Xkb events
2219 don't! (#105745). So, only do that for core events, and for
2220 non-core events, add a system for registering event types
2221 that start with XEventAny.
2223 * gdk/x11/gdkevents-x11.c (gdk_event_translate):
2224 Check to see if the result of gdk_window_lookup_for_display()
2225 is actually a window.
2227 Fri Jul 11 20:48:14 2003 Kristian Rietveld <kris@gtk.org>
2229 * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
2230 check a silent assert, so it follows the g_free() behaviour.
2232 2003-07-11 Matthias Clasen <maclas@gmx.de>
2234 * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents
2235 vertically. (#109823, Joe Shaw)
2237 2003-07-11 Morten Welinder <terra@gnome.org>
2239 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
2240 access error. (#69436)
2242 Fri Jul 11 14:32:43 2003 Kristian Rietveld <kris@gtk.org>
2244 Landing GtkTreeModelFilter and the completion code. (Test program
2245 and documentation will follow next week).
2247 * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
2248 gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
2250 * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
2251 necessary code to hook up completion.
2253 * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
2254 GtkCellLayout interface.
2256 * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
2258 * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
2261 Wed Jul 9 19:48:26 2003 Kristian Rietveld <kris@gtk.org>
2265 * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
2266 directly return from ->window_at_pointer, but set win_x and win_y
2267 first if needed. (Fixes #110166, reported by Arno Charlet).
2269 * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
2270 function to accept GdkDrawables and not just GdkWindows. This was
2271 already done in some other functions a while back, but this patch
2272 got lost for some reason.
2274 2003-07-09 Matthias Clasen <maclas@gmx.de>
2276 * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
2277 direction when sorting children. (#116540, Soeren Sandmann)
2279 Tue Jul 8 17:36:21 2003 Owen Taylor <otaylor@redhat.com>
2281 * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c:
2282 Change _gdk_x11_send_xevent_async() to
2283 _gdk_x11_send_client_message_async() avoid using Xlib
2284 internals that are different on Solaris.
2285 (#116917, Morten Welinder)
2287 2003-07-08 Matthias Clasen <maclas@gmx.de>
2289 * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
2290 (#116501, Doug Quale)
2292 Tue Jul 8 21:35:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2294 * gtk/gtktoggletoolbutton.h: remove strange #define
2295 * gtk/gtktoolbutton.h: fix cut'n'paste error
2296 * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
2298 * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
2299 private data instead of g_new0()
2300 * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
2301 instance private data
2303 Tue Jul 8 21:10:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2305 * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
2306 for INPUT_ONLY window
2307 * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
2308 * gtk/gtknotebook.c (gtk_notebook_realize): same
2309 * gtk/gtkexpander.c (gtk_expander_realize): same
2310 * gtk/gtkrange.c (gtk_range_realize): same
2314 Tue Jul 8 19:57:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2316 * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
2317 when detail is "menuitem". With the new menu look is isn't needed
2320 * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
2321 resize here, so that tool items will get a chance to relayout
2322 themselves based on the toolbar configuration.
2324 change DEFAULT_SPACE_SIZE to 4 instead of 5
2327 Get rid of "!GTK_BIN (item)->child means separator". Separators
2328 are widgets in their own right
2330 change DEFAULT_SPACE_SIZE to 4 instead of 5
2332 (get_space_size): remove this function
2333 (toolbar_item_is_homogeneous): new function
2335 * gtk/gtkseparatortoolitem.c
2336 (gtk_separator_tool_item_size_request): new function.
2338 Tue Jul 8 14:10:35 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2340 * gtk/gtktoggletoolbutton.h: use private data, add new
2341 internal function _gtk_toggle_tool_button_get_button()
2343 * gtk/gtktoolbutton.h: move to private data
2345 * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
2348 Tue Jul 8 12:50:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2350 * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
2351 type check, (#116947, Krasimir Angelov)
2353 * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
2355 * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
2356 data. Not instance private data yet, because of bug 116921.
2358 * gtk/gtktoolitem.h: new accessors:
2359 gtk_tool_item_get_homogeneous ()
2360 gtk_tool_item_get_expand ()
2361 gtk_tool_item_get_pack_end ()
2362 gtk_tool_item_get_use_drag_window ()
2364 Mon Jul 7 16:50:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2366 * gtk/gtkcellrenderertext.c
2367 (gtk_cell_renderer_text_class_init): remove accidentally committed
2371 (gtk_toolbar_paint_space_line): remove this function
2372 (gtk_toolbar_expose): always propagate expose, even if the item is
2375 * gtk/gtkseparatortoolitem.c
2376 (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
2377 (get_space_size): new function.
2378 (get_space_style): new function
2380 Sun Jul 6 13:00:20 2003 Owen Taylor <otaylor@redhat.com>
2382 * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
2383 * gtk/gtkdnd.c (gtk_drag_begin_internal): Remove use
2384 of GDK_POINTER_MOTION_HINT_MASK.
2386 * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
2387 of the drag into an idle as a superior form of
2390 * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
2391 creation here, so that we have an icon at the start
2392 of the drag (e.g., when retrieving the window cache
2395 Sun Jul 6 17:21:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2397 * docs/widget_geometry.txt: better drawing of GtkMenuItem
2398 * docs/widget_geometry.txt: add notes about GtkMenu
2399 * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
2401 Sat Jul 5 10:34:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2403 * gtk/gtkmenu.c: add vertical_padding style property.
2405 * gtk/gtkmenuitem.c: add style properties toggle_spacing,
2406 arrow_spacing and horizontal_padding. Also center separators and
2407 make them a bit taller.
2409 * gtk/*menuitem.c: use new style properties.
2411 * docs/widget_geometry.txt: Add note about GtkMenuItem
2414 (gtk_default_draw_vline, gtk_default_draw_hline):
2417 (gtk_default_draw_shadow): draw a black border around menus.
2419 * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
2420 calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
2421 x2 and y1, y2 respectively, not x, width and y, height).
2423 Sat Jul 5 09:55:38 2003 Owen Taylor <otaylor@redhat.com>
2425 * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
2426 all the atoms in the target list at once.
2428 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
2429 Local drag short-circuit.
2431 * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
2432 local case, poke the actions in directly instead of
2433 going through xdnd_set_actions.
2435 * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
2438 * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
2439 XSelectInput()/add a filter if the drag is local.
2441 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection):
2442 Simplify handling of "XdndSelection".
2444 * gdk/x11/gdkevents-x11.c
2445 (gdk_event_send_client_message_to_all_recurse): Somehow,
2446 a WM_STATE => _NET_WM_STATE change hand been made here.
2448 * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
2449 xatom_names, not atom_names.
2451 * tests/testdnd.c (target_drag_motion): Make the trashcan
2452 open again. (Got lost in deprecation cleanup.)
2454 Sat Jul 5 00:49:32 2003 Owen Taylor <otaylor@redhat.com>
2456 * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
2457 earlier, so we don't get a big pile of uncompressed
2458 motion events before the grab takes effect.
2460 * gtk/gtkdnd.c (gtk_drag_update_icon): Call
2461 gdk_window_process_all_updates() so that the area
2462 we are dragging over gets a change to redraw.
2464 * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use
2465 gdk_window_get_position(), not gdk_window_get_origin().
2467 * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
2468 gdkdisplay-x11.h: use XShapeQueryExtension to
2469 avoid duplicate XQueryExtension when we actually
2470 use it. Remove unnecessary caching in GdkDisplayX11.
2472 Fri Jul 4 23:49:22 2003 Owen Taylor <otaylor@redhat.com>
2474 * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info):
2475 Function to get a range of information about all the
2476 children of a window in a single pass.
2478 * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
2479 gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
2480 _gdk_x11_get_window_child_info() to greatly reduce
2481 the number of roundtrips.
2483 Fri Jul 4 22:57:18 2003 Owen Taylor <otaylor@redhat.com>
2485 * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
2486 a function to XSendEvent() and call a calback on
2489 * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
2490 messages to the same process, use _gdk_send_xevent_async().
2492 Fri Jul 4 22:26:27 2003 Owen Taylor <otaylor@redhat.com>
2494 * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
2495 toplevel-specific pieces of GdkWindowImplX11 into
2496 a separate GdkToplevelX11 structure.
2498 Fri Jul 4 22:05:09 2003 Owen Taylor <otaylor@redhat.com>
2500 * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
2501 some leftover fields.
2503 Fri Jul 4 15:57:52 2003 Owen Taylor <otaylor@redhat.com>
2505 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
2506 Use asynchronously _gdk_x11_set_input_focus_safe
2507 to avoid having to trap errors and XSync().
2509 * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
2510 _gdk_x11_set_input_focus_safe() here as well.
2512 * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
2513 Rework handling of property notifies on _NET_WM_STATE
2514 so that we ignore _NET_WM_DESKTOP notifies unless we
2517 * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
2518 XShmQueryExtension() rather than XQueryExtension() to
2519 avoid extra rountrip.
2521 * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
2522 Remove unused call to XGetWindowAttributes()
2524 * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
2525 unused call to XGetKeyboardControl().
2527 * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
2530 * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c
2531 No-op implementations of gdk_display_flush().
2533 * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
2534 gdk_display_flush() rather than gdk_flush() to avoid
2537 * gdk/x11/gdkwindow-x11.c (update_wm_hints)
2538 gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
2539 so that we don't have to get the property back from the server.
2541 * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
2542 the serial of when we map a toplevel to allow optimizing
2543 out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
2545 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
2546 XTranslateCoordinates() for override-redirect windows.
2548 Fri Jul 4 15:59:27 2003 Owen Taylor <otaylor@redhat.com>
2550 * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
2551 about setting window group after the window is mapped from docs
2552 - nothing the ICCCM forbids that.
2554 * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2555 Fix g_return_val_if_fail() in void return function.
2557 * configure.in: Fix misplaced comma that was resulting
2558 in XShm always being disabled.
2560 Fri Jul 4 19:55:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2562 * tests/stresstest-toolbar: remove this accidentally committed
2565 * tests/stresstest-toolbar.c: really add this new test
2567 Fri Jul 4 19:06:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2569 * tests/stresstest-toolbar.c: new test for removing items
2571 * tests/testtoolbar.c: add a popup menu
2573 * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
2574 assert widget->parent == container when the container is a
2577 * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
2578 simpler. Also make correct.
2580 * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
2581 popup_context_menu a boolean handled signal.
2583 2003-07-04 Tor Lillqvist <tml@iki.fi>
2585 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
2586 gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
2587 the width and height of the bounding rectangle only after the
2588 minumum x and y have been found, and need a separate loop for
2589 it. Thanks to Bruce Hochstetler for providing a sample program
2592 2003-07-03 Tor Lillqvist <tml@iki.fi>
2594 * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
2595 (#116537, Peter Zelezny)
2597 Thu Jul 3 03:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2599 * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
2600 fix warning. Assign something to old_value to quiet gcc
2603 (start_spinning): gtk_timeout_add->g_timeout_add
2605 * gtk/gtkicontheme.c
2606 (theme_lookup_icon): Make it compile (remove double semicolon)
2608 * gtk/gtktoolbutton.c
2609 (gtk_tool_button_class_init): Long comment about properties.
2610 (gtk_tool_button_class_init): Improve text for "use_underline"
2612 (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
2613 on whether the passed-in label has use_mnemonic set
2614 (gtk_tool_button_create_menu_proxy): Split image cloning out in
2615 new function. Make that function also handle image with pixbuf
2617 (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
2618 instead of gtk_container_remove().
2619 (gtk_tool_button_construct_contents): Fix eliding bug
2622 (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
2624 (gtk_toolbar_button_press): Make popup_context_menu signal provide
2625 coordinates and button number
2627 * tests/testtoolbar.c (main): Add new pixbuf toolbutton
2629 * tests/apple-red.png: new file
2631 Wed Jul 2 18:00:56 2003 Owen Taylor <otaylor@redhat.com>
2633 * gtk/gtkicontheme.[ch]: Implement a loader for
2634 named themed icon based on from gnome-desktop library
2637 * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
2640 * gtk/gtkiconfactory.[ch]: Add
2641 gtk_icon_source_set/get_icon_name() to allow stock icons
2642 to be based off of named theme icons.
2644 * gtk/gtkiconfactory.c: Rework sources so that the source
2645 is *either* a pixbuf, or a filename, or an icon name,
2646 instead of the pixbuf/filename mix it was before. Put a
2647 workaround for get_pixbuf() so that it can return the
2648 filename pixbuf, e.g, for render_icon().
2650 * gtk/gtkiconfactory.c: Make the default setup use
2651 themed icons, and add builtin icons to the default
2652 icon theme for all the standard pixbufs, so we
2653 don't rely on actually having an icon theme on disk.
2655 * gtk/gtkrc.c: Add support for @"icon-name" to specify
2656 a themed icon for a stock icon source.
2658 * tests/Makefile.am test/testicontheme.c: Add a test
2659 program from gnome-desktop.
2661 * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
2662 Net/IconThemeName / gtk-icon-theme-name setting.
2664 * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
2665 update the icon cache serial so we don't continually
2666 think we are out-of-date.
2668 * gtk/gtkwidget.c: Fix a couple of references in doc comments
2669 to ::direction_set that should have been to ::direction-changed
2671 Wed Jul 2 14:45:41 2003 Owen Taylor <otaylor@redhat.com>
2673 * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
2674 style to the widget.
2676 Wed Jul 2 15:42:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2678 * gtk/gtk.h: Add new toolbar headers
2680 * tests/testtoolbar.c: new file
2682 * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
2684 * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
2686 Tue Jul 1 22:49:25 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2689 (gtk_toolbar_remove_tool_item): Fix bug where list is changed
2690 inside a for loop (pointed out by Morten Welinder).
2691 (gtk_toolbar_focus_home_or_end): Minor formatting change
2695 * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
2696 gtk_toolbar_elide_underscores instead.
2698 * gtk/gtktoolbar.c: rename signal from focus_ends to
2700 (_gtk_toolbar_elide_underscores): export this as an internal
2702 (gtk_toolbar_move_focus): add comment explaining difference to
2703 gtk_toolbar_focus();
2704 (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
2705 TAB_BACKWARD focus the right widgets in RTL mode
2707 * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
2708 "label" and "icon" parameters
2710 * gtk/gtktoolbutton.[ch]: remove icon_set property.
2712 2003-07-01 Matthias Clasen <maclas@gmx.de>
2714 * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
2715 (116364, Morten Welinder)
2717 * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
2718 corresponding dialogs.
2720 * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
2722 (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c.
2724 * gtk/gtkfontbutton.[hc]: New files containing a font picker widget.
2726 * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget.
2728 * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
2730 * gtk/gtkexpander.c: Small additions to the docs.
2732 2003-07-01 Tor Lillqvist <tml@iki.fi>
2734 * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
2735 WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
2737 2003-07-01 Matthias Clasen <maclas@gmx.de>
2739 * configure.in: Check for Xcursor.
2741 * gdk/x11/gdkcursor-x11.c:
2743 * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
2744 gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
2745 gdk_display_supports_cursor_color(),
2746 gdk_display_get_default_cursor_size() and
2747 gdk_display_get_maximal_cursor_size(). (#69436)
2749 2003-06-30 Tor Lillqvist <tml@iki.fi>
2751 * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
2752 callback proc for EnumWindows().
2753 (gdk_drag_find_window_for_screen): Actually take the drag_window
2754 argument into account: Instead of using WindowFromPoint(), use
2755 EnumWindows(), to be able to skip the drag_window. (#116320, Tony
2756 M Brown, Herman Bloggs)
2758 * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
2759 gdk_window_ref()/unref() calls with g_object_ref()/unref().
2760 Consistently use %p format in debugging output of pointers and
2763 2003-06-30 Mark McLoughlin <mark@skynet.ie>
2765 * gtk/gtkexpander.h: kill some stray characters
2768 2003-06-30 Mark McLoughlin <mark@skynet.ie>
2770 Add GtkExpander. See discussion in bug #60553.
2772 * gtk/gtkexpander.[ch]: add.
2774 * gtk/Makefile.am: build gtk-expander.[ch].
2776 * docs/widget_geometry.txt: add info on the layout
2779 Mon Jun 30 01:20:19 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2781 * gtkradiotoolbutton.c: new file
2782 * gtkradiotoolbutton.h: "
2783 * gtktoggletoolbutton.c: "
2784 * gtktoggletoolbutton.h: "
2785 * gtktoolbutton.c: "
2786 * gtktoolbutton.h: "
2789 * gtktoolbar.c: many changes
2790 * gtktoolbar.h: many changes
2791 * gtkseparatortoolitem.c: new file
2792 * gtkseparatortoolitem.h "
2796 - Items on a toolbar are now separate widgets, instances of a
2797 subclass of GtkToolItem.
2799 - Items there aren't room for on the toolbar are unmapped, and an
2800 overflow menu with a proxy menu item is added instead.
2802 - The toolbar is keyboard navigatable. Press TAB to focus the
2803 first item, then use arrow keys and Ctrl TAB to move around the
2804 toolbar. TAB moves focus out of the toolbar.
2806 - Bascially all of the old toolbar API is deprecated in favor of
2807 new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
2809 - The toolbar is backwards compatible with the old toolbar.
2811 2003-06-29 Matthias Clasen <maclas@gmx.de>
2813 * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
2814 from docs, some more formatting fixes.
2816 2003-06-28 Tor Lillqvist <tml@iki.fi>
2818 Fix for #111028, thanks to J. Ali Harlow, who writes:
2819 I found that the GdkPixmap->GdkImage reference really isn't
2820 important. It's only really there to have somewhere convenient to
2821 store the location of the pixel data in the pixmap and as an easy
2822 way of accessing the dimensions of that data. I have therefore put
2823 together a fix which removes this reference entirely which seems
2824 to solve the problem.
2826 * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
2827 Instead of a pointer to a GdkImage, keep a pointer to the pixels
2830 * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
2831 (_gdk_win32_new_image): New function, replacing the above. Creates
2832 a GdkImage without any associated GdkPixmap.
2833 (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
2835 * gdk/win32/gdkprivate-win32.h: Remove from here, too.
2837 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
2838 * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
2839 * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
2840 * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
2841 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
2842 gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
2843 Corresponding changes.
2845 Thu Jun 26 21:41:16 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2847 * gtk/gtktreeviewcolumn.c
2848 (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
2849 and "is_expanded" if the new value is different fromt he old one.
2851 Wed Jun 25 18:59:15 BST 2003 Tony Gale <gale@gtk.org>
2853 * docs/faq/gtk-faq.sgml: Fix typos. Update
2854 thread example I missed yesterday.
2856 2003-06-24 Matthias Clasen <maclas@gmx.de>
2858 * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
2861 * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser):
2862 (gtk_widget_class_list_style_properties): Use same parameter names as in
2863 header (to silence gtk-doc).
2865 * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
2867 Tue Jun 24 20:00:45 BST 2003 Tony Gale <gale@gtk.org>
2869 * docs/faq/gtk-faq.sgml: Thread support updates
2870 from Owen. Various suggestions from Steve Chaplin.
2872 2003-03-24 Mohammad DAMT <mdamt@bisnisweb.com>
2874 * po/id.po: Updated Indonesian translation
2876 2003-06-21 Tor Lillqvist <tml@iki.fi>
2878 * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
2879 emulating X11's automatic grab on button down, pass owner_events
2880 as FALSE. According to the XLib spec, automatic grabs use True for
2881 owner_events when OwnerGrabButtonMask is selected, and I don't see
2882 the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
2883 (find_window_for_pointer_event): Improve debugging output.
2885 2003-06-17 Tor Lillqvist <tml@iki.fi>
2887 * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
2888 subdirectory, where libtool 1.5 installs them.
2890 * README.win32: Point to FSF's binary Win32 distribution of
2893 2003-06-17 Matthias Clasen <maclas@gmx.de>
2895 * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
2896 macros to check for XML catalog contents and path, borrowed from
2898 * configure.in: New option --enable-man to enable regeneration of
2899 man pages from Docbook, if the necessary tools are found.
2901 2003-06-15 Matthias Clasen <maclas@gmx.de>
2903 * gtk/gtkcalendar.c (gtk_calendar_class_init):
2904 * gtk/gtknotebook.c (gtk_notebook_class_init):
2905 * gtk/gtkalignment.c (gtk_alignment_class_init):
2906 * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
2909 * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs
2910 to the proper place, immediately before the g_signal_new() call.
2912 * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags
2913 more obvious. (#115122, Jeff Franks)
2915 2003-06-12 Anders Carlsson <andersca@codefactory.se>
2917 * gtk/gtkwidget.c: (event_window_is_still_viewable):
2918 Special case pixmaps. (#114880)
2920 2003-06-12 Matthias Clasen <maclas@gmx.de>
2922 * gtk/gtkwidget.c: Document child-notify and drag-data-received
2923 signals. Owen, we need to figure out where the best place for
2924 these comments in the source is. I currently put them in front of
2927 2003-06-11 Matthias Clasen <maclas@gmx.de>
2929 * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
2931 Thu Jan 12 01:01:19 2003 Kristian Rietveld <kris@gtk.org>
2933 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2934 silly typo fix. s/seperator/separator/. This gets rid of the
2935 assert spam when using TreeView.
2937 Tue Jun 10 11:23:48 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
2939 * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
2940 function for XIM instantiate callback.
2941 * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
2942 where call to XOpenIM() or XRegisterIMInstantiateCallback() is
2944 * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
2945 for XIM's destroy callback.
2946 * modules/input/gtkimcontextxim.c (get_im): add a check if info->im
2947 is set or not - if it's not set, call xim_info_try_im() to try to
2949 * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
2950 filter_key_release flag of the context.
2951 * modules/input/gtkimcontextxim.c (get_ic_real): removed
2952 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
2953 code from the removed get_ic_real().
2955 For XIM instantiation, destruction and re-instantiation. With
2956 this, Gtk+ apps will be able to connect or reconnect to the XIM,
2957 when it starts after the apps, or when the XIM gets lost and recover.
2960 Mon Jun 10 01:12:31 2003 Kristian Rietveld <kris@gtk.org>
2964 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
2965 check if width is !null, not *width. Doh.
2967 Tue Jun 10 01:09:33 2003 Kristian Rietveld <kris@gtk.org>
2971 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2972 Remove the weird dx logic, get all cell_area and background_area
2973 calculations right. Not sure what was up with it before. (Fixes
2974 #110989, testcase from Vasco Alexandre da Silva Costa).
2976 Tue Jun 10 00:58:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2978 * tests/testgtk.c: Make it compile with C89 compilers
2980 2003-06-10 Matthias Clasen <maclas@gmx.de>
2982 * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
2983 property "overwrite".
2984 (gtk_text_view_[gs]et_property): Handle "overwrite".
2985 * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
2986 and setter for "overwrite" property. (#110241, Jeroen Zwartepoorte)
2988 2003-06-09 Matthias Clasen <maclas@gmx.de>
2990 * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
2991 properties "resize" and "shrink".
2992 (gtk_paned_[gs]et_child_property): Implementations of
2993 GtkContainer::[gs]et_child_property.
2994 * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
2995 paned child properties instead of remove/add hacks. (#114667,
2998 Mon Jun 9 16:18:11 2003 Owen Taylor <otaylor@redhat.com>
3000 * gtk/gtknotebook.c (gtk_notebook_button_press): Back
3001 out event->window test - it wasn't needed because
3002 of the call to get_widget_coordinates().
3004 * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
3005 call to gtk_widget_grab_focus() when not clicking on
3006 any tabs. (Real fix for #114534)
3008 Sun Jun 8 22:03:09 2003 Owen Taylor <otaylor@redhat.com>
3010 * tests/testdnd.c: Use application/x-rootwindow-drop for
3011 root window drops. (#108670, Alex Larsson)
3013 * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop):
3014 Accept either application/x-rootwin-drop (what GTK+ has always used)
3015 or application/x-rootwindow-drop (what the XDND standard specifies).
3017 Fri Jun 6 11:07:33 2003 Owen Taylor <otaylor@redhat.com>
3019 * gtk/gtkwidget.c (event_window_still_viewable):
3020 Before delivering an event to a widget, check that
3021 (if relevant), the event's window is still viewable.
3022 (#105642, Dennis Björklund)
3024 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
3025 NULL out private->parent, since after destruction
3026 it might not be valid any more.
3028 * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
3029 accesses before g_return_val_if_fail(). Treat
3030 DESTROYED windows as unmapped.
3032 Thu Jun 5 09:28:03 2003 Owen Taylor <otaylor@redhat.com>
3034 * gtk/gtkentry.c: Recompute unconditionally in
3035 gtk_entry_style_set, and in a new gtk_label_screen_changed().
3036 Protect the guts of recompute_idle_func() with
3037 gtk_widget_has_screen(). (#114040, Morten Welinder)
3038 Fix FALSE/0 confusion.
3040 Sun Jun 8 18:27:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3042 * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
3045 Sun Jun 8 11:27:29 2003 Owen Taylor <otaylor@redhat.com>
3047 * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with
3048 set_adjustment (viewport, NULL);
3050 2003-06-07 Matthias Clasen <maclas@gmx.de>
3052 * gtk/gtkiconfactory.c (get_default_icons):
3053 * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
3054 * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
3055 undelete and revert. (#96633)
3057 Fri Jun 6 16:25:44 2003 Owen Taylor <otaylor@redhat.com>
3059 * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and
3060 refactoring of code to reduce duplication; fixes include:
3062 - gtk_viewport_realize(): Position the window correct from adjustment
3063 values. (#110737, Michael Natterer)
3065 - Remove some division-by-zero checks in places where there is no
3066 longer division. (#110737)
3068 - gtk_viewport_class_init: Make the hadjustment/vadjustment properties
3069 G_PARAM_CONSTRUCT, so that there will always be adjustments, even
3070 if gtk_viewport_new isn't used (#101135, Thomas Leonard).
3072 - Switch over to encapsulated lazy-creation for hadjustment/
3073 vadjustment; even with the CONSTRUCT property, we need this after
3076 - When updating the adjustment, immediate set their values to
3077 match the the current range of the viewport, and update the
3078 viewport position to match the value of the new adjustments.
3081 2003-06-06 Tor Lillqvist <tml@iki.fi>
3083 * gdk/win32/gdkprivate-win32.h: Fix typo.
3085 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
3086 graphics_exposures and subwindow_mode, too, even if they aren't
3089 Fri Jun 6 23:38:23 2003 Kristian Rietveld <kris@gtk.org>
3093 * gtk/gtktreeview.c (do_expand_collapse),
3094 (expand_collapse_timeout), (cancel_arrow_animation): made
3095 expand_collapse_timeout a wrapper with locks around
3096 do_expand_collapse, made cancel_arrow_animation use
3097 do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
3100 Fri Jun 6 11:05:45 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3102 * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
3103 * modules/input/gtkimcontextxim.c (preedit_start_callback,
3104 preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag
3105 to keep preedit-[start,changed,end] signals from being called during
3106 finalization (#111861).
3108 2003-06-05 Noah Levitt <nlevitt@columbia.edu>
3110 * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
3111 presses that are not on the tab (#114534).
3113 Thu Jun 5 20:35:40 2003 Owen Taylor <otaylor@redhat.com>
3115 * demos/Makefile.am: Conditionalize dependencies for
3116 gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe).
3117 Buildtest-inline-pixbufs.h in srcdir. Don't try to build
3118 test-inline-pixbufs.h if we don't have libpng.
3120 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
3121 Add a dependency on gdk-pixbuf.loaders when not
3122 cross-compiling, remove the dependency on gdk-pixbuf-csource
3123 when not cross compiling.
3125 Thu Jun 5 20:12:51 2003 Owen Taylor <otaylor@redhat.com>
3127 * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
3128 gtk_window_get_geometry_info() returning NULL.
3129 (#107311, John Finlay)
3131 Thu Jun 5 19:24:33 2003 Owen Taylor <otaylor@redhat.com>
3133 * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
3134 twice the border width from the width/height, not
3135 1x the border width. (#106336, Rodney Dawes)
3137 Thu Jun 5 15:33:38 2003 Owen Taylor <otaylor@redhat.com>
3139 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3140 If at the end of the buffer, move to the end iter -
3141 parallels behavior of move_iter_to_previous_line.
3142 (#81960, Padraig O'Briain)
3144 Thu Jun 5 16:12:54 2003 Owen Taylor <otaylor@redhat.com>
3146 #80023, Yao Zhang, TOKUNAGA Hiroyuki
3148 * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
3149 Account for the preedit cursor offset if the iter passed
3150 in is at the same place as the insertion cursor.
3152 * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
3153 Encapsulate getting the insertion cursor location.
3155 * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
3156 Pass the real y/height to the IM context. Take
3157 text_view->x/yoffset into account.
3159 Thu Jun 5 16:52:54 2003 Owen Taylor <otaylor@redhat.com>
3161 * gtk/gtktextview.[ch]: Never scroll on focus in
3162 (#81893, Patch from Paolo Maggi)
3164 * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages):
3165 Scroll to the current cursor location before handling
3166 the action, in case the user just tabbed in
3167 and the cursor is offscreen.
3169 Thu Jun 5 17:20:40 2003 Owen Taylor <otaylor@redhat.com>
3171 #107883, Gustavo Giráldez
3173 * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
3174 Split out the case where we know we changed, and
3175 already dealt with our cached line being invalidated
3176 from external calls to gtk_text_layout_changed.
3178 * gtk/gtktextlayout.c (gtk_text_layout_changed):
3179 Check if the invalidate yrange intersects our
3180 cached line, and clear it if necessary.
3182 2003-06-05 Tor Lillqvist <tml@iki.fi>
3184 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
3187 2003-06-05 Matthias Clasen <maclas@gmx.de>
3189 * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
3190 (gtk_text_view_grab_notify):
3191 (gtk_text_view_state_changed): Implement these
3192 to unobscure cursor when grab shadowed or insensitised.
3193 (gtk_text_view_unobscure_mouse_cursor): New function to undo the
3194 effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
3195 gtk_text_view_motion_event().
3196 (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
3198 * gtk/gtktextview.c (select_all): New keybinding signal for
3199 (un)selecting the whole buffer. Bound to C-a/C-\. (see #107889)
3201 * gtk/gtkcalendar.c (calendar_timer):
3202 (stop_spinning): Replace deprecated gtk_timeout_* functions by
3203 their GLib counterparts. (#114429)
3205 * gtk/gtktreestore.c (gtk_tree_store_new):
3206 * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on
3209 Wed Jun 4 19:42:17 2003 Owen Taylor <otaylor@redhat.com>
3211 * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
3212 When drawing underlines, join up adjacent runs
3213 where possible, so we don't get changes in
3214 shaper/font/etc. breaking underlines. (#103662,
3217 Wed Jun 4 19:22:58 2003 Jonathan Blandford <jrb@redhat.com>
3219 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
3220 Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
3221 improve the speed of inserting rows into an already sorted list,
3224 Wed Jun 4 19:24:28 2003 Owen Taylor <otaylor@redhat.com>
3226 * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
3227 track of when we have a clip mask set for the GC,
3228 and when we unset it, or switch to a clip region,
3229 immediately call XSetClipMask (..., None) to avoid
3230 Xlib caching stale data. (#111806)
3232 * gtk/gtktextdisplay.c: Don't set a clip mask
3233 when drawing alpha pixmaps; it isn't necessary any more.
3236 Wed Jun 4 18:27:44 2003 Owen Taylor <otaylor@redhat.com>
3238 * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3239 gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
3240 Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
3243 * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
3244 gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
3245 Use state_type = STATE_INSENSITIVE for insensitive menu items.
3247 Wed Jun 4 21:25:35 2003 Kristian Rietveld <kris@gtk.org>
3251 * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
3252 assert for get_info. (reported by Michael Natterer),
3253 (gtk_tree_view_expand_all_emission_helper),
3254 (gtk_tree_view_expand_all_helper): emit row_expanded for all
3255 expanded rows during an _expand_all operation. (Fixes #111280,
3256 reported by Benjamin Bayart).
3258 Tue Jun 3 18:32:30 2003 Owen Taylor <otaylor@redhat.com>
3260 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
3261 respond to pings on a root window; prevents infinite
3262 loops if we are selecting for SubstructureNotify on the
3263 root window. (#111945, Sergey V. Udaltsov)
3265 Tue Jun 3 17:39:16 2003 Owen Taylor <otaylor@redhat.com>
3267 #71597, reported by Morten Welinder
3269 * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
3270 (Patch from Christian Petig)
3272 * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
3273 Major rewrite of 555 and 565 conversion routines:
3275 - Move all the bit shifting into a small block of macros,
3276 eliminating much duplication of complicated arithmetic.
3277 - Get rid of 2-pixels at a time code, which was buggy,
3278 hard to maintain, caused unaligned accesses, and
3279 probably didn't actually perform any better.
3280 - Simplify cases where different data types were
3281 used for the little and big endian cases, use
3282 GUINT16_SWAP_LE_BE() where appropriate.
3284 Tue Jun 3 15:05:47 2003 Owen Taylor <otaylor@redhat.com>
3286 * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
3287 bad optimization for src_rowstride == dest_stride.
3288 (Didn't consider the case where we were copying only
3289 partial widths of a wider source buffer)
3290 (#113034, reported by Hans Petter Jansson)
3292 2003-06-03 Michael Natterer <mitch@gimp.org>
3294 * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
3295 reenabled button_release events for xinput devices. (#113948)
3297 2003-06-03 Christian Rose <menthos@menthos.com>
3299 * configure.in: Added "li" to ALL_LINGUAS.
3301 Mon Jun 2 18:58:54 2003 Owen Taylor <otaylor@redhat.com>
3303 * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
3304 map the event window if the notebook isn't mapped. (#113980,
3307 2003-06-02 Sven Neumann <sven@gimp.org>
3309 * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
3311 * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
3313 2003-06-01 Matthias Clasen <maclas@gmx.de>
3315 * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add
3316 Since: 2.4 to the docs.
3318 * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
3319 an example to the docs. (#98427)
3321 2003-05-30 Murray Cumming <murrayc@usa.net>
3323 * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
3324 gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
3325 uses the new private data system - see g_type_class_add_private() in
3326 gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
3328 2003-05-30 Matthias Clasen <maclas@gmx.de>
3330 * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
3331 signature of gtk_notebook_draw_arrow() for Solaris builds to go
3332 through. (#114043, Anand Subramanian)
3334 Thu May 29 18:30:35 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3336 * modules/input/imipa.c:
3337 use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
3339 Thu May 29 18:08:01 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3341 * gtk/gtkimmodule.c (_gtk_im_module_list):
3342 use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
3344 Thu May 29 09:34:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3346 * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
3347 label of default input method localizable.
3348 * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3349 use translations of input method context names
3350 * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
3351 modules/input/iminuktitut.c, modules/input/imthai-broken.c,
3352 modules/input/imti-er.c, modules/input/imti-et.c
3353 modules/input/imviqr.c, modules/input/imxim.c
3354 use GETTEXT_PACKAGE instead of "gtk+" for domain name.
3357 Thu May 29 18:23:01 2003 Kristian Rietveld <kris@gtk.org>
3361 * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
3362 grab separate, the user might clear the tree in the focus-in
3363 callback. (Fixes #113086, testcase from Felipe Heidrich).
3365 Thu May 29 18:06:26 2003 Kristian Rietveld <kris@gtk.org>
3369 * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
3370 of row reference when we unset the model. Also reset
3371 dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
3373 Thu May 29 17:12:19 2003 Kristian Rietveld <kris@gtk.org>
3377 * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
3378 the current editing, if it exists. (Fixes #108956, reported by
3381 Thu May 29 17:06:09 2003 Kristian Rietveld <kris@gtk.org>
3385 * gtk/gtktreeview.c (check_selection_helper): new function,
3386 (gtk_tree_view_row_deleted): traverse the tree from the
3387 deleted node to see whether the selection changed, instead of
3388 just checking this node. (Fixes #107400, reported by 'Duncan').
3390 Thu May 29 16:31:34 2003 Kristian Rietveld <kris@gtk.org>
3394 * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
3395 (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
3396 instead of _maybe_begin_dragging_row, so the icon can be
3397 overridden by apps. (Fixes #104374, patch from Daniel Elstner).
3399 Thu May 29 16:14:04 2003 Kristian Rietveld <kris@gtk.org>
3403 * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
3404 cell_area x/width for the expander if needed. (Fixes #101748,
3405 reported by Dave Cook and Mariano Suarez-Alvarez).
3407 Thu May 29 16:01:38 2003 Kristian Rietveld <kris@gtk.org>
3411 * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
3412 if tree/node are still the same after _internal_select_node.
3413 (Fixes #92256, reported by edscott).
3415 Thu May 29 15:38:30 2003 Kristian Rietveld <kris@gtk.org>
3417 Fixes #75745, reported by Richard Hult. Merged from stable.
3419 * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
3420 GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
3423 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3424 if we are rendering a cursor row, and the cell the be
3425 processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
3426 flag (else we unset it).
3428 2003-05-27 Matthias Clasen <maclas@gmx.de>
3430 * gtk/gtkwindow-decorate.c:
3431 * gtk/gtktreeprivate.h:
3433 * gdk/win32/gdkwindow-win32.h:
3434 * gdk/linux-fb/gdkprivate-fb.h:
3435 * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
3436 unspecified signedness. (#112919, Morten Welinder)
3438 * gtk/queryimmodules.c (escape_string):
3439 * gtk/gtktextbtree.c (_gtk_text_btree_get_text):
3440 * gtk/gtksettings.c (_gtk_settings_parse_convert):
3441 * gtk/gtkrc.c (gtk_rc_parse_assignment):
3442 * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
3443 * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
3444 occurances of g_string_new ("") by g_string_new (NULL). (#106975,
3447 2003-05-27 Tor Lillqvist <tml@iki.fi>
3449 * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
3450 files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
3452 * gdk/Makefile.am: libgdk-win32-2.0.la depends on
3453 win32/libgdk-win32.la.
3455 * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
3457 Sat May 24 22:19:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3459 * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
3460 scrollbar slider length 21 instead of 7.
3462 2003-05-23 Matthias Clasen <maclas@gmx.de>
3464 * gtk/gtknotebook.c: Add support for up to four scroll
3465 arrows. Control their display by new style properties
3466 "has_forward_stepper", "has_backward_stepper",
3467 "has_secondary_forward_stepper" and
3468 has_secondary_backward_stepper". (#110540)
3470 * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
3471 click_child three bits wide, add
3472 has_{before,after}_{previous,next} fields.
3474 * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
3475 focus out of hex_entry. (#112665)
3476 (hex_focus_out): New signal handler for focus out of hex entry.
3478 Wed May 21 19:01:06 2003 Owen Taylor <otaylor@redhat.com>
3480 * gtk/gtkwidget.c (gtk_widget_realize):
3481 g_return_if_fail() if
3482 GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
3483 (#107872, Christian Reis)
3485 2003-05-22 Matthias Clasen <maclas@gmx.de>
3487 * gtk/gtkfilesel.c (gtk_file_selection_create_dir):
3488 (gtk_file_selection_rename_file): Some keynav improvements for the
3489 "Rename File" and "Create Directory" subdialogs: Enter in entry
3490 activates default, default is "Create"/"Rename", Escape cancels
3492 (gtk_file_selection_set_filename): Add a hint about opening
3493 directories. (#113175)
3495 2003-05-22 Matthias Clasen <maclas@gmx.de>
3497 * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
3498 Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
3501 Wed May 21 15:53:14 2003 Owen Taylor <otaylor@redhat.com>
3503 * gtk/gtkprogress.c (gtk_progress_set_format_string,
3504 gtk_progress_set_show_text): Always queue a resize ...
3505 we rely on the size-allocate to do the update, plus a
3506 different format can actually change our size requisition.
3507 (#111052, Vasco Alexandre da Silva Costa)
3509 * gtk/gtkprogress.c (gtk_progress_changed): Track
3510 ::changed as well as ::value_changed, and queue a
3511 resize on ::changed when necessary.
3513 * gtk/gtkprogress.c (gtk_progress_set_adjustment):
3514 Call gtk_progress_changed() here to update or
3515 queue a resize as necessary.
3517 Wed May 21 14:06:13 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3519 * gtk/gtkimcontextsimple.c: added composing rules of
3520 Greek accented letters, patch by Vasilis Vasaitis (#107507)
3522 Wed May 21 13:19:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3524 * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle):
3525 * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
3526 gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
3528 Wed May 21 12:10:25 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3530 * gtk/gtkimcontextsimple.c:
3531 code that can check the compose table for ascending order,
3532 by Vasilis Vasaitis (#104862).
3534 Wed May 21 12:52:01 2003 Owen Taylor <otaylor@redhat.com>
3536 * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need
3537 to pass the unmasked state to gdk_keymap_translate_keyboard_state()
3538 to handle the case where a modifier not in the mask
3539 (like Num_Lock) changes the key value, so replace
3540 the masked state with a state/mask pair. (#106913,
3543 * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
3544 in state/mask pair to _gtk_key_hash_lookup()
3546 Tue May 20 21:58:00 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3548 * modules/input/gtkimcontextxim.c (xim_info_display_closed):
3549 fix a memory leak, free input context list (#113259).
3551 2003-05-21 Matthias Clasen <maclas@gmx.de>
3553 * configure.in (all_loaders): Add pcx.
3555 * gtk/gtkcalendar.c: Make calendar controls spin. (#112540)
3557 Tue May 20 17:27:24 2003 Owen Taylor <otaylor@redhat.com>
3559 * gtk/gtkimmodule.c (gtk_im_module_init): Silently
3560 accept a missing gtk.immodules file, some people
3561 want to run without one. (#112406, patch from
3564 Tue May 20 17:05:31 2003 Owen Taylor <otaylor@redhat.com>
3566 * gtk/gtkwindow.c (gtk_window_compute_hints): Fix
3567 height/width confusion (#113370, Xan Lopez)
3569 Tue May 20 15:48:45 2003 Owen Taylor <otaylor@redhat.com>
3571 * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
3572 zero all unused parts of client messages (Mainly Motif DND
3573 and EWMH). Also, fix a couple places where we were putting
3574 contents into Motif DND messages that didn't belong.
3575 (#113361, EWMH problem reported by Lubos Lunak)
3577 * gtk/gtkselection.c (_gtk_selection_request): Handle the
3578 case where the property type for the multiple atoms is
3579 ATOM_PAIR by doing the conversions ourselve. This is
3580 needed for Xt inter-operation.
3582 2003-05-19 Arafat Medini <lumina@silverpen.de>
3584 * configure.in: Added ar to ALL_LINGUAS
3586 2003-05-19 Matthias Clasen <maclas@gmx.de>
3588 * gtk/gtksettings.c (gtk_rc_property_parse_border,
3589 gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
3590 gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
3593 * gtk/gtkwidget.c (gtk_widget_class_install_style_property,
3594 gtk_widget_class_install_style_property_parser): Add docs.
3596 2003-05-17 Matthias Clasen <maclas@gmx.de>
3598 * tests/prop-editor.c: Add navigation for object properties, so
3599 that you can easily edit the properties of the parent of a widget.
3602 Wed May 14 17:45:32 2003 Owen Taylor <otaylor@redhat.com>
3604 * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
3605 Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis
3606 inconsistency and leave the old name as an aliass (#104873)
3608 Wed May 14 16:40:09 2003 Owen Taylor <otaylor@redhat.com>
3610 * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
3611 from Charles Schmidt to add missing notify (#108305)
3613 Wed May 14 16:00:51 2003 Owen Taylor <otaylor@redhat.com>
3615 * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
3616 (#105500, Morten Welinder.)
3618 Wed May 14 09:05:11 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3620 * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
3621 instead of gumake for XNFilterEvents event mask(#110493).
3623 2003-05-11 Anders Carlsson <andersca@codefactory.se>
3625 * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
3626 a GObject. (#112762)
3628 2003-05-08 Sven Neumann <sven@gimp.org>
3630 * configure.in: set the HAVE_X11R6 automake conditional to false
3631 if not compiling for X11.
3633 2003-05-08 Matthias Clasen <maclas@gmx.de>
3635 * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options):
3636 (gtk_calendar_get_display_options): New functions.
3637 (gtk_calendar_display_options): Depreate. (#64567)
3638 (gtk_calendar_class_init): Add boolean properties for the display
3641 Tue May 6 16:50:52 2003 Owen Taylor <otaylor@redhat.com>
3643 Patch from James Henstridge to update to automake-1.7
3646 * autogen.sh: update to call newer tools.
3648 * configure.in: various updates, to use M4 macros to put
3649 variables that change each release at the top.
3650 Use AC_HELP_STRING to format help strings.
3651 Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
3653 * Makefile.am: require Automake 1.7. Remove gdk-2.0.pc and
3654 gtk+-2.0.pc on uninstall. Pass --enable-gtk-doc to configure
3657 * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
3660 * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
3661 Use BUILT_SOURCES where appropriate.
3662 Build generated files in builddir rather than srcdir.
3663 Fix uninstall and distclean targets to satisfy distcheck.
3667 * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
3668 built first, since we are now using BUILT_SOURCES.
3670 * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
3672 * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
3675 * configure.in: Update versions to 2.3.0.
3677 2003-05-06 Tor Lillqvist <tml@iki.fi>
3679 Fix for #110165 (thanks to Arnaud Charlet):
3681 * gdk/win32/gdkevents-win32.c (build_keypress_event,
3682 build_keyrelease_event): For unshifted control char, use
3683 lowercase ASCII keyval.
3684 (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
3685 UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
3686 lowercase keyval. Use build_key_event_state() here, too, instead
3687 of minor code duplication.
3689 2003-05-06 Matthias Clasen <maclas@gmx.de>
3691 * tests/testmultidisplay.c: Don't include strings.h, it's not
3692 needed anymore. (#112388)
3694 * examples/menu/itemfactory.c:
3695 * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
3696 itemfactory example.
3698 2003-05-05 Matthias Clasen <maclas@gmx.de>
3700 * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock): Actually set the
3701 icon type to the stock icon type. (#111735, Dave Bordoley)
3703 2003-05-05 Christian Rose <menthos@menthos.com>
3705 * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
3706 Removed sp, it's replaced by sr@Latn.
3708 Wed Apr 30 22:09:11 BST 2003 Tony Gale <gale@gtk.org>
3710 * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
3713 Mon Apr 28 17:54:39 2003 Jonathan Blandford <jrb@redhat.com>
3715 * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
3716 data iff the destroy func isn't NULL.
3718 Thu Apr 24 19:12:05 2003 Owen Taylor <otaylor@redhat.com>
3720 * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
3722 2003-04-23 Abel Cheung <maddog@linux.org.hk>
3724 * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
3726 Tue Apr 22 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
3728 * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
3729 of UTF-8. (#106419, Roozbeh Pournader)
3731 Tue Apr 22 15:17:25 2003 Owen Taylor <otaylor@redhat.com>
3733 * configure.in: Only check for XFT2 if we found pango-xft
3736 Tue Apr 22 15:12:19 2003 Owen Taylor <otaylor@redhat.com>
3738 * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
3739 PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
3741 Tue Apr 22 19:43:01 BST 2003 Tony Gale <gale@gtk.org>
3743 * docs/faq/gtk-faq.sgml: add note about version converage.
3745 Mon Apr 21 19:02:16 2003 Owen Taylor <otaylor@redhat.com>
3747 * gtk/gtksocket.c (activate_key): Fix prototype for
3748 activate_key. (#108927, Jason D. Hildebrand)
3750 Mon Apr 21 18:42:51 2003 Owen Taylor <otaylor@redhat.com>
3752 * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
3753 Remove geninclude.pl from CVS and don't dist it either,
3754 it is generated. (#108970, Rich Kinder)
3756 Mon Apr 21 18:35:48 2003 Owen Taylor <otaylor@redhat.com>
3758 * gtk/gtkobject.h: Remove a couple of obsolete comments,
3759 fix another comment. (#109737, Britton Kerin)
3761 Mon Apr 21 18:29:03 2003 Owen Taylor <otaylor@redhat.com>
3763 * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
3764 the source list, not just it's contents (Patch
3765 from Charles Kerr, #108243)
3767 Mon Apr 21 18:13:46 2003 Owen Taylor <otaylor@redhat.com>
3769 * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
3770 from Alex Larsson fixing problem with restacking during
3773 Mon Apr 21 15:07:29 2003 Owen Taylor <otaylor@redhat.com>
3775 * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
3776 Calling XFlush() after ungrabbing, to avoid problems if
3777 the app subsequently blocks on a long-running operation.
3778 (#106520, reported by Rajkumar Siva)
3780 Fri Apr 18 17:42:45 2003 Owen Taylor <otaylor@redhat.com>
3782 * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
3783 SKIP_TASKBAR/SKIP_PAGER to set of properties we
3784 might set on map. (#110019, problem reported
3787 Fri Apr 18 17:14:33 2003 Owen Taylor <otaylor@redhat.com>
3789 * gdk/gdkevents.c (gdk_event_copy): Fix for the
3790 case when gdk_event_copy() is called on a non-allocated
3791 event. (#109716, reported by Rich Burridge)
3793 Fri Apr 18 16:57:44 2003 Owen Taylor <otaylor@redhat.com>
3795 * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
3796 Fix pointer arithmetic on 'void *'. (#108322)
3798 Fri Apr 18 16:31:49 2003 Owen Taylor <otaylor@redhat.com>
3800 * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
3801 Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
3802 use of XAddConnectionWatch. Remove --enable-xim config option.
3803 Should fix building on X11R6 (#110523, Albert Chin)
3805 Fri Apr 18 15:56:46 2003 Owen Taylor <otaylor@redhat.com>
3807 * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
3808 Patch from Morten Welinder to catch Sun servers with a
3809 broken implementation of the RENDER extension. (#108309)
3811 Fri Apr 18 15:30:38 2003 Owen Taylor <otaylor@redhat.com>
3813 * gdk/x11/gdkwindow-x11.c (set_text_property): Use
3814 gdk_free_compound_text(), not g_free(). (#107643,
3817 Fri Apr 18 15:11:50 2003 Owen Taylor <otaylor@redhat.com>
3819 * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
3820 gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
3821 wrong use of base_finalize. (#105126, Sven Neumann)
3823 Fri Apr 18 15:06:00 2003 Owen Taylor <otaylor@redhat.com>
3825 * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
3826 '/' vs. '*' problem in aspect ration computations. (#108237)
3828 Fri Apr 18 14:15:09 2003 Owen Taylor <otaylor@redhat.com>
3830 * gdk/x11/gdkdisplay-x11.c (gdk_display_open):
3831 * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
3832 don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
3833 event, so select for both. (#108406, Egmont Koblinger)
3835 Thu Apr 17 09:57:44 2003 Jonathan Blandford <jrb@gnome.org>
3837 * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
3838 caused by not clearing the scroll_to_path.
3840 2003-04-16 Matthias Clasen <maclas@gmx.de>
3842 * gtk/gtkstyle.c: Doc additions and fixes.
3844 * gtk/gtktreeviewcolumn.c
3845 (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
3847 2003-04-14 Michael Natterer <mitch@gimp.org>
3849 * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
3850 that the iter is not reordered to its own position. Prevents model
3851 corruption for the case that the store contains only a single item
3852 (fixes bug #108387).
3856 * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
3857 new list element later so we don't leak it if we decide to return
3860 * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
3861 set selection->tree_view->priv->anchor to NULL after freeing it.
3863 2003-04-13 Matthias Clasen <maclas@gmx.de>
3865 * gtk/gtktreeviewcolumn.c
3866 (gtk_tree_view_column_cell_get_position): Document.
3868 * gtk/gtktextbuffer.c (gtk_text_buffer_select_range):
3869 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand):
3870 * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
3871 these as 2.4 additions.
3873 2003-04-09 Matthias Clasen <maclas@gmx.de>
3875 * INSTALL.in: Fix the real thing.
3877 * INSTALL: Typo fix.
3879 Mon Apr 7 19:43:15 2003 Owen Taylor <otaylor@redhat.com>
3881 * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
3882 after ungrabbing the server.
3884 * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
3887 * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
3888 Use gdk_x11_display_grab/ungrab.
3890 * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
3891 use_xshm to TRUE so SHM gets used when present.
3893 2003-04-07 Matthias Clasen <maclas@gmx.de>
3895 * gtk/gtktextlayout.c (set_para_values):
3896 * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR. (#110086,
3899 * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
3900 gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
3901 misspellings of possessive "its". (#110027, Doug Quale)
3903 2003-04-03 Matthias Clasen <maclas@gmx.de>
3905 * demos/gtk-demo/main.c (demo_find_file): Only use files from the
3906 current directory if it looks like the srcdir. (#109357)
3908 Wed Apr 2 23:02:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3910 * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
3913 * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
3914 navigation not wrap around.
3916 2003-04-02 Matthias Clasen <maclas@gmx.de>
3918 * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
3919 Return 0 if lower == upper. (#109155)
3920 (gtk_progress_get_current_percentage): Use
3921 gtk_progress_get_percentage_from_value().
3923 2003-04-01 Matthias Clasen <maclas@gmx.de>
3925 * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
3926 (#109510, Noah Levitt)
3928 Mon Mar 31 13:52:13 2003 Jonathan Blandford <jrb@redhat.com>
3930 * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
3931 members so Purify won't complain.
3933 * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
3935 2003-03-31 Matthias Clasen <maclas@gmx.de>
3937 * gtk/gtkwindow.c: Add a new property, role, corresponding to
3938 gtk_window_[gs]et_role(). (#93904)
3940 Sun Mar 30 03:57:42 2003 Jonathan Blandford <jrb@gnome.org>
3942 * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
3943 fix crash. Patch from Markus Lausser <sgop@users.sourceforge.net>
3945 2003-03-29 Matthias Clasen <maclas@gmx.de>
3947 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
3948 of labels back to normal before reparenting back. (#102387)
3950 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
3951 a default window title to match the GtkFontSelectionDialog behavior.
3953 (gtk_color_selection_dialog_new): Don't call
3954 gtk_window_set_title() if title is NULL. (bug #101975, Daniel Elstner)
3956 2003-03-29 Matthias Clasen <maclas@gmx.de>
3960 * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
3963 * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
3964 select_lines on double/triple click.
3966 * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
3967 select-by-words and select-by-lines behaviour.
3969 Fixes for bug #56248:
3971 * gtk/gtknotebook.c (stop_scrolling): New function to remove the
3972 timer and queue a redraw.
3973 (gtk_notebook_grab_notify):
3974 (gtk_notebook_state_changed): New functions to call stop_scrolling()
3976 (gtk_notebook_button_release): Use stop_scrolling().
3977 (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
3979 * gtk/gtkrange.c (stop_scrolling): New function to remove the
3980 grab, remove the timer and queue a redraw.
3981 (gtk_range_grab_notify):
3982 (gtk_range_state_changed): New functions to call stop_scrolling()
3984 (gtk_range_button_release): Use stop_scrolling().
3986 * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify):
3987 (gtk_spin_button_state_changed): Redraw after stop_spinning.
3988 (gtk_spin_button_stop_spinning): Reset click_child to correct the
3989 drawing of the arrows.
3990 (gtk_spin_button_button_release): Use a local copy of click_child,
3991 since stop_spinning() resets it.
3993 * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
3994 C-A-PgDown as alternatives to the A-less variants. (This slipped
3995 in accidentally some time ago). (#97860)
3997 2003-03-26 Sven Neumann <sven@gimp.org>
3999 * gtk/gtktreeview.c: rewrote the function that does node and arrow
4000 prelighting, queue all redraws from here (Fixes bug #108792).
4002 2003-03-20 Richard Kinder <r_kinder@yahoo.com>
4004 * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
4007 2003-03-20 Guntupalli Karunakar <karunakar@freedomink.org>
4009 * configure.in: Added "ml" in ALL_LINGUAS
4011 Sat Mar 15 18:49:27 2003 Manish Singh <yosh@gimp.org>
4013 * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
4014 G_DISABLE_DEPRECATED.
4016 2003-03-14 Tor Lillqvist <tml@iki.fi>
4018 * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
4019 GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
4020 DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
4021 multiple monitors can have negative coordinates on some of the
4022 monitors. (partial fix for #99496, Arnaud Charlet)
4024 2003-03-15 Matthias Clasen <maclas@gmx.de>
4026 * gtk/gtktextview.c: Add a "buffer" property. (#108353)
4028 2003-03-13 Sven Neumann <sven@gimp.org>
4030 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
4031 removed redundant calls to g_object_notify().
4032 (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
4035 * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
4036 (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
4037 functions return an integer value).
4039 2003-03-13 Tor Lillqvist <tml@iki.fi>
4041 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4042 WM_MOUSEMOVE, the test whether we have actually moved (and thus
4043 shouldn't generate an GDK event) moved after the call to
4044 propagate() and translate_mouse_coords(). Otherwise we were
4045 testing wrong values. (#108115, Allin Cottrell)
4046 (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
4047 way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
4049 * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
4050 is used, must copy the HCURSOR with CopyCursor(), as it is OK to
4051 destroy the GdkCursor after calling gdk_pointer_grab(). Set the
4052 cursor right away with SetCursor(), as we won't get any
4053 WM_SETCURSOR messages while the mouse is captured.
4054 (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
4055 with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
4057 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4058 WM_SYSCHAR, return FALSE from the window procedure to prevent the
4059 DefWindowProc from being called. Otherwise Windows would beep,
4060 thinking you are tring to access a (nonexistent) menu when you
4061 press Alt-something. Don't do this for Alt-Space,
4062 though. (#107454, Martyn Russell)
4064 * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
4066 Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
4068 * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
4069 [left/right] expands/collapses the tree, #108092
4071 2003-03-09 Tor Lillqvist <tml@iki.fi>
4073 * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
4074 compensate for LineTo() not drawing the end pixel. It causes more
4075 harm than benefits, see bug #81895.
4077 2003-03-08 Matthias Clasen <maclas@gmx.de>
4079 Bug #107664 continued:
4081 * gdk/x11/gdkinputprivate.h:
4082 * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove.
4083 (_gdk_input_other_event): Return gboolean.
4084 * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove.
4085 (_gdk_input_other_event): Return gboolean.
4086 * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
4088 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
4089 gboolean, remove pointless call to _gdk_input_window_none_event.
4091 * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
4092 (_gdk_input_window_none_event): Remove.
4094 * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment):
4095 (_gtk_text_iter_get_any_segment):
4096 (_gtk_text_iter_get_segment_byte):
4097 (_gtk_text_iter_get_segment_char):
4098 (_gtk_text_iter_get_text_line):
4099 (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
4100 * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
4101 * gdk/win32/gdkfont-win32.c (gdk_font_equal):
4102 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin):
4103 (gdk_window_get_origin):
4104 * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion.
4106 2003-03-06 Matthias Clasen <maclas@gmx.de>
4108 * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
4109 (#107664, Morten Welinder)
4111 * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin):
4112 * gdk/x11/gdkfont-x11.c (gdk_font_equal):
4113 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
4114 Fix TRUE/1 and FALSE/0 confusion. (#107664, Morten Welinder)
4116 * gtk/gtktextmark.c (gtk_text_mark_get_buffer):
4117 * gtk/gtkeditable.c (gtk_editable_get_chars):
4118 * gtk/gtkctree.c (gtk_ctree_find_node_ptr):
4119 * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
4120 (#107648, Morten Welinder)Fix NULL/FALSE confusion
4121 (#107648, Morten Welinder)
4123 2003-03-04 Matthias Clasen <maclas@gmx.de>
4125 * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
4127 Sun Mar 2 23:35:57 2003 Jonathan Blandford <jrb@gnome.org>
4129 * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
4130 handle rtl code. Thanks to Matthias Clasen for an initial patch
4131 to handle the RTL code.
4133 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
4135 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
4137 * gtk/gtktreeview.c: (invalidate_column),
4138 (invalidate_last_column),
4139 (gtk_tree_view_get_real_requested_width_from_column),
4140 (gtk_tree_view_size_allocate_columns),
4141 (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
4142 (gtk_tree_view_button_release_drag_column),
4143 (gtk_tree_view_update_current_reorder),
4144 (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
4145 (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
4146 (gtk_tree_view_get_background_xrange),
4147 (gtk_tree_view_get_arrow_xrange),
4148 (gtk_tree_view_is_expander_column),
4149 (gtk_tree_view_set_column_drag_info),
4150 (gtk_tree_view_move_cursor_left_right):
4153 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
4156 * gtk/gtktreeviewcolumn.c:
4157 (gtk_tree_view_column_class_init),
4158 (gtk_tree_view_column_set_property),
4159 (gtk_tree_view_column_get_property),
4160 (gtk_tree_view_column_set_expand),
4161 (gtk_tree_view_column_get_expand),
4162 (gtk_tree_view_column_cell_process_action):
4163 Add support for expand flag. Thanks to Kristian Rietveld for an
4164 initial patch for this.
4166 Fri Feb 28 02:06:17 2003 Jonathan Blandford <jrb@gnome.org>
4169 2003-03-02 Tor Lillqvist <tml@iki.fi>
4172 * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
4175 2003-03-01 Matthias Clasen <maclas@gmx.de>
4177 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
4178 (gtk_scrolled_window_set_hadjustment): Replace uses of
4179 gtk_object_new by g_object_new.
4181 Thu Feb 27 17:44:24 2003 Manish Singh <yosh@gimp.org>
4183 * demos/gtk-demo/main.c
4184 * demos/gtk-demo/tree_store.c
4185 * gdk/x11/gdkscreen-x11.c
4186 * gtk/gtkcellrenderertoggle.c
4194 * gtk/gtkmenushell.c
4198 * gtk/gtktextbuffer.c
4200 * gtk/gtktreeviewcolumn.c
4203 * tests/testtreeedit.c
4204 * tests/testtreefocus.c
4205 * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
4207 Tue Feb 25 21:55:17 2003 Jonathan Blandford <jrb@redhat.com>
4209 * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
4212 2003-02-24 Sven Neumann <sven@gimp.org>
4214 * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
4216 2003-02-21 Tomas Ogren <stric@ing.umu.se>
4218 * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
4220 2003-02-20 Matthias Clasen <maclas@gmx.de>
4222 * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag):
4223 Check if line_ancestor_parent is NULL. (#102711, Manuel Clos)
4225 * gtk/gtktextview.c (gtk_text_view_scroll_to_iter):
4226 (gtk_text_view_update_adjustments): Make sure cursor stays visible
4227 during horizontal scrolling. (#75270)
4229 2003-02-19 Matthias Clasen <maclas@gmx.de>
4231 * tests/testdnd.c: Replace gtk_timeout_* by their GLib
4232 counterparts. (#106532)
4234 * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
4235 keys_changed virtual function with the keys_changed signal.
4236 (#106512, Jeff Franks)
4238 2003-02-15 Larry Ewing <lewing@ximian.com>
4240 * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
4242 2003-02-17 Mohammad DAMT <mdamt@bisnisweb.com>
4244 * po/id.po: Added Indonesian translation
4245 * configure.in: Added "id" to ALL_LINGUAS
4247 2003-02-14 Matthias Clasen <maclas@gmx.de>
4249 * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
4251 2003-02-12 Christian Rose <menthos@menthos.com>
4253 * configure.in: Added "yi" to ALL_LINGUAS.
4255 2003-02-12 Matthias Clasen <maclas@gmx.de>
4257 Fix for #82734 and #78216:
4259 * gtk/gtktextview.c (delete_cb):
4260 (select_all_cb): New callbacks for context menu items.
4261 (popup_targets_received): Add "Delete" and "Select All" to context
4262 menu, mnemonics and title caps for all items.
4264 * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
4266 (popup_targets_received): Add "Delete" to context menu, mnemonics
4267 and title caps for all items.
4269 2003-02-09 Tor Lillqvist <tml@iki.fi>
4271 * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
4272 GetDriveType() to recognize removable drives (in order to avoid
4273 hanging if trying to access an empty floppy drive), instead of
4274 hardcoding A: and B: (#105654).
4276 2003-02-09 Matthias Clasen <maclas@gmx.de>
4278 * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in
4281 2003-02-09 Christian Rose <menthos@menthos.com>
4283 * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
4285 Fri Feb 7 04:49:46 2003 Tim Janik <timj@gtk.org>
4287 * gtk/gtkobject.c: remove quark_user_data usage in
4288 gtk_object_{g|s}et_user_data(). fixes get_user_data()
4289 returning NULL for user_data set through property interface.
4291 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
4292 warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
4293 need to be a programming error (in case of loaded data), (b) it breaks
4294 with 2.0 behaviour where extra magic could be used to create empty
4295 images. don't attempt to retrieve pixbufs from NULL extra_data.
4297 2003-02-06 Matthias Clasen <maclas@gmx.de>
4299 * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
4300 a GdkVisual *, not a GdkVisual **. (#105243)
4304 * gtk/gtkcontainer.c:
4309 * gtk/gtkmenuitem.c:
4310 * gtk/gtknotebook.c:
4311 * gtk/gtkselection.c:
4312 * gtk/gtkspinbutton.c:
4314 * gtk/gtktextview.c:
4315 * gtk/gtktooltips.c:
4316 * gtk/gtktreeview.c:
4317 * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
4318 their non-deprecated GLib counterparts.
4320 * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
4322 Sun Feb 2 16:45:57 GMT 2003 Tony Gale <gale@gtk.org>
4324 * docs/tutorial/gtk-tut.sgml: cleanups from
4325 Sebastian Rittau (#104832)
4327 2003-02-01 Tor Lillqvist <tml@iki.fi>
4331 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
4332 gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
4333 (#104108, Naofumi Yasufuku)
4335 * gdk/gdk.def: Export the above. Export
4336 gdk_screen_get_system_visual, noticed by Ed Woods.
4338 Fri Jan 31 17:45:22 2003 Manish Singh <yosh@gimp.org>
4340 * demos/pixbuf-demo.c
4341 * demos/testpixbuf.c
4342 * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
4344 Fri Jan 31 17:33:00 2003 Manish Singh <yosh@gimp.org>
4346 * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
4347 on the tab_label before unparenting it, in case the unparent
4348 drops the refcount to 0.
4350 2003-02-01 Matthias Clasen <maclas@gmx.de>
4352 * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
4353 headers. Sorry about gtk_selection_clear, Yosh.
4355 Thu Jan 30 17:16:05 2003 Manish Singh <yosh@gimp.org>
4357 * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
4358 too, for gtkwidget.c. Remember people, when introducing new
4359 deprecations, make sure internal code isn't using it, or if so,
4360 reorganize appropriately like I've done in other places.
4362 * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
4364 2003-01-31 Matthias Clasen <maclas@gmx.de>
4366 * gtk/gtkselection.h:
4367 * gtk/gtkselection.c (gtk_selection_clear): Deprecate. (#85683)
4370 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
4371 (gdk_pixbuf_render_to_drawable_alpha): Deprecate. (#60582)
4373 * gtk/gtkcolorsel.h:
4374 * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4377 * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
4379 * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
4380 and gtk_input_* functions. (#71596)
4382 * gtk/gtkentry.c (gtk_entry_move_cursor):
4383 * gtk/gtklabel.c (gtk_label_move_cursor): Handle
4384 GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
4386 * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs(). (#79803)
4388 * gtk/gtkitemfactory.h:
4389 * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate.
4392 Thu Jan 30 23:48:30 2003 Kristian Rietveld <kris@gtk.org>
4394 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
4395 only count the special cell if it is also visible,
4396 (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
4397 account from visible cells,
4398 (gtk_tree_view_column_cell_get_position): likewise, (Reported and
4399 testcase provided by Vasco Alexandre da Silva Costa, via IRC,
4400 tracking bug was #104563).
4402 Thu Jan 30 23:46:15 2003 Kristian Rietveld <kris@gtk.org>
4404 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
4405 subtract expander space and focus line space from the extra space
4406 we are about the allocate. (Fixes #104635).
4408 Thu Jan 30 23:42:03 2003 Kristian Rietveld <kris@gtk.org>
4410 * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
4411 (Fixes #96242, patch from Soeren Sandmann).
4413 Thu Jan 30 16:54:29 2003 Owen Taylor <otaylor@redhat.com>
4415 * gtk/gtknotebook.c: Patch from Soeren Sandmann
4416 to update the states of the tab label child
4417 widgets to match the state of the tabs.
4418 (#93389, Reported by Tommi Komulainen)
4420 Thu Jan 30 16:30:54 2003 Owen Taylor <otaylor@redhat.com>
4422 * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
4423 EXTRA_DIST, and from dist rules. (#102231)
4425 2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
4427 * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
4428 function that sets the icon's and label's packing options and
4429 visibility based on toolbar->style.
4431 (gtk_toolbar_internal_insert_element):
4432 (gtk_real_toolbar_style_changed): Make use of
4433 set_child_packing_and_visibility() to clean up the code and get
4434 the packing right for icon-only/text-only toolbars. (#104679)
4436 (get_first_child): Remove, and use gtk_bin_get_child() instead.
4438 2003-01-30 Matthias Clasen <maclas@gmx.de>
4440 * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
4441 GTK_MOVEMENT_HORIZONTAL_PAGES. (#68947)
4443 * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
4445 Thu Jan 30 16:01:29 2003 Owen Taylor <otaylor@redhat.com>
4447 * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the
4448 attempt-to-allocate then free code. To handle multiple
4449 people allocating colors at the same time, we need
4450 to just go ahead and try. (#102213, Shivram U)
4452 2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
4454 * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
4455 rectangle using the background color rather than relying on
4456 gdk_window_clear_area(), so that the palette works properly with
4457 pixmap themes. (#101732)
4459 * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
4460 to fill the drawing area in the background color.
4462 Wed Jan 29 14:11:21 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
4464 * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
4465 initialization error for selecting input style (#103549).
4467 Wed Jan 29 17:02:41 2003 Owen Taylor <otaylor@redhat.com>
4469 * gdk/gdkkeyuni.c (get_decimal_char): Make the
4470 translation of GDK_KP_Decimal dependent on LC_NUMERIC.
4473 Wed Jan 29 15:43:56 2003 Owen Taylor <otaylor@redhat.com>
4475 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
4476 Make up from the menu bar go to the end of the submenu.
4477 (#96114, Ian Peters.)
4479 * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate):
4480 Only do the select-but-not-activate stuff if the
4481 menu is already active. Otherwise, just activate.
4482 (#101690, Arvind Samptur)
4484 Tue Jan 28 15:18:24 2003 Owen Taylor <otaylor@redhat.com>
4486 * autogen.sh (have_automake): Fix version in complaint
4487 message about automake. (#104366, Rich Burridge)
4489 Mon Jan 27 16:38:13 2003 Owen Taylor <otaylor@redhat.com>
4491 * configure.in: Remove SOEXT stuff; it doesn't work portably.
4493 Mon Jan 27 22:45:15 2003 Kristian Rietveld <kris@gtk.org>
4495 * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
4496 we appended/prepended, send the rows_reordered signal to the
4497 correct level ... (Reported by Matthew Tuck).
4499 Mon Jan 27 22:43:11 2003 Kristian Rietveld <kris@gtk.org>
4501 * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
4502 out if the level only has one item, recurse over the child if there
4503 is one. (Fixes #100458, reported by Gaël Le Mignot).
4505 Mon Jan 27 22:41:26 2003 Kristian Rietveld <kris@gtk.org>
4507 * gtk/gtktreeview.c (gtk_tree_view_set_model),
4508 (gtk_tree_view_search_equal_func): make TreeView search handle
4509 all types which are transformable by GValue. (Fixes #99803, reported
4512 Mon Jan 27 22:39:25 2003 Kristian Rietveld <kris@gtk.org>
4514 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
4515 *really* handle unsetting the ID. Slightly modified patch from
4516 Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
4518 Mon Jan 27 22:33:43 2003 Kristian Rietveld <kris@gtk.org>
4520 Fixes the total GtkTreeSortable mess, and #83195, reported by
4523 * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
4524 (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
4525 (gtk_tree_store_set_default_sort_func): use the constant
4526 GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
4527 work as advertised by the documentation.
4529 * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
4530 (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
4531 (gtk_list_store_set_default_sort_func): likewise.
4533 * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
4534 (gtk_tree_model_set_sort_func),
4535 (gtk_tree_model_sort_set_default_sort_func): make functions work
4536 as advertised by the documentation.
4538 Mon Jan 27 22:31:56 2003 Kristian Rietveld <kris@gtk.org>
4540 * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
4541 before we decide if we edit. (fixes #100973, reported by Dave Cook).
4543 Mon Jan 27 22:29:30 2003 Kristian Rietveld <kris@gtk.org>
4545 Bug report and test case from Paolo Maggi via IRC.
4547 * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
4548 (gtk_list_store_move): update tail if needed.
4550 Mon Jan 27 16:19:59 2003 Owen Taylor <otaylor@redhat.com>
4552 * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
4553 might be NULL. Use gtk_widget_get_display (widget)
4554 (#102860, Thomas Leonard)
4556 Mon Jan 27 15:58:31 2003 Owen Taylor <otaylor@redhat.com>
4558 * configure.in: Fix --without-modules/--disable-modules
4559 confusion that was causing --disable-modules not to work.
4560 (#102865, Akira Tagoh)
4562 * configure.in: Fix problem with plain --with-xinput
4563 (#104266, Akira Tagoh)
4565 2003-01-24 Sebastian Rittau <srittau@jroger.in-berlin.de>
4567 * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
4570 Fri Jan 24 17:06:41 GMT 2003 Tony Gale <gale@gtk.org>
4572 * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
4574 Thu Jan 23 21:15:29 GMT 2003 Tony Gale <gale@gtk.org>
4576 * docs/faq/gtk-faq.sgml: Learn to spell Library
4578 Thu Jan 23 20:56:56 GMT 2003 Tony Gale <gale@gtk.org>
4579 * Sebastian Rittau <srittau@jroger.in-berlin.de>:
4581 docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
4582 Composite widget" to modern standards. (I.e. use gobject instead of
4583 glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
4585 * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
4586 code in Appendix C to reflect above changes.
4588 * examples/rangewidgets/rangewidgets.c: From Roger Leigh
4589 auto resize on page size change
4591 2003-01-23 Daniel Elstner <daniel.elstner@gmx.net>
4593 * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
4594 in addition to show_all in order to keep them symmetric. (#102201)
4596 Wed Jan 22 14:18:46 2003 Manish Singh <yosh@gimp.org>
4598 * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
4599 the end of the function, so there is a statement following the "out"
4600 label in all cases (fixes #101961)
4602 2003-01-22 Christian Rose <menthos@menthos.com>
4604 * configure.in: Added "mn" to ALL_LINGUAS.
4606 Wed Jan 15 17:02:18 2003 Owen Taylor <otaylor@redhat.com>
4608 * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
4609 Fix off-by-one error on the backward iteration loop,
4610 that was causing the wrong range to be redrawn.
4611 (at least part of #72734)
4613 2003-01-21 Matthias Clasen <maclas@gmx.de>
4615 * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
4616 vadjustment value after changing its bounds. (fixes #101963 and
4619 * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid
4620 unnecessary roundtrip failures. (#93500)
4622 2003-01-19 Tor Lillqvist <tml@iki.fi>
4626 Fix for #103614 and some other problems with GtkFileSelection on
4629 * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
4630 g_ascii_tolower(). Windows file names are case-insensitive for all
4633 * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
4634 G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
4635 earlier, as it includes config.h unconditionally, and gtkprivate.h
4636 redefines GTK_LOCALEDIR.
4637 (struct _CompletionDirSent): Ifdef out the fields not used on
4639 (compare_utf8_filenames, compare_sys_filenames): Need different
4640 comparison implementation for UTF-8 file names and system locale
4641 file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
4642 need to casefold all Unicode letters.
4643 (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
4644 variables not used on Win32 to avoid warnings about unused
4646 (open_ref_dir): Use g_path_skip_root() to skip past potential
4647 drive letter in front of the leading (back)slash.
4648 (open_new_dir): Ifdef out use of CompletionDirSent fields not
4650 (correct_parent): Bypass inode check also on Cygwin.
4652 Fix bug noticed by Alex Shaduri: Tooltips and other
4653 GDK_WINDOW_TEMP windows were activated. This looked very odd, and
4654 was a regression from earlier versions.
4656 * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
4657 behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
4658 (gdk_window_move, gdk_window_resize): Add debug logging.
4660 * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
4661 WM_SIZE message for a non-visible (withdrawn) window, don't clear
4662 the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
4663 even if its size changes.
4665 2003-01-16 Matthias Clasen <maclas@gmx.de>
4667 * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
4668 (totally_invisible_line): Fix an incorrect optimization which
4669 caused invisible paragraphs to be occasionally misrendered.
4671 Wed Jan 15 15:55:47 2003 Owen Taylor <otaylor@redhat.com>
4673 * gtk/gtksettings.c: Set the double click speed from
4674 XSETTINGS when creating a new GtkSettings object
4675 as well as when getting a notify. (#103601, reported
4678 Wed Jan 15 14:56:09 2003 Owen Taylor <otaylor@redhat.com>
4680 * gtk/gtknotebook.c (gtk_notebook_size_allocate):
4681 Show/hide the notebook event window as necessary,
4682 we weren't previously keeping the visibility updated
4685 2003-01-15 Matthias Clasen <maclas@gmx.de>
4687 * examples/menu/itemfactory.c:
4688 * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
4691 2002-12-29 Murray Cumming <murrayc@usa.net>
4695 * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
4696 Actually implement the GtkTreeDragSource::row_draggable virtual
4697 function in GtkListStore and GtkTreeStore instead of just checking
4698 whether it's implemented at all. This means that DnD isn't broken by
4699 gtkmm's virtual function wrappers. The alternative would be to
4700 hard-code the TRUE return value into gtkmm's wrappers, but that's
4701 part of GTK+'s implementation, not it's API.
4703 Tue Jan 14 23:42:29 2003 Kristian Rietveld <kris@gtk.org>
4705 * gtk/gtktreeview.c: fix compiler warning.
4707 Tue Jan 14 23:29:00 2003 Kristian Rietveld <kris@gtk.org>
4709 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4710 make sure exposed pixbufs are clipped to the exposed area before
4711 drawing, which is a slight speedup. (#102379, patch from Soeren
4714 Tue Jan 14 23:26:41 2003 Kristian Rietveld <kris@gtk.org>
4716 * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
4717 only free scroll_to_path when the complete tree has been validated.
4718 This makes sure that we scrolled to the correct path.
4720 Tue Jan 14 23:25:32 2003 Kristian Rietveld <kris@gtk.org>
4722 * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
4723 background of widget->window and bin->window. (Fixes #96650, reported
4726 Tue Jan 14 23:24:02 2003 Kristian Rietveld <kris@gtk.org>
4728 * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
4729 updates before scrolling, avoiding a "selection streak". (Fixes
4730 #101235, patch from Soeren Sandmann).
4732 Tue Jan 14 23:22:13 2003 Kristian Rietveld <kris@gtk.org>
4734 * gtk/gtktreeview.c (validate_visible_area): actually put values
4735 in the requisition using gtk_widget_size_request. (Fixes #100172,
4736 reported by Kjartan Maraas).
4738 Tue Jan 14 23:19:45 2003 Kristian Rietveld <kris@gtk.org>
4740 * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
4741 arrow animation timeout before we actually reorder the rbtree. If
4742 we don't do this we can get stuck arrows,
4743 (cancel_arrow_animation): new function. (Fixes #93629, part 2,
4744 reported and testcase provided by Hans Petter Jansson).
4746 Tue Jan 14 23:18:21 2003 Kristian Rietveld <kris@gtk.org>
4748 * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
4749 anchor_path should be start_path, not end_path. (Fixes #102618,
4750 patch from Carlos Garnacho Parro).
4752 Tue Jan 14 23:16:15 2003 Kristian Rietveld <kris@gtk.org>
4754 * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
4755 only correct new_pos if we don't move to the head/tail.
4757 Tue Jan 14 23:11:55 2003 Kristian Rietveld <kris@gtk.org>
4759 * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
4760 the parent_iter if depth >= 1, so we send the reordered signal to
4761 the correct level, remove debugging printfs which I forgot the remove
4762 earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
4763 testcase provided by Matthew Tuck).
4765 Tue Jan 14 20:58:44 2003 Kristian Rietveld <kris@gtk.org>
4767 * gtk/gtktreeview.c (invalite_last_column): split out actual column
4768 invalidation into invalidate_column(),
4769 (gtk_tree_view_size_allocate_columns): invalidate column if the
4770 new width is larger than the old width.
4771 (fixes #102890, reported by Alex Duggan).
4773 2003-01-14 Matthias Clasen <maclas@gmx.de>
4775 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
4776 invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
4779 * gtk/gtktextiter.c,
4780 gtk/gtktextiter.h: Add some variant movement functions which
4781 skip invisible chars, and do some cleanups.
4783 2003-01-12 Tor Lillqvist <tml@iki.fi>
4787 * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
4788 as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
4791 * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
4795 * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
4797 * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
4798 gtk-demo}.exe and share/gtk-2.0.
4800 * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
4801 Implement by setting or clearing the WS_EX_TOOLWINDOW extended
4803 (gdk_window_set_type_hint): Add all cases to the switch (not all
4804 do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
4805 calling gdk_window_set_skip_taskbar_hint(). This means that GTK
4806 won't know that the skip_taskbar hint is on for the window, is
4809 Wed Jan 8 18:43:03 2003 Manish Singh <yosh@gimp.org>
4811 * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
4812 <string.h> for strlen.
4814 * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
4815 <string.h> for strrchr.
4817 * tests/testgtk.c (create_saved_position): "x" and "y" properties
4818 for widgets no longer exist, use gtk_window_move instead.
4820 * test/testtextbuffer.c (check_get_set_text): cast strlen to
4823 2003-01-08 Matthias Clasen <maclas@gmx.de>
4825 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
4826 the selection in the presence of invisible segments.
4828 2003-01-07 Matthias Clasen <maclas@gmx.de>
4830 * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
4831 to "select all" and "unselect all". (#102065)
4833 * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
4834 the just_selected_element is unused.
4836 * gtk/gtktextview.c (extend_selection): New helper function to
4837 find the range that should be added to the selection.
4838 (selection_motion_event_handler):
4839 (gtk_text_view_start_selection_drag):
4840 (gtk_text_view_end_selection_drag):
4841 (selection_motion_event_handler):
4842 (selection_scan_timeout): Support select-by-words/lines.
4843 (gtk_text_view_button_press_event): Start a selection drag on
4844 double/triple clicks. (#78499)
4846 2003-01-06 Matthias Clasen <maclas@gmx.de>
4848 Implement a utility function proposed in #102534:
4850 * gtk/gtktextbtree.h:
4851 * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
4852 (_gtk_text_btree_place_cursor): Now a simple wrapper around
4853 _gtk_text_btree_select_range().
4855 * gtk/gtktextbuffer.h:
4856 * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
4857 (gtk_text_buffer_place_cursor): Now a simple wrapper around
4858 gtk_text_buffer_select_range().
4860 2003-01-05 Havoc Pennington <hp@pobox.com>
4862 * configure.in: fix a stray bracket that was breaking the build
4864 2003-01-05 Tor Lillqvist <tml@iki.fi>
4866 * gtk-zip.sh.in: Use correct DLL and import library names, with
4867 GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
4868 (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
4870 * configure.in: Improve check for dimm.h.
4872 * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
4873 gdk-pixbuf/Makefile.am.
4875 * gdk-pixbuf/makefile.mingw.in
4876 * gdk-pixbuf/pixops/makefile.mingw.in
4877 * gdk/makefile.mingw.in
4878 * gdk/win32/makefile.mingw.in
4879 * gtk/makefile.mingw.in: Remove. Not maintained anyway.
4881 * gdk-pixbuf/Makefile.am
4882 * gdk-pixbuf/pixops/Makefile.am
4884 * gdk/win32/Makefile.am
4886 * configure.in: Remove makefile.mingw{,.in} from here, too.
4888 * README.win32: Updates. Don't mention the now removed
4889 makefile.mingw files.
4892 * gtk/gtk.def: Add a couple of missing entries.
4894 * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
4896 * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
4899 * gdk/win32/rc/Makefile.am: Add hack to help
4900 build/win32/lt-compile-resource decide which kind of libtool
4901 object file to produce.
4903 2003-01-05 Matthias Clasen <maclas@gmx.de>
4905 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
4906 C-Down step through the sequence of paragraph ends (old behaviour
4907 included paragraph starts). (#80340, patch by Narayana Pattipati)
4909 * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
4910 Check for a tag toggle at the start iterator before calling
4911 gtk_text_iter_forward_to_tag_toggle(). (#102090, patch by Daniel
4914 2003-01-04 Matthias Clasen <maclas@gmx.de>
4916 * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
4917 and /*< private >*/ as appropriate. (#97211)
4919 2003-01-04 Tor Lillqvist <tml@iki.fi>
4921 * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
4922 distribute gtk-zip.sh.in.
4924 * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
4926 2003-01-03 Havoc Pennington <hp@pobox.com>
4928 * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
4930 * docs/text_widget_internals.txt: add a file documenting some of
4931 the text widget internals
4933 2003-01-02 Matthias Clasen <maclas@gmx.de>
4935 * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
4936 return NULL. (#102069)
4938 2003-01-01 Matthias Clasen <maclas@gmx.de>
4940 * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
4941 a main() in the library is obviously bad.
4943 2002-12-27 Matthias Clasen <maclas@gmx.de>
4945 * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
4946 cursor at drop point. (#72384)
4947 (gtk_text_view_size_allocate): Update the horizontal adjustment
4950 2002-12-25 Matthias Clasen <maclas@gmx.de>
4952 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
4953 selection wrt. to empty lines. (#90435, #90582, #91619)
4955 * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
4956 Keep the cursor on screen. (#96929)
4958 2002-12-24 Matthias Clasen <maclas@gmx.de>
4960 * gtk/gtktextbuffer.c (paste_from_buffer):
4961 (clipboard_text_received): Let the user action span the insertion
4962 and the deletion of the old selection. (#82844)
4964 2002-12-23 Matthias Clasen <maclas@gmx.de>
4966 * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
4967 Don't call gtk_text_iter_backward_sentence_start() if
4968 count is zero. (#99115)
4970 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
4971 move_cursor() even if the cursor hasn't moved, since it has the
4972 side effect of canceling the selection. (#81395, #98537, #98333)
4974 2002-12-22 Matthias Clasen <maclas@gmx.de>
4976 * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
4977 with empty ranges. (fixes #101564 and #80637)
4979 2002-12-21 Tor Lillqvist <tml@iki.fi>
4981 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
4982 sets the window style and extended window style, and adjusts the
4983 width and height to take the window decorations into account
4984 earlier. The adjusted width and height used to be ignored. Remove
4985 the local x, y, width and height variables, no need to further
4986 confuse the code by having local copies. (Partial fix, I hope, for
4989 (gdk_window_move): When moving top-level windows, take title bar
4990 and border width into account, offsetting the coordinates before
4991 calling SetWindowPos().
4993 (gdk_window_set_decorations, gdk_window_set_functions):
4994 Reimplement, taking into account the peculiar semantics of
4995 GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
4997 (gdk_window_get_decorations): Implement. (#98981)
4999 (gdk_window_set_type_hint): When setting
5000 GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
5003 * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
5005 2002-12-21 Matthias Clasen <maclas@gmx.de>
5007 * gtk/gtktextview.c (gtk_text_view_set_background): New static
5008 function to set the background of all windows.
5009 (gtk_text_view_style_set): Use gtk_text_view_set_background().
5010 (gtk_text_view_state_changed): New function; change background
5011 according to state. (#88126)
5013 2002-12-21 Havoc Pennington <hp@pobox.com>
5015 * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation