1 2003-09-22 Matthias Clasen <maclas@gmx.de>
3 * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
4 group member to test the fix for #122904.
6 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
7 Add the action to the group before activating it, otherwise we
8 may end up with multiple active group members. (#122904, Marco
11 2003-09-21 Matthias Clasen <maclas@gmx.de>
13 Changes to make cross-process merging feasible:
15 * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
16 merged UI definition. Remove the "changed" signal, since its role
17 is now filled by "notify::ui". Instead add a "actions-changed" signal
18 which gets emitted when the set of actions changes.
20 * gtk/gtktoggleactionprivate.h:
21 * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
22 Add a "draw_as_radio" property to toggle actions so that they can be
23 used as proxies for radio actions much like the "draw_as_radio"
24 property on check menu items enables them to operate as proxies for
27 Prevent the "show_all" trap for action-based menus (see
28 http://mail.gnome.org/archives/gtk-devel-list/2003-September/
31 * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
32 calls from static functions.
34 * gtk/gtkuimanager.c (update_node):
35 * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
36 widgets whose visibility is externally controlled.
38 * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
39 "no_show_all" property with setter and getter. When TRUE, it keeps
40 gtk_widget_{hide,show}_all() from modifying the visibility of the
41 widget and its children.
43 Sun Sep 21 23:13:37 2003 Soeren Sandmann <sandmann@daimi.au.dk>
45 * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
47 2003-09-20 Tor Lillqvist <tml@iki.fi>
49 * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
50 including editor backup files. List files we want explicitly.
52 * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
53 calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
54 LC_ALL, LC_CTYPE and LANG environment variables, than calls
57 (gtk_get_default_language): Code snippet moved to above function,
60 * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
61 * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
62 _gtk_get_lc_ctype() instead of setlocale().
64 Fri Sep 19 18:15:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
66 * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
69 Fri Sep 19 13:24:54 2003 Soeren Sandmann <sandmann@daimi.au.dk>
71 * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
72 documentation. (#117306, Steve Chaplin)
74 2003-09-19 Tor Lillqvist <tml@iki.fi>
76 * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
77 present on the US-International keyboard. For clarity, order
78 keysyms in case statement according to numeric value.
80 (gdk_keymap_translate_keyboard_state): Handle Caps Lock
81 correctly. (#120176, Ken Rastatter and Owen Taylor)
83 2003-09-18 Matthias Clasen <maclas@gmx.de>
85 * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
86 unref a closure, not g_object_unref(). (#122637, Marco Pesenti Gritti)
88 Install accelerators on actions, not on proxies, support
89 accelerator-only actions:
91 * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
92 and its lock status either via _gtk_widget_get_accel_path() or by
93 looking at the accel_path stored in the menu item itself and determining
94 its lock status by peeking into the contained accel label. This was
95 already (accidentally) committed a week ago.
97 * gtk/gtkaction.h (gtk_action_set_accel_group):
98 (gtk_action_[dis]connect_accelerator): New functions.
100 * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
101 accel_closure and accel_count. We must have a reference to the
102 accel_group, since we need it in connect_proxy. The count is necessary
103 to ensure that the accelerator isn't removed before the last proxy
104 requesting it has been unmerged.
105 (connect_proxy): Connect the accelerator to the
106 action now, only set the accel_path on the menuitem.
107 (remove_proxy): Disconnect the accelerator from the action, not from
109 (gtk_action_set_accel_group): Set the accel group.
110 (gtk_action_[dis]connect_accelerator): Count the number of times
111 this functions have been called and install/remove the accelerator if
112 the count leaves/reaches zero.
114 * gtk/gtkuimanager.h (GtkUIManagerItemType): Add
115 GTK_UI_MANAGER_ACCELERATOR.
117 * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
118 (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
119 <accelerator> elements.
120 (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
121 type is GTK_UI_MANAGER_ACCELERATOR.
122 (update_node): Set the accel group on actions before creating their
123 proxies. Don't set the accel group on created menus. For
124 NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
125 (print_node): Also emit <accelerator> elements.
127 * tests/testmerge.c (dump_accels): Add a "Dump Accels" button.
129 * gtk/gtkuimanager.c (update_node): Robustness improvements.
131 2003-09-17 Matthias Clasen <maclas@gmx.de>
133 * gtk/gtkuimanager.c (text_handler): Report unexpected character
134 data as error from the GMarkup parser, otherwise things like
135 gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error)
138 Wed Sep 17 02:38:53 2003 Soeren Sandmann <sandmann@daimi.au.dk>
140 * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
141 committed redraw_on_allocate change.
143 Tue Sep 16 10:42:00 2003 Eric Warmenhoven <eric@warmenhoven.org>
145 * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
146 stubs to fix compilation
148 * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
149 when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
151 * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
152 variable. Patch from Marc Welz (#121347).
154 2003-09-16 Matthias Clasen <maclas@gmx.de>
156 * gtk/gtkaction.h: Apply egtk-format-protos.
158 2003-09-15 Matthias Clasen <maclas@gmx.de>
160 * gtk/gtkuimanager.c: Doc tweaks.
162 Smart separators; see
163 http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
165 * gtk/gtkuimanager.c (update_smart_separators): New function which
166 implements "smart" separators by iterating once over the entries of a
167 menu, hiding and showing separators as necessary.
168 (update_node): Mark separators used as fences of placeholders as
169 hidden. Explicitly added separators are marked as smart. Call
170 update_smart_separators after updating a menu or toolbar node.
171 Connect update_smart_separators to "notify::visible" signal on menu
174 * tests/merge-[12].ui: Test smart separators.
176 Changes to allow setting action state before connecting signal; see
177 the thread starting at
178 http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
180 * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
181 (gtk_action_group_add_radio_actions_full): Add value parameter to allow
182 setting the currently selected group member before connecting signals.
183 (GtkToggleActionEntry): Separate struct for constructing toggle actions,
184 including a boolean to initialize the action state before connecting
186 (gtk_action_group_add_toggle_actions):
187 (gtk_action_group_add_toggle_actions_full): New functions to construct
188 toggle actions from an array of GtkToggleActionEntries.
190 * demos/gtk-demo/appwindow.c:
191 * tests/testactions.c:
192 * tests/testmerge.c: Adjust to new action group API.
194 Sun Sep 14 16:59:52 2003 Soeren Sandmann <sandmann@daimi.au.dk>
196 * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow
197 "gtk-toolbar-arrow" so themes can special-case it.
199 Sun Sep 14 16:07:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
201 * gtk/Makefile.am (gtk_c_sources): sort the list of files.
203 Sun Sep 14 15:49:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
205 * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
206 PangoFontMetrics. Patch from Steve Chaplin (#122257).
208 2003-09-14 Tor Lillqvist <tml@iki.fi>
210 * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
211 special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
212 the usefulness of which was already in doubt. Removing it fixes
213 bugs #118575 and #121851.
215 Fri Sep 12 16:32:53 2003 Jonathan Blandford <jrb@redhat.com>
219 * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
220 pressed button (used to determine if we want to initiate a drag later
221 on) if the current grab widget is either NULL or tree_view (Reported
222 by Jeroen Zwartepoorte).
224 2003-09-12 Matthias Clasen <maclas@gmx.de>
226 * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text)
227 (gdk_draw_text_wc): Add deprecation notes. (#121955, Martin Pool)
229 2003-09-11 Matthias Clasen <maclas@gmx.de>
231 * gdk/gdkpango.c: Doc tweaks.
233 * tests/testgtk.c: Add table menu tests.
235 * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the
236 GtkMenuPrivate struct itself. Pointed out by valgrind.
238 * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up
241 Wed Sep 10 22:25:04 2003 Kristian Rietveld <kris@gtk.org>
243 The table menu patch! Turns GtkMenu into a table, so you can attach
244 menu items in numerous new ways! Be creative!
246 Contains some bug fixes and RTL adaptions from Matthias Clasen.
248 * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
249 GtkMenuPrivate, introduce AttachInfo, add child properties enum,
250 (gtk_menu_free_private), (gtk_menu_get_private): we have to free
251 the heights array in the private struct,
252 (gtk_menu_class_init): reorder code a bit, install child properties,
253 (get_attach_info), (get_child_attach): new utility functions,
254 (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
255 child properties, for the attach info,
256 (gtk_menu_remove): remove AttachInfo from menu item,
257 (gtk_menu_real_insert): implemented algorithm to automagically place
258 inserted menu items at the correct place in the table,
259 (gtk_menu_size_request), (gtk_menu_size_allocate),
260 (compute_child_offset): reworked/rewritten to support table menus,
261 (gtk_menu_attach): new function,
262 (find_child_containing), (gtk_menu_move_current): new functions to
263 get table menu keynav right.
265 * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
267 2003-09-10 Matthias Clasen <maclas@gmx.de>
269 * gtk/gtksocket.c (gtk_socket_filter_func): Only remove
270 PropertyNotify events from the stream if they have been handled,
271 in order to enable extending the plug<->socket communication via
274 Wed Sep 10 01:06:44 2003 Kristian Rietveld <kris@gtk.org>
276 Big TreeView DnD fixage, makes drops on empty models work, makes
277 TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
278 Related bugs #95362 and #113314. I don't want to touch this code
281 * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
283 * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
284 for selection_data->length.
286 * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
287 (set_dest_row), (get_dest_row): we don't store just the row ref
288 anymore, but a struct with the row ref and additional info,
289 (set_destination_row): handle drops on empty space and some
291 (get_logical_dest_row): also return path_down_mode/drop_append_mode
292 flags, handle dropping childs on their new parents, rewrite
293 drop append handling into something saner,
294 (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
296 (gtk_tree_view_drag_drop): updates for updated backend,
297 (gtk_tree_view_drag_data_received): updates for updated backend,
298 path down mode (treestore DnD) handling,
299 (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
300 when we are trying to drop a row on an empty model,
301 (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
303 * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
304 (gtk_list_store_row_drop_possible): style and drop-append fixes.
306 * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
308 2003-09-08 Alexander Larsson <alexl@redhat.com>
310 * gtk/gtkeventbox.[hc]:
311 Implement gtk_event_box_get/set_input_only()
314 Tests for the new input only event boxes
316 Mon Sep 8 21:44:20 2003 Kristian Rietveld <kris@gtk.org>
318 Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
320 * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
321 the call to gtk_tree_model_filter_add_root,
322 (gtk_tree_model_filter_row_changed): bail out if c_path is not above
323 the virtual root, allow building levels on the second try to convert
324 the child path to a filter path,
325 (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
326 root when calling gtk_tree_model_filter_elt_get_path.
328 2003-09-07 Matthias Clasen <maclas@gmx.de>
330 * gtk/gtkuimanager.c (update_node): Fix a C99ism. (#121640,
333 Fixes for accelerator handling during (un)merging:
335 * gtk/gtkuimanager.c (update_node): Move setting info-action
336 after the switch, since the old action is needed in some cases.
337 In cases of proxy type mismatch, disconnect the old proxy from
340 * gtk/gtkaction.c (remove_proxy): Renamed from
341 gtk_action_remove_proxy(). Move unsetting of the accelerator
342 here from disconnect_proxy() in order to catch all cases of
344 (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
345 to fail if proxy isn't a proxy of action.
347 2003-09-07 Pablo Saratxaga <pablo@mandrakesoft.com>
349 * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
352 2003-09-07 Matthias Clasen <maclas@gmx.de>
354 * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
357 2003-09-06 Matthias Clasen <maclas@gmx.de>
359 * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from
360 prev_action, not from action. (Fix by David Hampton)
362 Fri Sep 5 14:15:10 2003 Owen Taylor <otaylor@redhat.com>
364 * Back out locale-dependent interpretation of
365 KP_Decimal, the official XFree86 interpretation
366 is that KP_Decimal => . KP_Separator => ,
367 always, independent of locale.
368 (#105161, Frederic Crozat,
369 http://bugs.xfree86.org/show_bug.cgi?id=534)
371 2003-09-04 Matthias Clasen <maclas@gmx.de>
373 * tests/testmerge.c: Test buttons and toggle buttons as proxies.
375 * gtk/gtktoggleaction.c (connect_proxy):
376 (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note
377 that a "draw_as_radio" property is needed for check buttons similar to
378 check menu items, in order to fully support button proxies for radio actions.
380 * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
382 * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui().
384 * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
385 'type' argument of gtk_ui_manager_add_ui().
387 * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
388 to make this function as powerful as the XML methods of adding UI. (#120647)
390 Thu Sep 4 19:11:23 2003 Kristian Rietveld <kris@gtk.org>
394 * docs/RELEASE-HOWTO: updates.
396 2003-09-04 Matthias Clasen <maclas@gmx.de>
398 * tests/merge-2.ui: Use "position" instead of "pos".
400 * gtk/gtkuimanager.c (start_element_handler): No need
401 to be terse: Change the name of the "pos" attribute
404 2003-09-04 Matthias Clasen <maclas@gmx.de>
406 * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and
407 GtkUIManagerNode to shorten the names and to make the
408 GTK_UI_MANAGER_<TYPE> names available for a public enum.
410 * gtk/gtkactiongroup.c:
411 * gtk/gtkuimanager.c: Various doc tweaks.
413 * gtk/gtkuimanager.c (start_element_handler):
414 (end_element_handler): Improve error reporting.
416 Wed Sep 3 23:18:17 2003 Kristian Rietveld <kris@gtk.org>
420 * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
421 use end_position - page_size instead of G_MAXINT, since
422 gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
423 reported by Havoc Pennington).
425 Wed Sep 3 21:58:03 2003 Kristian Rietveld <kris@gtk.org>
429 * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
430 unref it. (Fixes memleak, patch from Kjartan Maraas).
432 Wed Sep 3 21:38:26 2003 Kristian Rietveld <kris@gtk.org>
434 * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
435 gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
436 gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
437 gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
438 gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
439 gtk/gtktypeutils.h: big patch from Kjartan Maraas
440 to fix numerous typos.
442 Wed Sep 3 17:38:01 BST 2003 Tony Gale <gale@gtk.org>
444 * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
446 2003-09-02 Tor Lillqvist <tml@iki.fi>
448 * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
449 CloseHandle() on the HMODULE returned from GetModuleHandle().
450 Didn't cause any harm, but didn't do anything useful either. When
451 running a GTK+ program under MS's debugger, the CloseHandle() call
452 would cause a "first-chance exception" in ntdll.dll to show up.
453 (The exception is caught appropriately if you let it proceed, but
454 it confuses the person using the debugger). Thanks to Bruce
455 Hochstetler for noticing.
457 Tue Sep 2 21:01:19 2003 Kristian Rietveld <kris@gtk.org>
461 * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
462 to only select when button 1 is pressed introduced in the fix of
465 2003-09-02 Matthias Clasen <maclas@gmx.de>
467 * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
469 * gtk/gtkuimanager.c: Shorten the names of some static
472 Support adding and removing merge nodes dynamically (#120647,
475 * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed
476 gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id
478 (gtk_ui_manager_add_ui): New function to add UI elements
479 without juggling XML fragments, currently restricted to menuitems,
480 toolitems and separators. Actions still come from registered
483 Mon Sep 1 19:39:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
485 * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
486 background pixmap was being offset twice, once by the ts_origin in
487 gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
489 2003-09-01 Matthias Clasen <maclas@gmx.de>
491 * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
492 this public again, since it's occasionally useful. (#121128,
493 Marco Pesenti Gritti)
495 * gtk/gtkaction.c: Add an "is_important" property and propagate
496 it to toolitem proxies. (#121058, Marco Pesenti Gritti)
498 Mon Sep 1 00:32:30 2003 Soeren Sandmann <sandmann@daimi.au.dk>
500 * tests/testtoolbar.c (main): connect to "delete_event" so the
501 application will actually quit when you close the window
503 2003-09-01 Matthias Clasen <maclas@gmx.de>
505 * gtk/gtkuimanager.c (gtk_ui_manager_get_widget)
506 (gtk_ui_manager_get_action): g_return_if_fail() if
508 (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
509 (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125,
510 Marco Pesenti Gritti)
512 2003-08-31 Matthias Clasen <maclas@gmx.de>
514 * gtk/gtktoolitem.c: Fix some typos in docs.
516 * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
517 replaces gtk_ui_manager_activate(). (#120658)
519 * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
520 gtk_ui_manager_activate().
523 * gtk/gtkactiongroup.c: Some doc tweaks.
525 * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
526 wasn't emitted anyway. Some doc tweaks.
528 2003-08-30 Matthias Clasen <maclas@gmx.de>
530 * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
531 rather than to "remove" on handlebox.
533 * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
534 activate an action found by following a path. (#120658)
536 * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
538 * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
540 * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with
541 setter and getter. If it is set, add tearoff menu items to regular
542 menus, but not to popups. Add a signal "changed", which gets emitted
543 when the merged ui has changed. (#120649, #120656)
545 * tests/testmerge.c: Add button to test the generation of tearoff
548 2003-08-29 Matthias Clasen <maclas@gmx.de>
550 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
551 Actually group the actions together rather than putting each in its
554 * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on
555 proxy menu items for radio actions.
557 * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
559 Fri Aug 29 21:40:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
561 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
562 Fix use of uninitialized variable.
565 (_gtk_text_util_append_special_char_menuitems): add const cast to
568 2003-08-29 Matthias Clasen <maclas@gmx.de>
570 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install
571 "draw_as_radio" as a separate property, not as an alias of
573 (gtk_check_menu_item_get_property):
574 (gtk_check_menu_item_set_property): Also support "draw_as_radio".
576 Fri Aug 29 20:32:07 2003 Soeren Sandmann <sandmann@daimi.au.dk>
578 * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
579 are narrower than 13 time the estimated character width of the
580 font. (#107781, David Bordoley)
582 * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
583 here if the GtkToggleButton is active. This may be the case if it
586 * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
587 vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
590 * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
591 property. (#111207, David Bordoley).
593 * gtk/gtktoggletoolbutton.c
594 (gtk_toggle_tool_button_create_menu_proxy): use new
595 "draw_as_radio" property on the menu item when the item is a radio
598 * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
599 to only pay attention to the "use_underline" property when the
600 button label comes from the "label" property.
602 2003-08-29 Laurent Dhima <laurenti@alblinux.net>
604 * configure.in: Added "sq" to ALL_LINGUAS.
606 2003-08-28 Matthias Clasen <maclas@gmx.de>
608 * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
611 * gtk/gtkuimanager.c: Change the XML format:
612 <Root> element is replaced by <ui>,
613 <menu> element is replaced by <menubar>,
614 <submenu> element is replaced by <menu>,
615 <dockitem> element is replaced by <toolbar>,
616 <popups> element is gone,
617 verb attribute is replaced by action,
618 name defaults to action or the element name.
620 * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by
621 GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified
622 by removing the user_data, entry_type and extra_data fields,
623 GtkRadioActionEntry is further simplified by removing the callback.
624 The user_data can now be specified as an argument to
625 gtk_action_group_add_actions(). There is a new method
626 gtk_action_group_add_radio_actions(), which is similar to
627 gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
628 and a callback parameter in addition to the user_data. The callback
629 is connected to the ::changed signal of the first group member.
630 There are _full() variants taking a GDestroyNotify of
631 gtk_action_group_add_[radio_]actions().
633 * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted
634 on every member of the radio group when the active member is changed.
635 Add an integer property "value", and a getter for the value of "value"
636 on the currently active group member.
638 * tests/testactions.c:
640 * tests/merge-[123].ui:
641 * demos/gtk-demo/appwindow.c: Adjust to these changes.
643 * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
645 2003-08-27 Anders Carlsson <andersca@gnome.org>
647 * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
648 text view, so the tool bar won't have focus.
650 Tue Aug 26 09:57:38 2003 Owen Taylor <otaylor@redhat.com>
652 * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
653 declaration not at start of block. (#120371, Damien Carbery)
655 2003-08-26 Matthias Clasen <maclas@gmx.de>
657 * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize
658 for length, not gsize.
660 * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to
661 <ui> and make it optional in strings. Rename verb to action, <dockitem>
662 to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
664 * demos/gtk-demo/appwindow.c:
665 * tests/testactions.c:
669 * tests/merge-3.ui: Adjust to the new XML format.
671 Mon Aug 25 19:55:55 2003 Owen Taylor <otaylor@redhat.com>
673 * gtk/gtktextview.c (gtk_text_view_update_layout_width):
674 Since we add one to the layout's reported width to
675 account for the cursor, we need to subtract one when
676 setting the wrap width for the layout. (Fixes infinite
677 loop (#120325, Frederic Crozat)
679 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
680 Be a bit more careful about rounding when converting
681 wrapped width from Pango units to pixels.
683 2003-08-26 Matthias Clasen <maclas@gmx.de>
685 Rename GtkMenuMerge to GtkUIManager.
687 * gtk/gtkuimanager.[hc]: New files.
688 * gtk/gtkmenumerge.[hc]: Removed.
693 * tests/testactions.c:
694 * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by
697 * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating:
698 add comments to entries array, remove newlines from ui definition. Don't
699 use the ::add_widget signal.
701 Mon Aug 25 17:28:04 2003 Owen Taylor <otaylor@redhat.com>
703 * gtk/gtknotebook.c (gtk_notebook_forall): Don't
704 include page->menu_label - causes various problems,
707 Mon Aug 25 23:21:43 2003 Kristian Rietveld <kris@gtk.org>
711 Fixes #115871, reported by Michael Natterer.
713 * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
714 added ctrl_pressed and shift_pressed bitfields,
715 (_gtk_tree_selection_internal_select_node): replace GdkModifierType
716 arg with GtkTreeSelectMode.
718 * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
719 (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
720 (_gtk_tree_selection_internal_select_node): all updated for
721 GdkModifierType -> GtkTreeSelectMode move.
723 * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
724 and shift_pressed around selection handling block,
725 (gtk_tree_view_real_select_cursor_row),
726 (gtk_tree_view_real_toggle_cursor_row),
727 (gtk_tree_view_real_selection_cursor_parent),
728 (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
729 instead of checking the event state. And also updates for the
730 GdkModifierType -> GtkTreeSelectMode move.
732 Wed Aug 20 21:26:49 2003 Owen Taylor <otaylor@redhat.com>
734 * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
735 to the parent when there was no focus widget before
736 and no focus widget after - that is, when there are
737 no focusable widgets. (#108678, help tracking it
738 down from Padraig O'Briain, Federico Mena Quintero, )
740 * gtk/gtkxembed.[ch]: Move various shared utilities
741 for the XEMBED protocol eused by GtkPlug and GtkSocket
744 * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
745 a flag bit that is sent with focus mesages to indicate
746 that the focus has wrapped around on the toplevel;
747 use this bit to catch infinite loops when there is no
748 focusable widget at ll in the entire toplevel.
750 * tests/testsocket.c (child_read_watch): Remove an
753 * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h:
754 Up XEMBED protocol version to 1, add logic for
755 sending the right version in XEMBED_EMBEDDED_NOTIFY.
757 * gtk/gtksocket.c (gtk_socket_add_window): Send
758 the embedder window in the XEMBED_EMBEDDED_NOTIFY
759 as the spec requires.
761 Mon Aug 25 16:15:41 2003 Owen Taylor <otaylor@redhat.com>
763 * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and
764 NumLock handling for non-XKB. Add a special case
765 hack for NumLock on Sun servers. (Patch from
766 Robert Basch, #115819)
768 2003-08-25 Matthias Clasen <maclas@gmx.de>
770 * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten
773 * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
774 gtk_action_group_set_translation_domain): Hooks for translation of
775 label and tooltip in GtkActionGroupEntries. (#120620)
777 2003-08-25 Matthias Clasen <maclas@gmx.de>
779 * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
780 values properly. Sorry about the resize grip trouble, Owen. (#120621)
782 * gtk/gtkactiongroup.c:
783 * demos/gtk-demo/appwindow.c:
785 * tests/testactions.c: Use new GtkActionGroupEntryType enum.
787 Sun Aug 24 17:14:44 2003 Owen Taylor <otaylor@redhat.com>
789 * gtk/gtk.h: Remove reference to gtkresizegrip.h.
791 Sun Aug 24 17:03:44 2003 Owen Taylor <otaylor@redhat.com>
793 * gtk/Makefile.am: Fix accidental commit of references
794 to gtkresizegrip.[ch]
796 Sun Aug 24 17:00:03 2003 Owen Taylor <otaylor@redhat.com>
798 * gtk/gtkrc.c: Fix some missing initializations of
801 2003-08-24 Matthias Clasen <maclas@gmx.de>
803 * gtk/gtkaction.[ch]:
804 * gtk/gtktoggleaction.[ch]:
805 * gtk/gtktoggleactionprivate.h:
806 * gtk/gtkradioaction.[ch]:
807 * gtk/gtkactiongroup.[ch]:
808 * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
809 toolbars, using the EggMenu code by James Henstridge.
811 * gtk/gtk.h: Include new headers.
812 * gtk/Makefile.am: Add new files.
814 * tests/testactions.c: Test for actions.
815 * tests/testmerge.c: Test for menu merging.
816 * tests/merge-[123].ui: Test data for testmerge.
817 * tests/Makefile.am: Add testactions and testmerge.
819 * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the
822 Sat Aug 23 21:40:18 2003 Owen Taylor <otaylor@redhat.com>
824 * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix
825 problem where rc_file->directory wasn't always getting
826 set. (#120549, Luis Villa)
828 2003-08-22 Christian Rose <menthos@menthos.com>
830 * configure.in: Added "ne" to ALL_LINGUAS.
832 Thu Aug 21 16:00:36 2003 Owen Taylor <otaylor@redhat.com>
834 * gtk/gtkrc.c: Keep a list of current GtkRcFiles
835 being parsed, not just the directories for those
836 files. Use that to catch recursion. (Part of
839 Thu Aug 21 21:27:45 2003 Kristian Rietveld <kris@gtk.org>
843 Fix option menu scrolling (#119821, Owen Taylor).
845 * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
846 by #80484 and the CLAMP,
847 (get_menu_height): new function,
848 (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
849 new_offset to handle page up/down right.
851 Thu Aug 21 15:17:42 2003 Owen Taylor <otaylor@redhat.com>
853 * gdk/x11/gdkkeys-x11.c: Change the interpretation
854 of consumed_modifiers so that it contains:
855 - Modifiers combinations actually found in
857 - Single modifier modifier combinations.
858 But not multi-modifier combinations that aren't
859 in event->state. Document. (#100439)
861 Thu Aug 21 20:53:46 2003 Kristian Rietveld <kris@gtk.org>
863 Slightly modified patch from Yann Rouillard to improve selection
864 behavior with the mouse. Fixes #120187.
866 * gtk/gtktreeview.c (gtk_tree_view_button_press): only
867 select/deselect items on the first button press of button 1,
868 expand checks for row_activated to include triple clicks.
870 Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
874 * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
875 approximate digit widths up, to avoid truncation, convert to
876 pango pixels when we have the full string width instead of converting
877 the approx digit width to pango pixels, take inner border and
878 interior focus into account correctly. (Fixes #116368, patch from
881 2003-08-20 Noah Levitt <nlevitt@columbia.edu>
883 * gtk/queryimmodules.c: Don't look at the same directory twice (in
884 simple cases). (#120342)
886 Wed Aug 20 22:04:47 2003 Soeren Sandmann <sandmann@daimi.au.dk>
888 * gdk/gdkwindow.c: Make the layers in the paint stack have their
889 own pixmap instead of sharing one. (#118317)
891 * tests/testgtk.c (create_get_image): Fixes to make the window fit
894 Wed Aug 20 22:03:25 2003 Kristian Rietveld <kris@gtk.org>
898 * gtk/gtkspinbutton.c (start_spinning): change the type of step
899 to gdouble, since it gets it's data from a gdouble (Fixes #113547).
901 Mon Aug 18 17:19:12 2003 Owen Taylor <otaylor@redhat.com>
903 * modules/input/gtkimcontextxim.[ch]: Substantially
904 rework the handling of status windows:
906 - Store the current StatusWindow in the
907 GtkIMContextXIM structure and vice-versa, so we
908 don't have to hunt the window hierarchy on
910 - Use the Gtkidget hierarchy instead of/or as well
911 as the GdkWindow hierarchy when finding the toplevel;
912 this helps for things like GtkHandlebox
913 - Watch GtkWidget::hierarchy_changed to catch
914 changes in the toplevel without changes in the
915 GdkWindow (reparenting)
916 - Never create the GtkWindow for the status window
917 unless we have text to display.
918 - Various cleanups, add lots of comments.
920 (#115077, much help from Takuro Ashie and Hidetoshi
921 Tajima in tracking this down and figuring out a fix.)
923 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in):
925 * modules/input/gtkimcontextxim.c: Track the current
926 screen for each toplevel so that we show the status
927 window on the right screen. (#116340, James Su)
929 * modules/input/gtkimcontextxim.c: If create a new IC
930 when we currently have the focus, call XSetICFocus()
933 * modules/input/gtkimcontextxim.c (get_im): Fix bug
934 with multiple open screens.
936 Tue Aug 19 14:37:46 2003 Owen Taylor <otaylor@redhat.com>
938 * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext):
939 Replace client_window field with 'priv' pointer,
940 retaining binary compatibility.
942 * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
943 save use_preedit/cursor_location/focus status and set
944 up the new slave appropriately. (#118651, Botond Botyanszki)
946 Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
948 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
949 Don't use impl->position_info.clip_rect for toplevels.
950 (#107068, reported by Thomas Mirlacher)
952 Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
954 * gdk/x11/gdkdrawable-x11.c (convert_to_format):
955 Add a fallback for unaligned source data for
956 FORMAT_ARGB_MASK. (#117217)
958 Mon Aug 18 10:51:57 2003 Owen Taylor <otaylor@redhat.com>
960 * configure.in: Rework handling of REBUILD_PNGS,
961 so that we also don't try to REBUILD_PNGS when
962 cross-compiling and there is no gdk-pixbuf-csource.
963 But give an error if gtk/stock-icons/gtkstockpixbufs.h
964 is not in the source tree. (Note that REBUILDS_PNG
965 was set backwards before, which is why you always
966 had to manually recreate gtkstockpixbufs.h!)
968 Mon Aug 18 10:19:55 2003 Owen Taylor <otaylor@redhat.com>
970 * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
971 path to libgtk.la. (#120080, Benedikt Spranger)
973 Sat Aug 16 10:34:49 2003 Owen Taylor <otaylor@redhat.com>
975 * modules/input/imcedilla.c: Make the list of default
976 languages more comprehensive. (Suggestion of
977 Fco. Javier F. Serrador)
979 Sat Aug 9 12:47:11 2003 Owen Taylor <otaylor@redhat.com>
981 * gdk/gdk.c (gdk_arg_context_parse): Fix broken
982 parentheses when skipping args.
984 Sat Aug 16 16:22:23 2003 Kristian Rietveld <kris@gtk.org>
986 Fix major bug in row ref handling, so the new combo box
987 will actually work right (:. Bug #107748. Patch written
988 with help from Tim Janik.
990 The basic idea is to update the row refs in a closure,
991 before the actual signal is emitted (rather than having
992 the model connect signal handlers).
994 * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
995 g_signal_new calls for row_inserted, row_deleted and
996 rows_reordered to use the new marshallers,
997 (row_inserted_marshall), (row_deleted_marshall),
998 (rows_reordered_marshall): the new marshallers,
999 (gtk_tree_row_ref_inserted_callback): renamed to
1000 gtk_tree_row_ref_inserted since it isn't a callback
1001 anymore and gets called by the marshaller now,
1002 (gtk_tree_row_ref_deleted_callback): likewise,
1003 (gtk_tree_row_ref_reordered_callback): likewise,
1004 (connect_ref_callbacks), (disconnect_ref_callbacks):
1006 (gtk_tree_row_reference_new_proxy),
1007 (gtk_tree_row_reference_free),
1008 (gtk_tree_row_reference_inserted),
1009 (gtk_tree_row_reference_deleted),
1010 (gtk_tree_row_reference_reordered): updated.
1012 Fri Aug 15 16:54:39 2003 Owen Taylor <otaylor@redhat.com>
1014 Improve Cedilla handling - based on a patch from Gustavo
1017 * modules/input/imcedilla.c po/POTFILES.in: Input method that
1018 produces C_WITH_CEDILLA rather than C_WITH_ACUTE for
1019 dead_acute+c combinations. Make this the default for
1022 * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
1023 Use LC_CTYPE instead of LC_MESSAGES to pick the default
1026 Fri Aug 15 17:00:19 2003 Owen Taylor <otaylor@redhat.com>
1028 * gtk/gtkimcontextsimple.c: Fix missing compose sequence
1029 for Multi_key+c+apostrophe.
1031 Fri Aug 15 21:57:34 2003 Kristian Rietveld <kris@gtk.org>
1035 * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
1036 on vertical scrolling. (#108035, reported by Tim Janik).
1038 Fri Aug 15 20:06:42 2003 Kristian Rietveld <kris@gtk.org>
1042 * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
1043 (gtk_tree_model_sort_level_find_insert),
1044 (gtk_tree_model_sort_insert_value): fix off-by-one error.
1045 (#109292 continued, patch from Yann Rouillard).
1047 Fri Aug 15 19:43:14 2003 Kristian Rietveld <kris@gtk.org>
1049 (Note: This is not exactly the same as the patch which went in
1052 * gtk/gtktreeview.c (gtk_tree_view_class_init),
1053 (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
1054 Also support the up, down, left, right, home, end, page up and
1055 page down keys on the numpad. (#119419, reported by Alex Larsson).
1057 Fri Aug 15 12:34:04 2003 Owen Taylor <otaylor@redhat.com>
1059 Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
1061 * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
1062 we link libgtk against X explicitely, since we
1063 make GTK+ calls for plug/socket.
1065 * gtk/queryimmodules.c: Use USE_LA_MODULES and
1066 G_MODULE_SUFFIX here.
1068 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
1069 XShmPutImage with #ifdef USE_SHM.
1071 Thu Aug 14 18:25:39 2003 Owen Taylor <otaylor@redhat.com>
1073 * gtk/gtkfilesel.c (gtk_file_selection_populate):
1074 Don't reposition the cursor when we aren't trying
1075 to complete. (Fixes problems with selection on
1076 startup, #108433, reported by Mark Finlay.)
1078 * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
1079 code that tried to position the cursor after the common
1080 prefix when there was one, it wasn't working, and
1081 would be hard to fix. Just always put the cursor
1082 at the end when completing.
1084 Thu Aug 14 17:58:23 2003 Owen Taylor <otaylor@redhat.com>
1086 * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
1087 the current directory fails because of encoding
1088 conversion problems, walk up textually to parent
1089 directories until we can convert. (#113627)
1091 Wed Aug 13 17:01:49 2003 Owen Taylor <otaylor@redhat.com>
1093 * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
1094 Remove usage of menu_shell->ignore leave which was
1095 to deal with stray events we no longer get because
1096 we do grabbing differently. Comment it as unused in
1097 the header. (#115837, Keith Bissett)
1099 Wed Aug 13 16:32:43 2003 Owen Taylor <otaylor@redhat.com>
1101 * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request):
1102 Fix some places that weren't properly Xinerama-ified.
1104 * gtk/gtkmenu.c: Fix problem with windows that scroll
1105 at the top of the screen.
1107 Wed Aug 13 11:34:53 2003 Owen Taylor <otaylor@redhat.com>
1109 * gtk/gtkcombo.c (gtk_combo_init): connect_after() to
1110 key-press-event on the entry, so input methods get access to
1111 key presses before GtkCombo customization.
1112 (#115451, Botond Botyanszki)
1114 2003-08-13 Anders Carlsson <andersca@gnome.org>
1116 * tests/testtoolbar.c: (set_important_func), (important_toggled),
1117 (create_items_list):
1118 Add an important column.
1120 Tue Aug 12 15:00:15 2003 Owen Taylor <otaylor@redhat.com>
1122 * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
1123 against reentrancy from ::focus-out handlers.
1124 (#118129, Felipe Heidrich)
1126 Tue Aug 12 14:27:42 2003 Owen Taylor <otaylor@redhat.com>
1128 * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
1129 GDK_LOCK_MASK before calling
1130 gdk_keymap_translate_keyboard_state so bindings
1131 and accelerators are independent of the Caps-lock
1132 key. (#115384, reported by Toni Willberg)
1134 Mon Aug 11 12:07:14 2003 Owen Taylor <otaylor@redhat.com>
1136 * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
1137 break statements (#119494, Soeren Sandmann)
1139 Mon Aug 11 11:10:07 2003 Owen Taylor <otaylor@redhat.com>
1141 * gtk/gtkwidget.h: Mark parent public as well; it's
1142 extensively accessed in existing code, so there is
1143 no advantage in making people use get_parent().
1144 (Tweak to #119463 fix)
1146 2003-08-11 Matthias Clasen <maclas@gmx.de>
1148 Add support for EWMH "Above" and "Below" window states. (105100,
1151 * tests/testgtk.c: Add "Above" and "Below" to the the "Window
1154 * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
1155 gtk_window_set_keep_below.
1157 * gtk/gtk.def: Add gtk_window_set_keep_above and
1158 gtk_window_set_keep_below.
1160 * gtk/gtkwindow.c (gtk_window_set_keep_below):
1161 (gtk_window_set_keep_above): New functions, call the corresponding
1164 * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
1165 function, sets _NET_WM_STATE_BELOW.
1166 (gdk_window_set_keep_above): New function, sets
1167 _NET_WM_STATE_ABOVE.
1169 * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
1170 gdk_window_set_keep_below.
1172 * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
1173 GDK_WINDOW_STATE_BELOW.
1175 * gdk/gdk.def: Add gdk_window_set_keep_above and
1176 gdk_window_set_keep_below.
1178 * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
1179 JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
1180 xmlcatalog in PATH. (#119115)
1182 2003-08-10 Matthias Clasen <maclas@gmx.de>
1184 * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
1187 2003-08-09 Noah Levitt <nlevitt@columbia.edu>
1190 * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
1191 docs on GdkFilterFunc and GdkFilterReturn.
1193 2003-08-09 Matthias Clasen <maclas@gmx.de>
1195 * gtk/gtkcalendar.c: Add and hook in gtk_calendar_scroll,
1196 to let the mouse wheels select the month. Scrolling down
1197 moves forward in time. (#53134, Abigail Brady)
1199 * gtk/gtkcalendar.c: Complete the RTL flipping support for
1200 GtkCalendar, make it possible to flip the headings using the
1201 "magic translated string" technique. Translators, note the
1202 comment in gtk_calendar_init() explaining this. (#102416)
1204 * gtk/gtkcalendar.c: Get the information about the first day of
1205 the week from the locale using another instance of the "magic
1206 translated string" technique. Ignore the display option
1207 GTK_CALENDAR_WEEK_START_MONDAY with a warning. (#87977)
1209 * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
1210 date is dragged as text, formatted via strftime %x. Text drops are
1211 accepted if g_date_set_parse() can make sense of the text. A
1212 dedicated data format for date DND has not been introduced yet,
1213 since there didn't seem to be sufficient consensus on such a
1214 format on xdg-list. (#117297)
1216 2003-08-08 Matthias Clasen <maclas@gmx.de>
1218 * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
1219 Fix a segfault. (#115284, Jan Kratochvil)
1221 2003-08-08 Tor Lillqvist <tml@iki.fi>
1223 * gdk/win32/gdkevents-win32.c (print_event): Print also the root
1224 coordinates for events that have such. Print coordinates for enter
1227 (gdk_event_translate): Don't use event uninitialixed in the
1228 return_exposes branch of the WM_PAINT handler.
1230 * gdk/win32/gdkwindow-win32.c (gdk_window_new,
1231 _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer):
1232 Must offset top-level window coordinates here, too.
1234 2003-08-08 Matthias Clasen <maclas@gmx.de>
1236 * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
1237 when maximized or fullscreen.
1239 2003-08-07 Tor Lillqvist <tml@iki.fi>
1241 * gdk/win32/gdkinput-win32.h
1242 * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
1243 _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
1246 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
1247 accordingly, in fact an uninitialised variable was dereferenced.
1250 [Win32] Add support for multiple monitors.
1252 * gdk/win32/gdkprivate-win32.h
1253 * gdk/win32/gdkglobals-win32.c: New global variables for
1254 multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
1255 _gdk_offset_x and _gdk_offset_y.
1257 * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
1258 functions, enumeration functions passed to EnumDisplayMonitors().
1260 (gdk_display_open): If the EnumDisplayMonitors() and
1261 GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
1262 if to find out monitor info.
1264 Calculate the offset between Win32 coordinates (relative to the
1265 primary monitor's origin (and thus negative on monitors to the
1266 left of or above it), and GDK's (visible coordinates should be
1269 * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
1270 gdk_screen_get_monitor_geometry): Use information collected above.
1272 (gdk_window_move, gdk_window_move_resize_window_get_geometry):
1273 Subtract _gdk_offset_{x,y} from GDK root window coordinates.
1275 (gdk_window_get_geometry, gdk_window_get_origin,
1276 gdk_window_get_frame_extents): For top-level windows, add
1277 _gdk_offset_{x,y} to GDK root window coordinates
1279 Still need to handle multiple monitors in
1280 gdk_window_fullscreen(). Probably should make the window
1281 fullscreen on the monitor where the cursor is?
1283 * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
1284 root window coordinates in GdkEvents.
1287 [Win32] Fix geometry hint handling. Add support for resize
1288 increment and base size, and aspect ratio geometry hints. The
1289 "gridded geometry" test in testgtk now works beautifully.
1291 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1292 Turns out this function shouldn't actually ever modify the
1293 window's size, just store the hints. (Old code kept for a while
1296 (gdk_window_set_hints): Remove presumably broken code that handles
1297 the position hints, this function is obsolete anyway.
1299 * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
1300 variables, not used.
1302 (adjust_drag): New function, used to implement resize increment
1305 (gdk_event_translate): Handle WM_SIZING, implement resize
1306 increment and base size, and aspect ratio geometry hints here. The
1307 WM_GETMINMAXINFO handler takes care of the minimum and maximum
1308 size hints as before. Fix the WM_GETMINMAXINFO handler to take
1309 into account window decorations. No need to modify the
1310 ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
1311 the defaults are fine.
1313 * gdk/win32/gdkprivate-win32.h
1314 * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
1315 _gdk_win32_get_adjusted_client_rect): New helper functions.
1317 2003-08-07 Matthias Clasen <maclas@gmx.de>
1319 * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
1320 toplevel->have_* flags before iterating over the _NET_WM_STATE
1323 Thu Aug 7 16:49:29 2003 Owen Taylor <otaylor@redhat.com>
1325 * gtk/gtkwidget.c (gtk_widget_set_style_internal):
1326 Fix a bug where on theme change, resize/redraw wasn't
1327 properly getting queued on toplevel windows. (#116346,
1330 * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
1331 Fix bug where wrong coordinates were used for toplevel
1334 Thu Aug 7 16:40:21 2003 Owen Taylor <otaylor@redhat.com>
1336 * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
1337 page_num variable (Archit Baweja)
1339 2003-08-07 Matthias Clasen <maclas@gmx.de>
1341 * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
1342 cope with C libraries with crippled locale support. (#115293)
1344 2003-08-07 Hans Breuer <hans@breuer.org>
1346 * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
1347 (only if the new window not known to Gdk) to get proper
1348 leave notification, and get rid of the wrong placed
1349 tooltips, bug #102283
1351 (gdk_event_translate) : small code reordering to not get
1352 GDK_MOTION_NOTIFY for still mouse and get back tooltips on
1355 2003-08-07 Tor Lillqvist <tml@iki.fi>
1358 * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
1359 missing function, trivially implement.
1361 2003-08-07 Matthias Clasen <maclas@gmx.de>
1363 * gtk/gtkctree.c (draw_row): Don't cut descenders when
1364 rendering. (#118646, Charles Kerr)
1366 2003-08-06 Hans Breuer <hans@breuer.org>
1368 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
1369 initialize bits to 0 (probably default on NT)
1371 * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1372 now it works as intended ;-)
1374 2003-08-04 Hans Breuer <hans@breuer.org>
1376 * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
1377 set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
1379 * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
1380 (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
1382 * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1383 against all expectations it is basically ony a call with WM_SETICON
1384 needed (the visual effect is there, though colors or mask are
1385 still somewhat wrong).
1386 * gdk/win32/gdkwindow-win32.h : place to store the HICON
1388 * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
1389 pixel drawing as it was fixed at 1999-08-23
1391 gtk/gtk.def : updated
1393 Tue Aug 5 10:07:08 2003 Owen Taylor <otaylor@redhat.com>
1395 * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property):
1396 Add a missing break. (#119156, Callum McKenzie)
1398 Tue Aug 5 00:24:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1400 * gtk/gtkmenu.c (gtk_menu_position): New positioning
1403 Fri Aug 1 15:26:46 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1405 * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
1408 * gtk/gtkradiotoolbutton.c
1409 (gtk_radio_tool_button_new_from_widget): Don't take a stock id
1411 * gtk/gtkradiotoolbutton.c
1412 (gtk_radio_tool_button_new_with_stock_from_widget): make this
1413 function take a stock_id.
1415 * gtk/toolbar: documentation
1417 Mon Aug 4 14:53:46 2003 Owen Taylor <otaylor@redhat.com>
1419 * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init):
1420 Fix problem where use_xshm was getting set wrong if
1421 MIT_SHM wasn't found. (George Lebel)
1423 2003-08-04 Tor Lillqvist <tml@iki.fi
1425 * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
1426 actually use the passed-in filter list. The function also needs a
1427 GdkWindow parameter, as filter functions expect
1428 GdkEvent::any.window to be valid. (#119034, Hans Breuer)
1430 2003-08-03 Matthias Clasen <maclas@gmx.de>
1432 * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors):
1433 (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
1434 the term "virtual screen". (#119030, Tor Lillquist)
1436 2003-08-02 Matthias Clasen <maclas@gmx.de>
1438 * tests/testtext.c (test_init):
1439 * tests/testgtk.c (test_init):
1440 * tests/testdnd.c (test_init):
1441 * demos/pixbuf-init.c (pixbuf_init):
1442 * demos/gtk-demo/main.c (main): Use g_setenv().
1444 * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
1447 Sat Aug 2 12:53:16 2003 Owen Taylor <otaylor@redhat.com>
1449 * configure.in: Requires glib-2.3.0, pango-1.2.0.
1451 * configure.in: Require Xft version 2,
1452 remove code for handling older versions of pango and Xft.
1453 Many miscellaneous improvements to X checks
1455 * acinclude.m4: Add GTK_ADD_LIB() macro for adding
1456 a library to a variable, avoiding dups.
1458 * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
1461 * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
1464 2003-08-02 Matthias Clasen <maclas@gmx.de>
1466 * gtk/gtkcolorsel.c (color_sample_drop_handle)
1467 (palette_drop_handle):
1468 * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received): Accept
1469 drops with the wrong format, since the KDE color chooser incorrectly
1470 drops application/x-color with format 8. (#118810)
1472 * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle):
1473 * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):
1474 Accept drops with the wrong format, since the KDE color chooser
1475 incorrectly drops application/x-color with format 8. (#118810)
1477 2003-08-02 Tor Lillqvist <tml@iki.fi>
1479 Fix gdk/win32 window geometry handling again. The window position
1480 in a GDK_CONFIGURE event should be that of the client area, not of
1481 the window decorations. (I was confused by the term "window
1482 border" in X11. It does *not* mean the window manager
1483 decorations. There are no X11-style window borders in Win32.)
1484 Also, this time do take the geometry hints into account
1485 appropriately when moving windows. Now testgtk's gravity test's
1486 move buttons work OK. There are stil problems with taking gravity
1487 into account when showing a hidden window.
1489 * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
1490 instead of separate fields.
1492 * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
1493 adjust for decorations.
1495 * gdk/win32/gdkwindow-win32.c (get_outer_rect,
1496 adjust_for_gravity_hints): New functions.
1497 (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
1498 above functions, take geometry hints into account.
1499 (gdk_window_set_geometry_hints): Size hints specicy client area,
1500 not including decorations.
1502 Fri Aug 1 17:10:22 2003 Owen Taylor <otaylor@redhat.com>
1504 * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
1505 return an absolute path (#115590), fix a problem where
1506 you could crash the file selector with a looong name
1507 by returning a newly allocated buffer.
1509 Fri Aug 1 16:44:51 2003 Owen Taylor <otaylor@redhat.com>
1511 * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
1512 bug in rarely or never hit code path (#118071,
1515 Fri Aug 1 16:30:13 2003 Owen Taylor <otaylor@redhat.com>
1517 * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render):
1518 If the check for missing depths, try actually creating pixmaps
1519 of the depths to deal with Xinerama not reporting
1520 all the depths it should. (#115822)
1522 Fri Aug 1 15:33:59 2003 Owen Taylor <otaylor@redhat.com>
1524 * gtk/gtksocket.c: Patch from Denis Mikhalkin to
1525 forward KeyRelease events as well as KeyPress events.
1528 Fri Aug 1 15:06:25 2003 Owen Taylor <otaylor@redhat.com>
1530 * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
1531 if argc is 0 as well, instead of leaving it unset.
1532 (#116023, Michael Meeks)
1534 Thu Jul 31 23:09:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1536 * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
1537 default to TRUE; ignore the property when api_mode != NEW_API
1539 2003-07-31 Matthias Clasen <maclas@gmx.de>
1541 * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
1542 to icon, to pacify gtk-doc.
1544 * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion
1547 Thu Jul 31 15:33:33 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1549 * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
1551 Thu Jul 31 15:29:28 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1553 * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
1554 overflow_item field.
1556 Wed Jul 30 21:11:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1558 * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
1559 an internal function
1561 * gtk/gtktoolitem.h: remove unused declaration of
1562 _gtk_tool_item_get_drag_window().
1564 Wed Jul 30 17:03:58 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1566 * gtk/gtktoolbutton.[ch]:
1567 (gtk_tool_button_new): swap icon_widget and label arguments to
1568 match BonoboUIToolbarButton.
1570 * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
1572 2003-07-30 Matthias Clasen <maclas@gmx.de>
1574 * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
1577 2003-07-29 Tor Lillqvist <tml@iki.fi>
1579 Fix for #108007, #112402, #117042: There was confusion in
1580 gdk/win32 at various places whether a window position refers to
1581 the decoration position or the client area position. Also whether
1582 window size includes decorations or not.
1584 The correct interpretation apparently is that in GDK (like in
1585 X11), a top-level window position means the decoration's position,
1586 but size means the window's inner size (client area size). In the
1587 Win32 API, the window size usually includes the decorations,
1590 * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
1591 #ifdef G_ENABLE_DEBUG.
1592 (handle_configure_event): New function, generates GDK_CONFIGURE
1593 events from WM_SIZE and WM_MOVE messages. Even if no event is
1594 generated because of the event mask, still set the private
1595 position and size fields. Calculate position and size correctly.
1596 (gdk_event_translate): Call handle_configure_event().
1598 * gdk/win32/gdkgeometry-win32.c: Cosmetics.
1600 * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
1601 macros. Cosmetic debugging output changes.
1602 (SafeAdjustWindowRectEx): Remove. If an application wants to
1603 locate a window outside of the screen, it's not GDK's business to
1604 prevent it. And anyway, with multiple monitors, negative
1605 coordinates are perfectly normal.
1606 (gdk_window_new): Adjust the window size for decorations after
1607 _gdk_window_init_position() has done its job. (But the big window
1608 code currently is presumably broken on Win32 anyway.)
1609 (gdk_window_move): The position passed in is supposed to be that
1610 of the window border, so don't need to adjust for decorations.
1611 (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
1613 Tue Jul 29 13:55:44 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1615 * gtk/gtktoolbar.c (gtk_toolbar_set_style,
1616 gtk_toolbar_prepend_element, gtk_toolbar_append_element,
1617 gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
1618 gtk_toolbar_append_space, gtk_toolbar_insert_item,
1619 gtk_toolbar_prepend_item, gtk_toolbar_append_item,
1620 gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
1621 gtk_toolbar_new, gtk_toolbar_prepend_item):
1623 Move documentation inline from template files.
1625 * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
1626 gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
1627 gtk_toolbar_append_widget, gtk_toolbar_remove_space,
1628 gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
1629 gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
1630 gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
1631 gtk_toolbar_get_style, gtk_toolbar_get_orientation)
1633 Copy documentation from stable that was added after the EggToolbar
1636 * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
1638 Mon Jul 28 18:21:34 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1640 * gtk+/docs/: Commit autogenerated changes, so patches will make
1643 2003-07-27 Tor Lillqvist <tml@iki.fi>
1645 * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
1646 the keyboard state returned by GetKeyboardState() doesn't
1647 distinguish between the left and right Control and Alt keys. Thus
1648 we cannot detect AltGr (which is supposed to be left Control +
1649 right Alt) the same way as on NT-based systems, but have to accept
1650 either Control + either Alt as AltGr.
1652 2003-07-27 Matthias Clasen <maclas@gmx.de>
1654 * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1655 Fix function name in warning message. (#118156, Tim-Philipp
1658 * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
1659 is-expander and is-expanded are boolean properties, not ints.
1660 (#118359, Josh Parsons)
1662 Sat Jul 26 15:21:27 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1664 * gtk/gtkimagemenuitem.c
1665 (gtk_image_menu_item_toggle_size_request): don't request
1666 toggle_space when the image width is 0.
1668 2003-07-25 Tor Lillqvist <tml@iki.fi>
1670 * gdk/win32/gdkprivate-win32.h
1671 * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
1672 and _gdk_keyboard_has_altgr.
1674 * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
1675 ones detailled here.
1677 Code that has been ifdeffed out for a long time removed. Remove
1678 some really old doc comments that were left behind for some public
1679 functions, the official ones are in the X11 backend anyway. Change
1680 GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
1681 multi-line boolean expressions to have the operators at ends of
1684 As mouse capture with SetCapture() indeed seems to work OK, no
1685 need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
1687 Ifdef out the gdk-ping-msg stuff. I don't remember why it was
1688 needed at some time, and things seem to work fine now without
1691 Ifdef out the search for some Latin locale keyboard layout being
1692 loaded. Not used currently, but might be needed after all, if we
1693 decide that we want to be able to generate ASCII control character
1694 events with a non-Latin keyboard.
1696 (assign_object): New helper function, handles the g_object_ref()
1697 and unref() calls when assigning GObject pointers.
1699 (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
1700 enter event when the pointer has moved to an ancestor window. Was
1701 left out by mistake.
1703 (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
1705 (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
1706 functionality, using ClipCursor().
1708 (find_window_for_mouse_event): Splice part of code into new
1709 function find_real_window_for_grabbed_mouse_event().
1711 (fixup_event, append_event, apply_filters): New functions, code
1712 refactored out from elsewhere.
1714 (synthesize_enter_or_leave_event, synthesize_leave_event,
1715 synthesize_enter_event,
1716 synthesize_leave_events,synthesize_enter_events): Also take a
1717 GdkCrossingMode parameter, in preparation to generating
1718 GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
1720 (fixup_event, append_event, fill_key_event_string): New functions,
1723 (vk_from_char, build_keypress_event, build_keyrelease_event):
1724 Removed as part of dropping WM_CHAR handling.
1726 (build_key_event_state,gdk_event_translate): Call
1727 GetKeyboardState(), once, for each keyboard message, instead of
1728 several calls to GetKeyState() here and there.
1730 (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
1731 at it, do some major refactoring, and some fixes for potential
1732 problems noticed while going through the code.
1734 Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
1735 WM_KEYUP. Don't need the state variables related to whether to
1736 wait for WM_CHAR or not, and whether the current key is
1737 AltGr. Remove lots of complexity. Thus don't need the
1738 use_ime_composition flag.
1740 Not handling WM_CHAR means dead key handling will have to be taken
1741 care of by GTK, but that seems to work fine, so no worry.
1743 Another side-effect is that Alt+keypad digits don't work any
1744 longer, but it's better to learn to use GTK's ISO14755 support is
1747 Be more careful in checking whether AltGr is involved. Only
1748 attempt to handle it if the keyboard actually has it. And
1749 explicitly check for *left* Control plus *right* Alt being
1750 pressed. Still, allow (left) Alt and/or (right) Control with AltGr
1753 Handle keys using similar code as in the X11 backend. As we have
1754 built a keymap in gdkkeys-win32.c anyway, use it by calling
1755 gdk_keymap_translate_keyboard_state() to look up the keysym from
1756 the virtual key code and keyboard state. Build the key event
1757 string in exactly the same way as the X11 backend.
1759 If an IME is being used, don't generate GDK events for keys
1760 between receiving WM_IME_STARTCOMPOSITION and
1761 WM_IME_ENDCOMPOSITION, as those keys are for the IME.
1763 For WM_IME_COMPOSITION, handle all the Unicode chars returned from
1764 the IME, not just the first one.
1766 gdk_event_translate() is still quite complex, could split the
1767 message handler cases out into separate functions.
1769 On mouse events, when the mouse is grabbed, use
1770 find_real_window_for_grabbed_mouse_event() in order to be able to
1771 generate correct crossing events.
1773 No longer take a pre-allocated GdkEvent as parameter. Instead,
1774 allocate events as needed and append them to the queue. (This is
1775 different from how gdk_event_translate() in the X11 backend
1776 works.) This change made the code much clearer, especially in the
1777 cases where we have to generate several GDK events for one Windows
1778 message. Return FALSE if DefWindowProc() should be called, TRUE
1779 if not. If DefWindowProc() should not be called, also return the
1780 value to be returned from the window procedure.
1782 (Previously, the interaction with gdk_event_translate()'s caller
1783 was much more complex, when we had to indicate whether the
1784 already-queued event should be left in the queue or removed, and
1785 in addition also had to indicate whether to call DefWindowProc()
1786 or not, and what value to return from the window procedure if
1789 Don't use a separate "private" variable required to be pointing to
1790 the GdkWindowObject of the "window" variable at all times. Just
1791 use casts, even if looks a bit uglier.
1793 Notice destroyed windows as early as possible, and break out of
1794 the messsage switch.
1796 Use _gdk_pointer_root as current_window when the pointer is
1797 outside GDK's top-level windows.
1799 On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
1800 appropriate, based on ImmIsIME().
1802 (gdk_event_translate, gdk_event_send_client_message_for_display,
1803 gdk_screen_broadcast_client_message): Implement client messages.
1804 Use a registered Windows message to pass GDK client messages. Note
1805 that the amount of user data is restricted to four bytes, as it is
1806 carried in the LPARAM. (The WPARAM is used for the message type
1809 (real_window_procedure): Adapt for new gdk_event_translate()
1812 * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
1813 _gdk_input_locale_is_ime initially.
1815 * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
1816 of g_colormap_ref()/unref().
1818 (gdk_window_new): Made code a bit more like the X11 one, pretend
1819 to handle screens (although we just have one for now).
1821 * gdk/x11/gdkevents-x11.c
1822 (gdk_event_send_client_message_for_display,
1823 gdk_screen_broadcast_client_message): Document the user data
1824 limitation on Win32.
1826 * gdk/win32/gdkevents-win32.c (print_event): More complete enter
1827 and leave notify detail output.
1829 * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
1830 visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
1831 for those, so that the GtkIMContextCimple compose tables will
1832 work. Deduce if the keyboard layout has the AltGr key, and set the
1833 above flag accordingly.
1835 2003-07-26 Matthias Clasen <maclas@gmx.de>
1837 * gtk/gtkwidget.c: Document DND signals.
1839 2003-07-24 Matthias Clasen <maclas@gmx.de>
1841 * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
1842 insensitive when editing isn't possible. (#118150)
1844 2003-07-23 Matthias Clasen <maclas@gmx.de>
1846 * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue
1847 spinbutton wrap. (#118097, John Darrington)
1849 * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps.
1851 2003-07-20 Hans Breuer <hans@breuer.org>
1853 * makefile.msc : new file to build it all
1854 * Makefile.am : ... added to EXTRA_DIST
1856 * gdk/makefile.msc gtk/stock-icons/makefile.msc
1857 gtk/makefile.msc.in tests/makefile.msc : updated
1859 * gdk/gdk.def gtk/gtk.def : export a bunch of new
1862 * gtk/gtkbbox.c : use g_return_val_if_fail() if
1863 there is a value to return
1865 * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
1868 * gtk/gtkicontheme.c : ported to use GTimeVal instead of
1869 struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
1871 * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
1873 * gtk/gtkimmulticontext.c : use gtkprivate.h
1875 * gtk/stock-icons/stock_color_picker_25.png
1876 gtk/stock-icons/stock_jump_to_rtl_16.png
1877 gtk/stock-icons/stock_jump_to_rtl_24.png
1878 gtk/stock-icons/stock_redo_rtl_16.png
1879 gtk/stock-icons/stock_redo_rtl_24.png
1880 gtk/stock-icons/stock_undelete_rtl_16.png
1881 gtk/stock-icons/stock_undelete_rtl_24.png
1882 gtk/stock-icons/stock_undo_rtl_16.png :
1883 gtk/stock-icons/stock_undo_rtl_24.png :
1886 Sat Jul 19 22:39:24 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1888 * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
1889 leftover request of {xy}thickness
1891 Sat Jul 19 16:26:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1893 * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
1894 attempt to add a NULL icon to the box.
1896 Sat Jul 19 12:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1898 * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
1901 2003-07-19 Matthias Clasen <maclas@gmx.de>
1903 * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id.
1904 * gtk/gtkiconfactory.c (get_default_icons): Add
1905 stock_dialog_authentication_48. (#65765)
1906 * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
1907 * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
1910 * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
1913 Sat Jul 19 00:18:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1915 * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
1918 * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
1919 (gtk_widget_real_focus_{in|out}_event): queue shallow draws
1920 instead of full draws.
1922 2003-07-18 Matthias Clasen <maclas@gmx.de>
1924 * gtk/gtkwindow.c: Add properties decorated and gravity. (#80234)
1926 * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
1927 signal, move_viewport.
1928 (gtk_text_view_move_viewport): New function which implements the
1929 move_viewport functionality.
1930 (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
1931 the viewport. (#78669)
1933 * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
1934 move_viewport argument.
1936 * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
1940 * gtk/gtkwindow.c (gtk_window_set_default_icon): New method. (#95816)
1942 * gtk/gtkmessagedialog.h:
1943 * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
1944 (#65501, Sebastian Rittau)
1946 Fri Jul 18 20:06:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1948 * gtk/gtktextview.c (changed_handler): use
1949 gtk_widget_queue_resize_noredraw().
1951 2003-07-16 Jody Goldberg <jody@gnome.org>
1953 * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
1955 Fri Jul 18 19:55:50 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1957 * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
1960 Fri Jul 18 18:43:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1962 By popular request give toolbuttons a border.
1965 (gtk_tool_item_size_allocate):
1966 (gtk_tool_item_size_request): don't request and allocate a border
1969 * gtk/gtktoolbutton.c
1970 (gtk_tool_button_size_allocate):
1971 (gtk_tool_button_size_request): remove these functions
1974 (gtk_toolbar_size_request):
1975 (gtk_toolbar_size_allocate): request and allocate a border if we
1978 Thu Jul 17 19:24:51 2003 Kristian Rietveld <kris@gtk.org>
1982 Fixes issues pointed out by Morten Welinder in #115140.
1984 * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
1985 (do_validate_rows): update validated_area with a logic OR instead
1987 (validate_rows_handler): make the if statement match the one in
1988 validate_rows(), so we don't leak the timeout.
1990 Thu Jul 17 19:12:02 2003 Kristian Rietveld <kris@gtk.org>
1994 * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
1995 should only grab focus back if the "cell_editable" widget still
1996 has focus. (Fixes #110104, testcase provided by Marco Pesenti
1999 Thu Jul 17 19:06:34 2003 Kristian Rietveld <kris@gtk.org>
2003 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2004 Don't set attr.event_mask twice, those things were meant to be
2005 ORred. (#115139, pointed out by Morten Welinder).
2007 Thu Jul 17 16:11:21 2003 Kristian Rietveld <kris@gtk.org>
2011 * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
2012 if needed. (Fixes #115869, reported by Michael Natterer).
2014 2003-07-15 Matthias Clasen <maclas@gmx.de>
2016 * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2017 Fight against gtk-doc stupidity.
2019 2003-07-13 Matthias Clasen <maclas@gmx.de>
2021 * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to
2022 targets, to pacify gtk-doc.
2024 Sun Jul 13 15:57:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2026 * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
2027 label_text, label_widget and icon_widget. (#117312,
2030 Sun Jul 13 01:37:51 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2032 * gtk/gtkmenu.c (gtk_menu_class_init): new properties
2033 "horizontal-offset" and "vertical-offset" that determines the
2034 position of the menu when it is a submenu.
2036 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
2037 submenus according to new vertical- and horizontal-offset
2040 Sat Jul 12 16:16:04 2003 Kristian Rietveld <kris@gtk.org>
2044 * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
2045 case drags to "0", scroll to the top after dropping. (Fixes #94968,
2046 reported by Alp Toker).
2048 Sat Jul 12 16:08:32 2003 Kristian Rietveld <kris@gtk.org>
2052 * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
2053 code (#115784, Owen Taylor).
2055 Sat Jul 12 16:01:03 2003 Kristian Rietveld <kris@gtk.org>
2059 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
2060 free the old text and extra_attrs *after* we parsed the new
2061 markup string. (Fixes #114485, reported by Owen Taylor).
2063 Sat Jul 12 15:51:33 2003 Kristian Rietveld <kris@gtk.org>
2067 Fixes #113904, testcase provided by Rene Seindal.
2069 * gtk/gtktreeview.c (gtk_tree_view_button_press): set
2070 pressed_button to -1 when a row has been activated,
2071 (gtk_tree_view_motion_bin_window): only start a drag if there's
2072 a button being pressed.
2074 Sat Jul 12 15:51:18 2003 Kristian Rietveld <kris@gtk.org>
2078 * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
2079 gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
2080 to avoid a roundtrip (#110272, Owen Taylor).
2082 Sat Jul 12 15:28:26 2003 Kristian Rietveld <kris@gtk.org>
2086 This patch really really fixes scrolling. Related bugs: #81627,
2087 testcase provided by Timo Sirainen, #111500, testcase provided by
2088 manu, #113241, reported by Pedro Gimeno/Michael Natterer.
2090 * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
2091 which is equal to the lower border of the window means scrolling
2092 to an invisible row, always update the dy when scrolling to an
2093 invisible row, corrected area_above/below calculations for
2094 invisible rows, when walking the tree correct the size
2095 subtracted for invalidated rows, fix wrong logic in comment.
2097 2003-07-11 Matthias Clasen <maclas@gmx.de>
2099 * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
2100 mime_types. (#117219, Steve Chaplin)
2102 Tue Jul 8 20:11:04 2003 Owen Taylor <otaylor@redhat.com>
2104 * gdk/x11/gdkevents-x11.c (get_real_window)
2105 gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
2106 gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
2107 gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
2108 Don't assume that all events start with XEventAny - Xkb events
2109 don't! (#105745). So, only do that for core events, and for
2110 non-core events, add a system for registering event types
2111 that start with XEventAny.
2113 * gdk/x11/gdkevents-x11.c (gdk_event_translate):
2114 Check to see if the result of gdk_window_lookup_for_display()
2115 is actually a window.
2117 Fri Jul 11 20:48:14 2003 Kristian Rietveld <kris@gtk.org>
2119 * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
2120 check a silent assert, so it follows the g_free() behaviour.
2122 2003-07-11 Matthias Clasen <maclas@gmx.de>
2124 * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents
2125 vertically. (#109823, Joe Shaw)
2127 2003-07-11 Morten Welinder <terra@gnome.org>
2129 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
2130 access error. (#69436)
2132 Fri Jul 11 14:32:43 2003 Kristian Rietveld <kris@gtk.org>
2134 Landing GtkTreeModelFilter and the completion code. (Test program
2135 and documentation will follow next week).
2137 * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
2138 gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
2140 * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
2141 necessary code to hook up completion.
2143 * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
2144 GtkCellLayout interface.
2146 * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
2148 * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
2151 Wed Jul 9 19:48:26 2003 Kristian Rietveld <kris@gtk.org>
2155 * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
2156 directly return from ->window_at_pointer, but set win_x and win_y
2157 first if needed. (Fixes #110166, reported by Arno Charlet).
2159 * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
2160 function to accept GdkDrawables and not just GdkWindows. This was
2161 already done in some other functions a while back, but this patch
2162 got lost for some reason.
2164 2003-07-09 Matthias Clasen <maclas@gmx.de>
2166 * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
2167 direction when sorting children. (#116540, Soeren Sandmann)
2169 Tue Jul 8 17:36:21 2003 Owen Taylor <otaylor@redhat.com>
2171 * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c:
2172 Change _gdk_x11_send_xevent_async() to
2173 _gdk_x11_send_client_message_async() avoid using Xlib
2174 internals that are different on Solaris.
2175 (#116917, Morten Welinder)
2177 2003-07-08 Matthias Clasen <maclas@gmx.de>
2179 * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
2180 (#116501, Doug Quale)
2182 Tue Jul 8 21:35:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2184 * gtk/gtktoggletoolbutton.h: remove strange #define
2185 * gtk/gtktoolbutton.h: fix cut'n'paste error
2186 * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
2188 * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
2189 private data instead of g_new0()
2190 * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
2191 instance private data
2193 Tue Jul 8 21:10:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2195 * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
2196 for INPUT_ONLY window
2197 * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
2198 * gtk/gtknotebook.c (gtk_notebook_realize): same
2199 * gtk/gtkexpander.c (gtk_expander_realize): same
2200 * gtk/gtkrange.c (gtk_range_realize): same
2204 Tue Jul 8 19:57:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2206 * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
2207 when detail is "menuitem". With the new menu look is isn't needed
2210 * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
2211 resize here, so that tool items will get a chance to relayout
2212 themselves based on the toolbar configuration.
2214 change DEFAULT_SPACE_SIZE to 4 instead of 5
2217 Get rid of "!GTK_BIN (item)->child means separator". Separators
2218 are widgets in their own right
2220 change DEFAULT_SPACE_SIZE to 4 instead of 5
2222 (get_space_size): remove this function
2223 (toolbar_item_is_homogeneous): new function
2225 * gtk/gtkseparatortoolitem.c
2226 (gtk_separator_tool_item_size_request): new function.
2228 Tue Jul 8 14:10:35 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2230 * gtk/gtktoggletoolbutton.h: use private data, add new
2231 internal function _gtk_toggle_tool_button_get_button()
2233 * gtk/gtktoolbutton.h: move to private data
2235 * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
2238 Tue Jul 8 12:50:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2240 * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
2241 type check, (#116947, Krasimir Angelov)
2243 * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
2245 * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
2246 data. Not instance private data yet, because of bug 116921.
2248 * gtk/gtktoolitem.h: new accessors:
2249 gtk_tool_item_get_homogeneous ()
2250 gtk_tool_item_get_expand ()
2251 gtk_tool_item_get_pack_end ()
2252 gtk_tool_item_get_use_drag_window ()
2254 Mon Jul 7 16:50:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2256 * gtk/gtkcellrenderertext.c
2257 (gtk_cell_renderer_text_class_init): remove accidentally committed
2261 (gtk_toolbar_paint_space_line): remove this function
2262 (gtk_toolbar_expose): always propagate expose, even if the item is
2265 * gtk/gtkseparatortoolitem.c
2266 (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
2267 (get_space_size): new function.
2268 (get_space_style): new function
2270 Sun Jul 6 13:00:20 2003 Owen Taylor <otaylor@redhat.com>
2272 * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
2273 * gtk/gtkdnd.c (gtk_drag_begin_internal): Remove use
2274 of GDK_POINTER_MOTION_HINT_MASK.
2276 * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
2277 of the drag into an idle as a superior form of
2280 * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
2281 creation here, so that we have an icon at the start
2282 of the drag (e.g., when retrieving the window cache
2285 Sun Jul 6 17:21:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2287 * docs/widget_geometry.txt: better drawing of GtkMenuItem
2288 * docs/widget_geometry.txt: add notes about GtkMenu
2289 * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
2291 Sat Jul 5 10:34:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2293 * gtk/gtkmenu.c: add vertical_padding style property.
2295 * gtk/gtkmenuitem.c: add style properties toggle_spacing,
2296 arrow_spacing and horizontal_padding. Also center separators and
2297 make them a bit taller.
2299 * gtk/*menuitem.c: use new style properties.
2301 * docs/widget_geometry.txt: Add note about GtkMenuItem
2304 (gtk_default_draw_vline, gtk_default_draw_hline):
2307 (gtk_default_draw_shadow): draw a black border around menus.
2309 * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
2310 calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
2311 x2 and y1, y2 respectively, not x, width and y, height).
2313 Sat Jul 5 09:55:38 2003 Owen Taylor <otaylor@redhat.com>
2315 * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
2316 all the atoms in the target list at once.
2318 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
2319 Local drag short-circuit.
2321 * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
2322 local case, poke the actions in directly instead of
2323 going through xdnd_set_actions.
2325 * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
2328 * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
2329 XSelectInput()/add a filter if the drag is local.
2331 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection):
2332 Simplify handling of "XdndSelection".
2334 * gdk/x11/gdkevents-x11.c
2335 (gdk_event_send_client_message_to_all_recurse): Somehow,
2336 a WM_STATE => _NET_WM_STATE change hand been made here.
2338 * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
2339 xatom_names, not atom_names.
2341 * tests/testdnd.c (target_drag_motion): Make the trashcan
2342 open again. (Got lost in deprecation cleanup.)
2344 Sat Jul 5 00:49:32 2003 Owen Taylor <otaylor@redhat.com>
2346 * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
2347 earlier, so we don't get a big pile of uncompressed
2348 motion events before the grab takes effect.
2350 * gtk/gtkdnd.c (gtk_drag_update_icon): Call
2351 gdk_window_process_all_updates() so that the area
2352 we are dragging over gets a change to redraw.
2354 * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use
2355 gdk_window_get_position(), not gdk_window_get_origin().
2357 * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
2358 gdkdisplay-x11.h: use XShapeQueryExtension to
2359 avoid duplicate XQueryExtension when we actually
2360 use it. Remove unnecessary caching in GdkDisplayX11.
2362 Fri Jul 4 23:49:22 2003 Owen Taylor <otaylor@redhat.com>
2364 * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info):
2365 Function to get a range of information about all the
2366 children of a window in a single pass.
2368 * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
2369 gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
2370 _gdk_x11_get_window_child_info() to greatly reduce
2371 the number of roundtrips.
2373 Fri Jul 4 22:57:18 2003 Owen Taylor <otaylor@redhat.com>
2375 * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
2376 a function to XSendEvent() and call a calback on
2379 * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
2380 messages to the same process, use _gdk_send_xevent_async().
2382 Fri Jul 4 22:26:27 2003 Owen Taylor <otaylor@redhat.com>
2384 * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
2385 toplevel-specific pieces of GdkWindowImplX11 into
2386 a separate GdkToplevelX11 structure.
2388 Fri Jul 4 22:05:09 2003 Owen Taylor <otaylor@redhat.com>
2390 * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
2391 some leftover fields.
2393 Fri Jul 4 15:57:52 2003 Owen Taylor <otaylor@redhat.com>
2395 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
2396 Use asynchronously _gdk_x11_set_input_focus_safe
2397 to avoid having to trap errors and XSync().
2399 * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
2400 _gdk_x11_set_input_focus_safe() here as well.
2402 * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
2403 Rework handling of property notifies on _NET_WM_STATE
2404 so that we ignore _NET_WM_DESKTOP notifies unless we
2407 * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
2408 XShmQueryExtension() rather than XQueryExtension() to
2409 avoid extra rountrip.
2411 * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
2412 Remove unused call to XGetWindowAttributes()
2414 * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
2415 unused call to XGetKeyboardControl().
2417 * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
2420 * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c
2421 No-op implementations of gdk_display_flush().
2423 * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
2424 gdk_display_flush() rather than gdk_flush() to avoid
2427 * gdk/x11/gdkwindow-x11.c (update_wm_hints)
2428 gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
2429 so that we don't have to get the property back from the server.
2431 * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
2432 the serial of when we map a toplevel to allow optimizing
2433 out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
2435 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
2436 XTranslateCoordinates() for override-redirect windows.
2438 Fri Jul 4 15:59:27 2003 Owen Taylor <otaylor@redhat.com>
2440 * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
2441 about setting window group after the window is mapped from docs
2442 - nothing the ICCCM forbids that.
2444 * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2445 Fix g_return_val_if_fail() in void return function.
2447 * configure.in: Fix misplaced comma that was resulting
2448 in XShm always being disabled.
2450 Fri Jul 4 19:55:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2452 * tests/stresstest-toolbar: remove this accidentally committed
2455 * tests/stresstest-toolbar.c: really add this new test
2457 Fri Jul 4 19:06:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2459 * tests/stresstest-toolbar.c: new test for removing items
2461 * tests/testtoolbar.c: add a popup menu
2463 * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
2464 assert widget->parent == container when the container is a
2467 * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
2468 simpler. Also make correct.
2470 * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
2471 popup_context_menu a boolean handled signal.
2473 2003-07-04 Tor Lillqvist <tml@iki.fi>
2475 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
2476 gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
2477 the width and height of the bounding rectangle only after the
2478 minumum x and y have been found, and need a separate loop for
2479 it. Thanks to Bruce Hochstetler for providing a sample program
2482 2003-07-03 Tor Lillqvist <tml@iki.fi>
2484 * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
2485 (#116537, Peter Zelezny)
2487 Thu Jul 3 03:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2489 * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
2490 fix warning. Assign something to old_value to quiet gcc
2493 (start_spinning): gtk_timeout_add->g_timeout_add
2495 * gtk/gtkicontheme.c
2496 (theme_lookup_icon): Make it compile (remove double semicolon)
2498 * gtk/gtktoolbutton.c
2499 (gtk_tool_button_class_init): Long comment about properties.
2500 (gtk_tool_button_class_init): Improve text for "use_underline"
2502 (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
2503 on whether the passed-in label has use_mnemonic set
2504 (gtk_tool_button_create_menu_proxy): Split image cloning out in
2505 new function. Make that function also handle image with pixbuf
2507 (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
2508 instead of gtk_container_remove().
2509 (gtk_tool_button_construct_contents): Fix eliding bug
2512 (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
2514 (gtk_toolbar_button_press): Make popup_context_menu signal provide
2515 coordinates and button number
2517 * tests/testtoolbar.c (main): Add new pixbuf toolbutton
2519 * tests/apple-red.png: new file
2521 Wed Jul 2 18:00:56 2003 Owen Taylor <otaylor@redhat.com>
2523 * gtk/gtkicontheme.[ch]: Implement a loader for
2524 named themed icon based on from gnome-desktop library
2527 * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
2530 * gtk/gtkiconfactory.[ch]: Add
2531 gtk_icon_source_set/get_icon_name() to allow stock icons
2532 to be based off of named theme icons.
2534 * gtk/gtkiconfactory.c: Rework sources so that the source
2535 is *either* a pixbuf, or a filename, or an icon name,
2536 instead of the pixbuf/filename mix it was before. Put a
2537 workaround for get_pixbuf() so that it can return the
2538 filename pixbuf, e.g, for render_icon().
2540 * gtk/gtkiconfactory.c: Make the default setup use
2541 themed icons, and add builtin icons to the default
2542 icon theme for all the standard pixbufs, so we
2543 don't rely on actually having an icon theme on disk.
2545 * gtk/gtkrc.c: Add support for @"icon-name" to specify
2546 a themed icon for a stock icon source.
2548 * tests/Makefile.am test/testicontheme.c: Add a test
2549 program from gnome-desktop.
2551 * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
2552 Net/IconThemeName / gtk-icon-theme-name setting.
2554 * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
2555 update the icon cache serial so we don't continually
2556 think we are out-of-date.
2558 * gtk/gtkwidget.c: Fix a couple of references in doc comments
2559 to ::direction_set that should have been to ::direction-changed
2561 Wed Jul 2 14:45:41 2003 Owen Taylor <otaylor@redhat.com>
2563 * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
2564 style to the widget.
2566 Wed Jul 2 15:42:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2568 * gtk/gtk.h: Add new toolbar headers
2570 * tests/testtoolbar.c: new file
2572 * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
2574 * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
2576 Tue Jul 1 22:49:25 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2579 (gtk_toolbar_remove_tool_item): Fix bug where list is changed
2580 inside a for loop (pointed out by Morten Welinder).
2581 (gtk_toolbar_focus_home_or_end): Minor formatting change
2585 * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
2586 gtk_toolbar_elide_underscores instead.
2588 * gtk/gtktoolbar.c: rename signal from focus_ends to
2590 (_gtk_toolbar_elide_underscores): export this as an internal
2592 (gtk_toolbar_move_focus): add comment explaining difference to
2593 gtk_toolbar_focus();
2594 (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
2595 TAB_BACKWARD focus the right widgets in RTL mode
2597 * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
2598 "label" and "icon" parameters
2600 * gtk/gtktoolbutton.[ch]: remove icon_set property.
2602 2003-07-01 Matthias Clasen <maclas@gmx.de>
2604 * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
2605 (116364, Morten Welinder)
2607 * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
2608 corresponding dialogs.
2610 * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
2612 (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c.
2614 * gtk/gtkfontbutton.[hc]: New files containing a font picker widget.
2616 * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget.
2618 * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
2620 * gtk/gtkexpander.c: Small additions to the docs.
2622 2003-07-01 Tor Lillqvist <tml@iki.fi>
2624 * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
2625 WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
2627 2003-07-01 Matthias Clasen <maclas@gmx.de>
2629 * configure.in: Check for Xcursor.
2631 * gdk/x11/gdkcursor-x11.c:
2633 * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
2634 gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
2635 gdk_display_supports_cursor_color(),
2636 gdk_display_get_default_cursor_size() and
2637 gdk_display_get_maximal_cursor_size(). (#69436)
2639 2003-06-30 Tor Lillqvist <tml@iki.fi>
2641 * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
2642 callback proc for EnumWindows().
2643 (gdk_drag_find_window_for_screen): Actually take the drag_window
2644 argument into account: Instead of using WindowFromPoint(), use
2645 EnumWindows(), to be able to skip the drag_window. (#116320, Tony
2646 M Brown, Herman Bloggs)
2648 * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
2649 gdk_window_ref()/unref() calls with g_object_ref()/unref().
2650 Consistently use %p format in debugging output of pointers and
2653 2003-06-30 Mark McLoughlin <mark@skynet.ie>
2655 * gtk/gtkexpander.h: kill some stray characters
2658 2003-06-30 Mark McLoughlin <mark@skynet.ie>
2660 Add GtkExpander. See discussion in bug #60553.
2662 * gtk/gtkexpander.[ch]: add.
2664 * gtk/Makefile.am: build gtk-expander.[ch].
2666 * docs/widget_geometry.txt: add info on the layout
2669 Mon Jun 30 01:20:19 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2671 * gtkradiotoolbutton.c: new file
2672 * gtkradiotoolbutton.h: "
2673 * gtktoggletoolbutton.c: "
2674 * gtktoggletoolbutton.h: "
2675 * gtktoolbutton.c: "
2676 * gtktoolbutton.h: "
2679 * gtktoolbar.c: many changes
2680 * gtktoolbar.h: many changes
2681 * gtkseparatortoolitem.c: new file
2682 * gtkseparatortoolitem.h "
2686 - Items on a toolbar are now separate widgets, instances of a
2687 subclass of GtkToolItem.
2689 - Items there aren't room for on the toolbar are unmapped, and an
2690 overflow menu with a proxy menu item is added instead.
2692 - The toolbar is keyboard navigatable. Press TAB to focus the
2693 first item, then use arrow keys and Ctrl TAB to move around the
2694 toolbar. TAB moves focus out of the toolbar.
2696 - Bascially all of the old toolbar API is deprecated in favor of
2697 new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
2699 - The toolbar is backwards compatible with the old toolbar.
2701 2003-06-29 Matthias Clasen <maclas@gmx.de>
2703 * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
2704 from docs, some more formatting fixes.
2706 2003-06-28 Tor Lillqvist <tml@iki.fi>
2708 Fix for #111028, thanks to J. Ali Harlow, who writes:
2709 I found that the GdkPixmap->GdkImage reference really isn't
2710 important. It's only really there to have somewhere convenient to
2711 store the location of the pixel data in the pixmap and as an easy
2712 way of accessing the dimensions of that data. I have therefore put
2713 together a fix which removes this reference entirely which seems
2714 to solve the problem.
2716 * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
2717 Instead of a pointer to a GdkImage, keep a pointer to the pixels
2720 * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
2721 (_gdk_win32_new_image): New function, replacing the above. Creates
2722 a GdkImage without any associated GdkPixmap.
2723 (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
2725 * gdk/win32/gdkprivate-win32.h: Remove from here, too.
2727 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
2728 * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
2729 * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
2730 * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
2731 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
2732 gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
2733 Corresponding changes.
2735 Thu Jun 26 21:41:16 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2737 * gtk/gtktreeviewcolumn.c
2738 (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
2739 and "is_expanded" if the new value is different fromt he old one.
2741 Wed Jun 25 18:59:15 BST 2003 Tony Gale <gale@gtk.org>
2743 * docs/faq/gtk-faq.sgml: Fix typos. Update
2744 thread example I missed yesterday.
2746 2003-06-24 Matthias Clasen <maclas@gmx.de>
2748 * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
2751 * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser):
2752 (gtk_widget_class_list_style_properties): Use same parameter names as in
2753 header (to silence gtk-doc).
2755 * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
2757 Tue Jun 24 20:00:45 BST 2003 Tony Gale <gale@gtk.org>
2759 * docs/faq/gtk-faq.sgml: Thread support updates
2760 from Owen. Various suggestions from Steve Chaplin.
2762 2003-03-24 Mohammad DAMT <mdamt@bisnisweb.com>
2764 * po/id.po: Updated Indonesian translation
2766 2003-06-21 Tor Lillqvist <tml@iki.fi>
2768 * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
2769 emulating X11's automatic grab on button down, pass owner_events
2770 as FALSE. According to the XLib spec, automatic grabs use True for
2771 owner_events when OwnerGrabButtonMask is selected, and I don't see
2772 the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
2773 (find_window_for_pointer_event): Improve debugging output.
2775 2003-06-17 Tor Lillqvist <tml@iki.fi>
2777 * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
2778 subdirectory, where libtool 1.5 installs them.
2780 * README.win32: Point to FSF's binary Win32 distribution of
2783 2003-06-17 Matthias Clasen <maclas@gmx.de>
2785 * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
2786 macros to check for XML catalog contents and path, borrowed from
2788 * configure.in: New option --enable-man to enable regeneration of
2789 man pages from Docbook, if the necessary tools are found.
2791 2003-06-15 Matthias Clasen <maclas@gmx.de>
2793 * gtk/gtkcalendar.c (gtk_calendar_class_init):
2794 * gtk/gtknotebook.c (gtk_notebook_class_init):
2795 * gtk/gtkalignment.c (gtk_alignment_class_init):
2796 * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
2799 * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs
2800 to the proper place, immediately before the g_signal_new() call.
2802 * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags
2803 more obvious. (#115122, Jeff Franks)
2805 2003-06-12 Anders Carlsson <andersca@codefactory.se>
2807 * gtk/gtkwidget.c: (event_window_is_still_viewable):
2808 Special case pixmaps. (#114880)
2810 2003-06-12 Matthias Clasen <maclas@gmx.de>
2812 * gtk/gtkwidget.c: Document child-notify and drag-data-received
2813 signals. Owen, we need to figure out where the best place for
2814 these comments in the source is. I currently put them in front of
2817 2003-06-11 Matthias Clasen <maclas@gmx.de>
2819 * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
2821 Thu Jan 12 01:01:19 2003 Kristian Rietveld <kris@gtk.org>
2823 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2824 silly typo fix. s/seperator/separator/. This gets rid of the
2825 assert spam when using TreeView.
2827 Tue Jun 10 11:23:48 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
2829 * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
2830 function for XIM instantiate callback.
2831 * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
2832 where call to XOpenIM() or XRegisterIMInstantiateCallback() is
2834 * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
2835 for XIM's destroy callback.
2836 * modules/input/gtkimcontextxim.c (get_im): add a check if info->im
2837 is set or not - if it's not set, call xim_info_try_im() to try to
2839 * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
2840 filter_key_release flag of the context.
2841 * modules/input/gtkimcontextxim.c (get_ic_real): removed
2842 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
2843 code from the removed get_ic_real().
2845 For XIM instantiation, destruction and re-instantiation. With
2846 this, Gtk+ apps will be able to connect or reconnect to the XIM,
2847 when it starts after the apps, or when the XIM gets lost and recover.
2850 Mon Jun 10 01:12:31 2003 Kristian Rietveld <kris@gtk.org>
2854 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
2855 check if width is !null, not *width. Doh.
2857 Tue Jun 10 01:09:33 2003 Kristian Rietveld <kris@gtk.org>
2861 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2862 Remove the weird dx logic, get all cell_area and background_area
2863 calculations right. Not sure what was up with it before. (Fixes
2864 #110989, testcase from Vasco Alexandre da Silva Costa).
2866 Tue Jun 10 00:58:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2868 * tests/testgtk.c: Make it compile with C89 compilers
2870 2003-06-10 Matthias Clasen <maclas@gmx.de>
2872 * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
2873 property "overwrite".
2874 (gtk_text_view_[gs]et_property): Handle "overwrite".
2875 * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
2876 and setter for "overwrite" property. (#110241, Jeroen Zwartepoorte)
2878 2003-06-09 Matthias Clasen <maclas@gmx.de>
2880 * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
2881 properties "resize" and "shrink".
2882 (gtk_paned_[gs]et_child_property): Implementations of
2883 GtkContainer::[gs]et_child_property.
2884 * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
2885 paned child properties instead of remove/add hacks. (#114667,
2888 Mon Jun 9 16:18:11 2003 Owen Taylor <otaylor@redhat.com>
2890 * gtk/gtknotebook.c (gtk_notebook_button_press): Back
2891 out event->window test - it wasn't needed because
2892 of the call to get_widget_coordinates().
2894 * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
2895 call to gtk_widget_grab_focus() when not clicking on
2896 any tabs. (Real fix for #114534)
2898 Sun Jun 8 22:03:09 2003 Owen Taylor <otaylor@redhat.com>
2900 * tests/testdnd.c: Use application/x-rootwindow-drop for
2901 root window drops. (#108670, Alex Larsson)
2903 * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop):
2904 Accept either application/x-rootwin-drop (what GTK+ has always used)
2905 or application/x-rootwindow-drop (what the XDND standard specifies).
2907 Fri Jun 6 11:07:33 2003 Owen Taylor <otaylor@redhat.com>
2909 * gtk/gtkwidget.c (event_window_still_viewable):
2910 Before delivering an event to a widget, check that
2911 (if relevant), the event's window is still viewable.
2912 (#105642, Dennis Björklund)
2914 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
2915 NULL out private->parent, since after destruction
2916 it might not be valid any more.
2918 * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
2919 accesses before g_return_val_if_fail(). Treat
2920 DESTROYED windows as unmapped.
2922 Thu Jun 5 09:28:03 2003 Owen Taylor <otaylor@redhat.com>
2924 * gtk/gtkentry.c: Recompute unconditionally in
2925 gtk_entry_style_set, and in a new gtk_label_screen_changed().
2926 Protect the guts of recompute_idle_func() with
2927 gtk_widget_has_screen(). (#114040, Morten Welinder)
2928 Fix FALSE/0 confusion.
2930 Sun Jun 8 18:27:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2932 * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
2935 Sun Jun 8 11:27:29 2003 Owen Taylor <otaylor@redhat.com>
2937 * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with
2938 set_adjustment (viewport, NULL);
2940 2003-06-07 Matthias Clasen <maclas@gmx.de>
2942 * gtk/gtkiconfactory.c (get_default_icons):
2943 * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
2944 * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
2945 undelete and revert. (#96633)
2947 Fri Jun 6 16:25:44 2003 Owen Taylor <otaylor@redhat.com>
2949 * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and
2950 refactoring of code to reduce duplication; fixes include:
2952 - gtk_viewport_realize(): Position the window correct from adjustment
2953 values. (#110737, Michael Natterer)
2955 - Remove some division-by-zero checks in places where there is no
2956 longer division. (#110737)
2958 - gtk_viewport_class_init: Make the hadjustment/vadjustment properties
2959 G_PARAM_CONSTRUCT, so that there will always be adjustments, even
2960 if gtk_viewport_new isn't used (#101135, Thomas Leonard).
2962 - Switch over to encapsulated lazy-creation for hadjustment/
2963 vadjustment; even with the CONSTRUCT property, we need this after
2966 - When updating the adjustment, immediate set their values to
2967 match the the current range of the viewport, and update the
2968 viewport position to match the value of the new adjustments.
2971 2003-06-06 Tor Lillqvist <tml@iki.fi>
2973 * gdk/win32/gdkprivate-win32.h: Fix typo.
2975 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
2976 graphics_exposures and subwindow_mode, too, even if they aren't
2979 Fri Jun 6 23:38:23 2003 Kristian Rietveld <kris@gtk.org>
2983 * gtk/gtktreeview.c (do_expand_collapse),
2984 (expand_collapse_timeout), (cancel_arrow_animation): made
2985 expand_collapse_timeout a wrapper with locks around
2986 do_expand_collapse, made cancel_arrow_animation use
2987 do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
2990 Fri Jun 6 11:05:45 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
2992 * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
2993 * modules/input/gtkimcontextxim.c (preedit_start_callback,
2994 preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag
2995 to keep preedit-[start,changed,end] signals from being called during
2996 finalization (#111861).
2998 2003-06-05 Noah Levitt <nlevitt@columbia.edu>
3000 * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
3001 presses that are not on the tab (#114534).
3003 Thu Jun 5 20:35:40 2003 Owen Taylor <otaylor@redhat.com>
3005 * demos/Makefile.am: Conditionalize dependencies for
3006 gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe).
3007 Buildtest-inline-pixbufs.h in srcdir. Don't try to build
3008 test-inline-pixbufs.h if we don't have libpng.
3010 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
3011 Add a dependency on gdk-pixbuf.loaders when not
3012 cross-compiling, remove the dependency on gdk-pixbuf-csource
3013 when not cross compiling.
3015 Thu Jun 5 20:12:51 2003 Owen Taylor <otaylor@redhat.com>
3017 * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
3018 gtk_window_get_geometry_info() returning NULL.
3019 (#107311, John Finlay)
3021 Thu Jun 5 19:24:33 2003 Owen Taylor <otaylor@redhat.com>
3023 * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
3024 twice the border width from the width/height, not
3025 1x the border width. (#106336, Rodney Dawes)
3027 Thu Jun 5 15:33:38 2003 Owen Taylor <otaylor@redhat.com>
3029 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3030 If at the end of the buffer, move to the end iter -
3031 parallels behavior of move_iter_to_previous_line.
3032 (#81960, Padraig O'Briain)
3034 Thu Jun 5 16:12:54 2003 Owen Taylor <otaylor@redhat.com>
3036 #80023, Yao Zhang, TOKUNAGA Hiroyuki
3038 * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
3039 Account for the preedit cursor offset if the iter passed
3040 in is at the same place as the insertion cursor.
3042 * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
3043 Encapsulate getting the insertion cursor location.
3045 * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
3046 Pass the real y/height to the IM context. Take
3047 text_view->x/yoffset into account.
3049 Thu Jun 5 16:52:54 2003 Owen Taylor <otaylor@redhat.com>
3051 * gtk/gtktextview.[ch]: Never scroll on focus in
3052 (#81893, Patch from Paolo Maggi)
3054 * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages):
3055 Scroll to the current cursor location before handling
3056 the action, in case the user just tabbed in
3057 and the cursor is offscreen.
3059 Thu Jun 5 17:20:40 2003 Owen Taylor <otaylor@redhat.com>
3061 #107883, Gustavo Giráldez
3063 * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
3064 Split out the case where we know we changed, and
3065 already dealt with our cached line being invalidated
3066 from external calls to gtk_text_layout_changed.
3068 * gtk/gtktextlayout.c (gtk_text_layout_changed):
3069 Check if the invalidate yrange intersects our
3070 cached line, and clear it if necessary.
3072 2003-06-05 Tor Lillqvist <tml@iki.fi>
3074 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
3077 2003-06-05 Matthias Clasen <maclas@gmx.de>
3079 * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
3080 (gtk_text_view_grab_notify):
3081 (gtk_text_view_state_changed): Implement these
3082 to unobscure cursor when grab shadowed or insensitised.
3083 (gtk_text_view_unobscure_mouse_cursor): New function to undo the
3084 effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
3085 gtk_text_view_motion_event().
3086 (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
3088 * gtk/gtktextview.c (select_all): New keybinding signal for
3089 (un)selecting the whole buffer. Bound to C-a/C-\. (see #107889)
3091 * gtk/gtkcalendar.c (calendar_timer):
3092 (stop_spinning): Replace deprecated gtk_timeout_* functions by
3093 their GLib counterparts. (#114429)
3095 * gtk/gtktreestore.c (gtk_tree_store_new):
3096 * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on
3099 Wed Jun 4 19:42:17 2003 Owen Taylor <otaylor@redhat.com>
3101 * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
3102 When drawing underlines, join up adjacent runs
3103 where possible, so we don't get changes in
3104 shaper/font/etc. breaking underlines. (#103662,
3107 Wed Jun 4 19:22:58 2003 Jonathan Blandford <jrb@redhat.com>
3109 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
3110 Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
3111 improve the speed of inserting rows into an already sorted list,
3114 Wed Jun 4 19:24:28 2003 Owen Taylor <otaylor@redhat.com>
3116 * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
3117 track of when we have a clip mask set for the GC,
3118 and when we unset it, or switch to a clip region,
3119 immediately call XSetClipMask (..., None) to avoid
3120 Xlib caching stale data. (#111806)
3122 * gtk/gtktextdisplay.c: Don't set a clip mask
3123 when drawing alpha pixmaps; it isn't necessary any more.
3126 Wed Jun 4 18:27:44 2003 Owen Taylor <otaylor@redhat.com>
3128 * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3129 gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
3130 Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
3133 * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
3134 gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
3135 Use state_type = STATE_INSENSITIVE for insensitive menu items.
3137 Wed Jun 4 21:25:35 2003 Kristian Rietveld <kris@gtk.org>
3141 * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
3142 assert for get_info. (reported by Michael Natterer),
3143 (gtk_tree_view_expand_all_emission_helper),
3144 (gtk_tree_view_expand_all_helper): emit row_expanded for all
3145 expanded rows during an _expand_all operation. (Fixes #111280,
3146 reported by Benjamin Bayart).
3148 Tue Jun 3 18:32:30 2003 Owen Taylor <otaylor@redhat.com>
3150 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
3151 respond to pings on a root window; prevents infinite
3152 loops if we are selecting for SubstructureNotify on the
3153 root window. (#111945, Sergey V. Udaltsov)
3155 Tue Jun 3 17:39:16 2003 Owen Taylor <otaylor@redhat.com>
3157 #71597, reported by Morten Welinder
3159 * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
3160 (Patch from Christian Petig)
3162 * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
3163 Major rewrite of 555 and 565 conversion routines:
3165 - Move all the bit shifting into a small block of macros,
3166 eliminating much duplication of complicated arithmetic.
3167 - Get rid of 2-pixels at a time code, which was buggy,
3168 hard to maintain, caused unaligned accesses, and
3169 probably didn't actually perform any better.
3170 - Simplify cases where different data types were
3171 used for the little and big endian cases, use
3172 GUINT16_SWAP_LE_BE() where appropriate.
3174 Tue Jun 3 15:05:47 2003 Owen Taylor <otaylor@redhat.com>
3176 * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
3177 bad optimization for src_rowstride == dest_stride.
3178 (Didn't consider the case where we were copying only
3179 partial widths of a wider source buffer)
3180 (#113034, reported by Hans Petter Jansson)
3182 2003-06-03 Michael Natterer <mitch@gimp.org>
3184 * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
3185 reenabled button_release events for xinput devices. (#113948)
3187 2003-06-03 Christian Rose <menthos@menthos.com>
3189 * configure.in: Added "li" to ALL_LINGUAS.
3191 Mon Jun 2 18:58:54 2003 Owen Taylor <otaylor@redhat.com>
3193 * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
3194 map the event window if the notebook isn't mapped. (#113980,
3197 2003-06-02 Sven Neumann <sven@gimp.org>
3199 * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
3201 * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
3203 2003-06-01 Matthias Clasen <maclas@gmx.de>
3205 * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add
3206 Since: 2.4 to the docs.
3208 * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
3209 an example to the docs. (#98427)
3211 2003-05-30 Murray Cumming <murrayc@usa.net>
3213 * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
3214 gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
3215 uses the new private data system - see g_type_class_add_private() in
3216 gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
3218 2003-05-30 Matthias Clasen <maclas@gmx.de>
3220 * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
3221 signature of gtk_notebook_draw_arrow() for Solaris builds to go
3222 through. (#114043, Anand Subramanian)
3224 Thu May 29 18:30:35 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3226 * modules/input/imipa.c:
3227 use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
3229 Thu May 29 18:08:01 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3231 * gtk/gtkimmodule.c (_gtk_im_module_list):
3232 use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
3234 Thu May 29 09:34:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3236 * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
3237 label of default input method localizable.
3238 * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3239 use translations of input method context names
3240 * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
3241 modules/input/iminuktitut.c, modules/input/imthai-broken.c,
3242 modules/input/imti-er.c, modules/input/imti-et.c
3243 modules/input/imviqr.c, modules/input/imxim.c
3244 use GETTEXT_PACKAGE instead of "gtk+" for domain name.
3247 Thu May 29 18:23:01 2003 Kristian Rietveld <kris@gtk.org>
3251 * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
3252 grab separate, the user might clear the tree in the focus-in
3253 callback. (Fixes #113086, testcase from Felipe Heidrich).
3255 Thu May 29 18:06:26 2003 Kristian Rietveld <kris@gtk.org>
3259 * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
3260 of row reference when we unset the model. Also reset
3261 dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
3263 Thu May 29 17:12:19 2003 Kristian Rietveld <kris@gtk.org>
3267 * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
3268 the current editing, if it exists. (Fixes #108956, reported by
3271 Thu May 29 17:06:09 2003 Kristian Rietveld <kris@gtk.org>
3275 * gtk/gtktreeview.c (check_selection_helper): new function,
3276 (gtk_tree_view_row_deleted): traverse the tree from the
3277 deleted node to see whether the selection changed, instead of
3278 just checking this node. (Fixes #107400, reported by 'Duncan').
3280 Thu May 29 16:31:34 2003 Kristian Rietveld <kris@gtk.org>
3284 * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
3285 (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
3286 instead of _maybe_begin_dragging_row, so the icon can be
3287 overridden by apps. (Fixes #104374, patch from Daniel Elstner).
3289 Thu May 29 16:14:04 2003 Kristian Rietveld <kris@gtk.org>
3293 * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
3294 cell_area x/width for the expander if needed. (Fixes #101748,
3295 reported by Dave Cook and Mariano Suarez-Alvarez).
3297 Thu May 29 16:01:38 2003 Kristian Rietveld <kris@gtk.org>
3301 * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
3302 if tree/node are still the same after _internal_select_node.
3303 (Fixes #92256, reported by edscott).
3305 Thu May 29 15:38:30 2003 Kristian Rietveld <kris@gtk.org>
3307 Fixes #75745, reported by Richard Hult. Merged from stable.
3309 * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
3310 GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
3313 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3314 if we are rendering a cursor row, and the cell the be
3315 processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
3316 flag (else we unset it).
3318 2003-05-27 Matthias Clasen <maclas@gmx.de>
3320 * gtk/gtkwindow-decorate.c:
3321 * gtk/gtktreeprivate.h:
3323 * gdk/win32/gdkwindow-win32.h:
3324 * gdk/linux-fb/gdkprivate-fb.h:
3325 * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
3326 unspecified signedness. (#112919, Morten Welinder)
3328 * gtk/queryimmodules.c (escape_string):
3329 * gtk/gtktextbtree.c (_gtk_text_btree_get_text):
3330 * gtk/gtksettings.c (_gtk_settings_parse_convert):
3331 * gtk/gtkrc.c (gtk_rc_parse_assignment):
3332 * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
3333 * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
3334 occurances of g_string_new ("") by g_string_new (NULL). (#106975,
3337 2003-05-27 Tor Lillqvist <tml@iki.fi>
3339 * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
3340 files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
3342 * gdk/Makefile.am: libgdk-win32-2.0.la depends on
3343 win32/libgdk-win32.la.
3345 * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
3347 Sat May 24 22:19:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3349 * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
3350 scrollbar slider length 21 instead of 7.
3352 2003-05-23 Matthias Clasen <maclas@gmx.de>
3354 * gtk/gtknotebook.c: Add support for up to four scroll
3355 arrows. Control their display by new style properties
3356 "has_forward_stepper", "has_backward_stepper",
3357 "has_secondary_forward_stepper" and
3358 has_secondary_backward_stepper". (#110540)
3360 * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
3361 click_child three bits wide, add
3362 has_{before,after}_{previous,next} fields.
3364 * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
3365 focus out of hex_entry. (#112665)
3366 (hex_focus_out): New signal handler for focus out of hex entry.
3368 Wed May 21 19:01:06 2003 Owen Taylor <otaylor@redhat.com>
3370 * gtk/gtkwidget.c (gtk_widget_realize):
3371 g_return_if_fail() if
3372 GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
3373 (#107872, Christian Reis)
3375 2003-05-22 Matthias Clasen <maclas@gmx.de>
3377 * gtk/gtkfilesel.c (gtk_file_selection_create_dir):
3378 (gtk_file_selection_rename_file): Some keynav improvements for the
3379 "Rename File" and "Create Directory" subdialogs: Enter in entry
3380 activates default, default is "Create"/"Rename", Escape cancels
3382 (gtk_file_selection_set_filename): Add a hint about opening
3383 directories. (#113175)
3385 2003-05-22 Matthias Clasen <maclas@gmx.de>
3387 * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
3388 Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
3391 Wed May 21 15:53:14 2003 Owen Taylor <otaylor@redhat.com>
3393 * gtk/gtkprogress.c (gtk_progress_set_format_string,
3394 gtk_progress_set_show_text): Always queue a resize ...
3395 we rely on the size-allocate to do the update, plus a
3396 different format can actually change our size requisition.
3397 (#111052, Vasco Alexandre da Silva Costa)
3399 * gtk/gtkprogress.c (gtk_progress_changed): Track
3400 ::changed as well as ::value_changed, and queue a
3401 resize on ::changed when necessary.
3403 * gtk/gtkprogress.c (gtk_progress_set_adjustment):
3404 Call gtk_progress_changed() here to update or
3405 queue a resize as necessary.
3407 Wed May 21 14:06:13 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3409 * gtk/gtkimcontextsimple.c: added composing rules of
3410 Greek accented letters, patch by Vasilis Vasaitis (#107507)
3412 Wed May 21 13:19:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3414 * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle):
3415 * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
3416 gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
3418 Wed May 21 12:10:25 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3420 * gtk/gtkimcontextsimple.c:
3421 code that can check the compose table for ascending order,
3422 by Vasilis Vasaitis (#104862).
3424 Wed May 21 12:52:01 2003 Owen Taylor <otaylor@redhat.com>
3426 * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need
3427 to pass the unmasked state to gdk_keymap_translate_keyboard_state()
3428 to handle the case where a modifier not in the mask
3429 (like Num_Lock) changes the key value, so replace
3430 the masked state with a state/mask pair. (#106913,
3433 * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
3434 in state/mask pair to _gtk_key_hash_lookup()
3436 Tue May 20 21:58:00 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3438 * modules/input/gtkimcontextxim.c (xim_info_display_closed):
3439 fix a memory leak, free input context list (#113259).
3441 2003-05-21 Matthias Clasen <maclas@gmx.de>
3443 * configure.in (all_loaders): Add pcx.
3445 * gtk/gtkcalendar.c: Make calendar controls spin. (#112540)
3447 Tue May 20 17:27:24 2003 Owen Taylor <otaylor@redhat.com>
3449 * gtk/gtkimmodule.c (gtk_im_module_init): Silently
3450 accept a missing gtk.immodules file, some people
3451 want to run without one. (#112406, patch from
3454 Tue May 20 17:05:31 2003 Owen Taylor <otaylor@redhat.com>
3456 * gtk/gtkwindow.c (gtk_window_compute_hints): Fix
3457 height/width confusion (#113370, Xan Lopez)
3459 Tue May 20 15:48:45 2003 Owen Taylor <otaylor@redhat.com>
3461 * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
3462 zero all unused parts of client messages (Mainly Motif DND
3463 and EWMH). Also, fix a couple places where we were putting
3464 contents into Motif DND messages that didn't belong.
3465 (#113361, EWMH problem reported by Lubos Lunak)
3467 * gtk/gtkselection.c (_gtk_selection_request): Handle the
3468 case where the property type for the multiple atoms is
3469 ATOM_PAIR by doing the conversions ourselve. This is
3470 needed for Xt inter-operation.
3472 2003-05-19 Arafat Medini <lumina@silverpen.de>
3474 * configure.in: Added ar to ALL_LINGUAS
3476 2003-05-19 Matthias Clasen <maclas@gmx.de>
3478 * gtk/gtksettings.c (gtk_rc_property_parse_border,
3479 gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
3480 gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
3483 * gtk/gtkwidget.c (gtk_widget_class_install_style_property,
3484 gtk_widget_class_install_style_property_parser): Add docs.
3486 2003-05-17 Matthias Clasen <maclas@gmx.de>
3488 * tests/prop-editor.c: Add navigation for object properties, so
3489 that you can easily edit the properties of the parent of a widget.
3492 Wed May 14 17:45:32 2003 Owen Taylor <otaylor@redhat.com>
3494 * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
3495 Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis
3496 inconsistency and leave the old name as an aliass (#104873)
3498 Wed May 14 16:40:09 2003 Owen Taylor <otaylor@redhat.com>
3500 * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
3501 from Charles Schmidt to add missing notify (#108305)
3503 Wed May 14 16:00:51 2003 Owen Taylor <otaylor@redhat.com>
3505 * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
3506 (#105500, Morten Welinder.)
3508 Wed May 14 09:05:11 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3510 * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
3511 instead of gumake for XNFilterEvents event mask(#110493).
3513 2003-05-11 Anders Carlsson <andersca@codefactory.se>
3515 * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
3516 a GObject. (#112762)
3518 2003-05-08 Sven Neumann <sven@gimp.org>
3520 * configure.in: set the HAVE_X11R6 automake conditional to false
3521 if not compiling for X11.
3523 2003-05-08 Matthias Clasen <maclas@gmx.de>
3525 * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options):
3526 (gtk_calendar_get_display_options): New functions.
3527 (gtk_calendar_display_options): Depreate. (#64567)
3528 (gtk_calendar_class_init): Add boolean properties for the display
3531 Tue May 6 16:50:52 2003 Owen Taylor <otaylor@redhat.com>
3533 Patch from James Henstridge to update to automake-1.7
3536 * autogen.sh: update to call newer tools.
3538 * configure.in: various updates, to use M4 macros to put
3539 variables that change each release at the top.
3540 Use AC_HELP_STRING to format help strings.
3541 Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
3543 * Makefile.am: require Automake 1.7. Remove gdk-2.0.pc and
3544 gtk+-2.0.pc on uninstall. Pass --enable-gtk-doc to configure
3547 * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
3550 * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
3551 Use BUILT_SOURCES where appropriate.
3552 Build generated files in builddir rather than srcdir.
3553 Fix uninstall and distclean targets to satisfy distcheck.
3557 * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
3558 built first, since we are now using BUILT_SOURCES.
3560 * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
3562 * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
3565 * configure.in: Update versions to 2.3.0.
3567 2003-05-06 Tor Lillqvist <tml@iki.fi>
3569 Fix for #110165 (thanks to Arnaud Charlet):
3571 * gdk/win32/gdkevents-win32.c (build_keypress_event,
3572 build_keyrelease_event): For unshifted control char, use
3573 lowercase ASCII keyval.
3574 (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
3575 UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
3576 lowercase keyval. Use build_key_event_state() here, too, instead
3577 of minor code duplication.
3579 2003-05-06 Matthias Clasen <maclas@gmx.de>
3581 * tests/testmultidisplay.c: Don't include strings.h, it's not
3582 needed anymore. (#112388)
3584 * examples/menu/itemfactory.c:
3585 * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
3586 itemfactory example.
3588 2003-05-05 Matthias Clasen <maclas@gmx.de>
3590 * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock): Actually set the
3591 icon type to the stock icon type. (#111735, Dave Bordoley)
3593 2003-05-05 Christian Rose <menthos@menthos.com>
3595 * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
3596 Removed sp, it's replaced by sr@Latn.
3598 Wed Apr 30 22:09:11 BST 2003 Tony Gale <gale@gtk.org>
3600 * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
3603 Mon Apr 28 17:54:39 2003 Jonathan Blandford <jrb@redhat.com>
3605 * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
3606 data iff the destroy func isn't NULL.
3608 Thu Apr 24 19:12:05 2003 Owen Taylor <otaylor@redhat.com>
3610 * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
3612 2003-04-23 Abel Cheung <maddog@linux.org.hk>
3614 * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
3616 Tue Apr 22 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
3618 * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
3619 of UTF-8. (#106419, Roozbeh Pournader)
3621 Tue Apr 22 15:17:25 2003 Owen Taylor <otaylor@redhat.com>
3623 * configure.in: Only check for XFT2 if we found pango-xft
3626 Tue Apr 22 15:12:19 2003 Owen Taylor <otaylor@redhat.com>
3628 * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
3629 PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
3631 Tue Apr 22 19:43:01 BST 2003 Tony Gale <gale@gtk.org>
3633 * docs/faq/gtk-faq.sgml: add note about version converage.
3635 Mon Apr 21 19:02:16 2003 Owen Taylor <otaylor@redhat.com>
3637 * gtk/gtksocket.c (activate_key): Fix prototype for
3638 activate_key. (#108927, Jason D. Hildebrand)
3640 Mon Apr 21 18:42:51 2003 Owen Taylor <otaylor@redhat.com>
3642 * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
3643 Remove geninclude.pl from CVS and don't dist it either,
3644 it is generated. (#108970, Rich Kinder)
3646 Mon Apr 21 18:35:48 2003 Owen Taylor <otaylor@redhat.com>
3648 * gtk/gtkobject.h: Remove a couple of obsolete comments,
3649 fix another comment. (#109737, Britton Kerin)
3651 Mon Apr 21 18:29:03 2003 Owen Taylor <otaylor@redhat.com>
3653 * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
3654 the source list, not just it's contents (Patch
3655 from Charles Kerr, #108243)
3657 Mon Apr 21 18:13:46 2003 Owen Taylor <otaylor@redhat.com>
3659 * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
3660 from Alex Larsson fixing problem with restacking during
3663 Mon Apr 21 15:07:29 2003 Owen Taylor <otaylor@redhat.com>
3665 * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
3666 Calling XFlush() after ungrabbing, to avoid problems if
3667 the app subsequently blocks on a long-running operation.
3668 (#106520, reported by Rajkumar Siva)
3670 Fri Apr 18 17:42:45 2003 Owen Taylor <otaylor@redhat.com>
3672 * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
3673 SKIP_TASKBAR/SKIP_PAGER to set of properties we
3674 might set on map. (#110019, problem reported
3677 Fri Apr 18 17:14:33 2003 Owen Taylor <otaylor@redhat.com>
3679 * gdk/gdkevents.c (gdk_event_copy): Fix for the
3680 case when gdk_event_copy() is called on a non-allocated
3681 event. (#109716, reported by Rich Burridge)
3683 Fri Apr 18 16:57:44 2003 Owen Taylor <otaylor@redhat.com>
3685 * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
3686 Fix pointer arithmetic on 'void *'. (#108322)
3688 Fri Apr 18 16:31:49 2003 Owen Taylor <otaylor@redhat.com>
3690 * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
3691 Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
3692 use of XAddConnectionWatch. Remove --enable-xim config option.
3693 Should fix building on X11R6 (#110523, Albert Chin)
3695 Fri Apr 18 15:56:46 2003 Owen Taylor <otaylor@redhat.com>
3697 * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
3698 Patch from Morten Welinder to catch Sun servers with a
3699 broken implementation of the RENDER extension. (#108309)
3701 Fri Apr 18 15:30:38 2003 Owen Taylor <otaylor@redhat.com>
3703 * gdk/x11/gdkwindow-x11.c (set_text_property): Use
3704 gdk_free_compound_text(), not g_free(). (#107643,
3707 Fri Apr 18 15:11:50 2003 Owen Taylor <otaylor@redhat.com>
3709 * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
3710 gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
3711 wrong use of base_finalize. (#105126, Sven Neumann)
3713 Fri Apr 18 15:06:00 2003 Owen Taylor <otaylor@redhat.com>
3715 * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
3716 '/' vs. '*' problem in aspect ration computations. (#108237)
3718 Fri Apr 18 14:15:09 2003 Owen Taylor <otaylor@redhat.com>
3720 * gdk/x11/gdkdisplay-x11.c (gdk_display_open):
3721 * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
3722 don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
3723 event, so select for both. (#108406, Egmont Koblinger)
3725 Thu Apr 17 09:57:44 2003 Jonathan Blandford <jrb@gnome.org>
3727 * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
3728 caused by not clearing the scroll_to_path.
3730 2003-04-16 Matthias Clasen <maclas@gmx.de>
3732 * gtk/gtkstyle.c: Doc additions and fixes.
3734 * gtk/gtktreeviewcolumn.c
3735 (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
3737 2003-04-14 Michael Natterer <mitch@gimp.org>
3739 * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
3740 that the iter is not reordered to its own position. Prevents model
3741 corruption for the case that the store contains only a single item
3742 (fixes bug #108387).
3746 * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
3747 new list element later so we don't leak it if we decide to return
3750 * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
3751 set selection->tree_view->priv->anchor to NULL after freeing it.
3753 2003-04-13 Matthias Clasen <maclas@gmx.de>
3755 * gtk/gtktreeviewcolumn.c
3756 (gtk_tree_view_column_cell_get_position): Document.
3758 * gtk/gtktextbuffer.c (gtk_text_buffer_select_range):
3759 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand):
3760 * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
3761 these as 2.4 additions.
3763 2003-04-09 Matthias Clasen <maclas@gmx.de>
3765 * INSTALL.in: Fix the real thing.
3767 * INSTALL: Typo fix.
3769 Mon Apr 7 19:43:15 2003 Owen Taylor <otaylor@redhat.com>
3771 * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
3772 after ungrabbing the server.
3774 * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
3777 * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
3778 Use gdk_x11_display_grab/ungrab.
3780 * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
3781 use_xshm to TRUE so SHM gets used when present.
3783 2003-04-07 Matthias Clasen <maclas@gmx.de>
3785 * gtk/gtktextlayout.c (set_para_values):
3786 * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR. (#110086,
3789 * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
3790 gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
3791 misspellings of possessive "its". (#110027, Doug Quale)
3793 2003-04-03 Matthias Clasen <maclas@gmx.de>
3795 * demos/gtk-demo/main.c (demo_find_file): Only use files from the
3796 current directory if it looks like the srcdir. (#109357)
3798 Wed Apr 2 23:02:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3800 * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
3803 * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
3804 navigation not wrap around.
3806 2003-04-02 Matthias Clasen <maclas@gmx.de>
3808 * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
3809 Return 0 if lower == upper. (#109155)
3810 (gtk_progress_get_current_percentage): Use
3811 gtk_progress_get_percentage_from_value().
3813 2003-04-01 Matthias Clasen <maclas@gmx.de>
3815 * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
3816 (#109510, Noah Levitt)
3818 Mon Mar 31 13:52:13 2003 Jonathan Blandford <jrb@redhat.com>
3820 * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
3821 members so Purify won't complain.
3823 * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
3825 2003-03-31 Matthias Clasen <maclas@gmx.de>
3827 * gtk/gtkwindow.c: Add a new property, role, corresponding to
3828 gtk_window_[gs]et_role(). (#93904)
3830 Sun Mar 30 03:57:42 2003 Jonathan Blandford <jrb@gnome.org>
3832 * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
3833 fix crash. Patch from Markus Lausser <sgop@users.sourceforge.net>
3835 2003-03-29 Matthias Clasen <maclas@gmx.de>
3837 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
3838 of labels back to normal before reparenting back. (#102387)
3840 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
3841 a default window title to match the GtkFontSelectionDialog behavior.
3843 (gtk_color_selection_dialog_new): Don't call
3844 gtk_window_set_title() if title is NULL. (bug #101975, Daniel Elstner)
3846 2003-03-29 Matthias Clasen <maclas@gmx.de>
3850 * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
3853 * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
3854 select_lines on double/triple click.
3856 * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
3857 select-by-words and select-by-lines behaviour.
3859 Fixes for bug #56248:
3861 * gtk/gtknotebook.c (stop_scrolling): New function to remove the
3862 timer and queue a redraw.
3863 (gtk_notebook_grab_notify):
3864 (gtk_notebook_state_changed): New functions to call stop_scrolling()
3866 (gtk_notebook_button_release): Use stop_scrolling().
3867 (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
3869 * gtk/gtkrange.c (stop_scrolling): New function to remove the
3870 grab, remove the timer and queue a redraw.
3871 (gtk_range_grab_notify):
3872 (gtk_range_state_changed): New functions to call stop_scrolling()
3874 (gtk_range_button_release): Use stop_scrolling().
3876 * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify):
3877 (gtk_spin_button_state_changed): Redraw after stop_spinning.
3878 (gtk_spin_button_stop_spinning): Reset click_child to correct the
3879 drawing of the arrows.
3880 (gtk_spin_button_button_release): Use a local copy of click_child,
3881 since stop_spinning() resets it.
3883 * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
3884 C-A-PgDown as alternatives to the A-less variants. (This slipped
3885 in accidentally some time ago). (#97860)
3887 2003-03-26 Sven Neumann <sven@gimp.org>
3889 * gtk/gtktreeview.c: rewrote the function that does node and arrow
3890 prelighting, queue all redraws from here (Fixes bug #108792).
3892 2003-03-20 Richard Kinder <r_kinder@yahoo.com>
3894 * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
3897 2003-03-20 Guntupalli Karunakar <karunakar@freedomink.org>
3899 * configure.in: Added "ml" in ALL_LINGUAS
3901 Sat Mar 15 18:49:27 2003 Manish Singh <yosh@gimp.org>
3903 * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
3904 G_DISABLE_DEPRECATED.
3906 2003-03-14 Tor Lillqvist <tml@iki.fi>
3908 * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
3909 GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
3910 DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
3911 multiple monitors can have negative coordinates on some of the
3912 monitors. (partial fix for #99496, Arnaud Charlet)
3914 2003-03-15 Matthias Clasen <maclas@gmx.de>
3916 * gtk/gtktextview.c: Add a "buffer" property. (#108353)
3918 2003-03-13 Sven Neumann <sven@gimp.org>
3920 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
3921 removed redundant calls to g_object_notify().
3922 (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
3925 * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
3926 (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
3927 functions return an integer value).
3929 2003-03-13 Tor Lillqvist <tml@iki.fi>
3931 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
3932 WM_MOUSEMOVE, the test whether we have actually moved (and thus
3933 shouldn't generate an GDK event) moved after the call to
3934 propagate() and translate_mouse_coords(). Otherwise we were
3935 testing wrong values. (#108115, Allin Cottrell)
3936 (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
3937 way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
3939 * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
3940 is used, must copy the HCURSOR with CopyCursor(), as it is OK to
3941 destroy the GdkCursor after calling gdk_pointer_grab(). Set the
3942 cursor right away with SetCursor(), as we won't get any
3943 WM_SETCURSOR messages while the mouse is captured.
3944 (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
3945 with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
3947 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
3948 WM_SYSCHAR, return FALSE from the window procedure to prevent the
3949 DefWindowProc from being called. Otherwise Windows would beep,
3950 thinking you are tring to access a (nonexistent) menu when you
3951 press Alt-something. Don't do this for Alt-Space,
3952 though. (#107454, Martyn Russell)
3954 * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
3956 Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
3958 * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
3959 [left/right] expands/collapses the tree, #108092
3961 2003-03-09 Tor Lillqvist <tml@iki.fi>
3963 * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
3964 compensate for LineTo() not drawing the end pixel. It causes more
3965 harm than benefits, see bug #81895.
3967 2003-03-08 Matthias Clasen <maclas@gmx.de>
3969 Bug #107664 continued:
3971 * gdk/x11/gdkinputprivate.h:
3972 * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove.
3973 (_gdk_input_other_event): Return gboolean.
3974 * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove.
3975 (_gdk_input_other_event): Return gboolean.
3976 * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
3978 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
3979 gboolean, remove pointless call to _gdk_input_window_none_event.
3981 * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
3982 (_gdk_input_window_none_event): Remove.
3984 * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment):
3985 (_gtk_text_iter_get_any_segment):
3986 (_gtk_text_iter_get_segment_byte):
3987 (_gtk_text_iter_get_segment_char):
3988 (_gtk_text_iter_get_text_line):
3989 (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
3990 * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
3991 * gdk/win32/gdkfont-win32.c (gdk_font_equal):
3992 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin):
3993 (gdk_window_get_origin):
3994 * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion.
3996 2003-03-06 Matthias Clasen <maclas@gmx.de>
3998 * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
3999 (#107664, Morten Welinder)
4001 * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin):
4002 * gdk/x11/gdkfont-x11.c (gdk_font_equal):
4003 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
4004 Fix TRUE/1 and FALSE/0 confusion. (#107664, Morten Welinder)
4006 * gtk/gtktextmark.c (gtk_text_mark_get_buffer):
4007 * gtk/gtkeditable.c (gtk_editable_get_chars):
4008 * gtk/gtkctree.c (gtk_ctree_find_node_ptr):
4009 * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
4010 (#107648, Morten Welinder)Fix NULL/FALSE confusion
4011 (#107648, Morten Welinder)
4013 2003-03-04 Matthias Clasen <maclas@gmx.de>
4015 * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
4017 Sun Mar 2 23:35:57 2003 Jonathan Blandford <jrb@gnome.org>
4019 * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
4020 handle rtl code. Thanks to Matthias Clasen for an initial patch
4021 to handle the RTL code.
4023 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
4025 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
4027 * gtk/gtktreeview.c: (invalidate_column),
4028 (invalidate_last_column),
4029 (gtk_tree_view_get_real_requested_width_from_column),
4030 (gtk_tree_view_size_allocate_columns),
4031 (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
4032 (gtk_tree_view_button_release_drag_column),
4033 (gtk_tree_view_update_current_reorder),
4034 (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
4035 (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
4036 (gtk_tree_view_get_background_xrange),
4037 (gtk_tree_view_get_arrow_xrange),
4038 (gtk_tree_view_is_expander_column),
4039 (gtk_tree_view_set_column_drag_info),
4040 (gtk_tree_view_move_cursor_left_right):
4043 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
4046 * gtk/gtktreeviewcolumn.c:
4047 (gtk_tree_view_column_class_init),
4048 (gtk_tree_view_column_set_property),
4049 (gtk_tree_view_column_get_property),
4050 (gtk_tree_view_column_set_expand),
4051 (gtk_tree_view_column_get_expand),
4052 (gtk_tree_view_column_cell_process_action):
4053 Add support for expand flag. Thanks to Kristian Rietveld for an
4054 initial patch for this.
4056 Fri Feb 28 02:06:17 2003 Jonathan Blandford <jrb@gnome.org>
4059 2003-03-02 Tor Lillqvist <tml@iki.fi>
4062 * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
4065 2003-03-01 Matthias Clasen <maclas@gmx.de>
4067 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
4068 (gtk_scrolled_window_set_hadjustment): Replace uses of
4069 gtk_object_new by g_object_new.
4071 Thu Feb 27 17:44:24 2003 Manish Singh <yosh@gimp.org>
4073 * demos/gtk-demo/main.c
4074 * demos/gtk-demo/tree_store.c
4075 * gdk/x11/gdkscreen-x11.c
4076 * gtk/gtkcellrenderertoggle.c
4084 * gtk/gtkmenushell.c
4088 * gtk/gtktextbuffer.c
4090 * gtk/gtktreeviewcolumn.c
4093 * tests/testtreeedit.c
4094 * tests/testtreefocus.c
4095 * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
4097 Tue Feb 25 21:55:17 2003 Jonathan Blandford <jrb@redhat.com>
4099 * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
4102 2003-02-24 Sven Neumann <sven@gimp.org>
4104 * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
4106 2003-02-21 Tomas Ogren <stric@ing.umu.se>
4108 * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
4110 2003-02-20 Matthias Clasen <maclas@gmx.de>
4112 * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag):
4113 Check if line_ancestor_parent is NULL. (#102711, Manuel Clos)
4115 * gtk/gtktextview.c (gtk_text_view_scroll_to_iter):
4116 (gtk_text_view_update_adjustments): Make sure cursor stays visible
4117 during horizontal scrolling. (#75270)
4119 2003-02-19 Matthias Clasen <maclas@gmx.de>
4121 * tests/testdnd.c: Replace gtk_timeout_* by their GLib
4122 counterparts. (#106532)
4124 * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
4125 keys_changed virtual function with the keys_changed signal.
4126 (#106512, Jeff Franks)
4128 2003-02-15 Larry Ewing <lewing@ximian.com>
4130 * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
4132 2003-02-17 Mohammad DAMT <mdamt@bisnisweb.com>
4134 * po/id.po: Added Indonesian translation
4135 * configure.in: Added "id" to ALL_LINGUAS
4137 2003-02-14 Matthias Clasen <maclas@gmx.de>
4139 * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
4141 2003-02-12 Christian Rose <menthos@menthos.com>
4143 * configure.in: Added "yi" to ALL_LINGUAS.
4145 2003-02-12 Matthias Clasen <maclas@gmx.de>
4147 Fix for #82734 and #78216:
4149 * gtk/gtktextview.c (delete_cb):
4150 (select_all_cb): New callbacks for context menu items.
4151 (popup_targets_received): Add "Delete" and "Select All" to context
4152 menu, mnemonics and title caps for all items.
4154 * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
4156 (popup_targets_received): Add "Delete" to context menu, mnemonics
4157 and title caps for all items.
4159 2003-02-09 Tor Lillqvist <tml@iki.fi>
4161 * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
4162 GetDriveType() to recognize removable drives (in order to avoid
4163 hanging if trying to access an empty floppy drive), instead of
4164 hardcoding A: and B: (#105654).
4166 2003-02-09 Matthias Clasen <maclas@gmx.de>
4168 * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in
4171 2003-02-09 Christian Rose <menthos@menthos.com>
4173 * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
4175 Fri Feb 7 04:49:46 2003 Tim Janik <timj@gtk.org>
4177 * gtk/gtkobject.c: remove quark_user_data usage in
4178 gtk_object_{g|s}et_user_data(). fixes get_user_data()
4179 returning NULL for user_data set through property interface.
4181 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
4182 warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
4183 need to be a programming error (in case of loaded data), (b) it breaks
4184 with 2.0 behaviour where extra magic could be used to create empty
4185 images. don't attempt to retrieve pixbufs from NULL extra_data.
4187 2003-02-06 Matthias Clasen <maclas@gmx.de>
4189 * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
4190 a GdkVisual *, not a GdkVisual **. (#105243)
4194 * gtk/gtkcontainer.c:
4199 * gtk/gtkmenuitem.c:
4200 * gtk/gtknotebook.c:
4201 * gtk/gtkselection.c:
4202 * gtk/gtkspinbutton.c:
4204 * gtk/gtktextview.c:
4205 * gtk/gtktooltips.c:
4206 * gtk/gtktreeview.c:
4207 * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
4208 their non-deprecated GLib counterparts.
4210 * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
4212 Sun Feb 2 16:45:57 GMT 2003 Tony Gale <gale@gtk.org>
4214 * docs/tutorial/gtk-tut.sgml: cleanups from
4215 Sebastian Rittau (#104832)
4217 2003-02-01 Tor Lillqvist <tml@iki.fi>
4221 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
4222 gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
4223 (#104108, Naofumi Yasufuku)
4225 * gdk/gdk.def: Export the above. Export
4226 gdk_screen_get_system_visual, noticed by Ed Woods.
4228 Fri Jan 31 17:45:22 2003 Manish Singh <yosh@gimp.org>
4230 * demos/pixbuf-demo.c
4231 * demos/testpixbuf.c
4232 * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
4234 Fri Jan 31 17:33:00 2003 Manish Singh <yosh@gimp.org>
4236 * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
4237 on the tab_label before unparenting it, in case the unparent
4238 drops the refcount to 0.
4240 2003-02-01 Matthias Clasen <maclas@gmx.de>
4242 * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
4243 headers. Sorry about gtk_selection_clear, Yosh.
4245 Thu Jan 30 17:16:05 2003 Manish Singh <yosh@gimp.org>
4247 * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
4248 too, for gtkwidget.c. Remember people, when introducing new
4249 deprecations, make sure internal code isn't using it, or if so,
4250 reorganize appropriately like I've done in other places.
4252 * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
4254 2003-01-31 Matthias Clasen <maclas@gmx.de>
4256 * gtk/gtkselection.h:
4257 * gtk/gtkselection.c (gtk_selection_clear): Deprecate. (#85683)
4260 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
4261 (gdk_pixbuf_render_to_drawable_alpha): Deprecate. (#60582)
4263 * gtk/gtkcolorsel.h:
4264 * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4267 * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
4269 * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
4270 and gtk_input_* functions. (#71596)
4272 * gtk/gtkentry.c (gtk_entry_move_cursor):
4273 * gtk/gtklabel.c (gtk_label_move_cursor): Handle
4274 GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
4276 * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs(). (#79803)
4278 * gtk/gtkitemfactory.h:
4279 * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate.
4282 Thu Jan 30 23:48:30 2003 Kristian Rietveld <kris@gtk.org>
4284 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
4285 only count the special cell if it is also visible,
4286 (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
4287 account from visible cells,
4288 (gtk_tree_view_column_cell_get_position): likewise, (Reported and
4289 testcase provided by Vasco Alexandre da Silva Costa, via IRC,
4290 tracking bug was #104563).
4292 Thu Jan 30 23:46:15 2003 Kristian Rietveld <kris@gtk.org>
4294 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
4295 subtract expander space and focus line space from the extra space
4296 we are about the allocate. (Fixes #104635).
4298 Thu Jan 30 23:42:03 2003 Kristian Rietveld <kris@gtk.org>
4300 * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
4301 (Fixes #96242, patch from Soeren Sandmann).
4303 Thu Jan 30 16:54:29 2003 Owen Taylor <otaylor@redhat.com>
4305 * gtk/gtknotebook.c: Patch from Soeren Sandmann
4306 to update the states of the tab label child
4307 widgets to match the state of the tabs.
4308 (#93389, Reported by Tommi Komulainen)
4310 Thu Jan 30 16:30:54 2003 Owen Taylor <otaylor@redhat.com>
4312 * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
4313 EXTRA_DIST, and from dist rules. (#102231)
4315 2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
4317 * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
4318 function that sets the icon's and label's packing options and
4319 visibility based on toolbar->style.
4321 (gtk_toolbar_internal_insert_element):
4322 (gtk_real_toolbar_style_changed): Make use of
4323 set_child_packing_and_visibility() to clean up the code and get
4324 the packing right for icon-only/text-only toolbars. (#104679)
4326 (get_first_child): Remove, and use gtk_bin_get_child() instead.
4328 2003-01-30 Matthias Clasen <maclas@gmx.de>
4330 * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
4331 GTK_MOVEMENT_HORIZONTAL_PAGES. (#68947)
4333 * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
4335 Thu Jan 30 16:01:29 2003 Owen Taylor <otaylor@redhat.com>
4337 * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the
4338 attempt-to-allocate then free code. To handle multiple
4339 people allocating colors at the same time, we need
4340 to just go ahead and try. (#102213, Shivram U)
4342 2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
4344 * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
4345 rectangle using the background color rather than relying on
4346 gdk_window_clear_area(), so that the palette works properly with
4347 pixmap themes. (#101732)
4349 * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
4350 to fill the drawing area in the background color.
4352 Wed Jan 29 14:11:21 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
4354 * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
4355 initialization error for selecting input style (#103549).
4357 Wed Jan 29 17:02:41 2003 Owen Taylor <otaylor@redhat.com>
4359 * gdk/gdkkeyuni.c (get_decimal_char): Make the
4360 translation of GDK_KP_Decimal dependent on LC_NUMERIC.
4363 Wed Jan 29 15:43:56 2003 Owen Taylor <otaylor@redhat.com>
4365 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
4366 Make up from the menu bar go to the end of the submenu.
4367 (#96114, Ian Peters.)
4369 * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate):
4370 Only do the select-but-not-activate stuff if the
4371 menu is already active. Otherwise, just activate.
4372 (#101690, Arvind Samptur)
4374 Tue Jan 28 15:18:24 2003 Owen Taylor <otaylor@redhat.com>
4376 * autogen.sh (have_automake): Fix version in complaint
4377 message about automake. (#104366, Rich Burridge)
4379 Mon Jan 27 16:38:13 2003 Owen Taylor <otaylor@redhat.com>
4381 * configure.in: Remove SOEXT stuff; it doesn't work portably.
4383 Mon Jan 27 22:45:15 2003 Kristian Rietveld <kris@gtk.org>
4385 * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
4386 we appended/prepended, send the rows_reordered signal to the
4387 correct level ... (Reported by Matthew Tuck).
4389 Mon Jan 27 22:43:11 2003 Kristian Rietveld <kris@gtk.org>
4391 * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
4392 out if the level only has one item, recurse over the child if there
4393 is one. (Fixes #100458, reported by Gaël Le Mignot).
4395 Mon Jan 27 22:41:26 2003 Kristian Rietveld <kris@gtk.org>
4397 * gtk/gtktreeview.c (gtk_tree_view_set_model),
4398 (gtk_tree_view_search_equal_func): make TreeView search handle
4399 all types which are transformable by GValue. (Fixes #99803, reported
4402 Mon Jan 27 22:39:25 2003 Kristian Rietveld <kris@gtk.org>
4404 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
4405 *really* handle unsetting the ID. Slightly modified patch from
4406 Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
4408 Mon Jan 27 22:33:43 2003 Kristian Rietveld <kris@gtk.org>
4410 Fixes the total GtkTreeSortable mess, and #83195, reported by
4413 * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
4414 (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
4415 (gtk_tree_store_set_default_sort_func): use the constant
4416 GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
4417 work as advertised by the documentation.
4419 * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
4420 (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
4421 (gtk_list_store_set_default_sort_func): likewise.
4423 * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
4424 (gtk_tree_model_set_sort_func),
4425 (gtk_tree_model_sort_set_default_sort_func): make functions work
4426 as advertised by the documentation.
4428 Mon Jan 27 22:31:56 2003 Kristian Rietveld <kris@gtk.org>
4430 * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
4431 before we decide if we edit. (fixes #100973, reported by Dave Cook).
4433 Mon Jan 27 22:29:30 2003 Kristian Rietveld <kris@gtk.org>
4435 Bug report and test case from Paolo Maggi via IRC.
4437 * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
4438 (gtk_list_store_move): update tail if needed.
4440 Mon Jan 27 16:19:59 2003 Owen Taylor <otaylor@redhat.com>
4442 * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
4443 might be NULL. Use gtk_widget_get_display (widget)
4444 (#102860, Thomas Leonard)
4446 Mon Jan 27 15:58:31 2003 Owen Taylor <otaylor@redhat.com>
4448 * configure.in: Fix --without-modules/--disable-modules
4449 confusion that was causing --disable-modules not to work.
4450 (#102865, Akira Tagoh)
4452 * configure.in: Fix problem with plain --with-xinput
4453 (#104266, Akira Tagoh)
4455 2003-01-24 Sebastian Rittau <srittau@jroger.in-berlin.de>
4457 * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
4460 Fri Jan 24 17:06:41 GMT 2003 Tony Gale <gale@gtk.org>
4462 * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
4464 Thu Jan 23 21:15:29 GMT 2003 Tony Gale <gale@gtk.org>
4466 * docs/faq/gtk-faq.sgml: Learn to spell Library
4468 Thu Jan 23 20:56:56 GMT 2003 Tony Gale <gale@gtk.org>
4469 * Sebastian Rittau <srittau@jroger.in-berlin.de>:
4471 docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
4472 Composite widget" to modern standards. (I.e. use gobject instead of
4473 glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
4475 * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
4476 code in Appendix C to reflect above changes.
4478 * examples/rangewidgets/rangewidgets.c: From Roger Leigh
4479 auto resize on page size change
4481 2003-01-23 Daniel Elstner <daniel.elstner@gmx.net>
4483 * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
4484 in addition to show_all in order to keep them symmetric. (#102201)
4486 Wed Jan 22 14:18:46 2003 Manish Singh <yosh@gimp.org>
4488 * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
4489 the end of the function, so there is a statement following the "out"
4490 label in all cases (fixes #101961)
4492 2003-01-22 Christian Rose <menthos@menthos.com>
4494 * configure.in: Added "mn" to ALL_LINGUAS.
4496 Wed Jan 15 17:02:18 2003 Owen Taylor <otaylor@redhat.com>
4498 * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
4499 Fix off-by-one error on the backward iteration loop,
4500 that was causing the wrong range to be redrawn.
4501 (at least part of #72734)
4503 2003-01-21 Matthias Clasen <maclas@gmx.de>
4505 * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
4506 vadjustment value after changing its bounds. (fixes #101963 and
4509 * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid
4510 unnecessary roundtrip failures. (#93500)
4512 2003-01-19 Tor Lillqvist <tml@iki.fi>
4516 Fix for #103614 and some other problems with GtkFileSelection on
4519 * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
4520 g_ascii_tolower(). Windows file names are case-insensitive for all
4523 * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
4524 G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
4525 earlier, as it includes config.h unconditionally, and gtkprivate.h
4526 redefines GTK_LOCALEDIR.
4527 (struct _CompletionDirSent): Ifdef out the fields not used on
4529 (compare_utf8_filenames, compare_sys_filenames): Need different
4530 comparison implementation for UTF-8 file names and system locale
4531 file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
4532 need to casefold all Unicode letters.
4533 (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
4534 variables not used on Win32 to avoid warnings about unused
4536 (open_ref_dir): Use g_path_skip_root() to skip past potential
4537 drive letter in front of the leading (back)slash.
4538 (open_new_dir): Ifdef out use of CompletionDirSent fields not
4540 (correct_parent): Bypass inode check also on Cygwin.
4542 Fix bug noticed by Alex Shaduri: Tooltips and other
4543 GDK_WINDOW_TEMP windows were activated. This looked very odd, and
4544 was a regression from earlier versions.
4546 * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
4547 behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
4548 (gdk_window_move, gdk_window_resize): Add debug logging.
4550 * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
4551 WM_SIZE message for a non-visible (withdrawn) window, don't clear
4552 the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
4553 even if its size changes.
4555 2003-01-16 Matthias Clasen <maclas@gmx.de>
4557 * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
4558 (totally_invisible_line): Fix an incorrect optimization which
4559 caused invisible paragraphs to be occasionally misrendered.
4561 Wed Jan 15 15:55:47 2003 Owen Taylor <otaylor@redhat.com>
4563 * gtk/gtksettings.c: Set the double click speed from
4564 XSETTINGS when creating a new GtkSettings object
4565 as well as when getting a notify. (#103601, reported
4568 Wed Jan 15 14:56:09 2003 Owen Taylor <otaylor@redhat.com>
4570 * gtk/gtknotebook.c (gtk_notebook_size_allocate):
4571 Show/hide the notebook event window as necessary,
4572 we weren't previously keeping the visibility updated
4575 2003-01-15 Matthias Clasen <maclas@gmx.de>
4577 * examples/menu/itemfactory.c:
4578 * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
4581 2002-12-29 Murray Cumming <murrayc@usa.net>
4585 * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
4586 Actually implement the GtkTreeDragSource::row_draggable virtual
4587 function in GtkListStore and GtkTreeStore instead of just checking
4588 whether it's implemented at all. This means that DnD isn't broken by
4589 gtkmm's virtual function wrappers. The alternative would be to
4590 hard-code the TRUE return value into gtkmm's wrappers, but that's
4591 part of GTK+'s implementation, not it's API.
4593 Tue Jan 14 23:42:29 2003 Kristian Rietveld <kris@gtk.org>
4595 * gtk/gtktreeview.c: fix compiler warning.
4597 Tue Jan 14 23:29:00 2003 Kristian Rietveld <kris@gtk.org>
4599 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4600 make sure exposed pixbufs are clipped to the exposed area before
4601 drawing, which is a slight speedup. (#102379, patch from Soeren
4604 Tue Jan 14 23:26:41 2003 Kristian Rietveld <kris@gtk.org>
4606 * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
4607 only free scroll_to_path when the complete tree has been validated.
4608 This makes sure that we scrolled to the correct path.
4610 Tue Jan 14 23:25:32 2003 Kristian Rietveld <kris@gtk.org>
4612 * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
4613 background of widget->window and bin->window. (Fixes #96650, reported
4616 Tue Jan 14 23:24:02 2003 Kristian Rietveld <kris@gtk.org>
4618 * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
4619 updates before scrolling, avoiding a "selection streak". (Fixes
4620 #101235, patch from Soeren Sandmann).
4622 Tue Jan 14 23:22:13 2003 Kristian Rietveld <kris@gtk.org>
4624 * gtk/gtktreeview.c (validate_visible_area): actually put values
4625 in the requisition using gtk_widget_size_request. (Fixes #100172,
4626 reported by Kjartan Maraas).
4628 Tue Jan 14 23:19:45 2003 Kristian Rietveld <kris@gtk.org>
4630 * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
4631 arrow animation timeout before we actually reorder the rbtree. If
4632 we don't do this we can get stuck arrows,
4633 (cancel_arrow_animation): new function. (Fixes #93629, part 2,
4634 reported and testcase provided by Hans Petter Jansson).
4636 Tue Jan 14 23:18:21 2003 Kristian Rietveld <kris@gtk.org>
4638 * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
4639 anchor_path should be start_path, not end_path. (Fixes #102618,
4640 patch from Carlos Garnacho Parro).
4642 Tue Jan 14 23:16:15 2003 Kristian Rietveld <kris@gtk.org>
4644 * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
4645 only correct new_pos if we don't move to the head/tail.
4647 Tue Jan 14 23:11:55 2003 Kristian Rietveld <kris@gtk.org>
4649 * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
4650 the parent_iter if depth >= 1, so we send the reordered signal to
4651 the correct level, remove debugging printfs which I forgot the remove
4652 earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
4653 testcase provided by Matthew Tuck).
4655 Tue Jan 14 20:58:44 2003 Kristian Rietveld <kris@gtk.org>
4657 * gtk/gtktreeview.c (invalite_last_column): split out actual column
4658 invalidation into invalidate_column(),
4659 (gtk_tree_view_size_allocate_columns): invalidate column if the
4660 new width is larger than the old width.
4661 (fixes #102890, reported by Alex Duggan).
4663 2003-01-14 Matthias Clasen <maclas@gmx.de>
4665 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
4666 invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
4669 * gtk/gtktextiter.c,
4670 gtk/gtktextiter.h: Add some variant movement functions which
4671 skip invisible chars, and do some cleanups.
4673 2003-01-12 Tor Lillqvist <tml@iki.fi>
4677 * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
4678 as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
4681 * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
4685 * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
4687 * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
4688 gtk-demo}.exe and share/gtk-2.0.
4690 * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
4691 Implement by setting or clearing the WS_EX_TOOLWINDOW extended
4693 (gdk_window_set_type_hint): Add all cases to the switch (not all
4694 do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
4695 calling gdk_window_set_skip_taskbar_hint(). This means that GTK
4696 won't know that the skip_taskbar hint is on for the window, is
4699 Wed Jan 8 18:43:03 2003 Manish Singh <yosh@gimp.org>
4701 * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
4702 <string.h> for strlen.
4704 * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
4705 <string.h> for strrchr.
4707 * tests/testgtk.c (create_saved_position): "x" and "y" properties
4708 for widgets no longer exist, use gtk_window_move instead.
4710 * test/testtextbuffer.c (check_get_set_text): cast strlen to
4713 2003-01-08 Matthias Clasen <maclas@gmx.de>
4715 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
4716 the selection in the presence of invisible segments.
4718 2003-01-07 Matthias Clasen <maclas@gmx.de>
4720 * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
4721 to "select all" and "unselect all". (#102065)
4723 * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
4724 the just_selected_element is unused.
4726 * gtk/gtktextview.c (extend_selection): New helper function to
4727 find the range that should be added to the selection.
4728 (selection_motion_event_handler):
4729 (gtk_text_view_start_selection_drag):
4730 (gtk_text_view_end_selection_drag):
4731 (selection_motion_event_handler):
4732 (selection_scan_timeout): Support select-by-words/lines.
4733 (gtk_text_view_button_press_event): Start a selection drag on
4734 double/triple clicks. (#78499)
4736 2003-01-06 Matthias Clasen <maclas@gmx.de>
4738 Implement a utility function proposed in #102534:
4740 * gtk/gtktextbtree.h:
4741 * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
4742 (_gtk_text_btree_place_cursor): Now a simple wrapper around
4743 _gtk_text_btree_select_range().
4745 * gtk/gtktextbuffer.h:
4746 * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
4747 (gtk_text_buffer_place_cursor): Now a simple wrapper around
4748 gtk_text_buffer_select_range().
4750 2003-01-05 Havoc Pennington <hp@pobox.com>
4752 * configure.in: fix a stray bracket that was breaking the build
4754 2003-01-05 Tor Lillqvist <tml@iki.fi>
4756 * gtk-zip.sh.in: Use correct DLL and import library names, with
4757 GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
4758 (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
4760 * configure.in: Improve check for dimm.h.
4762 * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
4763 gdk-pixbuf/Makefile.am.
4765 * gdk-pixbuf/makefile.mingw.in
4766 * gdk-pixbuf/pixops/makefile.mingw.in
4767 * gdk/makefile.mingw.in
4768 * gdk/win32/makefile.mingw.in
4769 * gtk/makefile.mingw.in: Remove. Not maintained anyway.
4771 * gdk-pixbuf/Makefile.am
4772 * gdk-pixbuf/pixops/Makefile.am
4774 * gdk/win32/Makefile.am
4776 * configure.in: Remove makefile.mingw{,.in} from here, too.
4778 * README.win32: Updates. Don't mention the now removed
4779 makefile.mingw files.
4782 * gtk/gtk.def: Add a couple of missing entries.
4784 * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
4786 * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
4789 * gdk/win32/rc/Makefile.am: Add hack to help
4790 build/win32/lt-compile-resource decide which kind of libtool
4791 object file to produce.
4793 2003-01-05 Matthias Clasen <maclas@gmx.de>
4795 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
4796 C-Down step through the sequence of paragraph ends (old behaviour
4797 included paragraph starts). (#80340, patch by Narayana Pattipati)
4799 * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
4800 Check for a tag toggle at the start iterator before calling
4801 gtk_text_iter_forward_to_tag_toggle(). (#102090, patch by Daniel
4804 2003-01-04 Matthias Clasen <maclas@gmx.de>
4806 * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
4807 and /*< private >*/ as appropriate. (#97211)
4809 2003-01-04 Tor Lillqvist <tml@iki.fi>
4811 * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
4812 distribute gtk-zip.sh.in.
4814 * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
4816 2003-01-03 Havoc Pennington <hp@pobox.com>
4818 * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
4820 * docs/text_widget_internals.txt: add a file documenting some of
4821 the text widget internals
4823 2003-01-02 Matthias Clasen <maclas@gmx.de>
4825 * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
4826 return NULL. (#102069)
4828 2003-01-01 Matthias Clasen <maclas@gmx.de>
4830 * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
4831 a main() in the library is obviously bad.
4833 2002-12-27 Matthias Clasen <maclas@gmx.de>
4835 * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
4836 cursor at drop point. (#72384)
4837 (gtk_text_view_size_allocate): Update the horizontal adjustment
4840 2002-12-25 Matthias Clasen <maclas@gmx.de>
4842 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
4843 selection wrt. to empty lines. (#90435, #90582, #91619)
4845 * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
4846 Keep the cursor on screen. (#96929)
4848 2002-12-24 Matthias Clasen <maclas@gmx.de>
4850 * gtk/gtktextbuffer.c (paste_from_buffer):
4851 (clipboard_text_received): Let the user action span the insertion
4852 and the deletion of the old selection. (#82844)
4854 2002-12-23 Matthias Clasen <maclas@gmx.de>
4856 * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
4857 Don't call gtk_text_iter_backward_sentence_start() if
4858 count is zero. (#99115)
4860 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
4861 move_cursor() even if the cursor hasn't moved, since it has the
4862 side effect of canceling the selection. (#81395, #98537, #98333)
4864 2002-12-22 Matthias Clasen <maclas@gmx.de>
4866 * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
4867 with empty ranges. (fixes #101564 and #80637)
4869 2002-12-21 Tor Lillqvist <tml@iki.fi>
4871 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
4872 sets the window style and extended window style, and adjusts the
4873 width and height to take the window decorations into account
4874 earlier. The adjusted width and height used to be ignored. Remove
4875 the local x, y, width and height variables, no need to further
4876 confuse the code by having local copies. (Partial fix, I hope, for
4879 (gdk_window_move): When moving top-level windows, take title bar
4880 and border width into account, offsetting the coordinates before
4881 calling SetWindowPos().
4883 (gdk_window_set_decorations, gdk_window_set_functions):
4884 Reimplement, taking into account the peculiar semantics of
4885 GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
4887 (gdk_window_get_decorations): Implement. (#98981)
4889 (gdk_window_set_type_hint): When setting
4890 GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
4893 * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
4895 2002-12-21 Matthias Clasen <maclas@gmx.de>
4897 * gtk/gtktextview.c (gtk_text_view_set_background): New static
4898 function to set the background of all windows.
4899 (gtk_text_view_style_set): Use gtk_text_view_set_background().
4900 (gtk_text_view_state_changed): New function; change background
4901 according to state. (#88126)
4903 2002-12-21 Havoc Pennington <hp@pobox.com>
4905 * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation